Re: Difference between cardinality=1 and FunctionalProperty?

Both versions have the same domain for serial, so there is no difference
here.

I agree that serial needs to be a DatatypeProperty.

peter


From: "Yuzhong Qu" <yzqu@seu.edu.cn>
Subject: Re: Difference between cardinality=1 and FunctionalProperty?
Date: Wed, 26 Mar 2003 23:04:41 +0800

> 
> I think they are different. 
> In the second one, the property "serial" can be applied to the objects
> other than the gun.
> 
> One more suggestion: The property "serial" should be a DatatypeProperty.
> 
> Yuzhong Qu
> 
> > 
> > Thanks Peter.  So you are saying that if I defined the Gun class like
> this:
> > 
> >      <owl:Class rdf:ID="Gun">
> >           <rdfs:subClassOf>
> >                 <owl:Restriction>
> >                         <owl:onProperty rdf:resource="#serial"/>
> >                         <owl:maxCardinality>1</owl:maxCardinality>
> >                 </owl:Restriction>
> >           </rdfs:subClassOf>
> >      </owl:Class>
> > 
> > then the two forms would be equivalent?  /Roger
> > 
> > 
> > "Peter F. Patel-Schneider" wrote:
> > 
> > > From: "Roger L. Costello" <costello@mitre.org>
> > > Subject: Difference between cardinality=1 and FunctionalProperty?
> > > Date: Wed, 26 Mar 2003 06:39:07 -0500
> > >
> > > >
> > > > Hi Folks,
> > > >
> > > > Aren't the below two forms essentially stating the same thing:
> > > >
> > > >      <owl:Class rdf:ID="Gun">
> > > >           <rdfs:subClassOf>
> > > >                 <owl:Restriction>
> > > >                         <owl:onProperty rdf:resource="#serial"/>
> > > >                         <owl:cardinality>1</owl:cardinality>
> > > >                 </owl:Restriction>
> > > >           </rdfs:subClassOf>
> > > >      </owl:Class>
> > > >
> > > >      <owl:ObjectProperty rdf:ID="serial">
> > > >            <rdfs:domain rdf:resource="#Gun"/>
> > > >            <rdfs:range rdf:resource="&rdfs;#Literal"/>
> > > >      </owl:ObjectProperty>
> > > >
> > > > VERSUS
> > > >
> > > >      <owl:Class rdf:ID="Gun"/>
> > > >
> > > >      <owl:FunctionalProperty rdf:ID="serial">
> > > >           <rdfs:domain rdf:resource="Gun" />
> > > >           <rdfs:range  rdf:resource="&rdfs;#Literal"/>
> > > >      </owl:FunctionalProperty>
> > > >
> > > > Both forms state that an instance of Gun must have exactly one value
> for
> > > > the serial property; e.g.,
> > > >
> > > >      <Gun rdf:ID="SmithWesson">
> > > >           <serial>ABCD</serial>
> > > >      </Gun>
> > > >
> > > > Correct?  /Roger
> > > >
> > >
> > > Not correct.  Functional properties are only partial functional.
> Making
> > > functional properties be total functional would cause extreme problems.
> > >
> > > However, replacing cardinality with maxCardinality above would do the
> > > trick.
> > >
> > > Peter F. Patel-Schneider
> > > Bell Labs Research
> > > Lucent Technologies
> > >
> > > PS: It would be better to make the range of serial be xsd:string.
> > 
> > 
> > 
> 

Received on Wednesday, 26 March 2003 12:11:10 UTC