Class NodeQNameFunctionIterator
java.lang.Object
org.rumbledb.runtime.RuntimeIterator
org.rumbledb.runtime.LocalRuntimeIterator
org.rumbledb.runtime.functions.base.LocalFunctionCallIterator
org.rumbledb.runtime.functions.xml.NodeQNameFunctionIterator
- All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable,Serializable,RuntimeIteratorInterface
Implementation of the fn:node-name function according to XPath and XQuery Functions and Operators 3.1
(
https://www.w3.org/TR/xpath-functions-31/#func-node-name) and the XDM 3.1 node-name accessor.
XDM 3.1 Section 5.10 node-name Accessor.
dm:node-name($n as node()) as xs:QName?
"The dm:node-name accessor returns the name of the node as an xs:QName, or the empty
sequence if the node does not have a name."
Function signatures (Functions and Operators 3.1, fn:node-name):
- fn:node-name() as xs:QName?
- fn:node-name($arg as node()?) as xs:QName?
Rules:
- "If the argument is omitted, it defaults to the context item."
- "If the argument is supplied and is the empty sequence, the function returns the empty sequence."
- "Otherwise, the function returns the result of applying the dm:node-name accessor to the node
identified by the argument. If the dm:node-name accessor returns the empty sequence, then the
function returns the empty sequence."
The optional xs:QName result wraps the expanded Name from Item.nodeName() in a
QNameItem; otherwise the function returns the empty sequence.-
Field Summary
Fields inherited from class org.rumbledb.runtime.RuntimeIterator
children, currentDynamicContextForLocalExecution, FLOW_EXCEPTION_MESSAGE, hasNext, isOpen, isSequential, isUpdating, staticContext, staticURI -
Constructor Summary
ConstructorsConstructorDescriptionNodeQNameFunctionIterator(List<RuntimeIterator> parameters, RuntimeStaticContext staticContext) -
Method Summary
Methods inherited from class org.rumbledb.runtime.RuntimeIterator
bindToVariableInDynamicContext, canProduceDataFrame, close, deepCopy, generateNativeQuery, getConfiguration, getDataFrame, getEffectiveBooleanValue, getEffectiveBooleanValueOrCheckPosition, getHighestExecutionMode, getMetadata, getOrCreateDataFrame, getPendingUpdateList, getRDD, getRuntimeStaticContext, getStaticType, getVariableDependencies, hasNext, isDataFrame, isLocal, isOpen, isRDD, isRDDOrDataFrame, isSequential, isSparkJobNeeded, isUpdating, materialize, materialize, materializeAtMostOneItemOrDefault, materializeAtMostOneItemOrNull, materializeExactlyOneItem, materializeFirstItemOrNull, materializeNFirstItems, print, printToStandardError, read, reset, setStaticContext, write
-
Constructor Details
-
NodeQNameFunctionIterator
public NodeQNameFunctionIterator(List<RuntimeIterator> parameters, RuntimeStaticContext staticContext)
-
-
Method Details
-
open
- Specified by:
openin interfaceRuntimeIteratorInterface- Overrides:
openin classRuntimeIterator
-
next
- Specified by:
nextin interfaceRuntimeIteratorInterface- Specified by:
nextin classRuntimeIterator
-