public class DocumentWrapper extends NodeWrapper implements DocumentInfo
Modifier and Type | Field and Description |
---|---|
protected String |
baseURI |
protected Configuration |
config |
protected long |
documentNumber |
protected boolean |
domLevel3 |
docWrapper, index, node, nodeKind, span
ALL_NAMESPACES, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES
EMPTY_VALUE_ARRAY
Constructor and Description |
---|
DocumentWrapper(Node doc,
String baseURI,
Configuration config)
Wrap a DOM Document or DocumentFragment node
|
Modifier and Type | Method and Description |
---|---|
Configuration |
getConfiguration()
Get the configuration previously set using setConfiguration
|
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.
|
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 |
isSameNodeInfo(NodeInfo other)
Determine whether this is the same node as another node.
|
boolean |
isTyped()
Ask whether the document contains any nodes whose type annotation is anything other than
UNTYPED
|
NodeInfo |
selectID(String id,
boolean getParent)
Get the element with a given ID, if any
|
void |
setConfiguration(Configuration config)
Set the Configuration that contains this document
|
void |
setUserData(String key,
Object value)
Set user data on the document node.
|
NodeWrapper |
wrap(Node node)
Create a wrapper for a node in this document
|
atomize, compareOrder, copy, equals, generateId, getAttributeValue, getAttributeValue, getBaseURI, getColumnNumber, getDeclaredNamespaces, getDisplayName, getDocumentRoot, getFingerprint, getLineNumber, getLocalPart, getNameCode, getNodeKind, getParent, getPrefix, getRealNode, getRoot, getSiblingPosition, getStringValue, getStringValueCS, getSystemId, getTypedValue, getUnderlyingNode, getURI, hasChildNodes, hashCode, isId, isIdref, isNilled, iterateAxis, iterateAxis, makeWrapper, makeWrapper, setSystemId
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
atomize, compareOrder, copy, equals, generateId, getAttributeValue, getAttributeValue, getBaseURI, getColumnNumber, getDeclaredNamespaces, getDisplayName, getDocumentRoot, getFingerprint, getLineNumber, getLocalPart, getNameCode, getNodeKind, getParent, getPrefix, getRoot, getStringValue, getSystemId, getURI, hasChildNodes, hashCode, isId, isIdref, isNilled, iterateAxis, iterateAxis
setSystemId
getStringValueCS, getTypedValue
protected Configuration config
protected String baseURI
protected long documentNumber
protected boolean domLevel3
public DocumentWrapper(Node doc, String baseURI, Configuration config)
doc
- a DOM Document or DocumentFragment nodebaseURI
- the base URI of the documentconfig
- the Saxon configurationpublic NodeWrapper wrap(Node node)
node
- the DOM node to be wrapped. This must be a node within the document wrapped by this
DocumentWrapperIllegalArgumentException
- if the node is not a descendant of the Document node wrapped by
this DocumentWrapperpublic void setConfiguration(Configuration config)
config
- the Saxon configurationpublic Configuration getConfiguration()
getConfiguration
in interface NodeInfo
getConfiguration
in class NodeWrapper
public NamePool getNamePool()
getNamePool
in interface NodeInfo
getNamePool
in class NodeWrapper
public boolean isTyped()
isTyped
in interface DocumentInfo
public long getDocumentNumber()
getDocumentNumber
in interface NodeInfo
getDocumentNumber
in class NodeWrapper
public NodeInfo selectID(String id, boolean getParent)
selectID
in interface DocumentInfo
id
- the required ID valuegetParent
- true if the parent of the element having the given ID value is requiredpublic boolean isSameNodeInfo(NodeInfo other)
isSameNodeInfo
in interface NodeInfo
isSameNodeInfo
in class NodeWrapper
other
- the node to be compared with this nodepublic Iterator<String> getUnparsedEntityNames()
getUnparsedEntityNames
in interface DocumentInfo
public String[] getUnparsedEntity(String name)
getUnparsedEntity
in interface DocumentInfo
name
- the name of the entitypublic int getTypeAnnotation()
getTypeAnnotation
in interface NodeInfo
getTypeAnnotation
in class NodeWrapper
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 NodeWrapper
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.