Re: Metadata about RDF triples: reification and Linked Data

In my view, the best way to approach these problems is to convert the verb - the predicate - into a noun. John Sowa has illustrated this very nicely with Conceptual Graphs. In one of his examples, he has a cat chasing a mouse: (cat, chase, mouse). This can always be converted so that there is an act (the “chasing”). The cat is the chaser, or actor, and the mouse is the chasee or “patient” (that which is acted upon).

With this transformation, the instance of “chasing” can be annotated with as much meta data as you want. Note that this approach is essentially the same as a typical Topic Maps approach. It is also essentially isomorphic to a relational database approach, where this instance of a chase would be a row in a “chase” table. Indeed, rdf models can be seen as very highly normalized relational models.

IMO, most real-world modeling needs to reflect clusters of properties, and those properties are usually grouped together in specific ways, rather than being diffusely spread out over a graph. I like to call these kinds of constructions “idioms”.

Another way of looking at it is that in RDF we can’t directly make statements about a statement. But each instance of a predicate actually represents the entire statement that it occurs in. So if we can make it into a noun, or subject, we can then use it as the hub of all the associated meta data. We could do this by actually creating an instance of the predicate type, but for some reason RDFers don’t favor this method. Alternatively, we can in effect reify the predicate by transforming the original statement into the alternative form I mentioned above. I.e., the verb “chase” when reified becomes an instance of “the chasing”.

Well, this is very long-winded and I don’t know that it helps you directly in writing RDFa for your case, but it is really the situation from a modeling point of view.

Reply

The content of this field is kept private and will not be shown publicly.