OWL指南 推薦標準-2

TransWiki - an Open Translation Project(OTP)

摘要_文檔狀態_目錄 第1節 第2節 第3節 第4節 第5節 第6節 第7節 鳴謝_辭彙表_術語索引_參考文獻 附錄


Table of contents

2. The Structure of Ontologies

OWL is a component of the Semantic Web activity. This effort aims to make Web resources more readily accessible to automated processes by adding information about the resources that describe or provide Web content. As the Semantic Web is inherently distributed, OWL must allow for information to be gathered from distributed sources. This is partly done by allowing ontologies to be related, including explicitly importing information from other ontologies.
In addition, OWL makes an open world assumption. That is, descriptions of resources are not confined to a single file or scope. While class C1 may be defined originally in ontology O1, it can be extended in other ontologies. The consequences of these additional propositions about C1 are monotonic. New information cannot retract previous information. New information can be contradictory, but facts and entailments can only be added, never deleted.
The possibility of such contradictions is something the designer of an ontology needs to take into consideration. It is expected that tool support will help detect such cases.
In order to write an ontology that can be interpreted unambiguously and used by software agents we require a syntax and formal semantics for OWL. OWL is a vocabulary extension [RDF Semantics (http://www.w3.org/TR/rdf-mt/)] of RDF. The OWL semantics are defined in OWL Web Ontology Language Semantics and Abstract Syntax.

2.1. Namespaces

Before we can use a set of terms, we need a precise indication of what specific vocabularies are being used. A standard initial component of an ontology includes a set of XML namespace declarations enclosed in an opening rdf:RDF tag. These provide a means to unambiguously interpret identifiers and make the rest of the ontology presentation much more readable. A typical OWL ontology begins with a namespace declaration (http://www.w3.org/TR/2004/REC-owl-guide-20040210/#XMLNS) similar to the following. Of course, the URIs of the defined ontologies will not usually be w3.org references.


 <rdf:RDF 
xmlns ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#"
xmlns:vin ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#"
xml:base ="http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#"
xmlns:food="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food#"
xmlns:owl ="http://www.w3.org/2002/07/owl#"
xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd ="http://www.w3.org/2001/XMLSchema#">


The first two declarations identify the namespace associated with this ontology. The first makes it the default namespace, stating that unprefixed qualified names refer to the current ontology. The second identifies the namespace of the current ontology with the prefix vin:. The third identifies the base URI for this document (see below (http://www.w3.org/TR/2004/REC-owl-guide-20040210/#owl_imports)). The fourth identifies the namespace of the supporting food ontology with the prefix food:.
The fifth namespace declaration says that in this document, elements prefixed with owl: should be understood as referring to things drawn from the namespace called http://www.w3.org/2002/07/owl#. This is a conventional OWL declaration, used to introduce the OWL vocabulary.
OWL depends on constructs defined by RDF, RDFS, and XML Schema datatypes. In this document, the rdf: prefix refers to things drawn from the namespace called http://www.w3.org/1999/02/22-rdf-syntax-ns#. The next two namespace declarations make similar statements about the RDF Schema (rdfs:) and XML Schema datatype (xsd:) namespaces.
As an aid to writing lengthy URLs it can often be useful to provide a set of entity definitions in a document type declaration (DOCTYPE) that precedes the ontology definitions. The names defined by the namespace declarations only have significance as parts of XML tags. Attribute values are not namespace sensitive. But in OWL we frequently reference ontology identifiers using attribute values. They can be written down in their fully expanded form, for example "http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#merlot". Alternatively, abbreviations can be defined using an ENTITY definition, for example:


 <!DOCTYPE rdf:RDF [
<!ENTITY vin "http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#" >
<!ENTITY food "http://www.w3.org/TR/2004/REC-owl-guide-20040210/food#" > ]>


After this pair of ENTITY declarations, we could write the value "&vin;merlot" and it would expand to "http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#merlot".
Perhaps more importantly, the rdf:RDF namespace declarations can then be simplified so that changes made to the entity declarations will propagate through the ontology consistently.


 <rdf:RDF 
xmlns ="&vin;"
xmlns:vin ="&vin;"
xml:base ="&vin;"
xmlns:food="&food;"
xmlns:owl ="http://www.w3.org/2002/07/owl#"
xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd ="http://www.w3.org/2001/XMLSchema#">


2.2. Ontology Headers

Once namespaces are established we normally include a collection of assertions about the ontology grouped under an owl:Ontology tag. These tags support such critical housekeeping tasks as comments, version control and inclusion of other ontologies.


 <owl:Ontology rdf:about=""> 
<rdfs:comment>An example OWL ontology</rdfs:comment>
<owl:priorVersion rdf:resource="http://www.w3.org/TR/2003/PR-owl-guide-20031215/wine"/>
<owl:imports rdf:resource="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food"/>
<rdfs:label>Wine Ontology</rdfs:label>
...


Note that we use '...' to indicate that there is additional text that has been elided for purposes of the example.
The owl:Ontology element is a place to collect much of the OWL meta-data for the document. It does not guarantee that the document describes an ontology in the traditional sense. In some communities, ontologies are not about individuals but only the classes and properties that define a domain. When using OWL to describe a collection of instance data the owl:Ontology tag may be needed in order to record version information and to import the definitions that the document depends on. Thus, in OWL the term ontology has been broadened to include instance data (see above (http://www.w3.org/TR/2004/REC-owl-guide-20040210/#Owl_Ontology_definition)).
The rdf:about attribute provides a name or reference for the ontology. Where the value of the attribute is "", the standard case, the name of the ontology is the base URI of the owl:Ontology element. Typically, this is the URI of the document containing the ontology. An exception to this is a context that makes use of xml:base which may set the base URI for an element to something other than the URI of the current document.
rdfs:comment provides the obvious needed capability to annotate an ontology.
owl:priorVersion is a standard tag intended to provide hooks for version control systems working with ontologies. Ontology versioning is discussed further below. (http://www.w3.org/TR/2004/REC-owl-guide-20040210/#OntologyVersioning)
owl:imports provides an include-style mechanism. owl:imports takes a single argument, identified by the rdf:resource attribute.
Importing another ontology brings the entire set of assertions provided by that ontology into the current ontology. In order to make best use of this imported ontology it would normally be coordinated with a namespace declaration. Notice the distinction between these two mechanisms. The namespace declarations provide a convenient means to reference names defined in other OWL ontologies. Conceptually, owl:imports is provided to indicate your intention to include the assertions of the target ontology. Importing another ontology, O2, will also import all of the ontologies that O2 imports.
Note that owl:imports may not always succeed. As you would expect when dealing with the Semantic Web, access to resources distributed across the Web may not always be possible. Tools will respond to this situation in an implementation defined manner.
Note that in order to use the OWL vocabulary you do not need to import the owl.rdf (http://www.w3.org/2002/07/owl) ontology. In fact, such an import is not recommended.
One common set of additional tags that could reasonably be included here are some of the standard Dublin Core (http://www.w3.org/TR/2004/REC-owl-guide-20040210/#DublinCore) metadata tags. The subset includes those that take simple types or strings as values. Examples include Title, Creator, Description, Publisher, and Date (see RDF declarations (http://purl.org/dc/elements/1.1/)).
Properties that are used as annotations should be declared using owl:AnnotationProperty. E.g.


<owl:AnnotationProperty rdf:about="&dc;creator" />


OWL provides several other mechanisms to tie the current ontology and imported ontologies together (see ontology mapping (http://www.w3.org/TR/2004/REC-owl-guide-20040210/#OntologyMapping)).
We also include an rdfs:label to support a natural language label for our ontology.
The ontology header definition is closed with the following tag.


</owl:Ontology>


This prelude is followed by the actual definitions that make up the ontology and is ultimately closed by


</rdf:RDF>


2.3. Data Aggregation and Privacy

OWL's ability to express ontological information about instances appearing in multiple documents supports linking of data from diverse sources in a principled way. The underlying semantics provides support for inferences over this data that may yield unexpected results. In particular, the ability to express equivalences using owl:sameAs can be used to state that seemingly different individuals are actually the same. Owl:InverseFunctionalProperty can also be used to link individuals together. For example, if a property such as "SocialSecurityNumber" is an owl:InverseFunctionalProperty, then two separate individuals could be inferred to be identical based on having the same value of that property. When individuals are determined to be the same by such means, information about them from different sources can be merged. This aggregation can be used to determine facts that are not directly represented in any one source.
The ability of the Semantic Web to link information from multiple sources is a desirable and powerful feature that can be used in many applications (http://www.w3.org/TR/2004/REC-owl-guide-20040210/#IntegratingApplications). However, the capability to merge data from multiple sources, combined with the inferential power of OWL, does have potential for abuse. Users of OWL should be alert to the potential privacy implications. Detailed security solutions were considered out of scope for the Working Group. A number of organizations are addressing these issues with a variety of security and preference solutions. See for example SAML (http://www.oasis-open.org/committees/security/charter.php) and P3P (http://www.w3.org/P3P/).



Other languages
 
 Page execution time: 305.64 ms.
网上报警 苏ICP备05002329号 苏ICP备05006046号