[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: n-ary howto: Fw: [protege-discussion] Re: defining n-arityrelations in Protege
Begin forwarded message: Date: Thu, 8 Jan 2004 10:43:40 +0100 From: "Bernard Vatant" <bernard.vatant@mondeca.com> To: <protege-discussion@SMI.Stanford.EDU> Subject: [protege-discussion] Re: defining n-arity relations in Protege Hi Fusun What you are calling for can be represented using a "spatial situation" class where positions of objects are qualified by properties like "reference object" (card=1), "downSideObject", "leftSideObject" "frontSideObject" and so on (as many roles as you want). This comes from the topic map concept of association. "spatial situation" is an association where objects can play different roles. The association is represented as a class, and roles as properties on this class [1] What you would get in OWL is e.g. <owl:Class rdf:ID="SpatialSituation"> <rdfs:subClassOf> <owl:Restriction> <owl:someValuesFrom> <owl:Class rdf:ID="SpaceLikeObject"/> </owl:someValuesFrom> <owl:onProperty> <owl:FunctionalProperty rdf:about="#referenceObject"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:allValuesFrom rdf:resource="#SpaceLikeObject"/> <owl:onProperty> <owl:ObjectProperty rdf:ID="downSideObject"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:allValuesFrom rdf:resource="#SpaceLikeObject"/> <owl:onProperty> <owl:ObjectProperty rdf:ID="leftSideObject"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <owl:ObjectProperty rdf:ID="frontSideObject"/> </owl:onProperty> <owl:allValuesFrom rdf:resource="#SpaceLikeObject"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> The advantage of this representation is that spatial positions are not properties asserted on objects themselves, but properties of the situation. The situation may change with time, but not the objects, so you could attach time properties to the situation, like one beginTime and one endTime, as following: <owl:DatatypeProperty rdf:ID="beginTime"> <rdfs:domain rdf:resource="#SpatialSituation"/> <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:ID="endTime"> <rdfs:domain rdf:resource="#SpatialSituation"/> <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/> </owl:DatatypeProperty> [1] See http://www.mondeca.com/owl/owltm.htm Bernard Vatant Senior Consultant Knowledge Engineering Mondeca - www.mondeca.com bernard.vatant@mondeca.com > -----Message d'origine----- > De : protege-discussion-bounce@SMI.Stanford.EDU > [mailto:protege-discussion-bounce@SMI.Stanford.EDU]De la part de Fusun > Eryoldas > Envoyé : mercredi 7 janvier 2004 22:11 > À : protege-discussion@SMI.Stanford.EDU > Objet : [protege-discussion] defining n-arity relations in Protege > > > > Hi, > > I was wondering if protege supports defining relations where > arity is more than 2. For example, let's say we have 3 classes > A, B, C, and the relation name is "between" : A is between B and > C. (Chair is between Desk and Wall). I know that I can create > this relationship by defining multiple-cardinality > class-instance slot in class A, but it would be a workaround. Is > there a direct way to define such relationships (3 way or 4 way, > more than binary relations)? Also is there any plugins suppporting this? > > Once I define the relationship, I would also like to display it > visually as in the picture. Is there any plugin that supports > this as well? > > Thanks, > > Fusun > > > > > > > --------------------------------- > Do you Yahoo!? > Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes > > > -- Binary/unsupported file stripped by Ecartis -- > -- Type: image/pjpeg > -- File: 3WayRelationExample.jpg > -- Desc: 3WayRelationExample.jpg > > > ----------------------------------------------------------- > To unsubscribe go to http://protege.stanford.edu/lists.html > ----------------------------------------------------------- To unsubscribe go to http://protege.stanford.edu/lists.html -- ;););) blessed are the geeks -- for they shall inherit the source code :):):)
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]