DE10351897A1 - Method for coding structured documents - Google Patents

Method for coding structured documents Download PDF

Info

Publication number
DE10351897A1
DE10351897A1 DE10351897A DE10351897A DE10351897A1 DE 10351897 A1 DE10351897 A1 DE 10351897A1 DE 10351897 A DE10351897 A DE 10351897A DE 10351897 A DE10351897 A DE 10351897A DE 10351897 A1 DE10351897 A1 DE 10351897A1
Authority
DE
Germany
Prior art keywords
namespace
data types
namespaces
schemas
codes
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
DE10351897A
Other languages
German (de)
Inventor
Jörg Heuer
Andreas Hutter
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 DE10351897A priority Critical patent/DE10351897A1/en
Priority to EP04741947A priority patent/EP1645133B1/en
Priority to PCT/EP2004/051333 priority patent/WO2005008520A2/en
Priority to US10/564,601 priority patent/US7607080B2/en
Priority to KR1020067000965A priority patent/KR101102629B1/en
Priority to CN2004800201113A priority patent/CN1823528B/en
Publication of DE10351897A1 publication Critical patent/DE10351897A1/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

Abstract

Die Erfindung betrifft ein Verfahren zur Codierung eines strukturierten Dokuments, insbesondere eines XML-basierten Dokuments, bei dem eine Vielzahl von Codes mittels eines oder mehrerer Schemas und/oder Namensräume erzeugt werden, wobei m für ein Schema und/oder einen Namensraum und/oder für eine Gruppe von Schemas und/oder Namensräumen jeweils separate, von anderen Schemas und/oder Namensräumen unabhängige Codes für die mittels in den Schemas und/oder Namensräumen und/oder in den Gruppen von Schemas und/oder Namensräumen definierten und/oder deklarierten Elemente vergeben werden.The invention relates to a method for coding a structured document, in particular an XML-based document, in which a plurality of codes are generated by means of one or more schemas and / or namespaces, wherein m for a scheme and / or a namespace and / or for a group of schemas and / or namespaces are each assigned separate codes independent of other schemas and / or namespaces for the elements defined and / or declared in the schemas and / or namespaces and / or in the groups of schemas and / or namespaces ,

Description

Die Erfindung betrifft ein Verfahren und eine Vorrichtung, mit denen ein strukturiertes, insbesondere XML-basierten Dokument mit Hilfe von sog. Schemas codiert und/oder decodiert wird.The The invention relates to a method and a device with which a structured, especially XML-based document with help coded and / or decoded by so-called schemes.

XML (= extensible markup language) ist eine Sprache, mit der eine strukturierte Beschreibung der Inhalte eines Dokuments mittels XML-Schema-Sprachdefinitionen ermöglicht wird. Eine genauere Beschreibung des XML-Schemas sowie der darin verwendeten Strukturen, Datentypen und Inhaltsmodelle findet sich in den Referenzen [1], [2] und [3].XML (= extensible markup language) is a language with which a structured Description of the contents of a document using XML Schema language definitions allows becomes. A more detailed description of the XML schema and the one used in it Structures, data types and content models can be found in the references [1], [2] and [3].

Verfahren, Vorrichtungen oder Systeme zur Codierung bzw. Decodierung von XML-basierten Dokument sind aus Schriften zum MPEG-7-Standard, insbesondere aus dem Dokument [4] bekannt.Method, Devices or systems for encoding or decoding XML-based Document are from scripts to MPEG-7 standard, in particular the document [4] known.

Bekannte Verfahren zur binären Repräsentation von MPEG-7 und anderen XML-basierten Beschreibungen oder Dokumenten weisen Defizite hinsichtlich der Kompatibilität auf, sofern die Schemas der zu codierenden XML-basierten Beschreibungen oder Dokumente zu Beginn der Übertragung nicht vollständig dem Encoder und/oder Decoder bekannt sind. Beispielsweise wird in Dokument [4] ein Verfahren zur binären Repräsentation von XML-Beschreibungen und XML-Dokumenten beschrieben, das Codetabellen für XML-Beschreibungen und XML-Dokumente basierend auf Schemas und Namensräumen bestimmt. Ein Namensraum ist dabei ein Raum in der Dokumentenstruktur, in dem die darin verwendeten Namen mit eindeutigen Bedeutungen bzw. Deklarationen belegt sind, wobei die in einem Namensraum auftretenden Namen in anderen Namensräumen mit anderen Bedeutungen bzw. Deklarationen auftauchen können. Demgegenüber wird über ein Schema wenigstens ein Teil des Namensraums definiert. In dem in [4] beschriebenen Verfahren sind die Codetabellen für die Daten typen, die globalen Elemente und die Ersetzungsgruppen von allen verwendeten Namensräumen abhängig. Demnach müssen die Schemas und Namensräume vor der Erstellung der Codetabellen bekannt sein.Known Method of binary representation MPEG-7 and other XML-based descriptions or documents have deficiencies in terms of compatibility, provided that the schemes of to be encoded XML-based descriptions or documents at the beginning the transmission not completely the encoder and / or decoder are known. For example, in Document [4] a method for the binary representation of XML descriptions and XML documents that describe code tables for XML descriptions and XML documents based on schemas and namespaces. A namespace is a space in the document structure, in the names used in it with clear meanings or Declarations are occupied, where the occurring in a namespace Names in other namespaces with other meanings or declarations can emerge. In contrast, over a Schema defines at least part of the namespace. In the in [4] are the code tables for the data types, used the global elements and replacement groups of all namespaces dependent. Accordingly, must the schemas and namespaces be known before creating the code tables.

Die der Erfindung zugrundeliegende Aufgabe besteht nun darin, eine effiziente Codierung auch dann zu ermöglichen, wenn die Schemas dem Encoder und/oder Decoder nicht vollständig bekannt sind.The The problem underlying the invention is now to provide an efficient Even then allow coding if the schemas are not completely known to the encoder and / or decoder are.

Diese Aufgabe wird durch die unabhängigen Patentansprüche gelöst. Die abhängigen Ansprüche beziehen sich auf vorteilhafte Ausgestaltungen der Erfindung.These Task is solved by the independent claims. The dependent Claims relate to advantageous embodiments of the invention.

Bei dem erfindungsgemäßen Verfahren zur Codierung eines strukturierten Dokuments werden eine Vielzahl von Codes mittels eines oder mehrerer Schemas und/oder Namensräume erzeugt. Dabei werden für ein Schema und/oder einen Namensraum und/oder für eine Gruppe von Schemas und/oder Namensräumen jeweils separate, von anderen Schemas und/oder Namensräumen unabhängige Codes für die mittels in den Schemas und/oder Namensräumen und/oder in den Gruppen von Schemas und/oder Namensräumen definierten und/oder deklarierten Elemente vergeben.at the method according to the invention For coding a structured document are a variety generated by codes using one or more schemas and / or namespaces. It will be for a schema and / or a namespace and / or for a group of schemas and / or namespaces each separate, independent of other schemes and / or namespaces codes for the means in the schemas and / or namespaces and / or defined in the groups of schemas and / or namespaces and / or declared items.

Die Erfindung besteht im Wesentlichen darin, dass Codes in Schemas und/oder Namensräumen separiert vergeben werden. Das hier beschriebene Verfahren ist vorteilhaft, da nun Schemas und/oder Namensräume nach Bedarf auch während der Übertragung von Dokumenten geladen werden können und existierende Codetabellen für andere Namensräume sich hierdurch nicht ändern und somit nicht neu erstellt werden müssen. Ein weiterer Vorteil besteht darin, dass die separaten Codes für Fälle, in denen sehr viele Namensräume importiert werden, weniger Bits zur Adressierung benötigen, als wenn wie in [4] alle Namensräume zusammengefasst werden. Auch in Fällen, in denen ein sehr großer Namensraum importiert wird, können die separaten Codes für die anderen Namensräume mit weniger Bits codiert werden.The Essentially, the invention is that codes in schemas and / or Namespaces separated be forgiven. The method described here is advantageous there are schemas and / or namespaces as needed even during the transmission of documents can be loaded and existing code tables for other namespaces Do not change this way and thus do not need to be recreated. Another advantage is that the separate codes for cases where a lot of namespaces imported will require fewer bits to address than if [4] all namespaces be summarized. Even in cases where a very large namespace can be imported the separate codes for the other namespaces be encoded with fewer bits.

In einer bevorzugten Variante der Erfindung sind die separaten Codes in Adressbereiche eingeteilt, wobei über die Adressbereiche das Schema und/oder der Namensraum bzw. die Gruppe von Schemas und/oder Namensräumen identifizierbar wird.In A preferred variant of the invention are the separate codes divided into address ranges, over the address ranges the Schema and / or the namespace or the group of schemas and / or namespaces becomes identifiable.

In einer bevorzugten Ausführungsform des erfindungsgemäßen Codierverfahrens umfassen die separaten Codes jeweils einen lokalen Code bezüglich des Schemas und/oder des Namensraums und/oder bezüglich der Gruppe von Schemas und/oder Namensräumen und einen Identifikationscode, der das Schema und/oder den Namensraum und/oder die Gruppe von Schemas und/oder Namensräumen identifiziert. Ein lokaler Code ist hierbei ein Code, der eindeutig innerhalb des durch den Identifikationscode identifizierten Schemas bzw. Namensraums ist.In a preferred embodiment the coding method according to the invention For example, the separate codes each include a local code relating to the Schemas and / or namespace and / or group of schemas and / or namespaces and an identification code containing the schema and / or namespace and / or identifies the set of schemas and / or namespaces. A local one Code here is a code that is unique within the identification code is identified schema or namespace.

Vorzugsweise werden separate Codes für globale Elemente und/oder SubstitutionGroups und/oder Datentypen vergeben. Eine genaue Definition für globale Elemente, SubstitutionGroups und Datentypen findet sich in den XML-Schema-Definitionen, die in den Dokumenten [1], [2] und [3] genau erläutert sind.Preferably become separate codes for global Assign elements and / or substitutionGroups and / or data types. A precise definition for global elements, SubstitutionGroups and data types can be found in the XML schema definitions used in documents [1], [2] and [3] explained exactly are.

Für Datentypen TypeCodes, die in dem Dokument [4] erläutert sind, werden separate Codes in einer bevorzugten Ausführungsform derart erzeugt, dass innerhalb des Vererbungsbaums eines Namensraums der zu einem ersten Datentyp in demselben Namensraum benachbarten Datentyp einen Codeabstand zu dem ersten Datentyp hat, welcher der Anzahl der in diesem Namensraum von dem ersten Datentyp abgeleiteten Datentypen entspricht. Ein Datentyp ist zu einem ersten Datentyp benachbart, wenn der Datentyp vom gleichen Basisdatentyp wie der erste Datentyp abgeleitet worden ist und dem Datentyp unter allen Datentypen, die von diesem Basisdatentypen abgeleitet worden sind, der kleinste TypeCode zugewiesen wurde, der größer als der TypeCode des ersten Datentyps ist. Bei dieser Ausführungsform werden die Codes für die Datentypen TypeCodes innerhalb des – möglicherweise disjunkten – Vererbungsbaums so vergeben, dass eine vorteilhafte Nachbarschaftsbeziehung in einem gegebenen Namensraum entsteht und erhalten bleibt, auch wenn in diesem Namensraum Unterbäume mit aus anderen Namensräumen abgeleiteten Typen vorkommen.For data types, TypeCodes stored in the Do In a preferred embodiment, separate codes are generated such that, within the inheritance tree of a namespace, the data type adjacent to a first data type in the same namespace has a code spacing to the first data type corresponding to the number of names in that namespace first data type corresponding to derived data types. A data type is adjacent to a first data type if the data type was derived from the same base data type as the first data type and the data type among all data types derived from that base data type has been assigned the smallest TypeCode greater than the TypeCode of the first Is data type. In this embodiment, the codes for the TypeCodes data types within the - possibly disjunctive - inheritance tree are assigned such that an advantageous neighborhood relationship arises and is maintained in a given namespace, even though sub-trees with types derived from other namespaces occur in this namespace.

In einer besonders bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens werden die separaten Codes innerhalb eines gegebenen Namensraums gemäß einem Verfahren vergeben, das folgende Schritte umfasst:

  • – in einem ersten Schritt werden alle Datentypen eines Namensraums, die von Datentypen anderer Namensräume vererbt worden sind, in der im MPEG-7 Standard definierten Reihenfolge der globalen TypeCodes der jeweiligen Basisdatentypen in einer Liste sortiert, wobei die Basisdatentypen die Datentypen in anderen Namensräumen sind, von denen die sortierten Datentypen vererbt worden sind;
  • – in einem zweiten Schritt werden jeweils diejenigen Datentypen eines Namensraums, die von einem bestimmten Basisdatentypen eines bestimmten anderen Namensraums vererbt worden sind, lexikographisch sortiert;
  • – in einem dritten Schritt werden alle Datentypen eines Namensraums, die nicht von einem Datentypen eines anderen Namensraums vererbt worden sind, entsprechend der im MPEG-7 Standard definierten Reihenfolge in die bestehende Liste von Datentypen einsortiert;
  • – in einem vierten Schritt werden die separaten Codes in der Reihenfolge der Liste an die Datentypen des Namensraums vergeben.
In a particularly preferred embodiment of the method according to the invention, the separate codes within a given namespace are allocated according to a method comprising the following steps:
  • - in a first step, all data types of a namespace that have been inherited from data types of other namespaces are sorted in the order defined in the MPEG-7 standard of the global TypeCodes of the respective basic data types, whereby the basic data types are the data types in other namespaces, from which the sorted data types have been inherited;
  • In a second step, those data types of a namespace that have been inherited from a specific basic data type of a certain other namespace are sorted by lexicography;
  • In a third step, all data types of a namespace that have not been inherited from a data type of another namespace are sorted into the existing list of data types according to the sequence defined in the MPEG-7 standard;
  • - In a fourth step, the separate codes in the order of the list are assigned to the data types of the namespace.

Der Vorteil dieser Ausführungsform ist, dass der adressierte Datentyp, insbesondere ein TypeCode, schnell gefunden und somit decodiert werden kann. Nach den Regeln in [4] adressiert ein TypeCode einen abgeleiteten Typ relativ zu einem Basisty pen. Also definiert der Basistyp einen Unterbaum, in dem alle adressierbaren Datentypen vorhanden sind. Sind in dem Unterbaum nun mehrere Namensräume enthalten, so kann durch die vorteilhafte Nachbarschaftsbeziehung, die durch die obige Ausführungsform der Erfindung erreicht wird, in dem Namensraum ein adressierter Datentyp schnell gefunden werden, da durch einen Vergleich eines gesuchten Datentyps mit zwei benachbarten Datentypen im sortierten Vererbungsbaum festgestellt werden kann, ob sich der gesuchte Datentyp im Unterbaum des Datentypen der zwei benachbarten Datentypen mit dem kleineren binären Code befindet. Auf diese Weise kann der Suchaufwand erheblich verringert werden. Ein weiterer Vorteil dieser Nachbarschaftsbeziehung besteht darin, dass ein Decoder bei einer Codierung der TypeCodes gemäß [4] die Codewortlänge, die sich aus der Anzahl der abgeleiteten Datentypen bestimmt, direkt aus dem Codeabstand der benachbarten Datentypen berechnen kann.Of the Advantage of this embodiment is that the addressed data type, especially a TypeCode, fast can be found and thus decoded. According to the rules in [4] A TypeCode addresses a derived type relative to a Basisty pen. So the base type defines a subtree in which all addressable data types are present. Are in the subtree now several namespaces contained, it can by the advantageous neighborhood relationship, that by the above embodiment the invention is achieved, in the namespace an addressed Data type can be found quickly because by comparing a searched data type with two adjacent data types in the sorted Inheritance tree can be determined, whether or not the requested data type in the subtree of the data type of the two adjacent data types with the smaller binary Code is located. In this way, the search effort can be significantly reduced become. Another advantage of this neighborhood relationship exists in that a decoder encoding the TypeCodes according to [4] Code word length, which is determined by the number of derived data types, directly from the code spacing of neighboring data types.

Neben dem oben beschriebenen erfindungsgemäßen Codierverfahren betrifft die Erfindung ferner ein Decodierverfahren, mit dem ein strukturiertes Dokument, insbesondere ein XML-basiertes Dokument decodiert wird, wobei das Verfahren derart ausgestaltet ist, dass ein mit dem erfindungsgemäßen Codierverfahren codiertes Dokument decodiert wird. In einer bevorzugten Ausgestaltung des erfindungsgemäßen Decodierverfahrens wird hierbei zur Decodierung eines binären TypeCodes die Codelänge des separaten Codes für den binären TypeCode aus der Anzahl der abgeleiteten Daten bestimmt. Vorzugsweise wird ferner in einer bevorzugten Ausführungsform zur Decodierung eines bestimmten TypeCodes des Subbaums des Vererbungsbaums des Namensraums, in dem sich der bestimmte TypeCode befindet, anhand der Codeabstände zwischen benachbarten Datentypen ermittelt.Next relates to the encoding method according to the invention described above the invention further provides a decoding method with which a structured document, in particular an XML-based Document is decoded, the method configured in such a way is that a coded with the coding method according to the invention Document is decoded. In a preferred embodiment of inventive decoding method Here is the code length of the separate for decoding a binary type code Codes for the binary TypeCode determined from the number of derived data. Preferably is also in a preferred embodiment for decoding of a specific TypeCode of the subtree of the inheritance tree of the Namespace containing the specific TypeCode the code intervals between adjacent data types.

Neben den oben beschriebenen Verfahren betrifft die Erfindung ferner eine Codiervorrichtung sowie eine Decodiervorrichtung zur Durchführung der erfindungsgemäßen Codier- bzw. Decodier verfahrens. Ferner umfasst die Erfindung eine Codier- und eine Decodiervorrichtung, mit der das erfindungsgemäße Codierverfahren und das erfindungsgemäße Decodierverfahren durchführbar ist.Next The invention further relates to the method described above Coding device and a decoding device for carrying out the according to the invention or decoding method. Furthermore, the invention comprises a coding and a decoding device with which the coding method according to the invention and the decoding method according to the invention feasible is.

Ausführungsbeispiele der Erfindung werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert.embodiments The invention will be explained in more detail with reference to the accompanying drawings.

Es zeigen:It demonstrate:

1 eine Prinzipdarstellung eines erfindungsgemäßen Codier- und Decodiersystems mit Encoder und Decoder; 1 a schematic diagram of an inventive encoding and decoding system with encoder and decoder;

2 eine Darstellung einer beispielhaften XML-Schema-Definition, in der auch Datentypen aus anderen Namensräumen importiert sowie abgeleitet werden. 2 a representation of an exemplary XML schema definition, which also imports and derives data types from other namespaces.

3 eine Darstellung des Vererbungsbaums der Datentypen für das in 2 gezeigte XML-Schema, einschließlich der Zuordnung der separaten Codes zu in den Namensräumen auftretenden TypeCodes. 3 a representation of the inheritance tree of the data types for the in 2 XML schema shown, including mapping the separate codes to TypeCodes occurring in the namespaces.

In 1 ist beispielhaft ein Codier- und Decodiersystem mit einem Encoder ENC und einem Decoder DEC dargestellt, mit denen XML-Dokumente DOC codiert bzw. decodiert werden. Sowohl der Encoder als auch der Decoder verfügen beide über ein sogenanntes XML-Schema S, in dem die zur Kommunikation genutzten Elemente und Typen des XML-Dokuments deklariert und definiert sind. Aus dem Schema S werden über entsprechende Schema-Compilationen SC im Encoder und Decoder Code-Tabellen CT erzeugt. Wenn das XML-Dokument DOC codiert wird, werden den Inhalten des XML-Dokuments über die Code-Tabellen binäre Codes zugeordnet. Hierdurch wird eine Binärdarstellung BDOC des Dokuments DOC erzeugt, die mithilfe der Code-Tabelle CT im Decoder wieder decodiert werden kann. Es können hierbei mehrere Schemas verwendet werden, insbesondere können auch Sche mas eingesetzt werden, welche auf einem Basisschema beruhen und aus einem weiteren Schema abgeleitet werden.In 1 an encoding and decoding system with an encoder ENC and a decoder DEC is shown by way of example, with which XML documents DOC are coded or decoded. Both the encoder and the decoder both have a so-called XML schema S, in which the elements and types of the XML document used for communication are declared and defined. From the schema S, code tables CT are generated via corresponding schema compilations SC in the encoder and decoder. When the XML document DOC is encoded, binary codes are mapped to the contents of the XML document through the code tables. This produces a binary representation BDOC of the document DOC which can be decoded again using the code table CT in the decoder. Several schemas can be used in this case, in particular also Mas mas can be used, which are based on a basic scheme and are derived from a further scheme.

In 2 ist beispielhaft ein Auszug aus einer XML-Schema-Definition gezeigt. Dem Fachmann sind solche XML-Schema-Definitionen bekannt, so dass auf den genauen Inhalt des Auszugs der 2 nicht eingegangen wird. Der Auszug enthält zwei Schemadefinitionen, zum einen wird im oberen Teil ein Schema A definiert, wie durch eine geschweifte Klammer angedeutet ist, zum anderen wird im unteren Teil ein Schema X definiert, wie ebenfalls durch eine geschweifte Klammer angedeutet wird. Das Schema X verwendet wiederum Datentypen, die aus dem Schema A importiert worden sind.In 2 By way of example, an excerpt from an XML schema definition is shown. Those skilled in such XML schema definitions are known, so that the exact content of the extract of 2 will not be received. The excerpt contains two schema definitions, on the one hand a scheme A is defined in the upper part, as indicated by a curly bracket, on the other hand a scheme X is defined in the lower part, as also indicated by a curly bracket. Schema X, in turn, uses data types imported from schema A.

In 3 sind die Vererbungsbeziehungen zwischen den Schemas A und X und deren Datentypen in der Form einer Baumstruktur grafisch dargestellt. Wie der Figur entnommen werden kann, werden beide Schemas A und X aus einem Schema XS vererbt, das den XML-Schema-Namensraum darstellt. Jeder Knoten in dem Datentypbaum repräsentiert einen definierten Datentyp in der Schemadefinition. In dem Schema X werden die Datentypen tType, iType, sType und nType definiert. Demgegenüber werden in dem Schema A die Datentypen Nodel, myFirstType und mySecondType definiert. Mit dem erfindungsgemäßen Verfahren werden für das Schema A und X jeweils separate Codes vergeben, die in 3 durch die in Klammern gesetzten Ausdrücke spezifiziert sind. Die in Klammern spezifizierten Ausdrücke enthalten hierbei zunächst die Namensraumidentifikation „namespace ID" und anschließend (durch einen Doppelpunkt getrennt) einen Typecode in der Form eines lokalen Codes. Für die Namensraumspezifikation wird für das Schema X ein x und für das Schema A ein a verwendet. Die TypeCode-Spezifikation wird durch entsprechende Ziffern 1 bis 4 im Namensraum X und 1 bis 3 im Namensraum A gekennzeichnet. Wesentlich ist hierbei, dass die TypeCode-Spezifikationen lokale Codes sind, die innerhalb jedes Namensraums eindeutig sind. Durch eine derartige Zuweisung von lokalen Codes sind nunmehr die Schemas A und X unabhängig voneinander, so dass es für eine Decodierung mittels des einen Schemas nicht mehr notwendig ist, das gesamte andere Schema an den Decodierer zu übertragen.In 3 The inheritance relationships between schemas A and X and their data types are graphically represented in the form of a tree structure. As can be seen from the figure, both schemas A and X are inherited from a schema XS, which represents the XML schema namespace. Each node in the data type tree represents a defined data type in the schema definition. In schema X the data types tType, iType, sType and nType are defined. In contrast, schema A defines the data types Nodel, myFirstType, and mySecondType. With the method according to the invention, separate codes are assigned for Scheme A and X, which are given in 3 are specified by the parenthesized expressions. The expressions specified in brackets first contain the namespace identification "namespace ID" and then (separated by a colon) a type code in the form of a local code For the namespace specification, an x is used for the schema X and an a for the schema A. The TypeCode specification is identified by corresponding numbers 1 to 4 in namespace X and 1 to 3 in namespace A. It is essential here that the TypeCode specifications are local codes which are unique within each namespace, by such assignment of local codes Now Schemes A and X are independent of each other, so that it is no longer necessary for decoding by means of the one scheme to transfer the entire other scheme to the decoder.

Literaturverzeichnis:Bibliography:

  • [1] http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/[1] http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/
  • [2] http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/[2] http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/
  • [3] http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/[3] http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/
  • [4] ISO/IEC 15938-1 "Multimedia Content Description Interface -Part 1: Systems", Geneva 2002.[4] ISO / IEC 15938-1 "Multimedia Content Description Interface -Part 1: Systems ", Geneva 2002.

Claims (12)

Verfahren zur Codierung eines strukturierten Dokuments, insbesondere eines XML-basierten Dokuments, bei dem eine Vielzahl von Codes mittels eines oder mehrerer Schemas und/oder Namensräume erzeugt werden; bei dem für ein Schema und/oder einen Namensraum und/oder für eine Gruppe von Schemas und/oder Namensräumen jeweils separate, von anderen Schemas und/oder Namensräumen unabhängige Codes für die mittels in den Schemas und/oder Namensräumen und/oder in den Gruppen von Schemas und/oder Namensräumen definierten und/oder deklarierten Elemente vergeben werden.Method for coding a structured document, especially an XML-based document, where a variety codes are generated by means of one or more schemas and / or namespaces; at for a schema and / or a namespace and / or for a group of schemas and / or namespaces each separate, independent of other schemes and / or namespaces codes for the by means of schemas and / or namespaces and / or in groups schemas and / or namespaces defined and / or declared elements. Verfahren nach Anspruch 1, bei dem zur Identifikation des Schemas und/oder des Namensraums und/oder der Gruppe von Schemas und/oder Namensräumen die separaten Codes in entsprechende Adressbereiche unterteilt sind.The method of claim 1, wherein for identification schema and / or namespace and / or set of schemas and / or namespaces the separate codes are divided into corresponding address ranges. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die separaten Codes jeweils einen lokalen Code bezüglich des Schemas und/oder des Namensraums und/oder bezüglich der Gruppe von Schemas und/oder Namensräumen und einen Identifikationscode zur Identifikation des Schemas und/oder des Namensraums und/oder der Gruppe von Schemas und/oder Namensräumen umfassen.Method according to one of the preceding claims, in the separate codes each have a local code with respect to the Schemas and / or the namespace and / or the group of schemas and / or namespaces and an identification code for identifying the schema and / or of the namespace and / or the group of schemas and / or namespaces. Verfahren nach einem der vorhergehenden Ansprüche, bei dem separate Codes für globale Elemente und/oder SubstitutionGroups und/oder Datentypen erzeugt werden.Method according to one of the preceding claims, in the separate codes for global elements and / or substitution groups and / or data types be generated. Verfahren nach Anspruch 4, bei dem separate Codes für Datentypen TypeCodes derart erzeugt werden, dass innerhalb des Vererbungsbaums eines Namensraums, der zu einem ersten Datentyp in demselben Namensraum benachbarten Datentyp einen Codeabstand zu dem ersten Datentyp hat, welcher der Anzahl der in diesem Namensraum von dem ersten Datentyp abgeleiteten Datentypen entspricht.Method according to claim 4, wherein separate codes for data types TypeCodes are generated such that within the inheritance tree a namespace that is a first data type in the same namespace adjacent data type has a code spacing to the first data type, which of the number in this namespace of the first data type derived data types. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die separaten Codes innerhalb eines gegebenen Namensraums gemäß einem Verfahren vergeben werden, das folgende Schritte umfasst – in einem ersten Schritt werden alle Datentypen eines Namensraums, die von Datentypen anderer Namensräume vererbt worden sind, in der im MPEG-7 Standard definierten Reihenfolge der globalen TypeCodes der jeweiligen Basisdatentypen in einer Liste sortiert, wobei die Basisdatentypen die Datentypen in anderen Namensräumen sind, von denen die sortierten Datentypen vererbt worden sind; – in einem zweiten Schritt werden jeweils diejenigen Datentypen eines Namensraums, die von einem bestimmten Basisdatentypen eines bestimmten anderen Namensraums vererbt worden sind, lexikographisch sortiert; – in einem dritten Schritt werden alle Datentypen eines Namensraums, die nicht von einem Datentypen eines anderen Namensraums vererbt worden sind, entsprechend der im MPEG-7 Standard definierten Reihenfolge in die bestehende Liste von Datentypen einsortiert; – in einem vierten Schritt werden die separaten Codes in der Reihenfolge der Liste an die Datentypen des Namensraums vergeben.Method according to one of the preceding claims, in the separate codes within a given namespace according to a Procedures are awarded, which includes the following steps - in one The first step is to take all the data types of a namespace from Data types of other namespaces been inherited in the order defined in the MPEG-7 standard sorted the global TypeCodes of the respective base data types in a list, where the base data types are the data types in other namespaces, from which the sorted data types have been inherited; - in one second step, the data types of a namespace, that of a given base data type of a particular other Namespace have been inherited, lexicographically sorted; - in one third step will be all data types of a namespace that are not have been inherited from a data type of another namespace, respectively the sequence defined in the MPEG-7 standard into the existing one List of data types sorted; - in a fourth step the separate codes are ordered in the order of the list to the data types of the Assign namespace. Verfahren zur Decodierung eines strukturierten Dokuments, insbesondere eines XML-basierten Dokuments, wobei das Verfahren derart ausgestaltet ist, dass ein mit einem Verfahren gemäß einem der vorhergehenden Ansprüche codiertes Dokument decodiert wird.Method for decoding a structured document, in particular an XML-based document, the method is configured such that a with a method according to a of the preceding claims coded document is decoded. Verfahren nach Anspruch 7 zur Decodierung eines gemäß dem Verfahren des Anspruchs 5 codierten Dokuments, bei dem zur Decodierung eines binären TypeCodes aus der Anzahl der abgeleiteten Datentypen die Codelänge der separaten Codes der binären Typecodes bestimmt wird.The method of claim 7 for decoding one according to the method of claim 5 coded document, in which for decoding a binary TypeCodes out of the number of derived data types the code length of the separate codes of the binary Type codes is determined. Verfahren nach Anspruch 7 oder 8 zur Decodierung eines gemäß dem Verfahren des Anspruchs 5 codierten Dokuments, bei dem zur Decodierung eines bestimmten Typecodes der Subbaum des Vererbungsbaums des Namensraums, in dem sich der bestimmte Typecode befindet, anhand der Codeabstände zwischen benachbarten Datentypen ermittelt wird.Method according to claim 7 or 8 for decoding one according to the method of claim 5 coded document, in which for decoding a certain type codes the subtree of the inheritance tree of the namespace, in which the specific type code is located, based on the code intervals between adjacent data types is determined. Codiervorrichtung, welche derart ausgestaltet ist, dass ein Codierverfahren nach einem der Ansprüche 1 bis 6 durchführbar ist.Coding device, which is designed in such a way in that a coding method according to one of claims 1 to 6 can be carried out. Decodiervorrichtung, welche derart ausgestaltet ist, dass ein Decodierverfahren nach einem der Ansprüche 7 bis 9 durchführbar ist.Decoding device, which designed in such a way is that a decoding method according to any one of claims 7 to 9 feasible is. Codier- und Decodiervorrichtung umfassend eine Codiervorrichtung nach Anspruch 10 und eine Decodiervorrichtung nach Anspruch 11.An encoding and decoding apparatus comprising an encoding device according to claim 10 and a decoding device according to claim 11.
DE10351897A 2003-07-15 2003-11-06 Method for coding structured documents Withdrawn DE10351897A1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE10351897A DE10351897A1 (en) 2003-07-15 2003-11-06 Method for coding structured documents
EP04741947A EP1645133B1 (en) 2003-07-15 2004-07-02 Method for coding structured documents
PCT/EP2004/051333 WO2005008520A2 (en) 2003-07-15 2004-07-02 Method for coding structured documents
US10/564,601 US7607080B2 (en) 2003-07-15 2004-07-02 Method for coding structured documents
KR1020067000965A KR101102629B1 (en) 2003-07-15 2004-07-02 Method for coding structured documents
CN2004800201113A CN1823528B (en) 2003-07-15 2004-07-02 Method for coding structured documents

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10332054 2003-07-15
DE10332054.7 2003-07-15
DE10351897A DE10351897A1 (en) 2003-07-15 2003-11-06 Method for coding structured documents

Publications (1)

Publication Number Publication Date
DE10351897A1 true DE10351897A1 (en) 2005-02-17

Family

ID=34071682

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10351897A Withdrawn DE10351897A1 (en) 2003-07-15 2003-11-06 Method for coding structured documents

Country Status (2)

Country Link
CN (1) CN1823528B (en)
DE (1) DE10351897A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2077505A2 (en) * 2007-11-15 2009-07-08 Canon Kabushiki Kaisha Data compression apparatus, data decompression apparatus, and method for compressing data
US7831903B2 (en) 2004-02-27 2010-11-09 Siemens Aktiengesellschaft Method and device for coding and decoding structured documents

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030121005A1 (en) * 2001-12-20 2003-06-26 Axel Herbst Archiving and retrieving data objects

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4405146B2 (en) * 2000-10-17 2010-01-27 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Binary format for MPEG-7 instances
US6825781B2 (en) * 2001-02-05 2004-11-30 Expway Method and system for compressing structured descriptions of documents
DE50208271D1 (en) * 2001-06-25 2006-11-09 Siemens Ag A SYSTEM FOR IMPROVED ENCODING / DECODING OF STRUCTURED, ESPECIALLY XML BASED, DOCUMENTS AND METHOD AND DEVICES FOR IMPROVED ENCODING / DECODING BINARY REPRESENTATIONS OF SUCH DOCUMENTS

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030121005A1 (en) * 2001-12-20 2003-06-26 Axel Herbst Archiving and retrieving data objects

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7831903B2 (en) 2004-02-27 2010-11-09 Siemens Aktiengesellschaft Method and device for coding and decoding structured documents
EP2077505A2 (en) * 2007-11-15 2009-07-08 Canon Kabushiki Kaisha Data compression apparatus, data decompression apparatus, and method for compressing data
EP2077505A3 (en) * 2007-11-15 2011-06-22 Canon Kabushiki Kaisha Data compression apparatus, data decompression apparatus, and method for compressing data

Also Published As

Publication number Publication date
CN1823528A (en) 2006-08-23
CN1823528B (en) 2011-08-10

Similar Documents

Publication Publication Date Title
EP1645133B1 (en) Method for coding structured documents
EP1522028B9 (en) Method and devices for encoding/decoding structured documents, especially xml documents
EP1766982B1 (en) Method for encoding an xml document, decoding method, encoding and decoding method, coding device, and encoding and decoding device
EP1719345B1 (en) Method and device for coding and decoding structured documents
EP2197213B1 (en) Method for improving the functionality of the binary representation of MPEG-7 and other XML-based content descriptions
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
WO2003029905A2 (en) Method for accessing information and/or services of a distributed automation system
WO2004040441A2 (en) Upward and downward compatible schema evolution
DE10337825A1 (en) Method for generating a bit stream from an indexing tree
DE10309336B4 (en) Method for coding a structured document
EP1400124B1 (en) Method for improving the functions of the binary representation of mpeg-7 and other xml-based content descriptions
DE10351897A1 (en) Method for coding structured documents
DE10339971A1 (en) Method for coding an XML-based document
EP1522148B1 (en) Method for coding positions of data elements in a data structure
WO2004051502A2 (en) Method for encoding an xml-based document
DE10218645A1 (en) Bus device, e.g. a CAN node, has a buffer memory with a control unit that controls memory contents in a time dependent manner, so that the node can be used with a time-triggered CAN bus
EP1399856A1 (en) Method for combining distributed data bases
DE10218646A1 (en) Facility connected to a bus
EP1787474A1 (en) Method for encoding an xml-based document
DE102004056208A1 (en) Ontology based document management system, requires scanning of document according to term or concept of information model
DE10217192A1 (en) Procedure for address translation in heterogeneous networks
DE10351896A1 (en) Method for indexing structured documents
EP1576764A2 (en) Method and device for the exchange of data

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8130 Withdrawal