Simple API for Binary REpresentations (SABRE) in Java
Introduction
This project provides the Java-based implementation of the Simple API for Binary REpresentations (SABRE). The library defines observer-pattern interfaces for processing hierarchically structured, binary-oriented documents, comparable to the Simple API for XML (SAX). Processing can be modularized into a streaming pipeline composed of separate stages, enabling the parsing, transformation and serialization of large binary documents.
License
The SABRE library and its source code is licensed under the GNU Lesser General Public License (LGPL).
Application
SABRE is currently used in the Java Iso Image Creator (JIIC) library and the UDFLib library, which is provided together with SABRE:
- JIIC is a Java-based implementation for creating CD-ROM filesystem images according to ISO 9660, also known as
ECMA-119. It provides support for the El Torito, Joliet
and Rock Ridge extensions and offers an Ant task for integrating the generation of ISO images into your build.xml files. It was written by
Jens Hatlak as part of his diploma thesis. JIIC itself is again used in JNode, a project for creating
an operating system in Java with the help of a tiny, assembler-based kernel, where JIIC is used for generating ISO boot images.
- UDFLib is a Java-based implementation for creating UDF filesystem images for DVDs according to ISO 13346, also known as ECMA-167. Similar to JIIC, UDFLib offers an Ant task for generating UDF images from your build.xml files. UDFLib was written by Björn Stickler as part of his diploma thesis, and Björn kindly allowed the release of his source code under the LGPL together with the SABRE sources.
Publication
- Michael Hartle, Max Mühlhäuser: Introducing a Java-Based Simple API for Binary REpresentations (SABRE).
In: Eighth IEEE International Symposium on Multimedia (ISM'06) . S. 335-340, IEEE Press, New York, NY, 2006.
PDF