org.odftoolkit.odfdom.dom
Class OdfSchemaDocument

java.lang.Object
  extended by org.odftoolkit.odfdom.pkg.OdfPackageDocument
      extended by org.odftoolkit.odfdom.dom.OdfSchemaDocument
All Implemented Interfaces:
Closeable
Direct Known Subclasses:
OdfDocument

public abstract class OdfSchemaDocument
extends OdfPackageDocument

A document in ODF is from the package view a directory with a media type. If the media type represents a document described by the ODF 1.2 Schema, certain files are assumed within: content.xml, styles.xml, metadata.xml and settings.xml. The class represents such a document, providing easier access to its XML files.


Nested Class Summary
static class OdfSchemaDocument.OdfXMLFile
          This enum contains all possible standardized XML ODF files of the OpenDocument document.
 
Nested classes/interfaces inherited from class org.odftoolkit.odfdom.pkg.OdfPackageDocument
OdfPackageDocument.Resource
 
Field Summary
protected  OdfContentDom mContentDom
           
protected  OdfOfficeStyles mDocumentStyles
           
protected  OdfMetaDom mMetaDom
           
protected  OdfSettingsDom mSettingsDom
           
protected  OdfStylesDom mStylesDom
           
 
Fields inherited from class org.odftoolkit.odfdom.pkg.OdfPackageDocument
mDocumentMediaType, mDocumentPathInPackage, mPackage, ROOT_DOCUMENT_PATH
 
Constructor Summary
protected OdfSchemaDocument(OdfPackage pkg, String internalPath, String mediaTypeString)
          Creates a new OdfSchemaDocument.
 
Method Summary
 void close()
          Close the OdfPackage and release all temporary created data.
 String getBaseURI()
          Get the URI, where this ODF document is stored.
 com.hp.hpl.jena.rdf.model.Model getBookmarkRDFMetadata()
          Get in-content metadata model of bookmarks
 OdfContentDom getContentDom()
          Return the ODF type-based content DOM of the content.xml
 InputStream getContentStream()
          Gets the ODF content.xml file as stream.
 OdfOfficeStyles getDocumentStyles()
           
 OdfFileDom getFileDom(OdfSchemaDocument.OdfXMLFile file)
           
 com.hp.hpl.jena.rdf.model.Model getInContentMetadata()
          Get In Content RDF Metadata through GRDDL XSLT http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415070_253892949
 com.hp.hpl.jena.rdf.model.Model getInContentMetadataFromCache()
          Get in-content metadata cache model
 com.hp.hpl.jena.rdf.model.Model getManifestRDFMetadata()
          Get RDF metadata from manifest.rdf and those rdf files registered in the manifest.xml as "application/rdf+xml" through GRDDL XSLT http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415072_253892949
 Map<String,StyleMasterPageElement> getMasterPages()
          Deprecated. This method will be moved to the generated sources as soon code generation was improved!
 OdfMetaDom getMetaDom()
          Return the ODF type-based metadata DOM of the meta.xml
 InputStream getMetaStream()
          Gets the ODF metadata.xml file as stream.
 OdfOfficeMasterStyles getOfficeMasterStyles()
          return the office:master-styles element of this document.
 OdfOfficeStyles getOrCreateDocumentStyles()
           
 com.hp.hpl.jena.rdf.model.Model getRDFMetadata()
          Get all two types of RDF Metadata through GRDDL XSLT: http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415068_253892949
 OdfSettingsDom getSettingsDom()
          Return the ODF type-based settings DOM of the settings.xml
 InputStream getSettingsStream()
          Gets the ODF settings.xml file as stream.
 OdfStylesDom getStylesDom()
          Return the ODF type-based styles DOM of the styles.xml
 InputStream getStylesStream()
          Gets the ODF style.xml file as stream.
 List<TableTableElement> getTables()
          Return a list of table features in this document.
protected  String getXMLFilePath(OdfSchemaDocument.OdfXMLFile file)
          Get the relative path for an embedded ODF document including its file name.
 
Methods inherited from class org.odftoolkit.odfdom.pkg.OdfPackageDocument
flushDoms, getDocumentPath, getFileDom, getMediaTypeString, getPackage, getXMLFileMetadata, insertDocument, isExternalReference, isRootDocument, loadDocument, loadSubDocument, normalizeDocumentPath, removeDocument, save, save, setMediaTypeString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mContentDom

protected OdfContentDom mContentDom

mStylesDom

protected OdfStylesDom mStylesDom

mMetaDom

protected OdfMetaDom mMetaDom

mSettingsDom

protected OdfSettingsDom mSettingsDom

mDocumentStyles

protected OdfOfficeStyles mDocumentStyles
Constructor Detail

OdfSchemaDocument

protected OdfSchemaDocument(OdfPackage pkg,
                            String internalPath,
                            String mediaTypeString)
Creates a new OdfSchemaDocument.

Parameters:
pkg - - the ODF Package that contains the document. A baseURL is being generated based on its location.
internalPath - - the directory path within the package from where the document should be loaded.
mediaTypeString - - media type of stream. If unknown null can be used.
Method Detail

getContentStream

public InputStream getContentStream()
                             throws Exception
Gets the ODF content.xml file as stream.

Returns:
- a stream of the ODF content 'content.xml' file
Throws:
Exception - - if the stream can not be extracted

getStylesStream

public InputStream getStylesStream()
                            throws Exception
Gets the ODF style.xml file as stream.

Returns:
- a stream of the ODF style 'styles.xml' file
Throws:
Exception - - if the stream can not be extracted

getSettingsStream

public InputStream getSettingsStream()
                              throws Exception
Gets the ODF settings.xml file as stream.

Returns:
- a stream of the ODF settings 'setting.xml' file
Throws:
Exception - - if the stream can not be extracted

getMetaStream

public InputStream getMetaStream()
                          throws Exception
Gets the ODF metadata.xml file as stream.

Returns:
- a stream of the ODF metadata 'meta.xml' file
Throws:
Exception - - if the stream can not be extracted

getXMLFilePath

protected String getXMLFilePath(OdfSchemaDocument.OdfXMLFile file)
Get the relative path for an embedded ODF document including its file name.

Parameters:
file - represents one of the standardized XML ODF files.
Returns:
path to embedded ODF XML file relative to ODF package root.

getBaseURI

public String getBaseURI()
Get the URI, where this ODF document is stored.

Returns:
the URI to the ODF document. Returns null if document is not stored yet.

getContentDom

public OdfContentDom getContentDom()
                            throws Exception
Return the ODF type-based content DOM of the content.xml

Returns:
ODF type-based content DOM or null if no content.xml exists.
Throws:
Exception - if content DOM could not be initialized

getStylesDom

public OdfStylesDom getStylesDom()
                          throws Exception
Return the ODF type-based styles DOM of the styles.xml

Returns:
ODF type-based styles DOM or null if no styles.xml exists.
Throws:
Exception - if styles DOM could not be initialized

getMetaDom

public OdfMetaDom getMetaDom()
                      throws Exception
Return the ODF type-based metadata DOM of the meta.xml

Returns:
ODF type-based meta DOM or null if no meta.xml exists.
Throws:
Exception - if meta DOM could not be initialized

getSettingsDom

public OdfSettingsDom getSettingsDom()
                              throws Exception
Return the ODF type-based settings DOM of the settings.xml

Returns:
ODF type-based settings DOM or null if no settings.xml exists.
Throws:
Exception - if settings DOM could not be initialized

getDocumentStyles

public OdfOfficeStyles getDocumentStyles()
Returns:
the office:styles element from the styles dom or null if there is no such element.

getOfficeMasterStyles

public OdfOfficeMasterStyles getOfficeMasterStyles()
return the office:master-styles element of this document.

Returns:
the office:master-styles element

getOrCreateDocumentStyles

public OdfOfficeStyles getOrCreateDocumentStyles()
Returns:
the office:styles element from the styles dom. If there is not yet such an element, it is created.

getTables

public List<TableTableElement> getTables()
Return a list of table features in this document.

Returns:
a list of table features in this document.

getMasterPages

public Map<String,StyleMasterPageElement> getMasterPages()
                                                  throws Exception
Deprecated. This method will be moved to the generated sources as soon code generation was improved!

ToDo: Instead of adding all elements using an index to the document, we might add a pattern to the code generation to create a HashMap either on demand (whenever such a structure is required from the user) or by default

Throws:
Exception

close

public void close()
Close the OdfPackage and release all temporary created data. Acter execution of this method, this class is no longer usable. Do this as the last action to free resources. Closing an already closed document has no effect. Note that this will not close any cached documents.

Specified by:
close in interface Closeable
Overrides:
close in class OdfPackageDocument

getFileDom

public OdfFileDom getFileDom(OdfSchemaDocument.OdfXMLFile file)
                      throws Exception
Throws:
Exception

getRDFMetadata

public com.hp.hpl.jena.rdf.model.Model getRDFMetadata()
                                               throws Exception
Get all two types of RDF Metadata through GRDDL XSLT: http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415068_253892949

Throws:
Exception

getInContentMetadata

public com.hp.hpl.jena.rdf.model.Model getInContentMetadata()
                                                     throws Exception
Get In Content RDF Metadata through GRDDL XSLT http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415070_253892949

Throws:
Exception

getInContentMetadataFromCache

public com.hp.hpl.jena.rdf.model.Model getInContentMetadataFromCache()
                                                              throws Exception
Get in-content metadata cache model

Returns:
The in-content metadata cache model
Throws:
Exception

getManifestRDFMetadata

public com.hp.hpl.jena.rdf.model.Model getManifestRDFMetadata()
                                                       throws Exception
Get RDF metadata from manifest.rdf and those rdf files registered in the manifest.xml as "application/rdf+xml" through GRDDL XSLT http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part1.html#__RefHeading__1415072_253892949

Throws:
Exception

getBookmarkRDFMetadata

public com.hp.hpl.jena.rdf.model.Model getBookmarkRDFMetadata()
                                                       throws Exception
Get in-content metadata model of bookmarks

Returns:
The in-content metadata model of bookmarks
Throws:
Exception


Copyright © 2008-2017 The Apache Software Foundation. All Rights Reserved.