W3C home > Mailing lists > Public > www-webont-wg@w3.org > September 2002

Re: LANG: owl:ontology

From: Raphael Volz <volz@aifb.uni-karlsruhe.de>
Date: Wed, 18 Sep 2002 09:05:29 +0200
To: "Webont" <www-webont-wg@w3.org>
Message-ID: <DMECLAFLIOFJEFFIAJPCEEACDAAA.volz@aifb.uni-karlsruhe.de>

Hi -

actually Peter is right, since some thing referred to as
object in a <x, owl:subclassof, y), i.e. y is automagically
made a class in OWL (by entailment). The only the thing we
loose is everything else that is said about y in document 1.

I have an alternative proposal for doing the owl:imports,
which happens to be compatibel with RDF, and uses standard
W3C technologies, namely XInclude http://www.w3.org/TR/xinclude/, which is
the candidate
recommendation for doing inclusion for arbitrary XML.

It would look like this

document 1:
-----------
<rdf:RDF>

	<!-- Document metadata -->
	<owl:Ontology rdf:about="">
	...
	</owl:Ontology>

	<!-- classes -->
	<owl:Class rdf:ID="foo" />
	...
	<!-- properties -->
	<owl:Class rdf:ID="bar" />
	...
</rdf:RDF>


document2:
----------
<rdf:RDF>
	<!-- Inclusion -->
	<xi:include xi:href="document1#xpointer(/rdf:RDF/*)"/>

	<!-- Document metadata -->
	<owl:Ontology rdf:about="">
	...
	</owl:Ontology>

	<!-- classes -->
	<owl:Class rdf:ID="foo2" />
	...
	<!-- properties -->
	<owl:Class rdf:ID="bar2" />
	...
</rdf:RDF>


result would be

<rdf:RDF>
	<!-- Included information -->
		<!-- Document metadata -->
	<owl:Ontology rdf:about="file:/document1">
	...
	</owl:Ontology>

	<!-- classes -->
	<owl:Class rdf:ID="file:/document1#foo" />
	...
	<!-- properties -->
	<owl:Class rdf:ID="file:/document2/#bar" />

	<!-- Document metadata -->
	<owl:Ontology about="">
	...
	</owl:Ontology>

	<!-- classes -->
	<owl:Class rdf:ID="foo2" />
	...
	<!-- properties -->
	<owl:Class rdf:ID="bar2" /><rdf:RDF>
	...
</rdf:RDF>

The xi:include is valid RDF via a combination of the
many convenience syntaxes for RDF and turns out to be
two triples, namely

	<xi:include xi:href="document1#xpointer(/rdf:RDF/*)"/>
-->
(@anonymous, rdf:type, xi:include)
(@anonymous, xi:href, "document1#xpointer(/rdf:RDF/*")


The usage of XPointer does not really impose any realistic
restriction on implementation, since the XPAth used is
always the same, namely give me all children elements of rdf:RDF.

Of course, there are alternative, equivalent XPath expressions that
can say the same, but they are usually more un-intuitive.

The semantics of the operation is a merge of the XML Info Sets of the
document and the addressed document fragments.

If we restrict our self to simple inclusion and specify the semantics
as a merger of the RDF graphs, then this operation would exactly do
that.

Raphael

PS: I tried to send that yesterday, but apparently my emails did not
arrive...
Received on Wednesday, 18 September 2002 03:07:31 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:57:52 GMT