|
View:
New views
3 Messages
—
Rating Filter:
Alert me
|
|
|
Restricting property instances in OWLHi,
I am trying to define an OWL ontology that lets me do the following. Consider that I have an Edge which connects two Nodes. However, I wish to say that the Edge source is not the same as the Edge target, i.e. the Edge does not connect the same Node to itself. Is this possible to do in OWL, i.e. define that "source != target"? It seems that the restrictions apply only to classes and data types, not to instances. I have also thought of having Node <- EdgeSource Node <- EdgeTarget (these two classifications are disjoint) Edge has property "source : EdgeSource" and "target : EdgeTarget". This would make sure that the same node cannot be connected, but also in this case the same node could not simultaneously be the source and the target of two distinct Edges. Any assistance or ideas would be appreciated. I am also look at rules through OWL+SWRL. Thanks Jevon |
|
|
Re: Restricting property instances in OWLHi Jevon,
I guess that you want to say this *in general* for "P-edges", where P is a property? E.g., you might want to say that "nobody is their own child" by saying that the property "hasChild" doesn't have any loops? Then you can add an axiom saying SubClassOf(Thing ObjectComplementOf( ObjectHasSelf(HasChild)) or (in Manchester Syntax) Class Thing SubClassOf Not hasChild self If, on the other hand, you really only have 2 nodes, x and y, related by a property edge, you can simply say DifferentIndividual(x y) Cheers, Uli On 30 Jul 2009, at 03:35, Jevon Wright wrote: > Hi, > > I am trying to define an OWL ontology that lets me do the following. > Consider that I have an Edge which connects two Nodes. However, I > wish to say that the Edge source is not the same as the Edge target, > i.e. the Edge does not connect the same Node to itself. > > Is this possible to do in OWL, i.e. define that "source != target"? > It seems that the restrictions apply only to classes and data types, > not to instances. > > I have also thought of having > Node <- EdgeSource > Node <- EdgeTarget (these two classifications are disjoint) > Edge has property "source : EdgeSource" and "target : EdgeTarget". > > This would make sure that the same node cannot be connected, but > also in this case the same node could not simultaneously be the > source and the target of two distinct Edges. > > Any assistance or ideas would be appreciated. I am also look at > rules through OWL+SWRL. > > Thanks > Jevon |
|
|
Re: Restricting property instances in OWLOn 30 Jul 2009, at 04:35, Jevon Wright wrote:
> Hi, > > I am trying to define an OWL ontology that lets me do the following. > Consider that I have an Edge which connects two Nodes. However, I > wish to say that the Edge source is not the same as the Edge target, > i.e. the Edge does not connect the same Node to itself. > > Is this possible to do in OWL, i.e. define that "source != target"? > It seems that the restrictions apply only to classes and data types, > not to instances. Try ObjectHasSelf. I.e., Say that edge domain SourceNode. SourceNode equiv Node and complementOf(ObjectHasSelf(edge)) (Sorry for the mix of syntaxes.) This says that a Soruce Node is exactly those nodes which are not edge related to themselves. See: http://www.w3.org/TR/2009/CR-owl2-syntax-20090611/#Self-Restriction This is only in OWL 2, of course. Cheers, Bijan. |
| Free embeddable forum powered by Nabble | Forum Help |