8.2 The Jena Semantic Web Framework


Jena is implemented in the Java programming language. These Java-based abstractions translate the statements and constructs of the Semantic Web into useful programming artifacts such as Java classes, objects, methods, and attributes.
The Jena Semantic Web Framework maintains a consistent treatment of the Semantic Web through its use of Java classes and variables.
The Jena Framework employs the following major Java classes:
Resource—classes representing an element contained within a statement such as a subject, predicate, or object.
Statement—a Semantic Web triple containing a subject, predicate, and object.
Graph—Basic method for maintaining Semantic Web data.
Model—a model builds on the basic graph to offer rich interactions with Semantic Web data.
Query and ResultSet—the query employs SPARQL with results returned as ResultSet.
Reasoner—contains the reasoner processing via either internal or external reasoning.
In addition to offering classes for typical Semantic Web constructs, Jena offers classes to convert ontologies to Java classes.
Jena offers a Java class, schemagen, to generate a Java class description of a Semantic Web ontology or schema.