A 5 min Introduction into TMRM
When you are using Topic Maps, then you most likely are familiar with the TMDM, the data model for Topic Maps. It defines items such as topics with their various identification mechanisms, and names and occurrences and associations. TMDM is quite easy to wrap your mind around.
Still, TMDM may not sit at the very center of the Topic Map paradigm in sense that the selection of constructs such as topic, occurrence, name and association is - while anthropocentrically useful - otherwise rather arbitrary. A more abstract view for Topic Maps does not commit itself to these constructs and also not to a predefined way how subjects are effectively identified within a map.
Its basic building block is simple, it is the proxy:
It looks like a generalized RDF statement, only that not a single subject, predicate, object triple is used, but always a set of properties. Each such property has a label and a value, so that a proxy is simply a set of key/value pairs. Values are taken from some value sets (data types), such as INTEGER or STRING. And labels are simply references to their proxies.
Amazingly enough, one can take a TMDM instance and compute a representation of it in TMRM only using such proxies, or rather a special combination of it. Newcomb called the way how this has to be done a disclosure. That also defines what it means that two proxies are to be regarded equivalent.
The rest of the TMRM then deals with navigating through such a TMRM subject map. Since the basic structure is so simple there are only a handful of such navigation movements. Based on these, a primitive path expression language is defined. It allows to extract content out of subject maps.
That has been done not without purpose. One can actually translate every TMQL query expression into such a TMRM path expression. Since it is formally defined what the result is when a path expression is applied to a subject map and since subject maps are formally connected to TMDM, the circle of definitions for a formal semantics for TMQL is closed.