In Protégé (4.2.0, anyways, but I'd expect the same is true for 4.3), you don't need to add the prefix swrlb:
in the editor. Just use greaterThan
. For instance, if you type this in the editor:
you'll get:
Question
I am using Protege 4.3 and SWRL to make some rules with Pellet as a reasoner.
I am trying to use the SWRL builtins but i cannot make it work at all.
The rule is correct but Protege does not seem to recognise at all the builtin (e.g. swrlb:greaterThan)
Could you inform me on the process necessary to make Protege 4.3 identify the SWRL builtins?
Here is an example of a rule:
Asset(?p), id(?p, ?x), swrlb:greaterThan(?x, 10) -> State(?p)
My problem is that it doesn't seem to recognize at all the swrlb:greaterThan
. The error says:
OWLRuntimeException: org.protege.editor.owl.model.classexpression.OWLExpressionParserException: Encountered swrlb:greaterThan at line 1 column 30.
Solution 2
In Protégé (4.2.0, anyways, but I'd expect the same is true for 4.3), you don't need to add the prefix swrlb:
in the editor. Just use greaterThan
. For instance, if you type this in the editor:
you'll get:
OTHER TIPS
Class: State
id some xsd:int[> "10"^^xsd:int]
Currently Protege (I'm using the v 5.5.0) doesn't support swrlb on reasoning (Hermit, Pellet, ...). You can:
You should now see the entities with id>10 with "State" in the Types list