Protege is an OWL editor written in Java. See also Jena and Pellet.

  1. Integrating Protege SWRL rules into a Java application


IllegalArgumentException: null Source)  

I got this error when I was opening an OWL ontology with the following definition line, and was trying to create new Annotations: <owl:Ontology rdf:about=""/>

The cause of the exception was actually:

Caused by: Illegal character in fragment at index 29:
        at$ Source)
        at$Parser.checkChars(Unknown Source)
        at$Parser.parse(Unknown Source)
        at<init>(Unknown Source)
        ... 35 more

Changing it to this resolved the error: <owl:Ontology rdf:about=""/>

Writing Property Chains

To write a property chain in Protege, you need to use the o operator, e.g.:

parent o brother -> uncle