DE102004044164A1 - Method and device for coding XML documents - Google Patents

Method and device for coding XML documents Download PDF

Info

Publication number
DE102004044164A1
DE102004044164A1 DE200410044164 DE102004044164A DE102004044164A1 DE 102004044164 A1 DE102004044164 A1 DE 102004044164A1 DE 200410044164 DE200410044164 DE 200410044164 DE 102004044164 A DE102004044164 A DE 102004044164A DE 102004044164 A1 DE102004044164 A1 DE 102004044164A1
Authority
DE
Germany
Prior art keywords
person
name
attribute
last name
elements
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.)
Withdrawn
Application number
DE200410044164
Other languages
German (de)
Inventor
Jörg Heuer
Martin Winter
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
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE200410044164 priority Critical patent/DE102004044164A1/en
Priority to PCT/EP2005/054261 priority patent/WO2006029959A1/en
Publication of DE102004044164A1 publication Critical patent/DE102004044164A1/en
Withdrawn 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Kodieren und Dekodieren eines strukturierten Dokumentes, insbesondere eines XML-basierten Dokumentes. Die Struktur weist folgende Eigenschaften auf: Es existieren mit Werten (JOERG, HEUER, ANDREA, VOGT, ANDREAS, HUTTER) belegte Elemente (PERSON, FIRST NAME, LAST NAME), Elemente (PERSON) können mit Werten (3, 024, 035, 046) belegte Attribute (ID) aufweisen, Pfade verlaufen zu Elementen (PERSON, FIRST NAME, LAST NAME) und gegebenenfalls zur Attributen (ID) von einem Element gegebenenfalls über weitere Elemente zu dem jeweiligen Element (PERSON, FIRST NAME, LAST NAME) oder zu dem jeweiligen Attribut (ID) über jeweils miteinander verbundene Elemente. Erfindungsgemäß wird ein zu aktualisierendes Element (LAST NAME) oder Attribut durch eine Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße identifiziert. Weiterhin betrifft die Erfindung Vorrichtungen zur Durchführung des Verfahrens.The invention relates to a method for coding and decoding a structured document, in particular an XML-based document. The structure has the following properties: There are elements (PERSON, FIRST NAME, LAST NAME) occupied by values (JOERG, HEUER, ANDREA, VOGT, ANDREAS, HUTTER), elements (PERSON) with values (3, 024, 035, 046) have assigned attributes (ID), paths to elements (PERSON, FIRST NAME, LAST NAME) and optionally to the attributes (ID) of an element, optionally via further elements to the respective element (PERSON, FIRST NAME, LAST NAME) or to the respective attribute (ID) via interconnected elements. According to the invention, an LAST NAME or attribute is identified by specifying at least one path to a target size in combination with the value of the target size. Furthermore, the invention relates to devices for carrying out the method.

Description

Die Erfindung betrifft ein Verfahren zum Kodieren und zum Dekodieren eines strukturierten Dokumentes, insbesondere eines XML-basierten Dokumentes. Weiterhin betrifft die Erfindung eine Kodier- und eine Dekodiereinrichtung zur Durchführung des Verfahrens.The The invention relates to a method for coding and decoding a structured document, especially an XML-based one Document. Furthermore, the invention relates to a coding and a Decoding device for implementation of the procedure.

XML (Extensible Markup Language) ist eine Sprache, mit der eine strukturierte Beschreibung von Inhalten eines Dokuments ermöglicht wird. Hierbei können Namensräume verwendet werden, die mittels XML-Schema-Sprachdefinitionen definiert sind. Eine genauere Beschreibung des XML-Schemas sowie der darin verwendeten Strukturen, Elemente und Inhaltsmodelle finden sich in den Referenzen [7], [8] und [9]. Das strukturierte Dokument entspricht einem Datenbaum, dessen Knoten bzw. Verzweigungen aus Elementen bestehen, welche mit Werten belegt sind. Diese Werte können von simplem Typ sein, d.h. beispielsweise Zahlen oder Schriftzüge enthalten, oder von komplexem Typ, d.h. beispielsweise weitere Elemente und/oder Attribute enthalten. Dementsprechend können Elemente weitere Elemente und/oder Attribute aufweisen, welche ebenfalls mit Werten belegbar sind. Jedes Element ist gemäß der Datenbaumstruktur mit einem oder mehreren weiteren Elementen verbunden. Zu jedem Element und Attribut verlaufen Pfade, welche bei einem Wurzelelement oder einem anderen Element beginnen und gegebenenfalls über mehrere weitere, jeweils miteinander verbundene Elemente verlaufen. Als Vaterelement eines Elementes oder Attributes wird ein anderes Element bezeichnet, welches als letztes Element in dem Pfad von dem Wurzelelement zu diesem Element oder Attribut enthalten ist.XML (Extensible Markup Language) is a language with which a structured Description of the contents of a document is enabled. Namespaces can be used here which are defined using XML Schema language definitions. A detailed description of the XML schema and the used therein Structures, elements and content models can be found in the references [7], [8] and [9]. The structured document corresponds to a data tree, whose nodes or branches consist of elements which are assigned with values. These values can be of a simple type i.e. For example, contain numbers or lettering, or complex Type, i. For example, contain other elements and / or attributes. Accordingly, you can Elements have further elements and / or attributes, which also can be assigned with values. Each element is in accordance with the data tree structure with connected to one or more other elements. To every element and attribute paths which are at a root element or start from another element and if necessary over several further, each interconnected elements run. When The parent element of an element or attribute becomes another element denoted as the last element in the path from the root element is included to this element or attribute.

Aus dem Stand der Technik sind Verfahren zur Kodierung von XML-basierten Dokumenten bekannt, bei denen das Dokument in eine kodierte Binärdarstellung umgewandelt wird. Beispiels weise werden in dem Dokument [3], das im Rahmen der Entwicklung eines MPEG-7-Kodierstandards entstanden ist, Verfahren zur Kodierung und Dekodierung von XML-basierten Dokumenten beschrieben. Hierbei werden Fragmente des XML-basierten Dokuments in so genannte „Fragment Update Units" aufgeteilt bzw. kodiert. Die Position von neu einzufügenden oder abzuändernden Elementen innerhalb des Datenbaumes wird über einen so genannten „Context Path" in Kombination mit „Position Codes" festgelegt. Der „Context Path" beschreibt die Elemente innerhalb des Datenbaumes, die über den neu einzufügenden oder abzuändernden Elementen stehen, d.h. er entspricht dem Pfad zu dem jeweiligen Element. Mit den „Position Codes" werden eventuelle Mehrdeutigkeiten aufgelöst, wenn ein Element an einer Position gemäß der Schemadefinition des XML-Dokuments mehrfach auftreten kann.Out The prior art are methods for encoding XML-based Documents are known in which the document in a coded binary representation is converted. For example, in the document [3], the as part of the development of an MPEG-7 coding standard is, method for encoding and decoding XML-based documents described. This will be fragments of the XML-based document in so-called "fragment Update Units "split or coded. The position of new to be inserted or modified Elements within the data tree are accessed via a so-called "context Path "in combination with "position Codes ". The "context Path "describes the elements within the data tree that are about to be reinserted or to be modified Elements, i. it corresponds to the path to the respective one Element. With the "position Codes "become possible ambiguities resolved if an item is at a position according to the schema definition of the XML document can occur multiple times.

Aufgabe der Erfindung ist es, ein effizientes Verfahren zur Kodierung und auch zur Dekodierung von strukturierten, insbesondere XML-basierten, Dokumenten vorzustellen. Weiterhin sollen eine zur Durchführung des Verfahrens geeignete Kodier- und Dekodiereinrichtung aufgezeigt werden.task The invention is an efficient method of coding and also for the decoding of structured, in particular XML-based, To present documents. Furthermore, a to carry out the Method suitable coding and decoding device be shown.

Diese Aufgabe wird durch ein Verfahren mit dem Merkmalen des Anspruchs 1, sowie durch ein Verfahren und Vorrichtungen mit Merkmalen von nebengeordneten Ansprüchen gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen sind Gegenstand von Unteransprüchen.These The object is achieved by a method having the features of the claim 1, and by a method and apparatus having features of sibling claims solved. Advantageous embodiments and further developments are the subject of Dependent claims.

Das erfindungsgemäße Verfahren betrifft die Kodierung eines strukturierten Dokumentes, wobei die Struktur – zumindest unter anderem – folgende Eigenschaften aufweist:

  • • Es existieren mit Werten belegte Elemente.
  • • Elemente können mit Werten belegte Attribute aufweisen.
  • • Pfade verlaufen zu Elementen und gegebenenfalls auch zu Attributen von einem Element gegebenenfalls über weitere Elemente zu dem jeweiligen Element oder zu dem jeweili gen Attribut über jeweils miteinander verbundene Elemente.
The method according to the invention relates to the coding of a structured document, wherein the structure has the following properties, at least among others:
  • • Elements with values exist.
  • • Elements can have values assigned to values.
  • • Paths extend to elements and possibly also to attributes of an element optionally via further elements to the respective element or to the respective attribute via respectively interconnected elements.

Erfindungsgemäß wird ein zu aktualisierendes Element oder Attribut durch eine Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße identifiziert.According to the invention is a to be updated element or attribute by an indication of at least a path to a target size in combination identified with the value of the target size.

Beim Kodieren eines Dokumentes wird das Dokument oder Teile des Dokumentes überarbeitet, wobei es von einer Darstellungsform in eine andere umgewandelt wird, so dass es von einem Enkoder zu einem Dekoder übertragen werden kann. Beim Dekodieren finden die entsprechenden Umkehrschritte zur Kodierung statt. Die Kodierung des strukturierten Dokumentes kann neben den erfindungsgemäßen Schritten weitere Schritte umfassen.At the To encode a document, the document or parts of the document will be revised, with it is transformed from one form of presentation to another, so that it can be transferred from an encoder to a decoder. At the Decoding finds the corresponding reversal steps for coding instead of. The coding of the structured document can be next to the steps according to the invention include further steps.

Bei der Zielgröße, deren Wert zur Identifizierung des zu aktualisierenden Elementes oder Attributes verwendet wird, kann es sich um ein einzelnes Element, ein einzelnes Attribut, oder um eine Kombination aus Elementen und/oder Attributen handeln. Die Aktualisierung eines Elementes oder Attributes kann aus der Veränderung des Wertes des Elementes oder Attributes bestehen, oder aus dem Hinzufügen des Elementes oder Attributes, gegebenenfalls in Kombination mit einem bestimmten Wert für das hinzuzufügende Element oder Attribut, oder aus einem Löschen des Elementes oder Attributes. Die Erfindung kann auch in Bezug auf eine Mehrzahl an zu aktualisierenden Elementen und/oder Attributen durchgeführt werden. Neben den Größen, welche gemäß der Erfindung das zu aktualisierende Element oder Attribut identifizieren, können weitere Größen zur Identifizierung des zu aktualisierenden Elementes oder Attributes zum Einsatz kommen, es ist jedoch auch möglich, dass die Größen, welche gemäß der Erfindung das zu aktualisierende Element oder Attribut identifizieren, zur eindeutigen Identifizierung des zu aktualisierenden Elementes oder Attributes genügen und somit ohne weiter Identifizierungsgrößen eingesetzt werden.The target size, whose value is used to identify the element or attribute to be updated, can be a single element, a single attribute, or a combination of elements and / or attributes. The updating of an element or attribute may consist of changing the value of the element or attribute, or of adding the element or attribute, optionally in combination with a particular value for the element or attribute to be added, or deleting the element or attribute. The invention may also be related to a plurality of updating elements and / or attributes. In addition to the sizes which according to the invention identify the element or attribute to be updated, other sizes can be used to identify the element or attribute to be updated, but it is also possible that the sizes which according to the invention, the element to be updated or Identify attribute to meet the unique identification of the element or attribute to be updated and thus used without further identification variables.

In Weiterbildung der Erfindung handelt es sich bei der Zielgröße um ein von dem zu aktualisierenden Element oder Attribut unterschiedliches Element oder Attribut. Besonders vorteilhaft ist es in diesem Fall, wenn das zu aktualisierende Element oder Attribut durch eine Angabe eines Pfades von der Zielgröße oder dem Vaterelement der Zielgröße zu dem zu aktualisierenden Element oder Attribut identifiziert wird. Dieser Pfad wird zusätzlich zum Pfad zu der Zielgröße und dem Wert der Zielgröße zur Identifikation des zu aktualisierenden Elementes oder Attributes eingesetzt.In Development of the invention is in the target size to a different from the item or attribute to be updated Element or attribute. It is particularly advantageous in this case if the item or attribute to be updated by an indication a path of the target size or the father element of the target size to updating element or attribute is identified. This Path becomes additional to the path to the target size and the Value of the target size for identification of the element or attribute to be updated.

In Ausgestaltung der Erfindung handelt es sich bei der Zielgröße um eine Kombination aus Elementen und/oder Attributen. Die Pfadangabe zu einer derartigen Zielgröße ist entsprechend der Zusammensetzung der Zielgröße ausgestaltet, z.B. durch Aneinanderreihung einzelner Pfade zu den einzelnen Bestandteilen der Zielgröße.In Embodiment of the invention is in the target size to a Combination of elements and / or attributes. The path to such a target size is corresponding the composition of the target, e.g. by juxtaposing individual paths to the individual components the target size.

Vorteilhaft ist es, wenn eine Nachricht umfassend den Wert des zu aktualisierenden Elementes oder Attributes, sowie umfassend die Angabe von dem mindestens einen Pfad zu der Zielgröße in Kombination mit dem Wert der Zielgröße zur Identifizierung des zu aktualisierenden Elementes oder Attributes von einer Kodiereinrichtung zu einer Dekodiereinrichtung übertragen wird.Advantageous it is when a message comprising the value of the to be updated Element or attribute, as well as the specification of the at least a path to the target size in combination with the value of the target size for identification of the element or attribute to be updated by a coding device transferred to a decoder becomes.

In Weiterbildung der Erfindung erfolgt für die Angabe von Pfaden und/oder Werten eine KodierungIn Development of the invention takes place for the indication of paths and / or Values a coding

  • • gemäß dem MPEG-7 Standard, und/oder• according to the MPEG-7 Standard, and / or
  • • gemäß einem Verfahren, bei dem Pfade durch den jeweiligen Pfaden zugeordnete Kodes fester Länge kodiert werden, und/oder• according to one Method in which paths are assigned by the respective paths Codes of fixed length be encoded, and / or
  • • gemäß einem Verfahren bei dem mehrere Pfade durch einen zugeordneten Kode fester Länge kodiert werden.• according to one Method in which multiple paths through an associated code fixed Length coded become.

Eine Kodierung über MPEG-7 ermöglicht eine effiziente Darstellung der Pfade und Werte. Werden Pfade jeweils durch einen dem Pfad zugeordneten Kode fester Länge kodiert, so kann vor Einsatz des erfindungsgemäßen Verfahrens eine Abstimmung zwischen Kodier- und Dokodiereinrichtung darüber erfolgen, welcher Kode welchem Pfad entspricht.A Coding over MPEG-7 allows one efficient representation of paths and values. Be paths each encoded by a code associated with the path of fixed length, so before using the inventive method a coordination between coding and Dokodiereinrichtung over done, which code corresponds to which path.

Gemäß dem erfindungsgemäßen Verfahren zum Dekodieren eines strukturierten Dokumentes wird ein zu aktualisierendes Element oder Attribut durch eine Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße identifiziert. In Weiterbildung des erfindungsgemäßen Dekodierverfahrens ist es möglich, dass die enkoderseitigen Verfahrensschritte der Ausgestaltungen und Weiterbildungen in entsprechender Umkehr auch dekoderseitig durchgeführt werden.According to the inventive method for Decoding a structured document becomes a to be updated Element or attribute by specifying at least one path to a target size in combination identified with the value of the target size. In a further development of the decoding method according to the invention it is possible that the encoder-side method steps of the embodiments and developments in the corresponding reversal also decoder side carried out become.

Die erfindungsgemäße Kodiereinrichtung eignet sich zum Durchführen des erfindungsgemäßen Verfahrens. Dies kann auch auf die Ausgestaltungen und Weiterbildungen zutreffen. Die erfindungsgemäße Kodiereinrichtung kann z.B. umfassen: Mittel zum Erstellen bzw. Zur-Verfügung-Stellen von Identifikationsinformationen für ein zu aktualisierendes Element oder Attribut, umfassend eine Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße, und/oder Mittel zum Erstellen und Versenden einer Nachricht mit einer Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße zur Identifikation eines zu aktualisierenden Elementes oder Attributes.The Coding device according to the invention is suitable to perform the method according to the invention. This may also apply to the embodiments and developments. The coding device according to the invention can e.g. include: means for providing or making available Identification information for an element or attribute to be updated, comprising an indication from at least one path to a target size in combination with the value the target size, and / or means to create and send a message with an indication of at least one path to a target size in combination with the value the target size for identification an element or attribute to be updated.

Die erfindungsgemäße Dekodiereinrichtung eignet sich zum Durchführen des erfindungsgemäßen Verfahrens. Dies kann auch auf die Ausgestaltungen und Weiterbildungen zutreffen. Die erfindungsgemäße Dekodiereinrichtung kann z.B. umfassen: Mittel zum Empfangen und Verarbeiten einer Nachricht mit einer Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße zur Identifikation eines zu aktualisierenden Elementes oder Attributes, und/oder Mittel zum Identifizieren eines zu aktualisierenden Elementes oder Attributes unter Verwendung von einer Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße, und/oder Mittel zum Hinzufügen und/oder Löschen und/oder Verändern eines Elementes oder Attributes unter Verwendung von einer Angabe von mindestens einem Pfad zu einer Zielgröße in Kombination mit dem Wert der Zielgröße.The Inventive decoder is suitable to perform the method according to the invention. This may also apply to the embodiments and developments. The decoding device according to the invention can e.g. comprise: means for receiving and processing a message with an indication of at least one path to a target size in combination with the value of the target size for identification an element or attribute to be updated, and / or means for Identify an item or attribute to update using an indication of at least one path to one Target size in combination with the value of the target size, and / or means to add and / or delete and / or changing an element or attribute using an indication from at least one path to a target size in combination with the value the target size.

Im folgenden wird die Erfindung anhand eines Ausführungsbeispiels näher erläutert. Dabei zeigen:in the Following, the invention will be explained in more detail with reference to an embodiment. there demonstrate:

1: eine Datenbaumstruktur eines XML-basierten Dokumentes, 1 : a data tree of an XML-based document,

2: das XML-basierte Dokument der 1 in Textform, 2 : the XML-based document of the 1 in text form,

3: einen kodierten Bitstrom gemäß dem Stand der Technik, 3 : an encoded bitstream according to the prior art,

4: einen ersten kodierten Bitstrom gemäß der Erfindung, 4 a first coded bit stream according to the invention,

5: einen zweiten kodierten Bitstrom gemäß der Erfindung, 5 a second coded bit stream according to the invention,

6: einen dritten kodierten Bitstrom gemäß der Erfindung. 6 A third coded bit stream according to the invention.

1 zeigt die grafische Darstellung der Datenbaumstruktur eines XML-basierten Dokumentes. Dieses umfasst das Wurzelelement GROUP, auch „root" genannt. Das Wurzelelement GROUP weist das Attribut NROFMEMBERS auf, welches mit dem Wert 3 belegt ist. Verbunden mit dem Wurzelelement GROUP sind drei Elemente PERSON, welche jeweils mit zwei Elementen FIRST NAME und LAST NAME verbunden sind. Das Element FIRST NAME unter dem ersten Element PERSON ist mit dem Wert JOERG belegt, das Element LAST NAME unter dem ersten Element PERSON mit dem Wert HEUER. Das Element FIRST NAME unter dem zweiten Element PERSON ist mit dem Wert ANDREA belegt, das Element LAST NAME unter dem zweiten Element PERSON mit dem Wert VOGT. Das Ele ment FIRST NAME unter dem dritten Element PERSON ist mit dem Wert ANDREAS belegt, das Element LAST NAME unter dem dritten Element PERSON mit dem Wert HUTTER. Die Elemente PERSON weisen jeweils das Attribut ID auf, welches für das erste Element PERSON mit dem Wert 024 belegt ist, für das zweite Element PERSON mit dem Wert 035, und für das dritte Element PERSON mit dem Wert 046. Das Dokument beschreibt somit eine Gruppe bestehend aus drei Personen, wobei für jede Person der Vorname und der Nachname erfasst ist. 1 shows the graphical representation of the data tree of an XML-based document. This includes the root element GROUP, also called "root." The root element GROUP has the attribute NROFMEMBERS, which is assigned the value 3. Connected to the root element GROUP are three elements PERSON, which are each connected to two elements FIRST NAME and LAST NAME The element FIRST NAME under the first element PERSON is assigned the value JOERG, the element LAST NAME under the first element PERSON with the value HEUER The element FIRST NAME under the second element PERSON is assigned the value ANDREA, the element LAST NAME under the second element PERSON with the value VOGT The element FIRST NAME under the third element PERSON is assigned the value ANDREAS, the element LAST NAME under the third element PERSON with the value HUTTER The elements PERSON each have the attribute ID for which the first element PERSON is assigned the value 024, for the second element PERSON with the value 035, and for the third element PERSON with the Value 046. The document thus describes a group consisting of three persons, whereby the first name and the last name are recorded for each person.

2 zeigt den Datenbaum der 1 in textueller Kodierung, wobei die erste Zeile der 2 nicht Bestandteil des Datenbaumes ist, sondern vielmehr einer Überschrift gleichkommt. Die zweite Zeile entspricht dem Wurzelelement GROUP, sie verweist auf eine Internetseite, welche das XML-Schema für das Dokument enthält und gibt den Wert 3 für das Attribut NROFMEMBERS des Wurzelelementes GROUP an. Die folgenden vier Zeilen entsprechen dem ersten Element PERSON, wobei in der ersten Zeile der Wert 024 des Attributes ID des ersten Elementes PERSON angegeben ist, in der zweiten Zeile der Wert JOERG des Elementes FIRST NAME und in der dritten Zeile der Wert HEUER des Elementes LAST NAME. Die folgenden vier Zeilen entsprechen dem zweiten Element PERSON, wobei in der ersten Zeile der Wert 035 des Attributes ID des zweiten Elementes PERSON angegeben ist, in der zweiten Zeile der Wert ANDREA des Elementes FIRST NAME und in der dritten Zeile der Wert VOGT des Elementes LAST NAME. Die folgenden vier Zeilen entsprechen dem dritten Element PERSON, wobei in der ersten Zeile der Wert 046 des Attributes ID des dritten Elementes PERSON angegeben ist, in der zweiten Zeile der Wert ANDREAS des Elementes FIRST NAME und in der dritten Zeile der Wert HUTTER des Elementes LAST NAME. Die letzte Zeile korrespondiert zu der zweiten Zeile und schließt die Beschreibung des Wurzelelementes GROUP ab. 2 shows the data tree of 1 in textual coding, the first line of the 2 is not part of the data tree, but rather equal to a headline. The second line corresponds to the root element GROUP, it refers to a web page containing the XML schema for the document and specifies the value 3 for the attribute NROFMEMBERS of the root element GROUP. The following four lines correspond to the first element PERSON, where the first line indicates the value 024 of the attribute ID of the first element PERSON, the second line the value JOERG of the element FIRST NAME and the third line the value HEUER of the element LAST SURNAME. The following four lines correspond to the second element PERSON, wherein the first line indicates the value 035 of the attribute ID of the second element PERSON, the second line the value ANDREA of the element FIRST NAME and the third line the value VOGT of the element LAST SURNAME. The following four lines correspond to the third element PERSON, where in the first line the value 046 of the attribute ID of the third element PERSON is specified, in the second line the value ANDREAS of the element FIRST NAME and in the third line the value HUTTER of the element LAST SURNAME. The last line corresponds to the second line and completes the description of the root element GROUP.

Um ein bestimmtes Element oder Attribut des Dokumentes zu identifizieren, kann die Angabe des jeweiligen Namens oder der Namen der Vaterelemente herangezogen werden. Bei den Vaterelementen handelt es sich um die über einem Element oder Attribut stehenden Elemente, welche auf dem Pfad zwischen dem Element oder Attribut und dem Wurzelelement GROUP liegen. Beispielsweise lautet der Pfad zu dem Element FIRST NAME mit dem Wert JOERG unter dem ersten Element PERSON unter der Verwendung der aus [2] bekannten XPATH-Notation: GROUP/PERSON/FIRST NAME, und der Pfad zu dem Attribut ID mit dem Wert 035 des zweiten Elementes PERSON: GROUP/PERSON/ID. Dort, wo die Strukturdefinition des XML-basierten Dokumentes mehrere gleichartige Elemente zu einem Vaterelement zulässt, wie beispielsweise die drei Elemente PERSON unter dem Vaterelement GROUP der 1, muss zur eindeutigen Angabe eines Elementes oder Attributes die Angabe des Pfades durch eine weitere Information ergänzt werden.In order to identify a particular element or attribute of the document, the indication of the respective name or the name of the father elements can be used. The father elements are the elements over an element or attribute that lie on the path between the element or attribute and the root element GROUP. For example, the path to the element is FIRST NAME with the value JOERG under the first element PERSON using the XPATH notation known from [2]: GROUP / PERSON / FIRST NAME, and the path to the attribute ID with the value 035 of the second element PERSON: GROUP / PERSON / ID. Where the structure definition of the XML-based document allows several similar elements to a parent element, such as the three elements PERSON under the parent element GROUP of 1 , the specification of the path must be supplemented by a further information in order to clearly indicate an element or attribute.

Im folgenden wird der Fall betrachtet, dass der gesamte Datenbaum der 1 oder Teile des Datenbaumes der 1 von einem Sender an einen Empfänger übertragen werden sollen. Hierzu muss der Datenbaum geeignet kodiert werden, d.h. in eine geeignete Folge von Symbolen oder Bits umgewandelt werden, welche übertragen werden können. Bei dem Sender handelt es sich daher um einen Enkoder und bei dem Empfänger um einen Dekoder.In the following, the case is considered that the entire data tree of the 1 or parts of the data tree of the 1 be transmitted from a transmitter to a receiver. For this purpose, the data tree must be suitably coded, ie converted into a suitable sequence of symbols or bits, which can be transmitted. The transmitter is therefore an encoder and the receiver is a decoder.

3 zeigt einen solchen kodierten Bitstrom gemäß dem Stand der Technik. Bei dieser Repräsentation des Datenbaumes wird ein Bitstrom erzeugt, der in mehrere Einheiten AU (AU: Access Unit) aufgeteilt ist, welche ihrerseits wiederum aus mehreren Fragmenten FUU (FUU: Fragment Update Unit) bestehen. Die Einheiten AU können z.B. als MPEG7-BiM-Strom an einen oder mehrere Empfänger übertragen werden. Für die Aufteilung des Datenbaumes in die Einheiten AU gibt es mehrere Möglichkeiten, beispielsweise kann eine erste Einheit AU aus dem Attribut NROFMEMBERS und seinem Wert 3 bestehen, eine zweite Einheit AU aus dem Element FIRST NAME unter dem ersten Element PERSON und seinem Wert JOERG, eine dritte Einheit AU aus dem ersten Element PERSON, seinem Attribut ID mit dem Wert 024, dem Element LAST NAME unter dem ersten Attribut PERSON und seinem Wert HEUER, eine vierte Einheit AU aus dem Element FIRST NAME unter dem zweiten Element PERSON und seinem Wert ANDREA, eine fünfte Einheit AU aus dem zweiten Element PERSON, seinem Attribut ID mit dem Wert 035, dem Element LAST NAME unter dem zweiten Attribut PERSON und seinem Wert VOGT, eine sechste Einheit AU aus dem Element FIRST NAME unter dem dritten Element PERSON und seinem Wert ANDREAS, und eine siebte Einheit AU aus dem dritten Element PERSON, seinem Attribut ID mit dem Wert 046, dem Element LAST NAME unter dem dritten Attribut PERSON und seinem Wert HUTTER. 3 shows such a coded bit stream according to the prior art. In this representation of the data tree, a bit stream is generated, which is divided into several units AU (AU: Access Unit), which in turn consist of several fragments FUU (FUU: Fragment Update Unit). The units AU can be transmitted eg as MPEG7 BiM stream to one or more receivers. For the division of the data tree into the units AU there are several possibilities, for example a first unit AU can consist of the attribute NROFMEMBERS and its value 3, a second unit AU of the element FIRST NAME under the first element PERSON and its value JOERG, a third unit AU from the first element PERSON, its attribute ID with the value 024, the element LAST NAME under the first attribute PERSON and its value HEUER, a fourth unit AU from the element FIRST NAME under the second element PERSON and its value ANDREA, a fifth unit AU from the second element PERSON, its attribute ID with the value 035, the element LAST NAME under the second attribute PERSON and its value VOGT, a sixth unit AU from the element FIRST NAME under the third element PERSON and its value ANDREAS, and a seventh unit AU from the third element PERSON, his Attribute ID with the value 046, the element LAST NAME under the third attribute PERSON and its value HUTTER.

Jedes Fragment FUU besteht aus den Bestandteilen FX (Fragment Context) und FPL (Fragment Payload). Der Bestandteil FPL enthält einen Wert für ein Element oder Attribut. Ist das Element von komplexem Typ, so kann der Wert des jeweiligen Elementes weitere Elemente oder Attribute enthalten. Der Bestandteil FX besteht aus den Bestandteilen FC (Fragment Command), CP (Context Path) und PC (Position Code). Der Bestandteil FC teilt dem Empfänger mit, ob ein Element oder Attribut hinzugefügt oder entfernt werden soll, oder ob der Wert eines Elementes oder Attributes geändert werden soll. Der Bestandteil CP gibt den Pfad zu dem Element oder Attribut an, welches von dieser Änderung betroffen ist. Der neue, d.h. geänderte, Wert dieses Elements oder Attributs ist in dem Bestandteil FPL enthalten. Wie oben bereits erläutert, ist es möglich, dass der Pfad nicht zur eindeutigen Angabe eines Elementes oder Attributes ausreicht, wenn Mehrdeutigkeiten in Form von gleichen Elementen in mehreren Positionen des Datenbaumes vorhanden sind. Daher enthält der Bestandteil PC einen so genannten Positions-Kode, d.h. die Angabe, welches Element einer Reihe gleichartiger Elemente bei der Pfadangabe des Bestandteils CP gemeint ist. Für das zweite Element PERSON der 1 beispielsweise würde der Positions-Kode 2 lauten.Each fragment FUU consists of the components FX (Fragment Context) and FPL (Fragment Payload). The FPL component contains a value for an element or attribute. If the element is of complex type, the value of the respective element may contain further elements or attributes. The component FX consists of the components FC (Fragment Command), CP (Context Path) and PC (Position Code). The FC component tells the receiver whether to add or remove an element or attribute, or to change the value of an element or attribute. The component CP indicates the path to the element or attribute affected by this change. The new, ie changed, value of this element or attribute is contained in the component FPL. As already explained above, it is possible that the path is not sufficient to uniquely specify an element or attribute, if ambiguities in the form of equal elements in multiple positions of the data tree are present. Therefore, the component PC contains a so-called position code, that is, the indication of which element of a series of similar elements in the path of the component CP is meant. For the second element PERSON the 1 for example, the position code would be 2.

Ein Problem tritt bei dem beschriebenen Stand der Technik z.B. dann auf, wenn der Datenbaum beim Empfänger aus mehreren einzelnen Datenbäumen mehrerer Sender zusammengesetzt wird. In diesem Fall kann ein einzelner Sender die Positions-Kodes nur schwer ermitteln, weil sich die Position der Elemente beim Empfänger aus der Gesamtsicht aller Teildatenbäume ergibt und diese Gesamtsicht dem einzelnen Sender unter Umständen nicht bekannt ist.One Problem occurs in the described prior art e.g. then on if the data tree at the receiver consists of several individual data trees several transmitters is composed. In this case, a single Sender's position codes are difficult to determine because of the position of the elements at the receiver from the overall view of all partial data trees and this overall view the individual transmitter may not is known.

4 zeigt einen kodierten Bitstrom gemäß der Erfindung. Der Bestandteil FX enthält zusätzlich zum Bestandteil FX der 3 die Bestandteile FLC (Fragment Locate Command), LCP (Locate Context Path) und LPL (Location Payload). Der Bestandteil FLC ähnelt dem Bestandteil FC, er unterscheidet sich lediglich in seiner Werteausprägung von dem Bestandteil FC. Der Bestandteil FLC signalisiert, dass die beiden Bestandteile LCP und LPL folgen, deren Bedeutung in den folgenden Absätzen erläutert wird. 4 shows a coded bitstream according to the invention. The component FX contains in addition to the component FX the 3 the components FLC (Fragment Locate Command), LCP (Locate Context Path) and LPL (Location Payload). The component FLC is similar to the component FC, it differs only in its Werteausprägung of the component FC. The component FLC indicates that the two components LCP and LPL follow, the meaning of which is explained in the following paragraphs.

Der Bestandteil LCP enthält die Angabe eines Pfades zu einer Zielgröße, d.h. zu einem Element oder einem Attribut. Es ist auch möglich, dass es sich bei der Zielgröße um eine kombinierte Größe handelt, d.h. eine Kombination aus mehreren Elementen oder mehreren Attributen oder aus Element(en) und Attribut(en). Der Bestandteil LPL enthält den Wert dieser Zielgröße.Of the Component LCP contains the indication of a path to a target size, i. to an element or an attribute. It is also possible, that the target size is one combined size, i.e. a combination of multiple elements or multiple attributes or element (s) and attribute (s). The component LPL contains the value this target size.

Der Bestandteil FC wird wie zu 3 beschrieben verwendet, während der Bestandteil CP im Gegensatz zur obigen Erläuterung einen relativen Pfad enthält. Dieser relative Pfad verläuft von dem Vaterelement der Zielgröße des Bestandteils LCP zu dem Element oder Attribut, welches von der Änderung betroffen ist, d.h. auf welches sich der Wert des Bestanteils FPL bezieht. Der Bestandteil PC kann wie zu 3 beschrieben verwendet werden, falls das zu ändernde Element oder Attribut durch die anderen Größen nicht eindeutig gekennzeichnet werden kann. Anderenfalls kann auf die Informationen des Bestandteils PC verzichtet werden.The component FC becomes like 3 while the component CP contains a relative path, in contrast to the above explanation. This relative path extends from the parent element of the target variable of the constituent LCP to the element or attribute affected by the change, that is, to which the value of the constituent FPL relates. The component PC can as well 3 can be used if the element or attribute to be changed can not be clearly identified by the other variables. Otherwise, the information of the component PC can be dispensed with.

5 zeigt eine zweite Ausprägung des kodierten Bitstroms gemäß der Erfindung. Der Bestandteil FX enthält die beschriebenen Bestandteile FLC, LCP und LPL mehrfach in Form der Bestandteile FLC1, LCP1, LPL1, FLC2, LCP2, LPL2. Dies ist vorteilhaft, wenn die Zielgröße aus mehreren Elementen und/oder Attributen besteht. In diesem Fall kann z.B. der Bestandteil LCP1 den Pfad zu einem Element als erster Teil der Zielgröße und der Bestandteil LCP2 den Pfad zu einem Element oder Attribut als zweiter Teil der Zielgröße beinhalten. Die Bestandteile LPL1 und LPL2 beinhalten die Werte der jeweiligen korrespondierenden Teile der Zielgröße der Bestandteile LCP1 und LCP2. 5 shows a second embodiment of the coded bitstream according to the invention. The component FX contains the described components FLC, LCP and LPL several times in the form of the components FLC1, LCP1, LPL1, FLC2, LCP2, LPL2. This is advantageous if the target size consists of several elements and / or attributes. In this case, for example, the component LCP1 may include the path to an element as the first part of the target size and the part LCP2 the path to an element or attribute as the second part of the target size. The components LPL1 and LPL2 include the values of the respective corresponding parts of the target size of the components LCP1 and LCP2.

6 zeigt eine dritte Ausprägung des kodierten Bitstroms gemäß der Erfindung, bei welcher die Inhalte eines ersten Bestandteils FX1 dazu verwendet werden, ein Attribut und/oder Element eines zweiten Bestandteils FX2 zu identifizieren. Der Bestandteil FX1 wird wie zu 4 beschrieben eingesetzt, so dass er die Bestandteile FLC1, LCP1, LPL1, FC1, CP1 und PC1 enthält. Somit wird durch den Bestandteil FX1 eine Zielgröße und ein zu aktualisierendes Element oder Attribut identifiziert. Die Pfadangabe des Bestandteils CP2 des auf den Bestandteil FUU1 folgenden Fragments FUU2 ist eine relative Pfadangabe, und zwar beginnend bei der Zielgröße oder alternativ bei dem zu aktualisierenden Element oder Attribut des Bestandteils FX1. Durch diese Vorgehen, welches eine mehrfache Verwendung einer einmalig identifizierten Zielgröße ermöglicht, wird die Anzahl an zu übertragenden Bits reduziert. 6 shows a third embodiment of the coded bitstream according to the invention, in which the contents of a first component FX1 are used to identify an attribute and / or element of a second component FX2. The FX1 component will work as well 4 described so that it contains the components FLC1, LCP1, LPL1, FC1, CP1 and PC1. Thus, the component FX1 identifies a target size and an item or attribute to be updated. The path specification of the component CP2 of the fragment FUU2 following the component FUU1 is a relative path specification, starting with the target variable or alternatively with the element or attribute of the component FX1 to be updated. Through this procedure, which allows a multiple use of a once identified target size, the Number of bits to be transmitted reduced.

Im folgenden werden zur Illustration der Verwendung der Bestandteile LCP, LPL und CP vier konkrete Beispiele anhand des Datenbaumes der 1 betrachtet. Pfade sind jeweils gemäß der XPATH-Notation angegeben. Zuerst soll in vier Beispielen der Wert HEUER des Elementes LAST NAME unter dem ersten Ele ment PERSON durch den Wert NEW LAST NAME OF HEUER ersetzt werden:

  • (1) Der Bestandteil LCP enthält den Pfad GROUP/PERSON/LAST NAME. Der Empfänger wird hierdurch angewiesen, alle Elemente, welche durch diesen Pfad charakterisiert sind, zu betrachten. Hierfür existieren drei Möglichkeiten: Das Element LAST NAME unter dem ersten Element PERSON, unter dem zweiten Element PERSON, und unter dem dritten Element PERSON. Der Bestandteil LPL enthält den Wert HEUER. Hierdurch ist dem Dekoder bekannt, dass das Element LAST NAME unter dem ersten Element PERSON zu betrachten ist, somit wird das erste Element PERSON der drei Elemente PERSON lokalisiert bzw. identifiziert. Das Feld CP enthält die relative Pfadangabe ./LAST NAME, dieser relative Pfad beginnt bei dem Vaterelement der Zielgröße LAST NAME unter dem ersten Element PERSON, d.h. bei dem ersten Element PERSON bzw. bei dem aktuellen Kontext, durch „." angezeigt, und endet bei dem zu ändernden Element, d.h. bei dem Element LAST NAME unter dem ersten Element PERSON. Somit ist dem Dekoder bekannt, dass das Element LAST NAME unter dem ersten Element PERSON von einer Änderung betroffen ist. Der neue Wert NEW LAST NAME OF HEUER für das Element LAST NAME unter dem ersten Element PERSON ist in dem Bestandteil FPL enthalten.
  • (2) Der Bestandteil LCP enthält den Pfad GROUP/PERSON/ID. Der Dekoder wird hierdurch angewiesen, alle Attribute, welche durch diesen Pfad charakterisiert sind, zu betrachten. Hierfür existieren drei Möglichkeiten: das Attribut ID des ersten Elementes PERSON, des zweiten Elementes PERSON, und des dritten Elementes PERSON. Der Bestandteil LPL enthält den Wert 024. Hierdurch ist dem Dekoder bekannt, dass das Attribut ID des ersten Elementes PERSON zu betrachten ist, somit wird das erste Element PERSON der drei Elemente PERSON lokalisiert bzw. identifiziert. Das Feld CP enthält eine relative Pfadangabe: ./LAST NAME. Dieser beginnt bei dem Vaterelement der Zielgröße des Bestandteils LCP, d.h. bei dem ersten Element PERSON bzw. bei dem aktuellen Kontext, durch „." angezeigt, und endet bei dem Element, welches geändert werden soll, d.h. bei dem Element LAST NAME unter dem ersten Element PERSON. Somit ist dem Dekoder bekannt, dass das Element LAST NAME unter dem ersten Element PERSON von einer Änderung betroffen ist. Der neue Wert NEW LAST NAME OF HEUER für das Element LAST NAME unter dem ersten Element PERSON ist in dem Bestandteil FPL enthalten.
  • (3) Der Bestandteil LCP enthält den Pfad GROUP/PERSON/FIRST NAME. Der Dekoder wird hierdurch angewiesen, alle Elemente, welche durch diesen Pfad charakterisiert sind, zu betrachten. Hierfür existieren drei Möglichkeiten: das Element FIRST NAME unter dem ersten Element PERSON, unter dem zweiten Element PERSON, und unter dem dritten Element PERSON. Der Bestandteil LPL enthält den Wert JOERG. Hierdurch ist dem Dekoder bekannt, dass das Element FIRST NAME des ersten Elementes PERSON zu betrachten ist, somit wird das erste Element PERSON der drei Elemente PERSON lokalisiert bzw. identifiziert. Das Feld CP enthält die im ersten Beispiel beschriebene relative Pfadangabe ./LAST NAME, da das Vaterelement der beiden Elemente FIRST NAME und LAST NAME das gleiche ist. Somit ist dem Dekoder bekannt, dass das Element LAST NAME unter dem ersten Element PERSON von einer Änderung betroffen ist. Der neue Wert NEW LAST NAME OF HEUER für das Element LAST NAME unter dem ersten Element PERSON ist in dem Bestandteil FPL enthalten.
  • (4) Die Bestandteile LCP enthalten den Pfad GROUP/PERSON/FIRST NAME und den Pfad GROUP/PERSON/ID. Diese mehrfache Angabe kann wie zu 5 beschrieben realisiert werden. Der Dekoder wird hierdurch angewiesen, alle Element-Attribut-Kombinationen, welche durch diese Pfadkombination charakterisiert sind, zu betrachten. Hierfür existieren drei Möglichkeiten: das Elemente FIRST NAME un ter dem ersten Element PERSON und das Attribut ID des ersten Elementes PERSON, das Elemente FIRST NAME unter dem zweiten Element PERSON und das Attribut ID des zweiten Elementes PERSON, und das Elemente FIRST NAME unter dem dritten Element PERSON und das Attribut ID des dritten Elementes PERSON. Der Bestandteil LPL bzw. die Bestandteile LPL enthalten die Werte JOERG und 024. Hierdurch ist dem Dekoder bekannt, dass das Element FIRST NAME und das Attribut ID des ersten Elementes PERSON zu betrachten sind, somit wird das erste Element PERSON der drei Elemente PERSON lokalisiert bzw. identifiziert. Die Zielgröße besteht in diesem Beispiel aus einer Kombination aus einem Element und einem Attribut. Die relative Pfadangabe des Feldes CP kann sich auf einen der beiden Bestandteile der Zielgröße beziehen, d.h. entweder auf das Element FIRST NAME unter dem ersten Element PERSON, oder auf das Attribut ID des ersten Elementes PERSON. Vorteilhaft ist es, wenn sich die Pfadangabe auf das im Bestandteil LCP zuletzt genannte der beiden Teile der Zielgröße bezieht. Im vorliegenden Beispiel weisen das Attribut ID des ersten Elementes PERSON und das Element FIST NAME unter dem ersten Element PERSON das gleiche Vaterelement, d.h. das erste Element PERSON, auf, so dass die relative Pfadangabe in beiden Fällen gleich lautet: ./LAST NAME. Somit ist dem Dekoder bekannt, dass das Element LAST NAME unter dem ersten Element PERSON von einer Änderung betroffen ist. Der neue Wert NEW LAST NAME OF HEUER für das Element LAST NAME unter dem ersten Element PERSON ist in dem Bestandteil FPL enthalten.
In the following, to illustrate the use of the components LCP, LPL and CP four concrete examples based on the data tree of 1 considered. Paths are specified according to the XPATH notation. First, in four examples, the value HEUER of the element LAST NAME under the first element PERSON is to be replaced by the value NEW LAST NAME OF HEUER:
  • (1) The LCP component contains the path GROUP / PERSON / LAST NAME. The receiver is thereby instructed to consider all elements characterized by this path. There are three possibilities for this: The element LAST NAME under the first element PERSON, under the second element PERSON, and under the third element PERSON. The LPL component contains the value HEUER. As a result, the decoder is aware that the element LAST NAME is to be considered under the first element PERSON, thus the first element PERSON of the three elements PERSON is located or identified. The field CP contains the relative path specification ./LAST NAME, this relative path starts at the parent element of the target variable LAST NAME under the first element PERSON, ie at the first element PERSON or at the current context, indicated by ".", And ends for the element to be changed, ie for the element LAST NAME under the first element PERSON, the decoder is aware that the element LAST NAME under the first element PERSON is affected by a change The new value NEW LAST NAME OF HEUER for the Element LAST NAME under the first element PERSON is included in the component FPL.
  • (2) The component LCP contains the path GROUP / PERSON / ID. The decoder is thereby instructed to consider all attributes characterized by this path. There are three possibilities for this: the attribute ID of the first element PERSON, the second element PERSON, and the third element PERSON. The component LPL contains the value 024. This tells the decoder that the attribute ID of the first element PERSON is to be considered, thus the first element PERSON of the three elements PERSON is located or identified. The field CP contains a relative path: ./LAST NAME. This starts with the parent element of the target variable of the component LCP, ie with the first element PERSON or with the current context, indicated by ".", And ends with the element which is to be changed, ie with the element LAST NAME under the first Element PERSON Thus the decoder knows that the element LAST NAME under the first element PERSON is affected by a change The new value NEW LAST NAME OF HEUER for the element LAST NAME under the first element PERSON is contained in the element FPL.
  • (3) The component LCP contains the path GROUP / PERSON / FIRST NAME. The decoder is thereby instructed to consider all elements characterized by this path. There are three possibilities for this: the element FIRST NAME under the first element PERSON, under the second element PERSON, and under the third element PERSON. The LPL component contains the value JOERG. As a result, the decoder is aware that the element FIRST NAME of the first element PERSON is to be considered, thus the first element PERSON of the three elements PERSON is located or identified. The CP field contains the relative path specification ./LAST NAME described in the first example, since the parent element of the two elements FIRST NAME and LAST NAME is the same. Thus, the decoder is aware that the element LAST NAME under the first element PERSON is affected by a change. The new value NEW LAST NAME OF HEUER for the element LAST NAME under the first element PERSON is contained in the component FPL.
  • (4) The components LCP contain the path GROUP / PERSON / FIRST NAME and the path GROUP / PERSON / ID. This multiple indication can be like 5 be realized described. The decoder is hereby instructed to consider all element-attribute combinations characterized by this path combination. There are three possibilities for this: the element FIRST NAME below the first element PERSON and the attribute ID of the first element PERSON, the element FIRST NAME under the second element PERSON and the attribute ID of the second element PERSON, and the element FIRST NAME under the third Element PERSON and the attribute ID of the third element PERSON. The component LPL or the components LPL contain the values JOERG and 024. As a result, the decoder is aware that the element FIRST NAME and the attribute ID of the first element PERSON are to be considered, thus the first element PERSON of the three elements PERSON is located respectively identified. The target size in this example consists of a combination of an element and an attribute. The relative path specification of the field CP can refer to one of the two components of the target variable, ie either to the element FIRST NAME under the first element PERSON, or to the attribute ID of the first element PERSON. It is advantageous if the path statement refers to the last of the two parts of the target variable in the component LCP. in the In this example, the attribute ID of the first element PERSON and the element FIST NAME under the first element PERSON have the same parent element, ie the first element PERSON, so that the relative path statement in both cases is the same: ./LAST NAME. Thus, the decoder is aware that the element LAST NAME under the first element PERSON is affected by a change. The new value NEW LAST NAME OF HEUER for the element LAST NAME under the first element PERSON is contained in the component FPL.

Weiterhin werden zwei Beispiele betrachtet, bei welchen das Element GROUP aktualisiert werden soll. Hierbei wird davon ausgegangen, dass neben dem in 1 dargestellten Dokument weitere Dokumente mit jeweils einem Element GROUP existieren, von welchen eines modifiziert werden soll.

  • (5) Der Bestandteil LCP enthält den Pfad GROUP/PERSON. Der Dekoder wird hierdurch angewiesen, alle Elemente, welche durch diesen Pfad charakterisiert sind, zu betrachten. Dieser Pfad bzw. diese Zielgröße des Bestandteils LCP wird für die Lokalisierung bzw. Identifizierung des zu aktualisierenden Elementes GROUP eingesetzt. Bei den Werten des Elementes PERSON der 1 handelt es sich um Werte des komplexen Typs, welche jeweils aus den Elementen FIRST NAME und LAST NAME, sowie aus dem Attribut ID bestehen. Der Bestandteil LPL enthält für das Element FIRST NAME den Wert JOERG, für das Element LAST NAME den Wert HEUER, und für das Attribut ID den Wert 024. Hierdurch ist dem Dekoder bekannt, dass die Elemente FIRST NAME und LAST NAME, sowie das Attribut ID des ersten Elementes PERSON der 1 zu betrachten sind, somit wird das Element GROUP der 1 lokalisiert bzw. identifiziert. Das Feld CP enthält die relative Pfadangabe „.", welche auf den aktuellen Kontext und somit auf das Vaterelement der Zielgröße des Feldes LCP, d.h. zu dem Element GROUP verweist, welches geändert werden soll. Der neue Wert für das Element GROUP der 1 ist in dem Bestandteil FPL enthalten. Soll das Element GROUP gelöscht werden, enthält der Bestandteil FPL keine Daten.
  • (6) Der Bestandteil LCP enthält den Pfad GROUP/PERSON/FIRST NAME. Der Dekoder wird hierdurch angewiesen, alle Elemente, welche durch diesen Pfad charakterisiert sind, zu betrachten. Der Bestandteil LPL enthält den Wert JOERG. Hierdurch ist dem Dekoder bekannt, dass das Element FIRST NAME des ersten Elementes PERSON der 1 zu betrachten sind, somit wird das Element GROUP der 1 lokalisiert bzw. identifiziert. Das Feld CP enthält als relative Pfadangabe „..", d.h. den Pfad zum Vaterknoten des Elementes PERSON in Rückwärtsrichtung. Dieser beginnt bei dem Elemente, das dem Vaterelement des Elementes der Zielgröße des Bestandteils LCP entspricht, d.h. bei dem ersten Element PERSON, und endet bei dem zu aktualisierenden Ele ment, d.h. bei dem Element GROUP. Somit ist dem Dekoder bekannt, dass das Element GROUP der 1 von einer Änderung betroffen ist. Der neue Wert für das Element GROUÜ ist in dem Bestandteil FPL enthalten.
Furthermore, two examples are considered in which the element GROUP is to be updated. It is assumed that in addition to the in 1 represented document further documents each having a element GROUP exist, one of which is to be modified.
  • (5) The component LCP contains the path GROUP / PERSON. The decoder is thereby instructed to consider all elements characterized by this path. This path or target variable of the component LCP is used for the localization or identification of the element GROUP to be updated. At values of element PERSON of 1 These are values of the complex type, which consist of the elements FIRST NAME and LAST NAME as well as the attribute ID. The element LPL contains the value JOERG for the element FIRST NAME, the value HEUER for the element LAST NAME and the value 024 for the attribute ID. This tells the decoder that the elements FIRST NAME and LAST NAME, as well as the attribute ID of the first element PERSON the 1 are to be considered, thus the element GROUP of 1 localized or identified. The field CP contains the relative path specification ".", Which refers to the current context and thus to the parent element of the target variable of the field LCP, ie to the element GROUP, which is to be changed The new value for the element GROUP of 1 is included in the component FPL. If the element GROUP is to be deleted, the component FPL contains no data.
  • (6) The component LCP contains the path GROUP / PERSON / FIRST NAME. The decoder is thereby instructed to consider all elements characterized by this path. The LPL component contains the value JOERG. As a result, the decoder is aware that the element FIRST NAME of the first element PERSON the 1 are to be considered, thus the element GROUP of 1 localized or identified. The field CP contains as relative path "..", ie the path to the parent node of the element PERSON in the backward direction, starting at the element corresponding to the element of the element of the target variable of the element LCP, ie at the first element PERSON, and ending in the element to be updated, ie in the element GROUP, the decoder is thus aware that the element GROUP of the 1 affected by a change. The new value for the element GROUÜ is contained in the component FPL.

Durch den relativen Pfad von dem Vaterelement der Zielgröße der Bestandteile LCP und LPL wird genau ein Element oder Attribut des Datenbaums als zu änderndes Element oder Attribut identifiziert. Ist das Element oder Attribut nicht in dem dem Dekoder bekannten Datenbaum enthalten, so fügt es der Dekoder an der durch den relativen Pfad bezeichneten Stelle ein.By the relative path of the father element of the target size of the components LCP and LPL become exactly one element or attribute of the data tree as to be changed Element or attribute identified. Is that element or attribute does not contain the data tree known to the decoder, so does it Decoder at the location indicated by the relative path.

Ein Vorteil des beschriebenen Kodierverfahrens ist, dass eine verteilte Kodierung eins XML-basierten Dokumentes erfolgen kann, d.h. es ist nicht nötig, dass die Kodiereinrichtung das gesamte XML-basierte Dokument kennt.One Advantage of the encoding method described is that a distributed Encoding of an XML-based document, i. it is not necessary, that the coding device knows the entire XML-based document.

Literaturverzeichnis:Bibliography:

  • [1] http://dx1.hrz.unidortmund.de:8001/doc1/hrz/sglref/sgloracle.html[1] http://dx1.hrz.unidortmund.de:8001/doc1/hrz/sglref/sgloracle.html
  • [2] http://www.w3.org/TR/xpath[2] http://www.w3.org/TR/xpath
  • [3] ISO/IEC 15938-1 Multimedia Content Description Interface – Part 1: Systems, Geneva 2002[3] ISO / IEC 15938-1 Multimedia Content Description Interface - Part 1: Systems, Geneva 2002
  • [4] TV-Anytime Specification Series S-3 on Metadata, Part-B, Version 13[4] TV-Anytime Specification Series S-3 on Metadata, Part-B, Version 13
  • [5] http://www.public.asu.edu/~peterjn/btree/[5] http://www.public.asu.edu/~peterjn/btree/
  • [6] http://www.generation5.org/simple_search.shtml[6] http://www.generation5.org/simple_search.shtml
  • [7] http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/[7] http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/
  • [8] http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/[8] http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/
  • [9] http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/[9] http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/

Claims (9)

Verfahren zum Kodieren eines strukturierten Dokumentes, insbesondere eines XML-basierten Dokumentes, wobei die Struktur folgende Eigenschaften aufweist: • es existieren mit Werten (JOERG, HEUER, ANDREA, VOGT, ANDREAS, HUTTER) belegte Elemente (PERSON, FIRST NAME, LAST NAME), • Elemente (PERSON) können mit Werten (3, 024, 035, 046) belegte Attribute (ID) aufweisen, • Pfade verlaufen zu Elementen (PERSON, FIRST NAME, LAST NAME) und gegebenenfalls zu Attributen (ID) von einem Element gegebenenfalls über weitere Elemente zu dem jeweiligen Element (PERSON, FIRST NAME, LAST NAME) oder zu dem jeweiligen Attribut (ID) über jeweils miteinander verbundene Elemente, dadurch gekennzeichnet, dass ein zu aktualisierendes Element (LAST NAME) oder Attribut durch eine Angabe von mindestens einem Pfad (LCP) zu einer Zielgröße in Kombination mit dem Wert (LPL) der Zielgröße identifiziert wird.Method for coding a structured document, in particular an XML-based document, the structure having the following properties: elements (PERSON, FIRST NAME, LAST NAME) that exist with values (JOERG, HEUER, ANDREA, VOGT, ANDREAS, HUTTER) • Elements (PERSON) can have assigned attributes (ID) with values (3, 024, 035, 046), • Paths to elements (PERSON, FIRST NAME, LAST NAME) and, if applicable, to attributes (ID) of an element, if necessary via further elements to the respective element (PERSON, FIRST NAME, LAST NAME) or to the respective attribute (ID) via respectively interconnected elements, characterized in that an item to be updated (LAST NAME) or attribute is identified by an indication of at least one path (LCP) to a target size in combination with the value (LPL) of the target size. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es sich bei der Zielgröße um ein von dem zu aktualisierenden Element (LAST NAME) oder Attribut unterschiedliches Element (PERSON, FIRST NAME) oder Attribut (ID) handelt.Method according to claim 1, characterized in that that the target size is a different from the item to be updated (LAST NAME) or attribute Element (PERSON, FIRST NAME) or attribute (ID). Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass das zu aktualisierende Element (LAST NAME) oder Attribut durch eine Angabe eines Pfades (CP) von der Zielgröße oder dem Vaterelement der Zielgröße zu dem zu aktualisierenden Element (LAST NAME) oder Attribut identifiziert wird.Method according to claim 2, characterized in that that the item to be updated (LAST NAME) or attribute by an indication of a path (CP) from the target variable or the parent element of the Target size to the to be updated (LAST NAME) or attribute becomes. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass es sich bei der Zielgröße um eine Kombination aus Elementen (PERSON, FIRST NAME, LAST NAME) und/oder Attributen (ID) handelt.Method according to one of claims 1 to 3, characterized that the target size is one Combination of elements (PERSON, FIRST NAME, LAST NAME) and / or Attributes (ID). Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass eine Nachricht (AU) umfassend den Wert (FPL) des zu aktualisierenden Elementes (LAST NAME) oder Attributes, sowie die Angabe von dem mindestens einen Pfad (LCP) zu der Zielgröße in Kombination mit dem Wert (LPL) der Zielgröße zur Identifizierung des zu aktualisierenden Elementes (LAST NAME) oder Attributes von einer Kodiereinrichtung zu einer Dekodiereinrichtung übertragen wird.Method according to one of claims 1 to 4, characterized a message (AU) comprising the value (FPL) of the element to be updated (LAST NAME) or Attributes, as well as the indication of the at least a path (LCP) to the target size in combination with the value (LPL) of the target size for identification of the item to be updated (LAST NAME) or attribute of a coding device to a decoder becomes. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass für die Angabe von Pfaden und/oder Werten eine Kodierung erfolgt • gemäß dem MPEG-7 Standard, und/oder • gemäß einem Verfahren, bei dem Pfade durch den jeweiligen Pfaden zugeordnete Kodes fester Länge kodiert werden, und/oder • gemäß einem Verfahren bei dem mehrere Pfade durch einen zugeordneten Kode fester Länge kodiert werden.Method according to one of claims 1 to 5, characterized, that for the Specification of paths and / or values a coding takes place • according to the MPEG-7 Standard, and / or • according to one Method in which paths are assigned by the respective paths Coded codes of fixed length be, and / or • according to one Method in which multiple paths through an associated code fixed Length are encoded. Verfahren zum Dekodieren eines strukturierten Dokumentes, insbesondere eines XML-basierten Dokumentes, wobei die Struktur folgende Eigenschaften aufweist: • es existiert eine Mehrzahl an mit Werten (JOERG, HEUER, ANDREA, VOGT, ANDREAS, HUTTER) belegten Elementen (PERSON, FIRST NAME, LAST NAME), • Elemente (PERSON) können mit Werten (3, 024, 035, 046) belegte Attribute (ID) aufweisen, • Pfade verlaufen zu Elementen (PERSON, FIRST NAME, LAST NAME) und Attributen (ID) von einem Element gegebenen falls über weitere Elemente zu dem jeweiligen Element (PERSON, FIRST NAME, LAST NAME) oder Attribut (ID) über jeweils miteinander verbundenen Elemente, dadurch gekennzeichnet, dass ein zu aktualisierendes Element (LAST NAME) oder Attribut durch eine Angabe von mindestens einem Pfad (LCP) zu einer Zielgröße in Kombination mit dem Wert (LPL) der Zielgröße identifiziert wird.Method for decoding a structured document, especially an XML-based document, the structure has the following properties: • There is a majority on with values (JOERG, HEUER, ANDREA, VOGT, ANDREAS, HUTTER) Elements (PERSON, FIRST NAME, LAST NAME), • Elements (PERSON) can be used with Values (3, 024, 035, 046) have assigned attributes (ID), • paths are lost to elements (PERSON, FIRST NAME, LAST NAME) and attributes (ID) given by an element, if any, about other elements to the respective element (PERSON, FIRST NAME, LAST NAME) or attribute (ID) over each interconnected elements, characterized, that an element to be updated (LAST NAME) or attribute an indication of at least one path (LCP) to a target size in combination with identified by the value (LPL) of the target size becomes. Kodiereinrichtung zum Durchführen eines Verfahrens nach einem der Ansprüche 1 bis 6.Encoding device for performing a method according to one of the claims 1 to 6. Dekodiereinrichtung zum Durchführen eines Verfahrens nach Anspruch 7.Decoding device for performing a method according to Claim 7.
DE200410044164 2004-09-13 2004-09-13 Method and device for coding XML documents Withdrawn DE102004044164A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE200410044164 DE102004044164A1 (en) 2004-09-13 2004-09-13 Method and device for coding XML documents
PCT/EP2005/054261 WO2006029959A1 (en) 2004-09-13 2005-08-30 Method and device for coding xml documents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200410044164 DE102004044164A1 (en) 2004-09-13 2004-09-13 Method and device for coding XML documents

Publications (1)

Publication Number Publication Date
DE102004044164A1 true DE102004044164A1 (en) 2006-03-30

Family

ID=35285281

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200410044164 Withdrawn DE102004044164A1 (en) 2004-09-13 2004-09-13 Method and device for coding XML documents

Country Status (2)

Country Link
DE (1) DE102004044164A1 (en)
WO (1) WO2006029959A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001026373A2 (en) * 1999-10-04 2001-04-12 Koninklijke Philips Electronics N.V. Method and apparatus for streaming xml content
US20040028049A1 (en) * 2000-10-06 2004-02-12 Wan Ernest Yiu Cheong XML encoding scheme

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7934008B2 (en) * 2000-10-20 2011-04-26 Sony Corporation Delivery of multimedia descriptions using access units
US7689901B2 (en) * 2001-03-01 2010-03-30 Sony Corporation Multiple updates to content descriptions using a single command
US7231394B2 (en) * 2001-07-17 2007-06-12 Sony Corporation Incremental bottom-up construction of data documents
JP2004318188A (en) * 2002-09-26 2004-11-11 Victor Co Of Japan Ltd Program for receiving structured data
DE10309336B4 (en) * 2003-03-04 2005-11-24 Siemens Ag Method for coding a structured document

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001026373A2 (en) * 1999-10-04 2001-04-12 Koninklijke Philips Electronics N.V. Method and apparatus for streaming xml content
US20040028049A1 (en) * 2000-10-06 2004-02-12 Wan Ernest Yiu Cheong XML encoding scheme

Also Published As

Publication number Publication date
WO2006029959A1 (en) 2006-03-23

Similar Documents

Publication Publication Date Title
EP1522028B9 (en) Method and devices for encoding/decoding structured documents, especially xml documents
EP2197213B1 (en) Method for improving the functionality of the binary representation of MPEG-7 and other XML-based content descriptions
WO2006005646A1 (en) Method for encoding an xml document, decoding method, encoding and decoding method, coding device, and encoding and decoding device
EP1499998A2 (en) Generic data stream description
DE60225785T2 (en) PROCESS FOR CODING AND DECODING A PATH IN THE TREE STRUCTURE OF A STRUCTURED DOCUMENT
EP1407610B1 (en) System for the improved encoding/decoding of structured, particularly xml-based, documents and methods and devices for the improved encoding/decoding of binary representations of such documents
EP1561281B1 (en) Method for the creation of a bit stream from an indexing tree
DE102007045741A1 (en) Method and device for coding and decoding multimedia data
DE10309336B4 (en) Method for coding a structured document
EP1400124A2 (en) Method for improving the functions of the binary representation of mpeg-7 and other xml-based content descriptions
DE102004044164A1 (en) Method and device for coding XML documents
DE10339971A1 (en) Method for coding an XML-based document
DE10231970B3 (en) Coding method for data element positions in data structure e.g. for XML document coding, has position codes assigned to data element positions in given serial sequence
EP1567942A2 (en) Method for encoding an xml-based document
DE10248758B4 (en) Methods and devices for encoding / decoding XML documents
EP1787474A1 (en) Method for encoding an xml-based document
DE10323186B4 (en) Means for processing an MPEG-2 data stream and method for processing an MPEG-2 data stream
EP1687984A1 (en) Method for producing and/or processing a data stream description
EP1204229A1 (en) Method of displaying information which is stored on a computer
EP2087734A2 (en) Method for transmitting scene data in a unidirectional broadcast system

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee