org.xmldb.api.modules

Interface XMLResource

public interface XMLResource extends Resource

Provides access to XML resources stored in the database. An XMLResource can be accessed either as text XML or via the DOM or SAX APIs.

The default behavior for getContent and setContent is to work with XML data as text so these methods work on String content.

Field Summary
static StringRESOURCE_TYPE
Method Summary
NodegetContentAsDOM()
Returns the content of the Resource as a DOM Node.
voidgetContentAsSAX(ContentHandler handler)
Allows you to use a ContentHandler to parse the XML data from the database for use in an application.
StringgetDocumentId()
Returns the unique id for the parent document to this Resource or null if the Resource does not have a parent document.
voidsetContentAsDOM(Node content)
Sets the content of the Resource using a DOM Node as the source.
ContentHandlersetContentAsSAX()
Sets the content of the Resource using a SAX ContentHandler.

Field Detail

RESOURCE_TYPE

public static final String RESOURCE_TYPE

Method Detail

getContentAsDOM

public Node getContentAsDOM()
Returns the content of the Resource as a DOM Node.

Returns: The XML content as a DOM Node

Throws: XMLDBException with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

getContentAsSAX

public void getContentAsSAX(ContentHandler handler)
Allows you to use a ContentHandler to parse the XML data from the database for use in an application.

Parameters: handler the SAX ContentHandler to use to handle the Resource content.

Throws: XMLDBException with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.
ErrorCodes.INVALID_RESOURCE if the ContentHandler provided is null.

getDocumentId

public String getDocumentId()
Returns the unique id for the parent document to this Resource or null if the Resource does not have a parent document. getDocumentId() is typically used with Resource instances retrieved using a query. It enables accessing the parent document of the Resource even if the Resource is a child node of the document. If the Resource was not obtained through a query then getId() and getDocumentId() will return the same id.

Returns: the id for the parent document of this Resource or null if there is no parent document for this Resource.

Throws: XMLDBException with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.

setContentAsDOM

public void setContentAsDOM(Node content)
Sets the content of the Resource using a DOM Node as the source.

Parameters: content The new content value

Throws: XMLDBException with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.
ErrorCodes.INVALID_RESOURCE if the content value provided is null.
ErrorCodes.WRONG_CONTENT_TYPE if the content provided in not a valid DOM Node.

setContentAsSAX

public ContentHandler setContentAsSAX()
Sets the content of the Resource using a SAX ContentHandler.

Returns: a SAX ContentHandler that can be used to add content into the Resource.

Throws: XMLDBException with expected error codes.
ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.