0

I would like to express (in a General class axiom in Protege 5) that if something is assigned to A and has a value B in range 1.0 to 2.5, it belongs to Class C (B is a dataProperty). But I don't know how to do that. I would start like

(assignedTo some A) and ("has value B and it's in range 1.0 to 2.5") SubclassOf C.

How can I express the part about B? I don't even know if the rest works.

Any help would be appreciated.

grizzthedj
  • 7,131
  • 16
  • 42
  • 62
  • I found this here: https://stackoverflow.com/questions/38716136/general-class-axioms It says Sport subClassOf (player value Peter) means that every instance of Sport has Peter as a value for the property player. Is the order of my Axiom wrong? Does it have to be C SubClassOf (B value [range])? But I have still no idea if expressing a range here is even possible:/ – Schieva Feb 19 '18 at 10:56

1 Answers1

2

Yes, this can be done. Here is a sample ontology that will infer that individual x is of type C.

Datatype: xsd:double 

DataProperty: hasValue
    Range: xsd:double

Class: C
    EquivalentTo: hasValue some xsd:double[>= "1.0"^^xsd:double , <= "2.5"^^xsd:double]

Individual: x
    Facts:  hasValue  "1.2"^^xsd:double  
Henriette Harmse
  • 4,167
  • 1
  • 13
  • 22