Hey everyone. I'm working on a "for fun" model and application. I have a
situation where a Person has four integer properties, and, depending on which
of those four integers is the largest, that Person should be a specific
subclass of Person. I'm trying to figure out how to accomplish this, but am
stuck.
For the sake of the discussion, let's say I have the following:
conditionaltest:Person
a owl:Class ;
rdfs:subClassOf owl:Thing .
conditionaltest:PersonTypeA
a owl:Class ;
rdfs:subClassOf conditionaltest:Person .
conditionaltest:PersonTypeB
a owl:Class ;
rdfs:subClassOf conditionaltest:Person .
conditionaltest:hasIntegerAValue
a owl:DatatypeProperty ;
rdfs:range xsd:integer .
conditionaltest:hasIntegerBValue
a owl:DatatypeProperty ;
rdfs:range xsd:integer .
conditionaltest:Person_1
a conditionaltest:Person ;
conditionaltest:hasIntegerAValue
5 ;
conditionaltest:hasIntegerBValue
10 .
Now what I want to do is, based on the fact that 10 is greater than 5, assert:
conditionaltest:Person_1 rdfs:subClassOf conditionaltest:PersonTypeB .
Any thoughts on how this can be done using a SPARQL CONSTRUCT, SPIN, or SPARQL
Motion? I thought about using a SPARQL IF, but can't figure out how to make an
assertion based on a returned value from that (would be great if we could make
conditional assertions inside the IF block).
Adam
--
-- You received this message because you are subscribed to the Google
Group "TopBraid Suite Users", the topics of which include Enterprise Vocabulary
Network (EVN), TopBraid Composer, TopBraid Live,
TopBraid Ensemble, SPARQLMotion, SPARQL Web Pages and SPIN.
To post to this group, send email to
[email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/topbraid-users?hl=en