Methods and systems are described for generating an XML document that do
not require a hierarchical tree structure to be built and stored in memory
in order for the document to be built. In one embodiment, a request object
is provided and is used to receive information from a client that desires
to generate an XML document and to organize the information into an XML
document. Information is first accumulated by the request object and then
transformed into an appropriate XML document. The information that is
accumulated by the request object includes the namespaces or namespace
values that are to be incorporated into the request. All of the namespaces
or namespace values are collected and organized into a data structure.
Prefixes are assigned to and stored with each namespace value that is
placed in the data structure. Some of the namespace values can be reserved
and have predefined or reserved prefixes that serve to support legacy
servers. A namespace arbiter object can be utilized by the request object
to manage and oversee maintenance of the data structure that contains the
namespace values and their prefixes. Additional objects are provided and
manage associations of the namespace prefixes, properties and, in some
embodiments, property values. An XML document is generated using the data
structures that hold the namespace name values, their prefixes,
properties, and property values without having to build and store a
hierarchical tree structure to represent the XML document.
Los métodos y los sistemas se describen para generar un documento de XML que no requieren una estructura arborescente jerárquica ser construidos y ser almacenados en memoria en la orden para que el documento sea construido. En una encarnación, se proporciona y se utiliza un objeto de la petición para recibir la información de un cliente que desee generar un documento de XML y organizar la información en un documento de XML. La información primero es acumulada por el objeto de la petición y en seguida transformada en un documento apropiado de XML. La información que es acumulada por el objeto de la petición incluye los namespaces o los valores del namespace que deben para ser incorporados en la petición. Todos los namespaces o valores del namespace se recogen y se organizan en una estructura de datos. Los prefijos se asignan a y se almacenan con cada valor del namespace que se ponga en la estructura de datos. Algunos de los valores del namespace pueden ser reservados y haber predefinido o los prefijos reservados que sirven para apoyar los servidores de la herencia. Un objeto del árbitro del namespace se puede utilizar por el objeto de la petición para manejar y para supervisar el mantenimiento de la estructura de datos que contiene los valores del namespace y sus prefijos. Los objetos adicionales se proporcionan y manejan las asociaciones de los prefijos del namespace, de las características y, en algunas encarnaciones, de los valores de característica. Se genera un documento de XML usando las estructuras de datos que llevan a cabo los valores conocidos del namespace, sus prefijos, características, y valores de característica sin tener que construir y almacenar una estructura arborescente jerárquica para representar el documento de XML.