ES2262000T3 - Procedimiento y dispositivos para codificar/decodificar documentos estructurados, en particular documentos xml. - Google Patents

Procedimiento y dispositivos para codificar/decodificar documentos estructurados, en particular documentos xml.

Info

Publication number
ES2262000T3
ES2262000T3 ES03787637T ES03787637T ES2262000T3 ES 2262000 T3 ES2262000 T3 ES 2262000T3 ES 03787637 T ES03787637 T ES 03787637T ES 03787637 T ES03787637 T ES 03787637T ES 2262000 T3 ES2262000 T3 ES 2262000T3
Authority
ES
Spain
Prior art keywords
group
names
type
xml
bit stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES03787637T
Other languages
English (en)
Inventor
Jorg Heuer
Andreas Hutter
Ulrich Niedermeier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from DE10248758A external-priority patent/DE10248758B4/de
Application filed by Siemens AG filed Critical Siemens AG
Application granted granted Critical
Publication of ES2262000T3 publication Critical patent/ES2262000T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • G06F40/154Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream

Abstract

Procedimiento para codificar y transmitir un documento XML (XML) con las siguientes etapas: a) Normalización del esquema XML (XMLS) correspondiente al documento XML (XML), incluyendo la normalización del esquema XML (XMLS) una de las siguientes etapas: - Simplificación de un grupo que sólo contiene un elemento: Se disuelve el grupo y el elemento contenido se clasifica en el plano del grupo disuelto en el Content Modell (modelo de contenido), sustituyéndose los atributos minOccurs y maxOccurs del elemento por el producto de los correspondientes atributos del grupo disuelto y del elemento antes del reagrupamiento. - Simplificación de un grupo de elección (choice), que contiene un elemento con el valor de atributo minOccurs=0: El atributo minOccurs del grupo de elección se coloca independientemente del valor precedente en 0, al elemento que tenía un valor de atributo minOccurs=0, se le asigna un valor de atributo minOccurs=1. - Simplificación de grupos de elección (choice) imbricados: Si un grupo de elección contiene otro grupo de elección que contiene los valores de atributo minOccurs= maxOccurs=1, entonces se disuelve este grupo de elección, y el contenido se incluye directamente en el grupo de elección que se encuentra encima; estando definidos los conceptos grupo, elemento, modelo de contenido (Content Modell), atributo, minOccurs, maxOccurs y grupo de elección (choice) en la descripción normativa del lenguaje del esquema XML; b) Codificación del esquema XML normalizado (XMLSn) con ayuda de un metaesquema (SS); c) Transmisión del esquema XML codificado en un primer flujo de bits (BS1); d) Codificación del documento XML (XML) mediante el correspondiente esquema XML normalizado (XMLSn); e) Transmisión del documento XML codificado en un segundo flujo de bits (BS2); estando previstos el primer y el segundo flujo de bits (BS1, BS2) para la recepción para un decodificador, que ejecuta las siguientes etapas: f) Decodificación del esquema XML transmitido codificado en el primer flujo de bits (BS1) en el esquema XML normalizado (XMLSn), mediante el metaesquema, correspondiendo el esquema normalizado y el metaesquema (SS) al esquema utilizado en la codificación; g) Decodificación del documento XML codificado transmitido en el segundo flujo de bits (BS2) mediante el esquema XML normalizado (XMLSn), sin realizar otra normalización del esquema XML normalizado (XMLSn).

Description

Procedimiento y dispositivos para codificar/decodificar documentos estructurados, en particular documentos XML.
La invención se refiere a procedimientos y dispositivos para codificar documentos estructurados, en particular documentos XML, en los cuales a partir de un documento estructurado y en función de un esquema se genera un flujo de bits y a un procedimiento y un dispositivo para decodificar, en los cuales a partir de un flujo de bits y en función de un esquema se genera un documento estructurado.
En el marco del trabajo en el estándar MPEG-7 se desarrolló un procedimiento para la codificación binaria de datos XML, que a continuación se denominará procedimiento BiM y que se conoce por ejemplo por la publicación ISO/IEC FDIS 15938-1:2001(E), "Tecnología de la información -Interfaz de descripción de contenidos multimedia- parte 1: Sistemas". Este procedimiento utiliza definiciones del esquema XML, que existen en el codificador y decodificador, por ejemplo el esquema MPEG-7, para generar los códigos para los distintos elementos de datos de la descripción XML. Este procedimiento presupone que el codificador y el decodificador disponen al menos parcialmente de las mismas definiciones de esquema. Esto puede asegurarse por ejemplo alojando fijamente un esquema XML estandarizado en el decodificador. Además, existe la posibilidad de transmitir al decodificador el esquema separadamente o adicionalmente al documento propiamente dicho. La transmisión del esquema del codificador al decodificador puede realizarse en forma textual, pudiendo utilizarse una compresión estándar de textos, como por ejemplo
ZIP.
La tarea básica de la presente invención consiste entonces en indicar procedimientos y dispositivos tal que la transmisión del esquema se realice de manera especialmente eficiente y que se reduzca la cantidad de datos transmitida y la potencia de cálculo necesaria en el decodificador para la generación de las tablas de código a partir del
esquema.
Además debe asegurarse la consistencia de un esquema que no se transmita por completo.
La solicitud de patente francesa (FR 2 813 743) se ocupa de un método para comprimir y descomprimir un documento estructurado. Allí se analiza y estandariza un diagrama de estructura que pertenece al documento, para obtener una secuencia individual predefinida. Este diagrama estandarizado se compila y se comprime.
El documento (Seyrat y otros, ISO/IEC JTC1/SC29/WG11, "Texto de ISO/IEC FCD 15938-1 Tecnología de información -Interfaz de descripción del contenido multimedia- parte 1 sistemas", Doc. MPEG01/N4001, marzo 2001, Singapur, XP001001465) incluye un borrador de una primera parte del estándar MPEG-7. Este borrador se ocupa de una arquitectura del estándar con herramientas que se necesitan para la memorización y transporte eficiente en la generación de descripciones MPEG-7 y que permiten una sincronización entre contenido y descripción.
El documento (Girardot y otros, "Millau: un formato de codificación para la representación e intercambio eficientes de XML a través de la Web", Computer Networks 33, págs. 747-765, 2000, Elsevier, XP001005949) se ocupa de una compresión de estructuras y datos XML, considerando los algoritmos de compresión, además de una compresión separada de estructura y datos, el correspondiente esquema en la compresión de la estructura.
Esta tarea se resuelve en cuanto al procedimiento de codificación mediante las particularidades de la reivindicación 1, en cuanto al procedimiento de decodificación mediante las particularidades de la reivindicación 6, en cuanto al dispositivo de codificación mediante las particularidades de la reivindicación 11 y en cuanto al dispositivo de decodificación mediante las particularidades de la reivindicación 12.
Las demás reivindicaciones se refieren a ventajosos perfeccionamientos de los procedimientos y dispositivos correspondientes a la invención.
La invención consiste esencialmente en generar con un procedimiento de codificación a partir de un esquema en función de un metaesquema un flujo de bits o una parte de un flujo de bits, realizándose una o varias de las siguientes optimizaciones:
-
separación de tipos anónimos a partir de declaraciones de elemento y declaraciones de atributo y codificación como tipo propio, cuya definición del tipo se refleja instantáneamente como elemento del nivel más alto (top-level) en la definición del esquema,
-
normalización del árbol de sintaxis en el lado codificador,
-
sustitución de las cadenas de caracteres de nombres de tipos,
-
transmisión de informaciones para el árbol genealógico,
La decodificación tiene en cuenta estas optimizaciones y genera a la inversa un esquema a partir del flujo de bits.
\newpage
La invención se describirá a continuación en base a ejemplos de ejecución representados en los dibujos. Al respecto, muestra
figura 1 una representación básica para describir la codificación/decodificación correspondiente a la invención,
figura 2 una representación para describir los detalles de una ejecución preferente de la invención,
figura 3 una representación para describir los detalles de otra ejecución preferente de la invención,
figura 4 una representación de una ejecución preferente de un decodificador correspondiente a la invención.
Puesto que los esquemas XML son por su parte documentos XML que tienen como base una definición sintáctica estandarizada, precisamente un llamado "esquema para esquemas" (especificación W3C), que significa casi un metaesquema, puede igualmente codificarse y transmitirse un esquema con el procedimiento BiM antes citado.
En la figura 1 se muestra una configuración en la que, en una primera etapa, con un procedimiento de codificación BiM BiM-E, se genera a partir de un esquema XML XMLS en función de un metaesquema SS, una parte de un flujo de bits o un flujo de bits BS1 y en el que, en una segunda etapa, se genera con el mismo procedimiento de codificación BiM BiM-E, a partir de un documento XML, en función del esquema XMLS, otra parte del flujo de bits o un flujo de bits BS2, así como en sentido inverso con un procedimiento de decodificación BiM BiM-D se recupera a partir de ambas partes del flujo de bits o a partir de los flujos de bits BS1 y BS2 un esquema XML y el documento
XML.
En un primer perfeccionamiento preferente de la invención se realiza una separación de los llamados "anonymus Types" ("tipos anónimos") a partir de la declaración de elementos y de atributos.
La transmisión de un documento XML se realiza en el procedimiento BiM "depth first" (anteponer profundidad), pero el proceso del esquema compilación en el decodificador precisa de una estructura "breadth first" (anteponer anchura), describiéndose más en detalle estas expresiones por ejemplo en la página de Internet http://www.generation5.
org/simple_search.shtml. En grupos como Sequence (secuencia) o Choice (elección) esto puede compensarse mediante una memoria intermedia pequeña en la parte del decodificador, pero en los "anonymus Types" ("tipos anónimos"), que pueden definir el tipo de un elemento o atributo individual, justifica el coste una reestructuración en el lado codificador: las definiciones de "anonymus Type" ("tipo anónimo"), denominada a continuación por ejemplo AT0, se eliminan de la declaración de elemento del elemento "CurriculumVitae" y reciben un nombre y/o código que se utiliza para referenciar en el correspondiente elemento.
Ventajosamente se reduce de esta manera la profundidad de la jerarquía de los tipos transmitidos, con lo que se simplifica la compilación del esquema en el lado decodificador.
Ejemplo Esquema antes de la reestructuración
100
Esquema tras la reestructuración
101
En otro perfeccionamiento preferente de la invención se realiza la normalización de los Syntax Trees (árboles de sintaxis), tal como está especificado en el BiM en el lado codificador.
En el procedimiento BiM se generan a partir de los Syntax Trees (árboles de sintaxis) los llamados "Finite Status Automatons"(automatismos de estado finito), que se utilizan para la decodificación del flujo de bits, que reproducen la estructura del esquema XML. Para aumentar la eficiencia de la codificación no se corresponden estos árboles de sintaxis en relación 1:1 con las definiciones textuales XML, sino que se realizan normalizaciones. Pueden presentarse al respecto tres casos diferentes:
1. Simplificación de un grupo que sólo contiene un elemento: Se disuelve el grupo y el elemento contenido se clasifica en el nivel del grupo disuelto en el Content Modell (modelo de contenido), sustituyéndose los atributos minOccurs y maxOccurs del elemento por el producto de los correspondientes atributos del grupo disuelto y del elemento antes del reagrupamiento.
2. Simplificación de un grupo de elección (choice), que contiene un elemento con el valor de atributo minOccurs=0: El atributo "minOccurs" del grupo de elección se activa independientemente del valor precedente en 0, al elemento que tenía un valor de atributo minOccurs=0, se le asigna un valor de atributo minOccurs=1.
3. Simplificación de grupos de elección (choice) imbricados: Si un grupo de elección contiene otro grupo de elección que contiene los valores de atributo minOccurs= maxOccurs=1, entonces se disuelve este grupo de elección, y el contenido se incluye directamente en el grupo de elección que se encuentra encima.
Estas simplificaciones deben realizarse durante la transmisión del esquema ya en el codificador, ya que el Syntax Tree (árbol de sintaxis) Transformaciones influye sobre la adjudicación del código normativo y la compilación del esquema en el lado decodificador se simplifica cuando el Content Modell (modelo de contenido) puede tomarse directamente.
Las ventajas residen aquí en que de esta manera se descarga igualmente el decodificador y el Content Modell (modelo de contenido) puede llevarse directamente tal como aparece en la codificación de tipos al compilador del esquema.
En un tercer perfeccionamiento preferente de la invención, se realiza, tal como se muestra en la figura 2, una sustitución de las cadenas de caracteres de nombres de tipos.
En el atributo "name" y "base" de una definición de tipo, así como en el atributo "type" de una declaración de elemento o de atributo, se presentan frecuentemente en el esquema los mismos nombres de tipo, que se transmitirían varias veces como cadenas de caracteres. En la codificación de nombres de tipo es por lo tanto ventajoso codificar, en lugar del nombre, sólo un número, y separadamente una tabla que relaciona de nuevo los números con sus nombres iniciales. Como número se ofrece el número de tipo que asigna el árbol genealógico de los tipos iniciales, que se explica más en detalle posteriormente, a todos los complexTypes.
Lo correspondiente rige también para el atributo "name" de declaraciones globales de elementos y sus referencias en atributos "ref" y para el nombre de grupos sustitutorios en el atributo "substitutionGroup". En estos casos puede utilizarse por ejemplo el código de ramificaciones de esquema SBC de los elementos globales.
\newpage
De esta manera puede ahorrarse volumen de datos, ya que puede representarse una referenciación repetida de manera más compacta sobre el mismo nombre de tipo y puede comprimirse mejor la tabla de asignación de tipos con un compresor estándar, ya que los nombres de tipo no se presentan distribuidos por todo el flujo de bits, sino de manera compacta en una zona interrelacionada en el flujo de bits.
En una ejecución ventajosa, se codifica una lista que incluye los nombres de tipos o elementos o nombres de grupos sustitutorios. En lugar de asignar explícitamente números a los nombres, se utiliza en esta ejecución la posición de un nombre en la lista como número. Esto es ventajoso, ya que en la lista ya no debe codificarse ningún número más y con ello queda asegurada una transmisión más eficiente.
En un cuarto perfeccionamiento preferente de la invención se realiza una transmisión de informaciones para el árbol genealógico.
Cada definición de tipo contiene en el llamado atributo "base", caso de que exista, la información respecto a de qué tipo procede. Cuando se reúnen todas estas informaciones para un esquema, resulta una estructura en árbol, el llamado árbol genealógico. El árbol genealógico se utiliza en el procedimiento de codificación BiM, para transmitir en el caso de una conversión de tipos (type-cast) el nuevo tipo del elemento. Al respecto, es decisivo el código que se asigna a todos los tipos derivados del tipo base, es decir, el llamado type Code (código de tipo), así como la longitud de este código, para una decodificación correcta. La longitud resulta de la cantidad total de todos los tipos en el árbol genealógico bajo el tipo de base. Cuando se ha transmitido por completo el esquema, pueden averiguarse tanto los códigos como también la longitud del código claramente en el lado del decodificador. Pero no obstante cuando el esquema en el lado decodoficador no es completo, debe transmitirse aún información adicional, para asignar type Codes (códigos de tipo) a tipos ya transmitidos.
Cada tipo transmitido tiene en el campo para el nombre el número del código de tipo referido al tipo inicial. De esta manera puede averiguarse el código de tipo de los tipos derivados mediante una simple formación de diferencias. Falta aún la información sobre la extensión del árbol secundario definido mediante los tipos transmitidos, y con ello la longitud de los códigos de tipo de los tipos derivados de este tipo transmitido. Esta longitud puede transmitirse con pocos bits en un código variable de longitud.
En la figura 3 se representa a modo de ejemplo un árbol genealógico de un esquema con el tipo A, del que se derivan otros tipos. Este tipo recibe en relación con el tipo inicial "anyType" por ejemplo el código de tipo 134. Del tipo A se derivan los tipos AA, AB y AC, cuyos códigos de tipo se indican en relación con el tipo inicial. Para averiguar el código de tipo en relación con el tipo de base A es suficiente sustraer del código de tipo del tipo deseado el código de tipo del tipo de base y la unidad:
TC _{tipo} = TC _{\ tipo\ rel.\ tipo\ inicial-}TC_{tipo\ base\ rel.\ tipo\ inicial} -1
La información que falta sobre la longitud del código de tipos puede integrarse preferiblemente en la tabla de referencias como número adicional.
Para poder comprimir la información en la tabla de asignación de tipos con un compresor estándar, se recomienda archivarla orientada a bytes completos (bytealigned). El primer número es un número vluimsbf5, que codifica la cantidad de líneas en la tabla, a continuación sigue un número vluimsbf5, que codifica el número de bits para el código de tipos y otro número vluimsbf5 que representa el código de tipo en relación con el propio tipo original. Siguen bits de relleno o Stuffing Bits para lograr la alineación con los limites del byte.
\vskip1.000000\baselineskip
Formato de la tabla de asignación de tipos
Vluimsbf5 Vluimsbf5 Bits Cadena de caracteres
Cantidad de filas
Longitud código de tipo 1 Código de tipo 1 Bits de relleno 0-7 Nombre del tipo 1
Longitud código de tipo 2 Código de tipo 2 Bits de relleno 0-7 Nombre del tipo 2
... ... ... ...
\vskip1.000000\baselineskip
La transmisión de una tabla de asignación de tipos permite decodificar correctamente los códigos de tipos eventualmente existentes en un documento codificado, incluso cuando el esquema que sirve de base no se haya transmitido y/o decodificado aún por completo.
Correspondientemente han de transmitirse con elementos globales el SBC global y en elementos que pertenecen a un grupos sustitutorio, el código sustitutorio, transmitiéndose previamente para todos los elementos globales una sola vez la longitud global SBC y con el elemento de cabecera del grupo sustitutorio la longitud del correspondiente código sustitutorio.
Es posible cualquier combinación en la decodificación de las particularidades descritas en los distintos perfeccionamientos y puede introducirse de la manera correspondiente también en la decodificación.
El procedimiento BiM exige que se compile el esquema XML en un formato que permite la determinación de la longitud de las palabras de código y la elección de los elementos de datos mediante los valores de los códigos. Para ello hay varias posibilidades. En el estándar MPEG-7 (ISO/IEC 15938-1:2001 parte 1: Sistemas o bien ISO/IEC 15938-6:2001 parte 6: software de referencia) se propone para la codificación de la carga útil o bien Payload un modelo que utiliza el automatismo de estado finito (Finite State Automatons) y para la decodificación de una ruta de contexto, tablas de códigos, que se generan a partir del esquema.
En un perfeccionamiento preferente representado en la figura 4 del decodificador correspondiente a la invención, se describe el proceso de decodificación con un modelo de códigos de bits, traduciéndose la estructura del esquema en un sistema a partir de estados de enmallamiento que son elaborados por un intérprete de códigos de bits BCI, conteniendo un flujo de bits BS recibido por el codificador la información sobre el estado subsiguiente a elegir. A diferencia del modelo que se propone en el estándar MPEG-7, está diseñado el modelo de código de bits de tal manera que puede decodificarse tanto un flujo de bits que representa un Payload (carga útil) como también un flujo de bits que representa una ruta de contexto. No es por lo tanto necesario mantener en el decodificador la misma información que está contenida en el esquema dos veces para los distintos procedimientos de codificación. El intérprete BCI lee la información a partir del flujo de bits de entrada, que codifica un documento XML o un esquema XML en el formato BiM. Esta información permite la elección entre los estados subsiguientes del estado actual que está archivado en la secuencia de bits. Los estados subsiguientes están colocados fijamente dentro del código de bytes como indicador P. En función de la configuración se emite una ruta, un Payload o un código de
bytes.
La decodificación de un esquema puede realizarse con las modificaciones antes propuestas igualmente de manera eficiente en el modelo de código de bytes. En este caso no se emite ningún Payload y ninguna ruta, sino que se genera directamente un código de bytes que puede ser utilizado por el intérprete de código de bytes para la decodificación de los correspondientes tipos.
El código de bytes se compone de elementos de estructura o bien estados. Los estados son de tipo diverso, que se identifica mediante el campo de bits de cabecera del estado. Los estados contienen, en función del tipo, distintos campos de información que son leídos por el interprete de código de bytes y que se evalúan en función de la configuración (Payload/Ruta de Contexto) y el estado actual.
Respecto a los tipos de estados que representan la información del esquema, puede pensarse en varias variantes. Es esencial que puedan reproducirse mediante los estados del modelo del código de bytes todos los elementos de sintaxis de un esquema XML, y que la información completa que es necesaria para la decodificación eficiente de ambos algoritmos definidos en el estándar MPEG-7 (Ruta de Contexto/Payload), se ponga a disposición en los
estados.
Una posible estructura del código de bytes se describe brevemente a continuación:
Tipos de estados, compendio:
1. Estado de la cabecera de un complexTyps
El estado de la cabecera de un tipo forma el punto de entrada en la decodificación de un complexType. El mismo incluye el nombre del tipo (en el caso de que no se trate de un tipo anónimo), así como información en relación con el origen del tipo (indicador sobre el estado de base), así como polimorfismo.
Es específico para la codificación de la carga útil (Payload) un indicador sobre una lista de los atributos del tipo. Son específicos para la codificación de la ruta de contexto campos con la cantidad de los elementos de tipo para las tablas de Context (contexto) y Operand Tree Branch Code (Código de rama del árbol).
El último campo de información es un indicador sobre el estado subsiguiente, es decir, el primer estado que representa el contenido del complexTypes (por ejemplo un estado del elemento o un estado elegido).
Representación gráfica de un estado de la cabecera
Campo de bits de cabecera
Indicador sobre el ramal con nombre
Indicador sobre el estado de la cabecera tipo de base
Indicador sobre árbol genealógico
Cantidad de tipos contexto TBC
Cantidad de tipos operando TBC
Indicador sobre estado subsiguiente
\vskip1.000000\baselineskip
2. Estado elegido
Un estado elegido reproduce un grupo de elección del esquema XML. El estado elegido contiene esencialmente una lista de indicadores con posibles estados subsiguientes. Para determinar el estado efectivamente elegido, debe leerse en la decodificación de una carga útil (Payload) el flujo de bits. Del estado elegido hay dos variantes: un estado de arranque, que deriva hacia los distintos estados subsiguientes posibles, así como un estado final, que compendia de nuevo la elección.
3. Estado del elemento
El estado del elemento reproduce una declaración del elemento en un complexType de un esquema. El mismo contiene un indicador sobre una cadena de caracteres con el nombre del elemento, así como un indicador sobre el estado de la cabecera del tipo. Además, existe eventualmente información sobre la longitud del código de posición (Position Codes) - sólo para la decodificación de la ruta - y para grupos sustitutorios (Substitution Groups).
4. Estado del atributo
Un estado del atributo reproduce una declaración del atributo de un esquema. Se incluyen un indicador sobre el nombre del atributo, así como un indicador sobre el estado de la cabecera del tipo simple del atributo.
5. Estado del incidente
Un estado del incidente (Ocurrence) reproduce los atributos minOccurs y maxOccurs, que pueden presentarse en un esquema XML, por ejemplo en un elemento o en un grupo (choice, sequence, ...) (elección, secuencia, ...). El mismo contiene un indicador sobre el estado subsiguiente, en el caso de que se presente otra instancia del elemento o del grupo, así como un indicador sobre el estado subsiguiente, en el caso de que la última instancia del grupo haya sido codificada. Puesto que en esquemas XML existe la posibilidad de que un elemento se contenga a sí mismo (en la definición complexType del elemento, o en una imbricación más profunda aún, se presenta el propio elemento de nuevo) puede también estar activo un estado del incidente simultáneamente más de una vez. Por lo tanto es necesario un indicador sobre un apilamiento dentro del estado del incidente, que asegure el estado actual de cada instancia activa del estado del incidente (occurrence).
6. Estado final de un tipo
El estado final de un tipo contiene una lista de indicadores con todos los atributos de este tipo. El mismo es necesario en la decodificación de una ruta, ya que en las tablas del código de la rama del árbol (Tree Branch Code) están clasificados todos los atributos al final de la tabla. Al alcanzar un estado final, deriva el intérprete del código de bytes jerárquicamente al elemento que ha llamado a este tipo. La correspondiente información sobre el elemento que llama debe estar archivada en la memoria de trabajo del intérprete de código de bytes.
7. Estado de cabecera de un simpleType
Este estado controla la decodificación del contenido, es decir, contiene un indicador (pointer) sobre un Codec, que puede leer y decodificar datos específicamente del correspondiente tipo a partir del flujo de bits. El tipo del codec está especificado en un campo de información.
Las ventajas esenciales del modelo de código de bytes en comparación con el estado del software de referencia MPEG-7 son:
1. La información del esquema se representa para ambos procedimientos de codificación (ruta de contexto/payload, carga útil) sólo una vez en el decodificador. La mayor parte de la información en los estados de códigos de bytes es relevante para ambos procedimientos. Una parte más pequeña es específica para en cada caso uno de ambos procedimientos. Por lo tanto, es muy compacta la representación de la información del esquema en el decodificador.
2. El modelo de código de bytes pone a disposición un formato de datos bien definido para información sobre el esquema, que es adecuado por ejemplo también para precompilar y memorizar (en lugar del esquema XML como texto).
3. La ejecución del código de bytes mediante un procesador estándar puede realizarse muy rápidamente, ya que el modelo de código de bytes prepara muy bien el proceso decodificador. Toda la información está disponible directamente en el estado mediante indicadores, y no tiene que buscarse (como en la ISO/IEC 15938-6, parte 6, software de referencia) en parte sólo en las listas.
Un correspondiente codificador puede realizarse de la misma forma, siendo inverso de tal manera que los estados de la representación textual del documento estructurado son controlados y las transiciones entre estados generan la representación binaria.

Claims (14)

1. Procedimiento para codificar y transmitir un documento XML (XML) con las siguientes etapas:
a)
Normalización del esquema XML (XMLS) correspondiente al documento XML (XML), incluyendo la normalización del esquema XML (XMLS) una de las siguientes etapas:
-
Simplificación de un grupo que sólo contiene un elemento: Se disuelve el grupo y el elemento contenido se clasifica en el plano del grupo disuelto en el Content Modell (modelo de contenido), sustituyéndose los atributos minOccurs y maxOccurs del elemento por el producto de los correspondientes atributos del grupo disuelto y del elemento antes del reagrupamiento.
-
Simplificación de un grupo de elección (choice), que contiene un elemento con el valor de atributo minOccurs=0:
El atributo minOccurs del grupo de elección se coloca independientemente del valor precedente en 0, al elemento que tenía un valor de atributo minOccurs=0, se le asigna un valor de atributo minOccurs=1.
-
Simplificación de grupos de elección (choice) imbricados:
Si un grupo de elección contiene otro grupo de elección que contiene los valores de atributo minOccurs= maxOccurs=1, entonces se disuelve este grupo de elección, y el contenido se incluye directamente en el grupo de elección que se encuentra encima;
estando definidos los conceptos grupo, elemento, modelo de contenido (Content Modell), atributo, minOccurs, maxOccurs y grupo de elección (choice) en la descripción normativa del lenguaje del esquema XML;
b)
Codificación del esquema XML normalizado (XMLSn) con ayuda de un metaesquema (SS);
c)
Transmisión del esquema XML codificado en un primer flujo de bits (BS1);
d)
Codificación del documento XML (XML) mediante el correspondiente esquema XML normalizado (XMLSn);
e)
Transmisión del documento XML codificado en un segundo flujo de bits (BS2);
estando previstos el primer y el segundo flujo de bits (BS1, BS2) para la recepción para un decodificador, que ejecuta las siguientes etapas:
f)
Decodificación del esquema XML transmitido codificado en el primer flujo de bits (BS1) en el esquema XML normalizado (XMLSn), mediante el metaesquema, correspondiendo el esquema normalizado y el metaesquema (SS) al esquema utilizado en la codificación;
g)
Decodificación del documento XML codificado transmitido en el segundo flujo de bits (BS2) mediante el esquema XML normalizado (XMLSn), sin realizar otra normalización del esquema XML normalizado (XMLSn).
2. Procedimiento según la reivindicación 1, en el que las declaraciones de elementos y/o declaraciones de atributos de la definición de esquemas de un documento estructurado se reestructuran de tal manera que se separan definiciones de tipo anónimas (AT0) de las declaraciones de elemento y/o declaraciones de atributo y reciben un nombre y/o código que se utiliza para referenciar en el correspondiente elemento.
3. Procedimiento según la reivindicación 1 ó 2, en el que en lugar de nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios, sólo se codifican números, así como una o varias tablas con una asociación entre números y nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios.
4. Procedimiento según una de las reivindicaciones 1 a 3, en el que se codifican una o varias listas incluyendo los nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios, así como las posiciones de los nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios en la lista en lugar de nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios.
5. Procedimiento según una de las reivindicaciones precedentes, en el que se codifican informaciones para el árbol genealógico de tipos, elementos globales y/o grupos sustitutorios, estando descrito cada tipo mediante una información sobre su código de tipo referido al tipo inicial y a la longitud de todos los códigos de tipo que se refieren a los tipos descritos y/o cada elemento global es descrito por la longitud de su SBC y un SBC y/o cada elemento en un grupo sustitutorio por la longitud del grupo sustitutorio y un código sustitutorio.
6. Procedimiento para decodificar un primer y un segundo flujo de bits (BS1, BS2) que han sido generados con el procedimiento de codificación a partir de un documento XML (XML), incluyendo el procedimiento de codificación las siguientes etapas:
a)
Normalización del esquema XML (XMLSn) correspondiente al documento XML (XML), incluyendo la normalización del esquema XML (XMLSn) una de las siguientes etapas:
-
Simplificación de un grupo que sólo contiene un elemento:
Se disuelve el grupo y el elemento contenido se clasifica en el nivel del grupo disuelto en el Content Modell (modelo de contenido), sustituyéndose los atributos minOccurs y maxOccurs del elemento por el producto de los correspondientes atributos del grupo disuelto y del elemento antes del reagrupamiento.
-
Simplificación de un grupo de elección (choice), que contiene un elemento con el valor de atributo minOccurs=0:
El atributo minOccurs del grupo de elección se coloca independientemente del valor precedente en 0, al elemento que tenía un valor de atributo minOccurs=0 se le asigna un valor de atributo minOccurs=1.
-
Simplificación de grupos de elección (choice) imbricados: Si un grupo de elección contiene otro grupo de elección que contiene los valores de atributo minOccurs= maxOccurs=1, entonces se disuelve este grupo de elección, y el contenido se incluye directamente en el grupo de elección que se encuentra encima;
estando definidos los conceptos grupo, elemento, modelo de contenido (Content Modell), atributo, minOccurs, maxOccurs y grupo de elección (choice) en la descripción normativa del lenguaje del esquema XML;
b)
Codificación del esquema XML normalizado (XMLSn) con ayuda de un metaesquema (SS);
c)
Transmisión del esquema XML codificado en un primer flujo de bits (BS1);
d)
Codificación del documento XML (XML) mediante el correspondiente esquema XML normalizado (XMLSn);
e)
Transmisión del documento XML codificado en un segundo flujo de bits (BS2);
ejecutándose en el procedimiento de decodificación las siguientes etapas:
f)
Decodificación del esquema XML codificado transmitido en el primer flujo de bits (BS1) en el esquema XML normalizado (XMLSn), mediante el metaesquema (SS), correspondiendo el esquema normalizado (XMLSn) y el metaesquema (SS) al esquema utilizado en la codificación;
g)
Decodificación del documento XML codificado transmitido en el segundo flujo de bits (BS2) mediante el esquema XML normalizado (XMLSn), sin realizar otra normalización del esquema XML normalizado (XMLSn).
7. Procedimiento según la reivindicación 6, en el que las declaraciones de elementos y/o declaraciones de atributos de un documento estructurado se reestructuran de tal manera que se insertan tipos anónimos (AT0), a los cuales para la transmisión le ha sido asignado un nombre y/o un código en la correspondiente declaración de elemento o declaración de atributo, de las cuales se referencia el correspondiente tipo anónimo.
8. Procedimiento según la reivindicación 6 ó 7, en el que a partir del flujo de bits se decodifican nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios mediante números, así como una o varias tablas con una asociación entre números y nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios.
9. Procedimiento según una de las reivindicaciones 6 a 8, en el que a partir del flujo de bits se decodifican nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios mediante una o varias listas que incluyen los nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios, así como las posiciones de los nombres de tipo y/o nombres de elemento y/o nombres de grupos sustitutorios en la lista.
10. Procedimiento según una de las reivindicaciones 6 a 9, en el que primeramente se decodifican a partir del flujo de bits informaciones para un árbol genealógico de tipos y/o elementos globales y/o grupos sustitutorios, estando descrito cada tipo mediante una información por medio de su código de tipo referido al tipo original y a la longitud de todos los códigos de tipo que se refieren a los tipos descritos,
y/o cada elemento global viene descrito por la longitud del SBC y un SBC y/o cada elemento en un grupo sustitutorio mediante la longitud del grupo sustitutorio y un código sustitutorio.
\newpage
11. Dispositivo (codificador) para codificar documentos XML, en el que existe una unidad codificadora que está configurada de tal manera que ejecuta un procedimiento de codificación según una de las reivindicaciones 1 a 5.
12. Dispositivo (decodificador) para decodificar documentos XML, en el que existe una unidad decodificadora, que está configurada de tal manera que ejecuta un procedimiento de decodificación según una de las reivindicaciones 6 a 10.
13. Dispositivo según la reivindicación 11, en el que la unidad codificadora presenta un intérprete de códigos de bytes configurable, que interpreta informaciones en un código de bytes y que, en función de la configuración, genera a partir del documento estructurado y basándose en un código de bytes un código que representa una ruta o una carga útil.
14. Dispositivo según la reivindicación 12, en el que la unidad decodificadora presenta un intérprete de códigos de bytes configurable mediante informaciones procedentes del flujo de bits y que, en función de la configuración, genera a partir del flujo de bits, basándose en un código de bytes, una ruta, una carga útil o un código de bytes.
ES03787637T 2002-07-15 2003-07-07 Procedimiento y dispositivos para codificar/decodificar documentos estructurados, en particular documentos xml. Expired - Lifetime ES2262000T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
DE10231971 2002-07-15
DE10231971 2002-07-15
DE10248758A DE10248758B4 (de) 2002-07-15 2002-10-18 Verfahren und Vorrichtungen zum Encodieren/Decodieren von XML-Dokumenten
DE10248758 2002-10-18

Publications (1)

Publication Number Publication Date
ES2262000T3 true ES2262000T3 (es) 2006-11-16

Family

ID=31889074

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03787637T Expired - Lifetime ES2262000T3 (es) 2002-07-15 2003-07-07 Procedimiento y dispositivos para codificar/decodificar documentos estructurados, en particular documentos xml.

Country Status (11)

Country Link
US (1) US7707154B2 (es)
EP (1) EP1522028B9 (es)
JP (1) JP4197320B2 (es)
CN (1) CN100580661C (es)
AT (1) ATE327538T1 (es)
AU (1) AU2003250302A1 (es)
BR (1) BR0312681A (es)
DE (1) DE50303493D1 (es)
ES (1) ES2262000T3 (es)
RU (1) RU2005103833A (es)
WO (1) WO2004017225A1 (es)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2813743B1 (fr) * 2000-09-06 2003-01-03 Claude Seyrat Procede de compression/decompression de documents structures
CA2544327A1 (en) * 2003-11-07 2005-05-19 Expway Method for compressing and decompressing structured documents
US8427494B2 (en) * 2004-01-30 2013-04-23 Nvidia Corporation Variable-length coding data transfer interface
DE102004034004A1 (de) * 2004-07-14 2006-02-09 Siemens Ag Verfahren zum Codieren eines XML-Dokuments, sowie Verfahren zum Decodieren, Verfahren zum Codieren und Decodieren, Codiervorrichtung, Decodiervorrichtung und Vorrichtung zum Codieren und Decodieren
US7844958B2 (en) * 2005-03-11 2010-11-30 Aptana, Inc. System and method for creating target byte code
US7707547B2 (en) * 2005-03-11 2010-04-27 Aptana, Inc. System and method for creating target byte code
US7461075B2 (en) * 2005-05-20 2008-12-02 International Business Machines Corporation Method for updating XML schema registry using schema pass by value with message
US7681234B2 (en) * 2005-06-30 2010-03-16 Microsoft Corporation Preventing phishing attacks
US20070015553A1 (en) * 2005-07-12 2007-01-18 Microsoft Corporation Compact and durable clamshell smartphone
US20070015533A1 (en) * 2005-07-12 2007-01-18 Microsoft Corporation Mono hinge for communication device
US7676242B2 (en) * 2005-07-12 2010-03-09 Microsoft Corporation Compact and durable thin smartphone
US7630741B2 (en) * 2005-07-12 2009-12-08 Microsoft Corporation Compact and durable messenger device
US7403951B2 (en) * 2005-10-07 2008-07-22 Nokia Corporation System and method for measuring SVG document similarity
US8024427B2 (en) * 2006-01-09 2011-09-20 Microsoft Corporation Dynamic storage of documents
US7593949B2 (en) * 2006-01-09 2009-09-22 Microsoft Corporation Compression of structured documents
US8640231B2 (en) * 2006-02-23 2014-01-28 Microsoft Corporation Client side attack resistant phishing detection
US7620645B2 (en) * 2006-02-24 2009-11-17 Microsoft Corporation Scalable algorithm for sharing EDI schemas
US7861229B2 (en) * 2006-03-16 2010-12-28 Microsoft Corporation Complexity metrics for data schemas
US7886223B2 (en) * 2006-11-17 2011-02-08 International Business Machines Corporation Generating a statistical tree for encoding/decoding an XML document
US20080208887A1 (en) * 2007-02-27 2008-08-28 Balachandran Girish K Method, apparatus, and program product for creating and maintaining a data model
US8725504B1 (en) 2007-06-06 2014-05-13 Nvidia Corporation Inverse quantization in audio decoding
US8726125B1 (en) 2007-06-06 2014-05-13 Nvidia Corporation Reducing interpolation error
US8477852B2 (en) * 2007-06-20 2013-07-02 Nvidia Corporation Uniform video decoding and display
US8849051B2 (en) * 2007-09-17 2014-09-30 Nvidia Corporation Decoding variable length codes in JPEG applications
US8502709B2 (en) * 2007-09-17 2013-08-06 Nvidia Corporation Decoding variable length codes in media applications
US8914774B1 (en) 2007-11-15 2014-12-16 Appcelerator, Inc. System and method for tagging code to determine where the code runs
US8954989B1 (en) 2007-11-19 2015-02-10 Appcelerator, Inc. Flexible, event-driven JavaScript server architecture
US8260845B1 (en) 2007-11-21 2012-09-04 Appcelerator, Inc. System and method for auto-generating JavaScript proxies and meta-proxies
FR2924244B1 (fr) * 2007-11-22 2010-04-23 Canon Kk Procede et dispositif d'encodage et de decodage d'information
US8566807B1 (en) 2007-11-23 2013-10-22 Appcelerator, Inc. System and method for accessibility of document object model and JavaScript by other platforms
US8719451B1 (en) 2007-11-23 2014-05-06 Appcelerator, Inc. System and method for on-the-fly, post-processing document object model manipulation
US8806431B1 (en) 2007-12-03 2014-08-12 Appecelerator, Inc. Aspect oriented programming
US8704834B2 (en) * 2007-12-03 2014-04-22 Nvidia Corporation Synchronization of video input data streams and video output data streams
US8934539B2 (en) * 2007-12-03 2015-01-13 Nvidia Corporation Vector processor acceleration for media quantization
US8819539B1 (en) 2007-12-03 2014-08-26 Appcelerator, Inc. On-the-fly rewriting of uniform resource locators in a web-page
US8756579B1 (en) 2007-12-03 2014-06-17 Appcelerator, Inc. Client-side and server-side unified validation
US8687875B2 (en) * 2007-12-03 2014-04-01 Nvidia Corporation Comparator based acceleration for media quantization
US8527860B1 (en) 2007-12-04 2013-09-03 Appcelerator, Inc. System and method for exposing the dynamic web server-side
US8938491B1 (en) 2007-12-04 2015-01-20 Appcelerator, Inc. System and method for secure binding of client calls and server functions
US8639743B1 (en) 2007-12-05 2014-01-28 Appcelerator, Inc. System and method for on-the-fly rewriting of JavaScript
US8285813B1 (en) 2007-12-05 2012-10-09 Appcelerator, Inc. System and method for emulating different user agents on a server
US8335982B1 (en) 2007-12-05 2012-12-18 Appcelerator, Inc. System and method for binding a document object model through JavaScript callbacks
KR100931636B1 (ko) * 2007-12-14 2009-12-14 주식회사 씬멀티미디어 모바일 플랫폼에서의 BiM 복호기에 스키마 정보를입력하는 방법
US7996523B2 (en) * 2008-01-17 2011-08-09 Fluke Corporation Free string match encoding and preview
US8291079B1 (en) 2008-06-04 2012-10-16 Appcelerator, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment
US8880678B1 (en) 2008-06-05 2014-11-04 Appcelerator, Inc. System and method for managing and monitoring a web application using multiple cloud providers
US7925643B2 (en) * 2008-06-08 2011-04-12 International Business Machines Corporation Encoding and decoding of XML document using statistical tree representing XSD defining XML document
US7596620B1 (en) 2008-11-04 2009-09-29 Aptana, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment
FR2936623B1 (fr) * 2008-09-30 2011-03-04 Canon Kk Procede de codage d'un document structure et de decodage, dispositifs correspondants
KR101044870B1 (ko) * 2008-10-02 2011-06-28 한국전자통신연구원 경로 코드를 이용한 xml 문서의 부호화 및 복호화 방법과 장치
US9307267B2 (en) * 2008-12-11 2016-04-05 Nvidia Corporation Techniques for scalable dynamic data encoding and decoding
EP2219117A1 (en) * 2009-02-13 2010-08-18 Siemens Aktiengesellschaft A processing module, a device, and a method for processing of XML data
CN101840394B (zh) * 2010-03-04 2012-12-19 英华达(南昌)科技有限公司 数据解码方法
EP2388701A1 (en) * 2010-05-17 2011-11-23 Siemens Aktiengesellschaft Method and apparatus for providing a service implementation
CN102650992B (zh) * 2011-02-25 2014-07-30 国际商业机器公司 用于二进制xml数据的生成及其节点定位的方法和装置
US9063916B2 (en) * 2013-02-27 2015-06-23 Oracle International Corporation Compact encoding of node locations

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2688422A1 (fr) * 1992-03-11 1993-09-17 Coletica Microcapsules a parois en polysaccharides contenant des fonctions alcools primaires, et compositions en contenant.
JP3859313B2 (ja) * 1997-08-05 2006-12-20 富士通株式会社 タグ文書の圧縮装置および復元装置,圧縮方法および復元方法,圧縮/復元装置および圧縮/復元方法並びに圧縮,復元もしくは圧縮/復元プログラムを記録したコンピュータ読み取り可能な記録媒体
FR2813743B1 (fr) 2000-09-06 2003-01-03 Claude Seyrat Procede de compression/decompression de documents structures

Also Published As

Publication number Publication date
RU2005103833A (ru) 2005-10-10
JP2005538436A (ja) 2005-12-15
WO2004017225A1 (de) 2004-02-26
DE50303493D1 (de) 2006-06-29
EP1522028B1 (de) 2006-05-24
EP1522028A1 (de) 2005-04-13
AU2003250302A1 (en) 2004-03-03
JP4197320B2 (ja) 2008-12-17
US20050182778A1 (en) 2005-08-18
CN1669024A (zh) 2005-09-14
US7707154B2 (en) 2010-04-27
BR0312681A (pt) 2005-04-26
EP1522028B9 (de) 2006-12-20
ATE327538T1 (de) 2006-06-15
CN100580661C (zh) 2010-01-13

Similar Documents

Publication Publication Date Title
ES2262000T3 (es) Procedimiento y dispositivos para codificar/decodificar documentos estructurados, en particular documentos xml.
KR101011663B1 (ko) Xml 문서의 구조적 스트리밍을 위한 방법 및 장치
US7647552B2 (en) XML encoding scheme
US20030177341A1 (en) Schema, syntactic analysis method and method of generating a bit stream based on a schema
US7373591B2 (en) Binary format for MPEG-7 instances
KR20010080681A (ko) 엑스엠엘 컨텐트를 스트림하는 방법 및 장치
KR20030085527A (ko) 문서의 구조화된 표현을 압축하는 방법 및 시스템
US20080148141A1 (en) Method For Encoding an Xml Document, Decoding Method, Encoding and Decoding Method, Encoding Device, Decoding Device and Encoding and Decoding Device
JP2013140627A (ja) Mpeg−7および他のxmlベースのコンテンツ記述のバイナリ表現機能を改善する方法
ES2300429T3 (es) Procedimiento de codificacion y descodificacion de un trayecto en un diagrama de arbol de un documento estructurado.
CN100576750C (zh) 用于从索引树中产生比特流的方法
US20060167907A1 (en) System and method for processing XML documents
KR20060054315A (ko) 구조화된 문서의 코딩 방법
US7797346B2 (en) Method for improving the functionality of the binary representation of MPEG-7 and other XML based content descriptions
JP2006519422A (ja) 構造化されたドキュメントのエンコーディング方法
CN100449530C (zh) 大纲、语法分析方法和基于一种大纲生成一个位流的方法
KR100968083B1 (ko) 구조화된 문서들, 특히 xml 문서들을인코딩/디코딩하기 위한 방법 및 장치
JP2007516514A (ja) 構造化文書の圧縮および解凍方法
Ozden A Binary Encoding for Efficient XML Processing
Kheirkhahzadeh On the performance of markup language compression
AU2001293514B2 (en) XML encoding scheme