ONTOLOGY PRE-PROCESSOR LANGUAGE (OPPL)
IMPORTANT NOTE
There is a new version of OPPL, called
OPPL 2. The main difference with OPPL 1 is the availability of variables. There will be no more releases of OPPL 1, but if you are planning to do annotation processing on your ontology you should still use OPPL 1, as OPPL 2 does not support (yet) annotation processing. It will in the short term.
ABOUT
OPPL is a pre-processor language for manipulating
OWL ontologies. OPPL is based in
Manchester OWL syntax, providing an intuitive syntax for defining macros to be applied in an OWL ontology. The OPPL macros are written in a flat file by the user, and the flat file is processed by the OPPL program, executing the instructions and creating a new ontology. The OPPL macros can be of two kinds: adding/removing entities (classes or properties) or adding/removing axioms (semantic axioms such as restrictions or annotation axioms) to/from entities that have been selected or added. In the case of selecting entities, the selection is made according to a user defined condition. The condition can be an annotation value or an arbitrary semantic expression (e.g.
subClassOf part_of some all (participates_in only (process and interaction))).
A typical OPPL macro, for example, reads as follows:
SELECT subClassOf participates_in some sport;ADD subClassOf participates_in some (event or (part_of
some event));REMOVE label "sports man";
Which means:
- Select any class that has the restriction
participates_in some sport as a necessary condition.
- Add to any selected class the restriction
participates_in some (event or (part_of some event)) as a necessary condition.
- Remove from any selected class the annotation
sports man in the rdfs:label annotation property.
Comments (
#) are ignored by the OPPL program. The reasoner used by OPPL is chosen by the user (
Pellet,
FaCT++ or any
DIG compliant reasoner such as
RacerPro).
DOWNLOAD
Please refer to the sourceforge
download site. The bundle (oppl.tar.gz) includes binaries, source, sample OPPL files and sample ontologies.
DOCUMENTATION
The download bundle includes a sample file with OPPL instructions (test.oppl) as well as information on how to execute OPPL (README.html). Javadoc and a paper about OPPL from
OWLED2008 are also included in the bundle.
LICENSE
OPPL is licensed as LGPL. The other components of OPPL (the
OWL API,
Pellet and
FaCT++) have their own licenses.
CONTACT
Mikel Egaña Aranguren: mikel.eganaaranguren@cs.man.ac.uk