|
| XdmNode (int64_t objRef) |
| XdmNode constructor to create an object which is a wrapper for a Java XdmNode object - internal use only.
|
|
| XdmNode (XdmNode *parent, int64_t objRef, XDM_NODE_KIND kind) |
| XdmNode constructor to create an object which is a wrapper for a Java XdmNode object - internal use only.
|
|
bool | operator== (const XdmNode &other) const |
| XdmNode == operator.
|
|
| XdmNode (const XdmNode &other) |
| XdmNode copy constructor.
|
|
virtual | ~XdmNode () |
| Destructor method for XdmNode.
|
|
bool | isAtomic () |
| Determine whether the item is an atomic value or some other type of item.
|
|
XdmItem * | getHead () |
| Get the first item in the sequence consisting of just this item.
|
|
bool | equals (XdmNode *other) |
| The equals() relation between two XdmNode objects is true if they both represent the same node.
|
|
XDM_NODE_KIND | getNodeKind () |
| Get the kind of the node.
|
|
const char * | getNodeName () |
| Get the name of the node, as a string in the form of a EQName.
|
|
const char * | getLocalName () |
| Get the local name of the node.
|
|
XdmValue * | getTypedValue () |
| Get the typed value of this node, as defined in XDM.
|
|
int | getLineNumber () |
| Get the line number of the node in a source document.
|
|
int | getColumnNumber () |
| Get the column number of the node in a source document.
|
|
const char * | getBaseUri () |
| Get the base URI of this node.
|
|
const char * | getStringValue (const char *encoding=nullptr) |
| Get the string value of the node.
|
|
const char * | toString (const char *encoding=nullptr) |
| The toString() method returns a simple XML serialization of the node with defaulted serialization parameters.
|
|
XdmNode * | getParent () |
| Get the parent of this node.
|
|
const char * | getAttributeValue (const char *name) |
| Get the string value of a named attribute (in no namespace) of this element.
|
|
int | getAttributeCount () |
| Get the number of attribute nodes for this node.
|
|
XdmNode ** | getAttributeNodes (bool cache=false) |
| Get the attribute nodes of this element as an array.
|
|
XdmNode ** | axisNodes (EnumXdmAxis axis) |
| Get the array of nodes reachable from this node via a given axis.
|
|
EnumXdmAxis | convertEnumXdmAxis (int n) |
| Convert an int into the corresponding EnumXdmAxis Enum object.
|
|
int | axisNodeCount () |
| Get the number of nodes in the nodeAxis array, cached from the last call to axisNodes.
|
|
int64_t | getUnderlyingValue () |
| Get the underlying Graalvm Java object for the XdmNode - internal use only.
|
|
bool | isNode () |
| Determine whether the item is a node or some other type of item.
|
|
XdmNode ** | getChildren (bool cache=false) |
| Get all the child nodes of the current node.
|
|
XdmNode * | getChild (int i, bool cache=false) |
| Get the ith child node of the current node.
|
|
int | getChildCount () |
| Get the number of child nodes of the current node.
|
|
XDM_TYPE | getType () |
| Get the type of this XDM value.
|
|
void | resetRelinquishedChildren () |
| Reset associated reference counts on XdmItems that have been relinquished - internal use only.
|
|
void | incrementRefCountForRelinquishedChildren () |
| Increment the ref count for a relinquished child only once - internal use only.
|
|
bool | hasRelinquishedChildren () |
| Check if child nodes have been relinquished - internal use only.
|
|
| XdmItem () |
| Default constructor.
|
|
| XdmItem (int64_t objRef) |
| XdmItem constructor to create an object which is a wrapper for a Java XdmItem object - internal use only.
|
|
| XdmItem (const XdmItem &item) |
| XdmItem copy constructor.
|
|
bool | operator== (const XdmItem &other) const |
|
virtual | ~XdmItem () |
| Destructor method for XdmItem.
|
|
virtual void | incrementRefCount () |
| Increment reference count of this XdmItem - internal use only.
|
|
virtual void | decrementRefCount () |
| Decrement reference count of this XdmItem - internal use only.
|
|
virtual bool | isFunction () |
| Determine whether the item is an XDM function or some other type of item.
|
|
virtual bool | isMap () |
| Determine whether the item is an XDM map or some other type of item.
|
|
virtual bool | isArray () |
| Determine whether the item is an XDM array or some other type of item.
|
|
XdmItem * | itemAt (int n) |
| Get the n'th item in the sequence consisting of just this item, counting from zero.
|
|
int | size () |
| Get the number of items in the sequence.
|
|
| XdmValue () |
| Default constructor.
|
|
| XdmValue (const XdmValue &other) |
| XdmValue copy constructor.
|
|
void | addXdmItem (XdmItem *val) |
| Add an XdmItem to the sequence.
|
|
virtual bool | operator== (const XdmValue &other) const |
|
void | addXdmItemFromUnderlyingValue (XdmItem *val) |
| Add an XdmItem to the sequence, when the sequence was returned from SaxonC - internal use only.
|
|
void | addUnderlyingValue (int64_t val) |
| Add Java XdmValue object to the sequence.
|
|
| XdmValue (int64_t val, bool arrFlag) |
| A Constructor for handling XdmArray - internal use only.
|
|
| XdmValue (int64_t val) |
| XdmValue constructor to create an object which is a wrapper for a Java XdmValue object - internal use only.
|
|
virtual | ~XdmValue () |
| Destructor method for XdmValue.
|
|
void | releaseXdmValue () |
| Deprecated: this is deprecated and a no-op, the C++ destructor handles this case.
|
|
int | getRefCount () |
| Get the number of references on this XdmValue - internal use only This method is used for internal memory management.
|
|
void | resetRelinquishedItems () |
| Reset associated reference counts on XdmItems that have been relinquished - internal use only.
|
|
void | incrementRefCountForRelinquishedValue (int i) |
| Increment the ref count for a relinquished item only once - internal use only.
|
|
This class represents a node in the XDM data model.
A Node is an XdmItem
, and is therefore an XdmValue
in its own right, and may also participate as one item within a sequence value.
The XdmNode interface exposes basic properties of the node, such as its name, its string value, and its typed value.
Note that node identity cannot be inferred from object identity. The same node may be represented by different XdmNode
instances at different times, or even at the same time. The equals() method on this class can be used to test for node identity.
const char * XdmNode::toString |
( |
const char * | encoding = nullptr | ) |
|
|
virtual |
The toString() method returns a simple XML serialization of the node with defaulted serialization parameters.
In the case of an element node, the result will be a well-formed XML document serialized as defined in the W3C XSLT/XQuery serialization specification, using options method="xml", indent="yes", omit-xml-declaration="yes".
In the case of a document node, the result will be a well-formed XML document provided that the document node contains exactly one element child, and no text node children. In other cases it will be a well-formed external general parsed entity.
In the case of an attribute node, the output is a string in the form name="value"
. The name will use the original namespace prefix.
In the case of a namespace node, the output is a string in the form of a namespace declaration, that is xmlns="uri"
or xmlns:pre="uri"
.
Other nodes, such as text nodes, comments, and processing instructions, are represented as they would appear in lexical XML. Note: this means that in the case of text nodes, special characters such as &
and <
are output in escaped form. To get the unescaped string value of a text node, use getStringValue()
instead.
The caller is responsible for memory deallocation using operator delete
.
- Parameters
-
encoding | - the encoding of the string returned. If NULL or omitted defaults to the JVM encoding, which in most cases is UTF-8. |
- Returns
- A simple XML serialization of the node. Under error conditions the method may return an error message which will always begin with the label "Error: ".
Reimplemented from XdmItem.