public class DOM4JDocumentWrapper extends DOM4JNodeWrapper implements DocumentInfo
This class should have been named Root; it is used not only for the root of a document, but also for the root of a result tree fragment, which is not constrained to contain a single top-level element.
Modifier and Type | Field and Description |
---|---|
protected String |
baseURI |
protected Configuration |
config |
protected long |
documentNumber |
docWrapper, index, node, nodeKind
ALL_NAMESPACES, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES
Constructor and Description |
---|
DOM4JDocumentWrapper(org.dom4j.Document doc,
String baseURI,
Configuration config)
Create a Saxon wrapper for a dom4j document
|
Modifier and Type | Method and Description |
---|---|
String |
getBaseURI()
Get the Base URI for the node, that is, the URI used for resolving a relative URI contained
in the node.
|
Configuration |
getConfiguration()
Get the configuration previously set using setConfiguration
(or the default configuraton allocated automatically)
|
long |
getDocumentNumber()
Get the unique document number
|
NamePool |
getNamePool()
Get the name pool used for the names in this document
|
SchemaType |
getSchemaType()
Get the type annotation of this node, if any.
|
String |
getSystemId()
Get the System ID for the node.
|
int |
getTypeAnnotation()
Get the type annotation.
|
String[] |
getUnparsedEntity(String name)
Get the unparsed entity with a given name
|
Iterator<String> |
getUnparsedEntityNames()
Get the list of unparsed entities defined in this document
|
Object |
getUserData(String key)
Get user data held in the document node.
|
boolean |
isTyped()
Ask whether the document contains any nodes whose type annotation is anything other than
UNTYPED
|
static org.dom4j.Branch |
searchForParent(org.dom4j.Branch subtree,
org.dom4j.Node node)
DOM4J does not guarantee to provide the parent of a node, but XDM requires this.
|
NodeInfo |
selectID(String id,
boolean getParent)
Get the element with a given ID, if any
|
void |
setConfiguration(Configuration config)
Set the configuration (containing the name pool used for all names in this document).
|
void |
setUserData(String key,
Object value)
Set user data on the document node.
|
NodeInfo |
wrap(org.dom4j.Node node)
Wrap a node in the dom4j document.
|
compareOrder, copy, generateId, getAttributeValue, getAttributeValue, getDeclaredNamespaces, getDisplayName, getDocumentRoot, getFirstChild, getLocalPart, getNextSibling, getNodeKind, getParent, getPrefix, getPreviousSibling, getRoot, getSiblingPosition, getStringValueCS, getSuccessorElement, getUnderlyingNode, getURI, hasChildNodes, isSameNodeInfo, iterateAttributes, iterateChildren, iterateDescendants, iterateSiblings, makeWrapper, makeWrapper, setSystemId
atomize, comparePosition, equals, getColumnNumber, getFingerprint, getLineNumber, getNameCode, getRealNode, getStringValue, hashCode, head, isId, isIdref, isNilled, iterate, iterateAxis, iterateAxis
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
atomize, compareOrder, comparePosition, copy, equals, generateId, getAttributeValue, getColumnNumber, getDeclaredNamespaces, getDisplayName, getDocumentRoot, getFingerprint, getLineNumber, getLocalPart, getNameCode, getNodeKind, getParent, getPrefix, getRoot, getStringValue, getURI, hasChildNodes, hashCode, isId, isIdref, isNilled, isSameNodeInfo, iterateAxis, iterateAxis
setSystemId
getStringValueCS, head
protected Configuration config
protected String baseURI
protected long documentNumber
public DOM4JDocumentWrapper(org.dom4j.Document doc, String baseURI, Configuration config)
doc
- The dom4j documentbaseURI
- The base URI for all the nodes in the documentconfig
- The Saxon configurationpublic NodeInfo wrap(org.dom4j.Node node)
node
- The node to be wrapped. This must be a node in the same document
(the system does not check for this).public boolean isTyped()
isTyped
in interface DocumentInfo
public String getBaseURI()
AbstractNodeWrapper
getBaseURI
in interface NodeInfo
getBaseURI
in class AbstractNodeWrapper
public String getSystemId()
getSystemId
in interface Source
getSystemId
in interface NodeInfo
getSystemId
in class DOM4JNodeWrapper
public long getDocumentNumber()
getDocumentNumber
in interface NodeInfo
getDocumentNumber
in class DOM4JNodeWrapper
public NodeInfo selectID(String id, boolean getParent)
selectID
in interface DocumentInfo
id
- the required ID valuegetParent
- public Iterator<String> getUnparsedEntityNames()
getUnparsedEntityNames
in interface DocumentInfo
public String[] getUnparsedEntity(String name)
getUnparsedEntity
in interface DocumentInfo
name
- the name of the entitypublic Configuration getConfiguration()
getConfiguration
in interface NodeInfo
getConfiguration
in class DOM4JNodeWrapper
public NamePool getNamePool()
getNamePool
in interface NodeInfo
getNamePool
in class AbstractNodeWrapper
public void setConfiguration(Configuration config)
config
- the configurationpublic int getTypeAnnotation()
getTypeAnnotation
in interface NodeInfo
getTypeAnnotation
in class AbstractNodeWrapper
For elements and attributes, this is the type annotation as defined in XDM. For document nodes, it should be one of XS_UNTYPED if the document has not been validated, or XS_ANY_TYPE if validation has taken place (that is, if any node in the document has an annotation other than Untyped or UntypedAtomic).
public SchemaType getSchemaType()
Types derived from a DTD are not reflected in the result of this method.
getSchemaType
in interface NodeInfo
getSchemaType
in class AbstractNodeWrapper
public void setUserData(String key, Object value)
getUserData(java.lang.String)
setUserData
in interface DocumentInfo
key
- A string giving the name of the property to be set. Clients are responsible
for choosing a key that is likely to be unique. Must not be null. Keys used internally
by Saxon are prefixed "saxon:".value
- The value to be set for the property. May be null, which effectively
removes the existing value for the property.public Object getUserData(String key)
setUserData(java.lang.String, java.lang.Object)
getUserData
in interface DocumentInfo
key
- A string giving the name of the property to be retrieved.public static org.dom4j.Branch searchForParent(org.dom4j.Branch subtree, org.dom4j.Node node)
subtree
- the root of a subtree to be searchednode
- a node to be sought within this subtreeCopyright (c) 2004-2014 Saxonica Limited. All rights reserved.