Search code examples
xmlowlontologysemantic-web

What does <owl:Ontology rdf:about="xml:base"/> in an ontology mean?


When we see a statement like,

<owl:Ontology rdf:about="xml:base"/>

near the start (header) of an ontology, what exactly does this mean?

If we try to read that in plain English, this should mean something like xml:base an Ontology. But my comprehension does not go beyond that. I am missing specially the xml:base part. What role does xml:base play in case of an ontology?

(Reference: A Semantic Web Primer, second edition, Grigoris Antoniou and Frank van Harmelen, p 135.)


Solution

  • <owl:Ontology> says that you are starting an Ontology which is defined in the owl namespace.

    rdf:about, the about attribute from the rdf namespace, is supposed to give a URI which will give a definition of whatever this XML is talking about. However, in this case the value is xml:base. This says that the subject of this XML schema is represented by the resource located at the URI where this xml was retrieved.

    If the ontology were to contain a further <xml:base> element, then that would override URI; instead of looking at where we just retrieved this XML file containing the Ontology, we would instead look at the URI defined in the <xml:base> element.

    ETA: As Ignazio points out in a comment below, rdf:about="xml:base" does not really work that way. Even if I have correctly interpreted what the people at Owl actually intended by this, what the code is actually saying is that the about attribute is the string xml:base, which doesn't really mean anything.