- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Thu, 16 Nov 2000 16:33:04 -0500
- To: fikes@ksl.stanford.edu
- Cc: www-rdf-logic@w3.org
Perhaps a couple of clarification of the semantics that I sent out are needed. The semantics was written in ASCII text as a means of making it easy to distribut. This meant that I used words to describe things like disjoint, intersection, etc., etc. My intent was that these phrases have their usual meaning in naive set theory. The set theory is naive set theory, which is all that is needed, as there is no set of sets, etc., required. The transliteration from words to symbols from set theory introduces no use of anything like ``holds'' or ``type'' into the semantics. I think that the semantics is thus as formal as would be required. The semantics covers almost all of DAML-ONT, missing only lists. I don't see how lists contribute to the semantics of DAML-ONT in any case. (If someone can say how they contribute, please let me know.) If any other portion of the semantics of DAML-ONT is missing, please let me know. peter Here is a slight revision of the semantics. A Draft Model-Theoretic Semantics for DAML-ONT Caveats: This is only a draft of a semantics. It may be missing some pieces that people consider to be important. It was developed to provide a different semantics for DAML-ONT than given in the Axiomatic Semantics. This draft may not completely conform to the DAML-ONT and RDF syntax. Also, this semantics is not to be read as support for the constructs of DAML-ONT or their intended meaning. It is simply a method of providing a semantics that captures one possible (hopefully the intended) meaning of DAML-ONT constructs. The semantics is written without using the usual symbols of set theory. This does not mean that it is informal, however, as there is a direct mapping from the wording herein to the set theory symbols. Basic Assumptions: A DAML-ONT knowledge base is a collection of RDF triples. Some of these triples are relevant to DAML-ONT and some are not. This semantics currently only treats the triples that are obviously relevant to DAML-ONT and ignores the rest. This document says nothing about how the collection of RDF triples is obtained. Thus it has nothing to do with the meaning of Ontology or versionInfo or imports. This document ignores all aspects of naming and importing. It uses the ID of an RDF node as an identifier for the node. Semantics: The semantics uses a domain of discourse, DD, which is the collection of all DAML-ONT individuals. The semantics assigns a meaning to various syntactic constructs by means of several interpretation functions, namely IC, which maps classes (nodes) into subsets of DD IO, which maps individuals (nodes) into elements of DD IR, which maps relationships (nodes) into subsets of DD x DD There currently is no unique name assumption. The means of asserting equality between individuals is via equivalentTo, which may not be the intended meaning. The semantics is specified via a collection of semantic rules, most of which trigger on the presence of certain kinds of triples in the KB. Such rules have formal parameters signified by means of a leading ?. A semantic structure <DD,IC,IO,IR> is a model for a DAML-ONT KB if the consequences of all applicable rule instantiations in the KB are true in the structure. Abbreviated syntax is used in some places, such as for lists. Let KB be a DAML-ONT KB in the form of a collection of RDF triples. If <type,?C,CLASS> is in KB then IC(?C) is a subset of DD. (Yes, this is redundant.) If <type,?R,PROPERTY> is in KB then IR(?R) is a subset of DD x DD (Yes, this is redundant.) If <?R,?O1,?O2> is in KB then <IO(?O1),IO(?O2)> is in IR(?R). If <subClassOf,?C,?D> is in KB then IC(?C) is a subset of IC(?D) If <subPropertyOf,?R,?S> is in KB then IR(?R) is a subset of IR(?S) IC(Thing) = DD IC(Nothing) is the empty set If <disjointWith,?X,?Y> is in KB then IC(?X) and IC(?Y) are disjoint. If <type,[?X1,...,?Xn],Disjoint> is in KB then IC(?Xi) and IC(?Xj) are disjoint for i different from j. If <unionOf,?C,[?X1,...,?Xn]> is in KB then IC(?C) is the union of the IC(?Xi). If <disjointUnionOf,?C,[?X1,...,?Xn]> is in KB then IC(?C) is the union of the IC(?Xi) and IC(?Xi) and IC(?Xj) are disjoint for i different from j. If <intersectionOf,?C,[?X1,...,?Xn]> is in KB then IC(?C) is the intersection of the IC(?Xi). If <complementOf,?X,?Y> is in KB then IC(?X) and IC(?Y) are disjoint and their union is DD. NB: List is ignored for now. If <oneOf,?C,[?O1,...,?On]> is in KB then IC(?C) = { IO(?O1), ..., IO(?On) } If <domain,?R,?C> is in KB then if <x,y> is in IR(?R) then x is in IR(?C) NB: This does not conform to the definition of domain in RDF for multiple domains! If <range,?R,?C> is in KB then if <x,y> is in IR(?R) then y is in IR(?C) NB: RDF does not allow multiple ranges. If <cardinality,?R,?n> is in KB and x is in IC(?C) for each ?C such that <domain,?R,?C> is in KB then there are n distinct y in DD such that <x,y> is in IR(?R) If <minCardinality,?R,?n> is in KB and x is in IC(?C) for each ?C such that <domain,?R,?C> is in KB then there are at least n distinct y in DD such that <x,y> is in IR(?R) NB: This semantics for cardinality and minCardinality has certain negative interactions with range restrictions on inverses. It also has a certain autoepistemic flavour, which is probably not a good idea. A different reading for cardinality and minCardinality may be needed. NB: This semantics for cardinality and minCardinality differs from the semantics in the axiomatic semantics. I feel that is is closer to the intended meaning than the one in the axiomatic semantics. If <maxCardinality,?R,?n> is in KB then for any x in DD there are at most n distinct y in DD such that <x,y> is in IR(?R) If <inverseOf,?R,?S> is in KB then if <x,y> is in IR(?R) then <y,x> is in IR(?S) If <type,?R,TransitiveProperty> is in KB then if <x,y> and <y,z> are in IR(?R) then <x,z> is in IR(?R) If <type,?R,UniqueProperty> is in KB then if <x,y> and <x,z> are in IR(?R) then y=z If <type,?R,UnambiguousProperty> is in KB then if <x,y> and <z,y> are in IR(?R) then x=z NB: Restriction and Qualification are not needed in the semantics. If <restrictedBy,?C,?N> and <onProperty,?N,?R> and <toValue,?N,?V> are in KB then if x is in IC(?C) then <x,IO(?V)> is in IR(?R) If <restrictedBy,?C,?N> and <onProperty,?N,?R> and <toClass,?N,?D> are in KB then if x is in IC(?C) and <x,y> is in IR(?R) then y is in IC(?D) If <qualifiedBy,?C,?N> and <onProperty,?N,?R> and <hasValue,?N,?D> are in KB then if x is in IC(?C) then there is some y such that y is in IC(?D) and <x,y> is in IR(?R) If <equivalentTo,?C,?D> is in KB then IC(?C) = IC(?D), IR(?C) = IR(?D), and IO(?C)= IO(?D). NB: This reading of equivalentTo is a very strong one as it identifies ?C and ?D as classes, properties, and objects.
Received on Thursday, 16 November 2000 16:34:04 UTC