From: Jim Hendler (jhendler@darpa.mil)
Date: 06/14/01
Folks- wanted a more readable version of daml+oil, so I sent it through the N3 converter. It comes out pretty well, except for one oddity - instead of using the normal colon prefix, we did something that causes it to come out with the full URIs - that is we get <http://www.daml.org/2001/03/daml+oil.daml#Class> a rdfs:Class; instead of :Class a rdfs:Class; Two easy things could fix this - an editing macro that fixes the daml+oil.daml file, or a fix to Dan's python code that can somehow recongize and fix this. Any takes - would be a nice document to add to our daml+oil release page -Jim H. >#Processed by Id: cwm.py,v 1.54 2001/06/01 07:50:20 connolly Exp > # using base file:/home/web/le-dev/www/archives/ > ># Notation3 generation by ># notation3.py,v 1.82 2001/06/01 07:52:40 connolly Exp > ># Base was: file:/home/web/le-dev/www/archives/ > #RDF parsed by Id: sax2rdf.py,v 1.3 2001/06/01 13:58:57 connolly Exp > @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . > @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . > @prefix daml: <http://www.daml.org/2001/03/daml+oil#> . > @prefix : <http://www.daml.org/2001/03/daml+oil#> . > > <http://www.daml.org/2001/03/daml+oil.daml> :versionInfo >"$Id: daml+oil.daml,v 1.7 2001/06/06 01:38:21 mdean Exp $"; > :imports <http://www.w3.org/2000/01/rdf-schema> . > > <http://www.daml.org/2001/03/daml+oil.daml#Class> a rdfs:Class; > rdfs:label "Class"; > rdfs:comment """ > The class of all \"object\" classes > """; > rdfs:subClassOf rdfs:Class . > > <http://www.daml.org/2001/03/daml+oil.daml#Datatype> a rdfs:Class; > rdfs:label "Datatype"; > rdfs:comment """ > The class of all datatype classes > """; > rdfs:subClassOf rdfs:Class . > > <http://www.daml.org/2001/03/daml+oil.daml#Thing> a :Class; > rdfs:label "Thing"; > rdfs:comment """ > The most general (object) class in DAML. > This is equal to the union of any class and its complement. > """ . > > this <http://www.w3.org/2000/10/swap/log#forSome> <#_g0> . > > <http://www.daml.org/2001/03/daml+oil.daml#Thing> :unionOf <#_g0> . > > <#_g0> :first <http://www.daml.org/2001/03/daml+oil.daml#Nothing> . > > this <http://www.w3.org/2000/10/swap/log#forSome> <#_g1> . > > <#_g0> :rest <#_g1> . > > this <http://www.w3.org/2000/10/swap/log#forSome> <#_g2> . > > <#_g1> :first <#_g2> . > > <#_g2> :complementOf ><http://www.daml.org/2001/03/daml+oil.daml#Nothing> . > > <#_g1> :rest () . > > <http://www.daml.org/2001/03/daml+oil.daml#Nothing> a :Class; > rdfs:label "Nothing"; > rdfs:comment "the class with no things in it."; > :complementOf <http://www.daml.org/2001/03/daml+oil.daml#Thing> . > > <http://www.daml.org/2001/03/daml+oil.daml#equivalentTo> a :Property; > rdfs:label "equivalentTo"; > :comment """ > for equivalentTo(X, Y), read X is an equivalent term to Y. > """ . > > <http://www.daml.org/2001/03/daml+oil.daml#sameClassAs> a :Property; > rdfs:label "sameClassAs"; > :comment """ > for sameClassAs(X, Y), read X is an equivalent class to Y. > cf OIL Equivalent > """; > rdfs:subPropertyOf ><http://www.daml.org/2001/03/daml+oil.daml#equivalentTo>, > rdfs:subClassOf; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Class>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#Class> . > > <http://www.daml.org/2001/03/daml+oil.daml#samePropertyAs> a >:Property; > rdfs:label "samePropertyAs"; > rdfs:comment """ > for samePropertyAs(P, R), read P is an equivalent property to R. > """; > rdfs:subPropertyOf ><http://www.daml.org/2001/03/daml+oil.daml#equivalentTo>, > rdfs:subPropertyOf . > > <http://www.daml.org/2001/03/daml+oil.daml#sameIndividualAs> >a :Property; > rdfs:label "sameIndividualAs"; > rdfs:comment """ > for sameIndividualAs(a, b), read a is the same individual as b. > """; > rdfs:subPropertyOf ><http://www.daml.org/2001/03/daml+oil.daml#equivalentTo>; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Thing>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#Thing> . > > <http://www.daml.org/2001/03/daml+oil.daml#disjointWith> a >rdf:Property; > rdfs:label "disjointWith"; > rdfs:comment """ > for disjointWith(X, Y) read: X and Y have no members in common. > cf OIL Disjoint > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Class>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#Class> . > > ><http://www.daml.org/2001/03/daml+oil.daml#differentIndividualFrom> >a :Property; > rdfs:label "differentIndividualFrom"; > rdfs:comment """ > for differentIndividualFrom(a, b), read a is not the same individual as b. > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Thing>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#Thing> . > > <http://www.daml.org/2001/03/daml+oil.daml#unionOf> a rdf:Property; > rdfs:label "unionOf"; > rdfs:comment """ > for unionOf(X, Y) read: X is the union of the classes in the list Y; > i.e. if something is in any of the classes in Y, it's in X, and >vice versa. > cf OIL OR > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Class>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#List> . > > <http://www.daml.org/2001/03/daml+oil.daml#disjointUnionOf> >a rdf:Property; > rdfs:label "disjointUnionOf"; > rdfs:comment """ > for disjointUnionOf(X, Y) read: X is the disjoint union of the classes in > the list Y: (a) for any c1 and c2 in Y, disjointWith(c1, c2), > and (b) unionOf(X, Y). i.e. if something is in any of the >classes in Y, it's > in X, and vice versa. > cf OIL disjoint-covered > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Class>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#List> . > > <http://www.daml.org/2001/03/daml+oil.daml#intersectionOf> a >rdf:Property; > rdfs:label "intersectionOf"; > rdfs:comment """ > for intersectionOf(X, Y) read: X is the intersection of the >classes in the list Y; > i.e. if something is in all the classes in Y, then it's in X, >and vice versa. > cf OIL AND > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Class>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#List> . > > <http://www.daml.org/2001/03/daml+oil.daml#complementOf> a >rdf:Property; > rdfs:label "complementOf"; > rdfs:comment """ > for complementOf(X, Y) read: X is the complement of Y; if >something is in Y, > then it's not in X, and vice versa. > cf OIL NOT > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Class>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#Class> . > > <http://www.daml.org/2001/03/daml+oil.daml#oneOf> a rdf:Property; > rdfs:label "oneOf"; > rdfs:comment """ > for oneOf(C, L) read everything in C is one of the > things in L; > This lets us define classes by enumerating the members. > cf OIL OneOf > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Class>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#List> . > > <http://www.daml.org/2001/03/daml+oil.daml#Restriction> a rdfs:Class; > rdfs:label "Restriction"; > rdfs:comment """ > something is in the class R if it satisfies the attached restrictions, > and vice versa. > """; > rdfs:subClassOf <http://www.daml.org/2001/03/daml+oil.daml#Class> . > > <http://www.daml.org/2001/03/daml+oil.daml#onProperty> a rdf:Property; > rdfs:label "onProperty"; > rdfs:comment """ > for onProperty(R, P), read: > R is a restricted with respect to property P. > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range rdf:Property . > > <http://www.daml.org/2001/03/daml+oil.daml#toClass> a rdf:Property; > rdfs:label "toClass"; > rdfs:comment """ > for onProperty(R, P) and toClass(R, X), read: > i is in class R if and only if for all j, P(i, j) implies type(j, X). > cf OIL ValueType > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range rdfs:Class . > > <http://www.daml.org/2001/03/daml+oil.daml#hasValue> a rdf:Property; > rdfs:label "hasValue"; > rdfs:comment """ > for onProperty(R, P) and hasValue(R, V), read: > i is in class R if and only if P(i, V). > cf OIL HasFiller > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction> . > > <http://www.daml.org/2001/03/daml+oil.daml#hasClass> a rdf:Property; > rdfs:label "hasClass"; > rdfs:comment """ > for onProperty(R, P) and hasClass(R, X), read: > i is in class R if and only if for some j, P(i, j) and type(j, X). > cf OIL HasValue > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range rdfs:Class . > > <http://www.daml.org/2001/03/daml+oil.daml#minCardinality> a >rdf:Property; > rdfs:label "minCardinality"; > rdfs:comment """ > for onProperty(R, P) and minCardinality(R, n), read: > i is in class R if and only if there are at least n distinct j >with P(i, j). > cf OIL MinCardinality > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range <http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger> . > > <http://www.daml.org/2001/03/daml+oil.daml#maxCardinality> a >rdf:Property; > rdfs:label "maxCardinality"; > rdfs:comment """ > for onProperty(R, P) and maxCardinality(R, n), read: > i is in class R if and only if there are at most n distinct j >with P(i, j). > cf OIL MaxCardinality > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range <http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger> . > > <http://www.daml.org/2001/03/daml+oil.daml#cardinality> a >rdf:Property; > rdfs:label "cardinality"; > rdfs:comment """ > for onProperty(R, P) and cardinality(R, n), read: > i is in class R if and only if there are exactly n distinct j >with P(i, j). > cf OIL Cardinality > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range <http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger> . > > <http://www.daml.org/2001/03/daml+oil.daml#hasClassQ> a rdf:Property; > rdfs:label "hasClassQ"; > rdfs:comment """ > property for specifying class restriction with cardinalityQ constraints > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range rdfs:Class . > > <http://www.daml.org/2001/03/daml+oil.daml#minCardinalityQ> >a rdf:Property; > rdfs:label "minCardinality"; > rdfs:comment """ > for onProperty(R, P), minCardinalityQ(R, n) and hasClassQ(R, X), read: > i is in class R if and only if there are at least n distinct j >with P(i, j) > and type(j, X). > cf OIL MinCardinality > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range <http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger> . > > <http://www.daml.org/2001/03/daml+oil.daml#maxCardinalityQ> >a rdf:Property; > rdfs:label "maxCardinality"; > rdfs:comment """ > for onProperty(R, P), maxCardinalityQ(R, n) and hasClassQ(R, X), read: > i is in class R if and only if there are at most n distinct j with P(i, j) > and type(j, X). > cf OIL MaxCardinality > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range <http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger> . > > <http://www.daml.org/2001/03/daml+oil.daml#cardinalityQ> a >rdf:Property; > rdfs:label "cardinality"; > rdfs:comment """ > for onProperty(R, P), cardinalityQ(R, n) and hasClassQ(R, X), read: > i is in class R if and only if there are exactly n distinct j with P(i, j) > and type(j, X). > cf OIL Cardinality > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#Restriction>; > rdfs:range <http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger> . > > <http://www.daml.org/2001/03/daml+oil.daml#ObjectProperty> a >rdfs:Class; > rdfs:label "ObjectProperty"; > rdfs:comment """ > if P is an ObjectProperty, and P(x, y), then y is an object. > """; > rdfs:subClassOf rdf:Property . > > <http://www.daml.org/2001/03/daml+oil.daml#DatatypeProperty> >a rdfs:Class; > rdfs:label "DatatypeProperty"; > rdfs:comment """ > if P is a DatatypeProperty, and P(x, y), then y is a data value. > """; > rdfs:subClassOf rdf:Property . > > <http://www.daml.org/2001/03/daml+oil.daml#inverseOf> a rdf:Property; > rdfs:label "inverseOf"; > rdfs:comment """ > for inverseOf(R, S) read: R is the inverse of S; i.e. > if R(x, y) then S(y, x) and vice versa. > cf OIL inverseRelationOf > """; > rdfs:domain ><http://www.daml.org/2001/03/daml+oil.daml#ObjectProperty>; > rdfs:range ><http://www.daml.org/2001/03/daml+oil.daml#ObjectProperty> . > > <http://www.daml.org/2001/03/daml+oil.daml#TransitiveProperty> >a rdfs:Class; > rdfs:label "TransitiveProperty"; > rdfs:comment """ > if P is a TransitiveProperty, then if P(x, y) and P(y, z) then P(x, z). > cf OIL TransitiveProperty. > """; > rdfs:subClassOf ><http://www.daml.org/2001/03/daml+oil.daml#ObjectProperty> . > > <http://www.daml.org/2001/03/daml+oil.daml#UniqueProperty> a >rdfs:Class; > rdfs:label "UniqueProperty"; > rdfs:comment """ > compare with maxCardinality=1; e.g. integer successor: > if P is a UniqueProperty, then if P(x, y) and P(x, z) then y=z. > cf OIL FunctionalProperty. > """; > rdfs:subClassOf rdf:Property . > > <http://www.daml.org/2001/03/daml+oil.daml#UnambiguousProperty> >a rdfs:Class; > rdfs:label "UnambiguousProperty"; > rdfs:comment """ > if P is an UnambiguousProperty, then if P(x, y) and P(z, y) then x=z. > aka injective. e.g. if firstBorne(m, Susan) > and firstBorne(n, Susan) then m and n are the same. > """; > rdfs:subClassOf ><http://www.daml.org/2001/03/daml+oil.daml#ObjectProperty> . > > <http://www.daml.org/2001/03/daml+oil.daml#List> a rdfs:Class; > rdfs:subClassOf rdf:Seq . > > <http://www.daml.org/2001/03/daml+oil.daml#nil> a :List; > rdfs:comment """ > the empty list; this used to be called Empty. > """ . > > <http://www.daml.org/2001/03/daml+oil.daml#first> a rdf:Property; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#List> . > > <http://www.daml.org/2001/03/daml+oil.daml#rest> a rdf:Property; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#List>; > rdfs:range <http://www.daml.org/2001/03/daml+oil.daml#List> . > > <http://www.daml.org/2001/03/daml+oil.daml#item> a rdf:Property; > rdfs:comment """ > for item(L, I) read: I is an item in L; either first(L, I) > or item(R, I) where rest(L, R). > """; > rdfs:domain <http://www.daml.org/2001/03/daml+oil.daml#List> . > > <http://www.daml.org/2001/03/daml+oil.daml#Ontology> a rdfs:Class; > rdfs:label "Ontology"; > rdfs:comment """ > An Ontology is a document that describes > a vocabulary of terms for communication between > (human and) automated agents. > """ . > > <http://www.daml.org/2001/03/daml+oil.daml#versionInfo> a >rdf:Property; > rdfs:label "versionInfo"; > rdfs:comment """ > generally, a string giving information about this > version; e.g. RCS/CVS keywords > """ . > > <http://www.daml.org/2001/03/daml+oil.daml#imports> a rdf:Property; > rdfs:label "imports"; > rdfs:comment """ > for imports(X, Y) read: X imports Y; > i.e. X asserts the* contents of Y by reference; > i.e. if imports(X, Y) and you believe X and Y says something, > then you should believe it. > Note: \"the contents\" is, in the general case, > an il-formed definite description. Different > interactions with a resource may expose contents > that vary with time, data format, preferred language, > requestor credentials, etc. So for \"the contents\", > read \"any contents\". > """ . > > <http://www.daml.org/2001/03/daml+oil.daml> a :Ontology; > :imports <http://www.w3.org/2000/01/rdf-schema> . > > <http://www.daml.org/2001/03/daml+oil.daml#subPropertyOf> a >rdf:Property; > :samePropertyAs rdfs:subPropertyOf . > > <http://www.daml.org/2001/03/daml+oil.daml#Literal> a rdfs:Class; > :sameClassAs rdfs:Literal . > > <http://www.daml.org/2001/03/daml+oil.daml#Property> a rdfs:Class; > :sameClassAs rdf:Property . > > <http://www.daml.org/2001/03/daml+oil.daml#type> a rdf:Property; > :samePropertyAs rdf:type . > > <http://www.daml.org/2001/03/daml+oil.daml#value> a rdf:Property; > :samePropertyAs rdf:value . > > <http://www.daml.org/2001/03/daml+oil.daml#subClassOf> a rdf:Property; > :samePropertyAs rdfs:subClassOf . > > <http://www.daml.org/2001/03/daml+oil.daml#domain> a rdf:Property; > :samePropertyAs rdfs:domain . > > <http://www.daml.org/2001/03/daml+oil.daml#range> a rdf:Property; > :samePropertyAs rdfs:range . > > <http://www.daml.org/2001/03/daml+oil.daml#label> a rdf:Property; > :samePropertyAs rdfs:label . > > <http://www.daml.org/2001/03/daml+oil.daml#comment> a rdf:Property; > :samePropertyAs rdfs:comment . > > <http://www.daml.org/2001/03/daml+oil.daml#seeAlso> a rdf:Property; > :samePropertyAs rdfs:seeAlso . > > <http://www.daml.org/2001/03/daml+oil.daml#isDefinedBy> a >rdf:Property; > :samePropertyAs rdfs:isDefinedBy; > rdfs:subPropertyOf ><http://www.daml.org/2001/03/daml+oil.daml#seeAlso> . > >#ENDS > >#ENDS ># Command line error: %s illegal option with -pipe -base Dr. James Hendler jhendler@darpa.mil Chief Scientist, DARPA/ISO 703-696-2238 (phone) 3701 N. Fairfax Dr. 703-696-2201 (Fax) Arlington, VA 22203 http://www.cs.umd.edu/~hendler
This archive was generated by hypermail 2.1.4 : 04/02/02 EST