Try adding this rule to the owl:Thing class in TBC:
CONSTRUCT {?ind a ?c.}
WHERE {
?c owl:onProperty ?p.
?c owl:someValuesFrom ?values .
?values owl:withRestrictions ?y.
?y rdf:first ?v1.
?y rdf:rest rdf:nil.
?v1 xsd:minInclusive ?o.
?ind ?p ?obj.
FILTER(?obj >= ?o)
}
This should catch any cases specific to your example, as well as any other
cases defined with a "minInclusive" restriction. A very similar pattern
can be followed for other datatype facets (minExclusive, maxInclusive and
Exclusive, length, pattern, etc.) If you want to restrain more than one
facet (both min and max values), you can extend the pattern to look for 2
elements in the "values" variable.
On Thursday, December 5, 2013 4:08:51 AM UTC-5, Wasin wrote:
>
> Hello,
> i'm trying to define the datatype restriction in the TBC(v4.3.1) to
> classify some individual of person that have age more than 18.
> It like the approach 1 that describe in this link:
> https://groups.google.com/forum/#!msg/topbraid-users/jc7GjLYo4l8/4HLCEpM8nTIJ
> .
>
> Firstly 1) i insert the following code in Adult class:
>
> Manchester syntax:
> owl:equivalentClass
> age some xsd:integer[>= 18]
>
> Turtle syntax:
> :Adult
> a owl:Class ;
> rdfs:subClassOf :Person ;
> owl:equivalentClass
> [ a owl:Restriction ;
> owl:onProperty :age ;
> owl:someValuesFrom
> [ a rdfs:Datatype ;
> owl:onDatatype xsd:integer ;
> owl:withRestrictions
> ([ xsd:minInclusive 18
> ])
> ]
> ] .
>
> 2) and create new individual of Person class with have age 50:
>
> :Person_1
> a :Person ;
> :age 50 .
>
> 3) Then, i classify them with owlrl-all rule
>
> But, it doesn't successful (the individual doesn't be an Adult class).
>
> Despite i change
> age some xsd:integer[>= 18] ------> age some xsd:integer ->>
> doesn't success
> ------> age
> some rdfs:Literal ->> doesn't success
> Maybe the problem come from xsd:minInclusive in Adult class. Because, i
> try to change datatypeProperty to some objectProperty in owl:equivalentClass
> (:objectProperty1 some Thing). I classify them and it success
> ------->
> objectProperty1
> some Thing -->> success, the individual will be an Adult class
>
> What is wrong?
> Anyone have any suggestion to solve this problem.
>
> Following approach that i do:
>
> - import owlrl-all on folder TopBraid/Spin
> - select owl 2 RL on ontology profile
>
> My code attach within this message.
>
> Thanks,
> wasin
>
--
-- 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 Insight,
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
---
You received this message because you are subscribed to the Google Groups
"TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.