PhoenixmlDb.Core
XdmElement
Represents an XML element node in the XDM tree, including its attributes, children, and namespace declarations.
#XdmElement
Namespace: PhoenixmlDb.Xdm.Nodes
Represents an XML element node in the XDM tree, including its attributes, children, and namespace declarations.
Children: An element's children are stored as a list of references in . Valid child node kinds are element, text, comment, and processing instruction. To access the actual child nodes, resolve each through the storage layer's node lookup function. Attributes: Attributes are separate nodes referenced by . Per the XDM spec, attributes are not children of the element — they exist on a separate axis. Use the attribute list to enumerate or look up attributes by name. Namespaces: Each element carries its own , which record the namespace declarations (xmlns:prefix="uri") that appear on this element. The element's own namespace is stored separately in . Construction: Elements are typically created by during XML parsing, or constructed directly using object initializers with the required properties. Use , , and for elements that have no attributes, children, or namespace declarations.
#Properties
| Name | Description |
|---|---|
Attributes
|
The references to this element's nodes. |
Children
|
The references to this element's child nodes (elements, text, comments, and processing instructions) in document order. |
EmptyAttributes
|
An empty, immutable attribute list for elements with no attributes. |
EmptyChildren
|
An empty, immutable children list for leaf elements (no child nodes). |
EmptyNamespaceDeclarations
|
An empty, immutable namespace declarations list for elements with no namespace declarations. |
IsIdContent
|
True if this element's simple-content type is xs:ID or a type derived from xs:ID by restriction. Populated during XSD schema validation. Used by fn:id and fn:element-with-id to locate elements whose typed content matches a candidate ID. |
LocalName
|
The element's local name (the part after the colon in a prefixed name). |
Namespace
|
The element's namespace URI, stored as an interned . |
NamespaceDeclarations
|
The namespace declarations (xmlns:prefix="uri") that appear on this element. |
Prefix
|
The namespace prefix used in the original document, preserved for round-trip serialization. |
StringValue
|
The string value of this element, which is the concatenation of all descendant text nodes. |
TypeAnnotation
|
The XSD type annotation for this element (default: xs:untyped). |
#Fields
| Name | Description |
|---|---|
_stringValue
|
Internal backing field for the lazily-computed string value. Set by tree walkers after traversing descendant text nodes. |