PhoenixmlDb.XQuery

INodeBuilder

Extended node store with node creation capabilities. Adds ID allocation, node registration, and namespace interning for functions that construct new XDM trees (e.g., fn:parse-xml, fn:json-to-xml).

#INodeBuilder

Namespace: PhoenixmlDb.XQuery

Extended node store with node creation capabilities. Adds ID allocation, node registration, and namespace interning for functions that construct new XDM trees (e.g.,

fn:parse-xml

,

fn:json-to-xml

).

#Methods

#AllocateId

Allocates a new unique

.

#InternNamespace(String)

Interns a namespace URI, returning a stable

for it. If the URI has already been interned, returns the existing ID.

Parameters:

  • uri — The namespace URI to intern.

Returns: The interned namespace identifier.

#InternNamespace(String,PhoenixmlDb.Core.NamespaceId)

Interns a namespace URI with a hint at the desired

. If the URI is already interned, returns the existing ID. Otherwise, the store may honor

(typically allocated by static analysis before the runtime store was instantiated) so that pre-assigned IDs round-trip through serialization. If

is

or unusable, the store allocates a fresh ID.

Parameters:

  • uri — The namespace URI to intern.

  • preferredId — A pre-allocated ID the store may adopt for this URI.

Returns: The ID actually used by the store — callers must use this value, not preferredId.

#RegisterNode(PhoenixmlDb.Xdm.Nodes.XdmNode)

Registers a node in the store, making it resolvable via

.

Parameters:

  • node — The node to register.