Preface
Heavy influence from Hibernate Reference Manual. Needs an update.
Working with object-oriented software and RDF can be cumbersome and time consuming. Topaz is an object/triple mapping tool for Java environments. The term object/triple mapping (OTM) refers to the technique of mapping a data representation from an object model to RDF statements in a triple-store.
Note: Currently the only supported triple-store is Mulgara.
Topaz not only takes care of the mapping from Java classes to RDF triples (and from Java data types to xsd data types suitable for typed literals), but also provides data query and retrieval facilities and can significantly reduce development time otherwise spent with manual data handling in TQL and in custom code to connect to the RDF triple-stores.
In addition Topaz provides support for literal values that are too large to be stored in a triple-store to be stored in an ancillary blob-store.
Topaz goal is to relieve the developer from almost all of the common data persistence related programming tasks. Topaz may not be the best solution for data-centric applications that needs inferencing or other logic to pre-process the RDF triples before being presented to the application. It is most useful with object-oriented domain models and business logic in the Java-based middle-tier. However, Topaz can certainly help you to remove or encapsulate vendor-specific triple-store access code and will help with the common task of result set translation from a tabular representation to a graph of objects.
If you are new to Topaz and Object/Triple Mapping or even Java, please follow these steps:
- Read Chapter 1, Introduction to Topaz for a tutorial with step-by-step instructions.
- Read Chapter 2, Architecture to understand the environments where Topaz can be used.
- Have a look at the samples/ directory in the Topaz distribution, it contains a simple standalone application. Install maven2 and simply type 'mvn install' to run this application.
- Use this reference documentation as your primary source of information. If you are familiar with Hibernate, you should see most of the concepts being the same. However there are enough differences between Topaz and Hibernate and when in doubt, consult this reference guide.
- See Topaz for links to FAQs and other project related information.
