Re: LANG: OWL non-xml syntax

Frank van Harmelen wrote:

> Jonathan Borden wrote:
> >
> > 1: What distinguishes "DefinedClass" from "PrimitiveClass", there is
> > in the abstract syntax which helps?
> A PrimitiveClass lists necessary conditions for membership, but these do
> have to be sufficient conditions. Thus:
> if x is a member of the class,
> then the conditions described in the definition are true for x
> (but not necessarily the other way round).
> A DefinedClass lists necesary and sufficient conditions for membership,
> not only is an member of the class guaranteed to satisfy these conditions,
> also anything for which these conditions hold is a member of the class.

Can I ask a naive question? (well I will :-) Under what specific conditions,
for what we are doing specifically here, is it important to make this
distinction? -- I ask this because my understanding is that DAML+OIL does
not currently make this distinction.

Is a primitive class something akin to an "abstract base class" that is to
say, it is intended to be used in defining other classes, and not to have
its own 'direct' membership ... if so would the keyword "abstact" be a good
way to distinguish a PrimitiveClass from a DefinedClass in the syntax (I
need at least a keyword to make this LALR(1) :-)

> > 2: What is the syntactic differenence between an "Individual" and a
> Not sure what you mean. There is no symbol "Fact" in [1].
> A "<fact>" which is of the form Indivisual(...), states facts about an

This was my assumption, I just wanted to be sure.

for example, suppose:

individual foo(
    property ex:color(value blue)

would this translate to the RDF:

<rdf:Description rdf:ID="foo">
    <ex:color rdf:resource="#blue"/>

as opposed to

<daml:Class rdf:ID="foo">
            <daml:onProperty rdf:resource="ex:color"/>
            <daml:toClass rdf:resource="#blue"/>



Received on Friday, 22 March 2002 17:40:29 UTC