public final class TinyElementImpl extends TinyParentNodeImpl
This class is an implementation of NodeInfo. The object is a wrapper around one entry in the arrays maintained by the TinyTree. Note that the same node might be represented by different TinyElementImpl objects at different times.
NODE_LETTER, nodeNr, parent, treeALL_NAMESPACES, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES| Constructor and Description |
|---|
TinyElementImpl(TinyTree tree,
int nodeNr)
Constructor - create a tiny element node
|
| Modifier and Type | Method and Description |
|---|---|
AtomicSequence |
atomize()
Get the typed value.
|
void |
copy(Receiver receiver,
int copyOptions,
int locationId)
Copy this node to a given receiver
|
String |
getAttributeValue(int fp)
Get the value of the attribute with a given fingerprint.
|
String |
getAttributeValue(String uri,
String local)
Get the string value of a given attribute of this node
|
String |
getBaseURI()
Get the base URI of this element node.
|
NamespaceBinding[] |
getDeclaredNamespaces(NamespaceBinding[] buffer)
Get all namespace undeclarations and undeclarations defined on this element.
|
static NamespaceBinding[] |
getDeclaredNamespaces(TinyTree tree,
int nodeNr,
NamespaceBinding[] buffer)
Static method to get all namespace undeclarations and undeclarations defined on a given element,
without instantiating the node object.
|
int |
getNodeKind()
Return the type of node.
|
SchemaType |
getSchemaType()
Get the type annotation of this node, if any.
|
int |
getTypeAnnotation()
Get the type annotation of this node, if any
Returns Type.UNTYPED_ANY if there is no type annotation
|
String |
getURIForPrefix(String prefix,
boolean useDefault)
Get the namespace URI corresponding to a given prefix.
|
boolean |
isId()
Determine whether this node has the is-id property
|
boolean |
isIdref()
Determine whether this node has the is-idref property
|
getStringValue, getStringValueCS, getStringValueCS, hasChildNodescompareOrder, comparePosition, equals, generateId, getColumnNumber, getConfiguration, getDisplayName, getDocumentNumber, getDocumentRoot, getFingerprint, getLineNumber, getLocalPart, getNameCode, getNamePool, getNodeNumber, getParent, getPrefix, getPublicId, getRoot, getSequenceNumber, getSystemId, getTree, getURI, hashCode, head, isAncestorOrSelf, isNilled, isSameNodeInfo, iterate, iterateAxis, iterateAxis, setParentNode, setSystemIdpublic TinyElementImpl(TinyTree tree, int nodeNr)
tree - the Tinytree containing the nodenodeNr - the node numberpublic final int getNodeKind()
Typepublic String getBaseURI()
getBaseURI in interface NodeInfogetBaseURI in class TinyNodeImplpublic int getTypeAnnotation()
getTypeAnnotation in interface NodeInfogetTypeAnnotation in class TinyNodeImplFor 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 NodeInfogetSchemaType in class TinyNodeImplpublic AtomicSequence atomize() throws XPathException
XPathException - if the node has no typed value, for example if
it is an element node with element-only contentpublic NamespaceBinding[] getDeclaredNamespaces(NamespaceBinding[] buffer)
getDeclaredNamespaces in interface NodeInfogetDeclaredNamespaces in class TinyNodeImplbuffer - If this is non-null, and the result array fits in this buffer, then the result
may overwrite the contents of this array, to avoid the cost of allocating a new array on the heap.For a node other than an element, the method returns null.
public static NamespaceBinding[] getDeclaredNamespaces(TinyTree tree, int nodeNr, NamespaceBinding[] buffer)
tree - The tree containing the given element nodenodeNr - The node number of the given element node within the tinyTreebuffer - If this is non-null, and the result array fits in this buffer, then the result
may overwrite the contents of this array, to avoid the cost of allocating a new array on the heap.For a node other than an element, the method returns null.
public String getAttributeValue(String uri, String local)
getAttributeValue in interface NodeInfogetAttributeValue in class TinyNodeImpluri - the namespace URI of the attribute name. Supply the empty string for an attribute
that is in no namespacelocal - the local part of the attribute name.public String getAttributeValue(int fp)
getAttributeValue in interface FingerprintedNodegetAttributeValue in class TinyNodeImplfp - the fingerprint of the required attributepublic void copy(Receiver receiver, int copyOptions, int locationId) throws XPathException
copyOptions - receiver - the Receiver to which the node should be copied. It is the caller's
responsibility to ensure that this Receiver is open before the method is called
(or that it is self-opening), and that it is closed after use.locationId - If non-zero, identifies the location of the instruction
that requested this copy. If zero, indicates that the location informationXPathException - if any downstream error occurspublic String getURIForPrefix(String prefix, boolean useDefault)
prefix - the namespace prefix. May be the zero-length string, indicating
that there is no prefix. This indicates either the default namespace or the
null namespace, depending on the value of useDefault.useDefault - true if the default namespace is to be used when the
prefix is "". If false, the method returns "" when the prefix is "".public boolean isId()
isId in interface NodeInfoisId in class TinyNodeImplpublic boolean isIdref()
isIdref in interface NodeInfoisIdref in class TinyNodeImplCopyright (c) 2004-2013 Saxonica Limited. All rights reserved.