org.xmldb.api.modules

Interface XMLResource

All Superinterfaces:
Resource
Known Implementing Classes:
SimpleXMLResource, XMLResourceImpl

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 String
RESOURCE_TYPE

Method Summary

Node
getContentAsDOM()
Returns the content of the Resource as a DOM Node.
void
getContentAsSAX(ContentHandler handler)
Allows you to use a ContentHandler to parse the XML data from the database for use in an application.
String
getDocumentId()
Returns the unique id for the parent document to this Resource or null if the Resource does not have a parent document.
void
setContentAsDOM(Node content)
Sets the content of the Resource using a DOM Node as the source.
ContentHandler
setContentAsSAX()
Sets the content of the Resource using a SAX ContentHandler.

Methods inherited from interface org.xmldb.api.base.Resource

getContent, getId, getParentCollection, getResourceType, setContent

Field Details

RESOURCE_TYPE

public static final String RESOURCE_TYPE

Method Details

getContentAsDOM

public Node getContentAsDOM()
            throws XMLDBException
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)
            throws XMLDBException
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()
            throws XMLDBException
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)
            throws XMLDBException
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()
            throws XMLDBException
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.