Package org.rumbledb.items.xml
Class AttributeItem
java.lang.Object
org.rumbledb.items.xml.AttributeItem
- All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable,Serializable,Item
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionAttributeItem(Name dmNodeName, String stringValue) AttributeItem(Node attributeNode) -
Method Summary
Modifier and TypeMethodDescriptionXDM 3.1 Section 5.12 string-value Accessor.XDM 3.1 Section 6.3 Attribute Node Accessors — attributes.baseUri()XDM 3.1 Section 6.3 Attribute Node Accessors — base-uri.children()XDM 3.1 Section 6.3 Attribute Node Accessors — children.Helper accessor for XML element nodes: returns namespace nodes for the namespace bindings declared directly on the element.XDM 3.1 Section 6.3 Attribute Node Accessors — document-uri.booleanTests for logical equality.Returns the dynamic type of the item (only for error message purposes).Returns the string value of the item, if it is an atomic item.Get the position of the Node inside the XML document (and path incase of multiple docs) for sorting / uniquenessinthashCode()Computes a hash code.booleanTests whether the item is an XML Attribute node.booleanisId()XDM 3.1 Section 6.3 Attribute Node Accessors — is-id.booleanisIdrefs()XDM 3.1 Section 6.3 Attribute Node Accessors — is-idrefs.booleanisNode()Tests whether the item is an XML node.XDM 3.1 Section 5.7 namespace-nodes Accessor.nilled()XDM 3.1 Section 6.3 Attribute Node Accessors — nilled.nodeKind()XDM 3.1 Section 6.3 Attribute Node Accessors — node-kind.nodeName()XDM 3.1 Section 5.10 node-name Accessor.parent()XDM 3.1 Section 5.11 parent Accessor.voidread(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) voidintsetXmlDocumentPosition(String path, int current) Set the position of the Node inside the XML document (and path incase of multiple docs) for sorting / uniquenesstypeName()XDM 3.1 Section 6.3 Attribute Node Accessors — type-name.voidwrite(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.rumbledb.api.Item
addParentToDescendants, append, appendItem, appendSequence, castToDecimalValue, castToDoubleValue, castToFloatValue, castToIntegerValue, castToIntValue, generateNativeQuery, getBinaryValue, getBodyIterator, getBooleanValue, getCollection, getContent, getDateTimeValue, getDay, getDecimalValue, getDFVariablesInClosure, getDoubleValue, getDurationValue, getEffectiveBooleanValue, getEpochMillis, getEstimator, getFloatValue, getHour, getIdentifier, getIntegerValue, getIntValue, getItemAt, getItemByKey, getItemByKey, getItemKeys, getItemMembers, getItems, getItemValues, getKeys, getLocalVariablesInClosure, getMinute, getModuleDynamicContext, getMonth, getMutabilityLevel, getNanosecond, getOffset, getParameterNames, getPathIn, getPeriodValue, getQNameValue, getRDDVariablesInClosure, getSecond, getSequenceAt, getSequenceByKey, getSequenceByKey, getSequenceMembers, getSequenceValues, getSignature, getSize, getSparkSQLType, getSparkSQLValue, getSparkSQLValue, getStringKeys, getTableLocation, getTextValue, getTimeValue, getTopLevelID, getTopLevelOrder, getTransformer, getValues, getVariantValue, getYear, hasDateTime, hasTimeZone, isAnyURI, isArray, isArrayOfItems, isAtomic, isBase64Binary, isBinary, isBoolean, isBuiltinFunction, isCommentNode, isDate, isDateTime, isDayTimeDuration, isDecimal, isDocumentNode, isDouble, isDuration, isElementNode, isEstimator, isFloat, isFunction, isGDay, isGMonth, isGMonthDay, isGYear, isGYearMonth, isHexBinary, isInt, isInteger, isMap, isNamespaceNode, isNaN, isNull, isNumeric, isObject, isPeriod, isProcessingInstructionNode, isQName, isString, isTextNode, isTime, isTransformer, isUntypedAtomic, isYearMonthDuration, physicalEquals, putItemAt, putItemByKey, putItemByKey, putItemsAt, putLazyItemByKey, putSequenceAt, putSequenceByKey, putSequenceByKey, putSequencesAt, removeItemAt, removeItemByKey, removeItemByKey, removeSequenceAt, serialize, serializeAsJSON, setCollection, setMutabilityLevel, setPathIn, setTableLocation, setTopLevelID, setTopLevelOrder, typedValue, unparsedEntityPublicId, unparsedEntitySystemId
-
Constructor Details
-
AttributeItem
public AttributeItem() -
AttributeItem
-
AttributeItem
-
-
Method Details
-
setXmlDocumentPosition
Description copied from interface:ItemSet the position of the Node inside the XML document (and path incase of multiple docs) for sorting / uniqueness- Specified by:
setXmlDocumentPositionin interfaceItem- Parameters:
path- the path of the XML documentcurrent- the current position- Returns:
- the new position
-
getXmlDocumentPosition
Description copied from interface:ItemGet the position of the Node inside the XML document (and path incase of multiple docs) for sorting / uniqueness- Specified by:
getXmlDocumentPositionin interfaceItem- Returns:
- the XML document position
-
write
public void write(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) - Specified by:
writein interfacecom.esotericsoftware.kryo.KryoSerializable
-
read
public void read(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) - Specified by:
readin interfacecom.esotericsoftware.kryo.KryoSerializable
-
nodeName
Description copied from interface:ItemXDM 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." -
parent
Description copied from interface:ItemXDM 3.1 Section 5.11 parent Accessor. dm:parent($n as node()) as node()? "The dm:parent accessor returns the parent of the node, or the empty sequence if the node has no parent." -
getStringValue
Description copied from interface:ItemReturns the string value of the item, if it is an atomic item.- Specified by:
getStringValuein interfaceItem- Returns:
- the string value.
-
setParent
-
getDynamicType
Description copied from interface:ItemReturns the dynamic type of the item (only for error message purposes).- Specified by:
getDynamicTypein interfaceItem- Returns:
- the dynamic type as an item type.
-
nodeKind
XDM 3.1 Section 6.3 Attribute Node Accessors — node-kind. "For an Attribute Node, dm:node-kind returns the string \"attribute\"." -
children
XDM 3.1 Section 6.3 Attribute Node Accessors — children. "For an Attribute Node, dm:children returns the empty sequence." -
attributes
XDM 3.1 Section 6.3 Attribute Node Accessors — attributes. "For an Attribute Node, dm:attributes returns the empty sequence."- Specified by:
attributesin interfaceItem
-
isId
public boolean isId()XDM 3.1 Section 6.3 Attribute Node Accessors — is-id. "For an Attribute Node, dm:is-id returns true if the attribute node is of type xs:ID or is derived by restriction from xs:ID; otherwise it returns false." RumbleDB does not currently support schema type annotations on attributes, so this implementation always returns false. -
isIdrefs
public boolean isIdrefs()XDM 3.1 Section 6.3 Attribute Node Accessors — is-idrefs. "For an Attribute Node, dm:is-idrefs returns true if the attribute node is of type xs:IDREF or xs:IDREFS or is derived by restriction from one of these types; otherwise it returns false." RumbleDB does not currently support schema type annotations on attributes, so this implementation always returns false. -
equals
Description copied from interface:ItemTests for logical equality. The semantics are that of the eq operator. -
isNode
public boolean isNode()Description copied from interface:ItemTests whether the item is an XML node. -
isAttributeNode
public boolean isAttributeNode()Description copied from interface:ItemTests whether the item is an XML Attribute node.- Specified by:
isAttributeNodein interfaceItem- Returns:
- true if it is an XML Attribute node, false otherwise.
-
hashCode
public int hashCode()Description copied from interface:ItemComputes a hash code. -
atomizedValue
Description copied from interface:ItemXDM 3.1 Section 5.12 string-value Accessor. dm:string-value($n as node()) as xs:string "The dm:string-value accessor returns the string-value of the node as defined for each node kind." In this API, node string values are exposed via getStringValue() and the default implementation of dm:typed-value delegates to atomizedValue().- Specified by:
atomizedValuein interfaceItem
-
namespaceNodes
Description copied from interface:ItemXDM 3.1 Section 5.7 namespace-nodes Accessor. dm:namespace-nodes($n as node()) as namespace-node()* "The dm:namespace-nodes accessor returns the dynamic, unordered set of Namespace Nodes. It is defined on all seven node kinds." This default implementation is only a placeholder on the generic Item interface and must be overridden by XML node implementations that support namespaces.- Specified by:
namespaceNodesin interfaceItem
-
declaredNamespaceNodes
Description copied from interface:ItemHelper accessor for XML element nodes: returns namespace nodes for the namespace bindings declared directly on the element. This does not include inherited or statically known namespaces — only the bindings explicitly declared on the element (for example via xmlns attributes). Non-element nodes must override this to return the empty sequence.- Specified by:
declaredNamespaceNodesin interfaceItem
-
baseUri
XDM 3.1 Section 6.3 Attribute Node Accessors — base-uri. For an Attribute Node, dm:base-uri returns the base URI of the parent element or document node, if it has one; otherwise it returns the empty sequence. -
documentUri
XDM 3.1 Section 6.3 Attribute Node Accessors — document-uri. For an Attribute Node, dm:document-uri returns the document-uri of the document node that is the root of the tree containing the attribute, if it has one; otherwise it returns the empty sequence.- Specified by:
documentUriin interfaceItem
-
nilled
XDM 3.1 Section 6.3 Attribute Node Accessors — nilled. For an Attribute Node, dm:nilled returns the empty sequence. -
typeName
XDM 3.1 Section 6.3 Attribute Node Accessors — type-name. For an Attribute Node, dm:type-name returns the name of the dynamic type of the attribute node, or the empty sequence if the node is untyped. RumbleDB does not currently support schema-validated attribute types, so this implementation returns the empty sequence.
-