W3C home > Mailing lists > Public > www-rdf-logic@w3.org > February 2004

Re: OWL and Vocabularies

From: Benjamin Nowack <bnowack@appmosphere.com>
Date: Tue, 24 Feb 2004 15:36:36 +0100
To: "Rory Galvin" <galvinr@tcd.ie>
Cc: www-rdf-logic@w3.org
Message-ID: <PM-EH.20040224153636.2F41A.1.1D@192.168.27.2>


Hi Rory,

the answers depend on your objectives concerning the data, e.g. if
your schema should be an OWL DL ontology, if you are using dc terms
for annotations only or if you want to reason about them, if you
want to publish your instance data and want other apps to work
with it etc.

On 24.02.2004 13:13:52, Rory Galvin wrote:
>I want to use the Dublin core vocabulary to describe classes
>within a schema. By importing the vocabulary into a schema am I 
>saying that classes mentioned in the importing schema can be 
>annotated using DC terms?

if you want to build an OWL DL ontology and would like to annotate
your classes/properties/.. with DC terms, you have to type them as
owl:AnnotationProperties. this can be done within your ont or in an
external ont that you import. you can't import the DC _rdfs_ 
vocabulary and stay in DL though. generally, it's difficult to use
DC terms in OWL DL, because they are loosely specified and 
redescribing them in OWL could change their semantics and/or can 
lead to inconsistent instance data. typing them as annotation 
properties can help but doesn't allow you to define domain, range,
subprops etc, so reasoning is limited. some reasoners may even ignore 
annotation properties.. (that's at least how I understand the OWL
reference doc)

If you plan to have your data used by various consuming apps, esp.
if you consider using other RDFS vocabularies, you are probably 
better off with an OWL Full ontology. you can treat your classes
as individuals then and can use DC terms the way you need. there
also is no need to import a DC vocabulary.

>If importing is not the solution, do I need to declare each 
>DC element within my ontology?
only for OWL DL ontologies or if you want to add contraints, e.g.
typing dc:title as an owl:DatatypeProperty. one problem may be that 
you can't neccessarily tell a reasoner later which ontology to use
if it encounters instance data. there is only a link from a term
to its namespace. e.g. if you have something like

<foaf:Document>
   <dc:title>A sample document</dc:title>
<foaf:Document>

, an rdf consumer/reasoner does not know that/if you (re)defined
/extended/constrained dc:title at http://www.example.com/my_dc.owl

>Currently, my data files (a-boxes) contain individuals from a schema 
>(t-box). Some of the individuals contain DC properties that are not 
>mentioned or imported in the schema. Is this bad practice?
if you have the dc namespace defined, this should be no problem.
(if there is so little practice at all, how can there be "bad" 
practice already ;-) I don't know if a DL-powered reasoner requires
that all instance data statements consist of defined terms, I guess
it could just warn or skip triples with unknown terms, but I'm not 
sure on that.

hope that helps..

benjamin

--
Benjamin Nowack

Kruppstr. 82-100
45145 Essen, Germany
Received on Tuesday, 24 February 2004 09:37:39 GMT

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