DE102004043269A1 - Verfahren zur Codierung eines XML-basierten Dokuments - Google Patents

Verfahren zur Codierung eines XML-basierten Dokuments Download PDF

Info

Publication number
DE102004043269A1
DE102004043269A1 DE102004043269A DE102004043269A DE102004043269A1 DE 102004043269 A1 DE102004043269 A1 DE 102004043269A1 DE 102004043269 A DE102004043269 A DE 102004043269A DE 102004043269 A DE102004043269 A DE 102004043269A DE 102004043269 A1 DE102004043269 A1 DE 102004043269A1
Authority
DE
Germany
Prior art keywords
document
information
elements
coding
relation information
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.)
Ceased
Application number
DE102004043269A
Other languages
English (en)
Inventor
Jörg Dr. Heuer
Andreas Dr. Hutter
Uwe Dr. Rauschenbach
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 DE102004043269A priority Critical patent/DE102004043269A1/de
Priority to PCT/EP2005/054255 priority patent/WO2006027323A1/de
Priority to JP2007529356A priority patent/JP4668273B2/ja
Priority to US11/662,057 priority patent/US20080189310A1/en
Priority to EP05787133A priority patent/EP1787474A1/de
Publication of DE102004043269A1 publication Critical patent/DE102004043269A1/de
Ceased 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)
  • Document Processing Apparatus (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Bei einem erfindungsgemäßen Verfahren zur Codierung des strukturierten Dokuments werden alle XML-Elemente, die Wurzelelemente eines codierten Fragments sind, gemäß ihrem Namen und der Namen ihrer Vaterelemente, das heißt gemäß ihrem Pfad, in einer Tabelle gespeichert. Die Pfade sind hierbei Absolutpfade, die von dem Wurzelknoten des Dokumentenstrukturbaums beginnen und zu einem Element des Dokumentenstrukturbaums führen, das explosiv in einem Fragment enthalten ist, das heißt ein Wurzelelement eines codierten Fragements ist. Diese Tabelle, Kontextpfadtabelle genannt, wird zur Initialisierung des Decoders vorab übertragen. Jedem Eintrag in der Kontextpfadtabelle ordnet der En- und Decoder einen Kontextcode ("ContextCode") fester Länge zu. Vor der Übertragung eines codierten Fragments wird der absolute Pfad zum Wurzelelement des Fragments als Kontextinformation durch den zugeordneten ContextCode signalisiert. Dieser ContextCode ist über eine Übertragung hinweg fest in der Länge. Die Verwendung einer Initialisierungstabelle ermöglicht jedoch bei der Initialisierung der Übertragung die freie Wahl der Aufteilung in Fragmente.

Description

  • Die Erfindung betrifft ein Verfahren zur Codierung eines XML-basierten Dokuments gemäß Oberbegriff des Anspruchs 1, ein entsprechendes Decodierverfahren gemäß dem Gattungsbegriff des Anspruchs 18 sowie entsprechende eine Codiervorrichtung gemäß dem Anspruch 19 und Decodiervorrichtung gemäß dem Anspruch 20.
  • XML (Extensible Markup Language) ist eine Sprache, mit der eine strukturierte Beschreibung der Inhalte 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, Datentypen und Inhaltsmodelle findet sich in den Referenzen [7], [8] und [9].
  • Aus dem Stand der Technik sind Verfahren zur Codierung von XML-basierten Dokumenten bekannt, bei denen das Dokument in eine codierte Binärdarstellung umgewandelt wird. Beispielsweise werden in den Dokumenten [1][2], die im Rahmen der Entwicklung eines MPEG-7-Codierstandards entstanden sind, Verfahren zur Codierung und Decodierung von XML-basierten Dokumenten beschrieben. Hierbei können Fragmente des XML-basierten Dokuments in sogenannte Fragment Update Units codiert werden.
  • Es ist häufig erforderlich, Fragment Update Units nach ihrem Inhalt zu kategorisieren und beispielsweise derart kategorisiert in Tabellen abzuspeichern. Dies ermöglicht Fragmente einer Kategorie wenn erforderlich schnell abrufen und beispielsweise darstellen zu können. Es ist hierbei vorteilhaft, wenn die Kategorisierung wenig Rechenkomplexität erfordert, da die Kategorisierung während des Empfangs ohne konkreten Abruf neben anderen Aufgaben eines Empfängers ausgeführt wer den muss. Beispielsweise werden neben dem Empfang, der Decodierung und Anzeige einer Rundfunksendung auch XML Fragmente empfangen, die programmbegleitende Informationen enthalten und schnell zu kategorisieren sind. Hierbei ist es vorteilhaft, wenn die Kontextinformationen, anhand dessen die Fragmente kategorisiert werden, fester Länge sind, da diese dann mit geringer Komplexität ausgelesen und für die Kategorisierung verglichen werden können.
  • Die aus dem Stand der Technik bekannten Verfahren zur Erzeugung einer Binärdarstellung von XML-basierten Dokumenten weisen Nachteile bei der schnellen Kategorisierung von empfangenen Fragmenten auf. Aus dem Stand der Technik sind Verfahren zur Signalisierung von Kontextinformationen der Fragmente bekannt [5][6]. Allerdings weisen diese den Nachteil auf, dass Kontextinformationen entweder variabel in der Länge und ineffizient bei einer geringen Anzahl unterschiedlicher Fragmente [5] oder fix in der Länge aber auf in einem Standard vordefinierte Fragmente beschränkt sind [6].
  • Das Problem der Kategorisierung von Fragmenten ergibt sich beispielsweise bei einem mit Hilfe der XML-Sprache (XML = extensible markup language) erstellten Dokument, welches in einem gemäß MPEG7-Standard spezifizierten binären Format dem sogenannten MPEG7-BiM Format repräsentiert wird. Bezüglich des MPEG7-BiM Formats eines XML-Dokuments sei hierbei insbesondere auf die Dokumente [1][2] verwiesen.
  • Bei einer derartigen Repräsentation wird ein Datenstrom erzeugt, der in mehrere Einheiten (Access Units) aufgeteilt, welche ihrerseits wiederum aus mehreren Fragmenten, den oben erwähnten Fragment Update Units, bestehen. Die Einheiten werden codiert und bei Bedarf als MPEG7-BiM-Strom an einen oder mehrere Empfänger versandt. Die Fragmente enthalten hierbei Kontextinformationen, die abhängig vom Fragmentinhalt mit einer unterschiedlichen Anzahl an Bits repräsentiert werden.
  • Der mögliche Fragmentinhalt ist hier nicht beschränkt auf eine Untermenge der zu Übertragenden XML Elemente.
  • Im Rahmen von TV-Anytime (TVA) – ein Konzept, welches, basierend auf einer Kombination von interaktiven Diensten wie dem Internet mit dem traditionellen Broadcast wie dem Fernsehen, einem Fernsehzuschauer erlaubt, sein Fernsehprogramm zu einem beliebigen Zeitpunkt zu sehen, und in dem referenzierten, Dokument [6] ausführlicher beschrieben ist, wird eine beschränkte Zahl an möglichen Fragmentinhalten festgelegt.
  • Hierbei ist die Menge der möglichen XML Elemente eines XML Dokuments durch einen Namensraum in dem referenzierten Dokument [6] festgelegt. Zudem werden dien Inhalte von Fragmenten auf eine Untermenge dieser XML Elemente festgelegt. Die Signalisierung der Kontextinformation dieser Fragmente wird dabei durch einen Code fester Länge spezifiziert. Dies ermöglicht eine effiziente Kategorisierung der empfangenen Fragmente, allerdings ist die Fragmentierung auf die spezifizierten Fragmentinhalte beschränkt. Sollen neue Informationselement übertragen werden ist dies ohne Neuzuordnung von Codes nicht möglich.
  • Aufgabe der Erfindung ist es deshalb, ein Verfahren zur Codierung und ein Verfahren zur Decodierung von XML-basierten Dokumenten sowie einen entsprechende Codier- und Decodiereinrichtung zu schaffen, welche eine verbesserte Kategorisierung von Fragmenten in dem codierten Datenstrom ermöglicht ohne die Menge möglicher Fragmentinhalte einzuschränken und eine effiziente Codierung der Kontextinformation ermöglicht.
  • Diese Aufgabe wird ausgehend von dem Verfahren zum Codieren gemäß dem Oberbegriff des Anspruchs 1 durch dessen kennzeichnende Merkmale gelöst. Des Weiteren wird dies durch das Verfahren zum Decodieren gemäß dem Anspruch 18 sowie durch die Codiereinrichtung gemäß Anspruch 19 und die Decodiereinrichtung gemäß Anspruch 20 gelöst.
  • Ein erfindungswesentlicher Vorteil besteht darin, dass die Kategorisierung schneller erfolgen kann, als es bei Verfahren gemäß dem Stand der Technik der Fall ist. Dabei wird dies auf vorteilhafte Weise erzielt, ohne die Menge möglicher Fragmente einzuschränken. Zudem ermöglicht die Erfindung auch eine effiziente Codierung der Kontextinformation.
  • Darüber hinaus umfasst die Erfindung ein Verfahren zum Decodieren einer Datenstruktur, wobei das Verfahren derart ausgestaltet ist, dass eine mit dem oben beschriebenen Codierverfahren codierte Datenstruktur decodiert wird.
  • Darüber hinaus umfasst die Erfindung ein Verfahren zum Codieren und Decodieren einer Datenstruktur, welches das oben beschriebene Codierverfahren und Decodierverfahren umfasst.
  • Die Erfindung umfasst auch eine Codiervorrichtung, mit der das erfindungsgemäße Codierverfahren durchführbar ist, sowie eine Decodiervorrichtung, mit der das erfindungsgemäße Decodierverfahren durchführbar ist. Ferner betrifft die Erfindung eine entsprechende Vorrichtung zum Codieren und Decodieren, mit der das oben beschriebene kombinierte Codier- und Decodierverfahren durchführbar ist.
  • Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen definiert und zumindest teilweise folgender Diskussion der Vorteile der Erfindung zu entnehmen.
  • In strukturierten Dokumenten, insbesondere XML Dokumenten, wird der Typ von Informationen in einem XML-Element oder XML-Attribut eines Dokuments durch die Namen aller Vaterelemente und deren Typen deklariert. Hierbei sind die XML-Elemente und XML-Attribute entsprechend einer Strukturdefinition in einem Dokumentenbaum angeordnet.
  • Bei dem erfindungsgemäßen Verfahren zur Codierung des strukturierten Dokuments werden alle XML-Elemente, die Wurzelelemente eines codierten Fragments sind, gemäß ihrem Namen und der Namen ihrer Vaterelemente, das heißt gemäß ihrem Pfad in einer Tabelle gespeichert. Die Pfade sind hierbei Absolutpfade, die von dem Wurzelknoten des Dokumentenstrukturbaums beginnen und zu einem Element des Dokumentenstrukturbaums führen, das exklusiv in einem Fragment enthalten ist, das heißt ein Wurzelelement eines codierten Fragments ist. Diese Tabelle, Kontextpfadtabelle genannt, wird zur Initialisierung des Decoders vorab übertragen. Jedem Eintrag in der Kontextpfadtabelle ordnet der En- und Decoder einen Kontextcode („ContextCode") fester Länge zu. Vor der Übertragung eines codierten Fragments wird der absolute Pfad zum Wurzelelement des Fragments als Kontextinformation durch den zugeordneten ContextCode signalisiert. Dieser ContextCode ist über eine Übertragung hinweg fest in der Länge. Die Verwendung einer Initialisierungstabelle ermöglicht jedoch bei der Initialisierung der Übertragung die freie Wahl der Aufteilung in Fragmente.
  • In einer weiteren Ausführungsform werden die Pfade relativ zum vorhergehenden Pfad in einer Tabelle abgelegt und übertragen. Hierdurch kann der Speicheraufwand für die Tabelle verringert werden.
  • In einer besonders bevorzugten Ausführungsform werden die Pfade entsprechend der Kontextpfad („ContextPfad") Codierung des MPEG-7 BiM Formats [1][2] in der Tabelle abgelegt und übertragen. Hierdurch kann eine standardisierte weit verbreitete Struktur genutzt und die Verringerung des Speicheraufwands weiter gesteigert werden.
  • Wird die zuzuordnende Länge der ContextCodes explizit mit der Kontextpfadtabelle signalisiert, ermöglicht dies bei ausreichend groß gewählter Länge der Kontextcodes während der Übertragung neue Kontextpfade in die Tabelle aufzunehmen ohne die Länge und die Zuordnung der Kontextcodes zu verändern.
  • In einer bevorzugten Ausführungsform werden die Kontextpfadtabellen wiederholt im Datenstrom abgelegt und übertragen. Die Länge der Kontextcodes wird hierbei durch variable Längencodes, beispielsweise mit variable length unsigned integer most signiffigcant bit first „vluimsbf", wie es in den Dokumenten [1][2] definiert ist, signalisiert. Dies ermöglicht Empfängern, die sich in eine Übertragung einwählen, sofort Fragmente zu kategorisieren und sobald eine Kontextpfadtabelle empfangen wird Kontextpfade zuzuordnen.
  • Updates der Codelänge und der Codetabelle.
  • In einer bevorzugten Ausführungsform werden in der Kontextpfadtabelle nur Kontextpfade übertragen die Pfade zu Wurzelelementen von bisher übertragenen und bis zur nächsten Übertragung der Kontextpfadtabelle zu übertragenden Fragmenten enthalten. Bei neuen Pfaden zu Wurzelelementen von Fragmenten wird die Kontextpfadtabelle erweitert. Dieses Verfahren ist insbesondere bei wiederholter Übertragung von Kontextpfadtabellen vorteilhaft, da die Kontextpfadtabelle nur bisher notwendige Information enthält. Diese Kontextpfadtabelle ist damit kleiner als jene, die Pfade aller Wurzelelemente von Fragmenten der gesamten Übertragung enthalten. Sind die in der Kontextpfadtabelle enthaltenen Kontextpfade nicht aufeinander folgenden Kontextcodes zugeordnet, so ist in der Kontextpfadtabelle zusätzlich zu dem jeweiligen Kontextpfad der zugeordnete Kontextcode zu codieren.
  • Ausführungsbeispiele der Erfindung werden nachfolgend anhand der 1 bis 5 dargestellt und erläutert.
  • Es zeigen
  • 1a Ein gemäß dem Stand der Technik strukturiertes XML Dokument;
  • 1b Eine aus dem Stand der Technik bekannte Repräsentation des strukturierten XML Dokumentenbaumes;
  • 1c Eine Aufteilung des aus dem Stand der Technik bekannten Baumes in Fragmente;
  • 1d Ein sich gemäß dem Stand der Technik ergebender Datenstrom bestehend aus Access Units und Fragmenten;
  • 2 Struktur des Datenstroms nach Codierung eines Strukturierten XML Dokuments mit dem erfindungsgemäßem Verfahren.
  • 3 Struktur einer Kontextpfadtabelle.
  • 4 Struktur einer Kontextpfadtabelle mit expliziter Signalisierung der fixen ContextCodeLänge.
  • 5 Struktur eines KontextPfadTabellenUpdates.
  • 1a zeigt ein aus dem Stand der Technik bekanntes strukturiertes XML Dokument in textueller Form. Zu erkennen ist dabei, dass zwischen durch spitzen Klammern gekennzeichneten, zusammengefassten Strukturelementen – vereinfachend auch nur als Elemente bezeichnet – teilweise weitere Strukturelemente sowie für diese Darstellung beispielhaft gewählte Daten (Werteausprägungen) eingebettet sind. Hierzu sind die auch mit dem englischen Ausdruck „Tag" bezeichneten Strukturelemente teilweise als ein Paar aus einem einleitenden und abschließenden Tag ausgestaltet, wobei sich das abschließende Tag lediglich durch einen der spitzen Klammer folgenden Schrägstrich von dem einleitenden Tag unterscheidet.
  • Darüber hinaus können auch derartig eingebettete Daten bzw. Strukturelemente parallel zueinander existieren.
  • Die sich hierbei ergebende Struktur ist ab einer gewissen Größe in textueller Form schwer darstellbar. Aufgrund der sich ergebenden Struktur ist es daher bekannt, ein derartig strukturiertes Dokument als Baustruktur zu zeigen.
  • 1b zeigt daher das aus der 1a bekannte strukturierte XML Dokument in der Baumrepräsentation. Dabei ergeben die genannten Strukturelemente bzw. Paare von Strukturelemente jeweils ein als Ellipse dargestelltes Element oder Knoten des Dokumentes, wobei für den Fall das ein Element ein weiteres Element enthält – es also einbettet –, ein Pfad von einem Knoten direkt zu einem neuen Knoten führt, während wenn das Element unmittelbar Daten einbettet – also einen Wert enthält – ein Pfad von einem Knoten direkt in eine rechteckig dargestellte Werteausprägung mündet.
  • Ausgehend von einem Wurzelknoten DRE des Dokumentes lässt sich nun jeder Knoten DE1...DE10 durch einen zu ihm hinführenden absoluten Pfad bestimmen bzw. beschreiben. Beispielsweise ist der Knoten DE5 durch den sich aus den Schritten A2 und B1 ergebenden Pfad bestimmt.
  • Ausgehend von der dargestellten Baumstruktur ergibt sich nun bei wie oben beschrieben üblichen Fragmentierung ein in 1c dargestellte Partitionierung der in 1b gezeigten Baumrepräsentation. Dabei wird die Baumstruktur in Subbäume ST1...ST4 unterteil, welche die genannten Fragmente des XML Dokuments darstellen.
  • Durch diese Aufteilung ergibt sich für jeden Subbaum ST1...ST4 dabei jeweils aus einem der Elemente DE1...DE10, welches exklusiv in einem Subbaum ST1...ST4 enthalten ist, ein Wurzelelement oder -Knoten FRE1...FRE4 des jeweiligen Fragments (Subbaums) ST1...ST4, welcher wiederum entweder in verbleibenden Elemente DE5...DE10 oder in Werteausprägungen mündet.
  • Die Subbäume ST1...ST4 können dabei analog dem oben beschriebenen Verfahren durch Pfade zu den Wurzelelementen FRE1...FRE4 der Subbäume identifiziert werden.
  • Für eine Übertragung wird nun ein derartiges Dokument in der Regel codiert. Dabei ergibt sich üblicherweise ein (Bit)Datenstrom. 1d zeigt die Struktur eines codierten Datenstroms BS wie er sich gemäß einer aus dem Stand der Technik bekannten spezifizierten Repräsentation darstellt.
  • In dieser Darstellung ist der Datenstrom in Access Units AU unterteilt, die aus mehreren Fragmenten FUU bestehen. Hierbei repräsentieren die Fragmente FUU entsprechend 1b Subbäume eines XML Dokuments. Die Fragmente FUU werden durch ein Fragment Befehl (FC), durch einen Kontext Pfad (CP) und Position Codes zum Wurzelelement FRE1...FRE4 eines Subbaums und durch eine Repräsentation des Subbaums (PL) repräsentiert.
  • Beispielhaft ist ein Kontextpfad („ContextPfad") CP entsprechend einer aus dem Stand der Technik bekannten XPATH Notation [3] dargestellt, der sich aus einer durch Schrägstriche getrennten Aneinanderreihung der Namen von einem Vorgängerknoten(auch Vaterknoten) zu seinem bzw. seinen nachfolgenden Knoten (auch Nachfolger- oder Kindknoten) ergibt.
  • Der Kontextpfad kann dabei jedes XML Element oder Attribut eines in der Instanz deklarierten Namensraums identifizieren. In der Regel ist es jedoch für eine Übertragung nur sinnvoll bestimmte Elemente oder Attribute als Wurzelelement eines Subbaums für die Repräsentation eines Fragments FUU zu verwenden. Zudem werden Kontextpfade mit Codes variabler Länge ähnlich der Länge eines Kontextpfades gemäß der XPATH Notation [3] repräsentiert. Dies ist jedoch wie oben beschrieben mit Nachteilen behaftet.
  • Daher wird durch eine Codierung gemäß der Erfindung eine Möglichkeit geschaffen, bei der insbesondere bei mehreren Frag menten mit dem gleichen Kontextpfad eine effiziente Codierung mit Kontextcodes fester Länge in den Fragmenten FUU ermöglicht wird.
  • 2 zeigt eine Struktur eines mit dem erfindungsgemäßen Verfahren erstellten Datenstroms, der das codierte XML-Dokument repräsentiert. Zu erkennen ist, dass der Strom neben Fragmenten FUU zu Beginn der Übertragung eine Kontextpfadtabelle CPT enthält, die eine Liste an Kontextpfaden CP1...CP4 umfasst.
  • Entsprechend der Anzahl der Einträge wird die Bitlänge der Kontextcodes CC bestimmt, der für die Dauer einer Übertragung zu einem Decoder konstant bleibt, so dass alle Einträge eindeutig identifiziert werden können. Üblicher weise wird die Bittlänge(CC)>=ld(Anzahl der Einträge) gewählt, wobei ld der Logarithmus zur Basis zwei ist. Die Wurzelknoten der Subbäume werden in den jeweiligen Fragmenten durch den Wert des Kontextcodes CC signalisiert, welcher auf Einträge in der Kontextpfadtabelle CPT verweist, der den Kontextpfad CP1...CP4 zu dem Wurzelknoten enthält.
  • In dem in 2 dargestellten Beispiel wird durch den Wert „1" der zweite Eintrag in der Kontextpfadtabelle CPT identifiziert, da „0" den ersten Eintrag identifiziert.
  • 3 zeigt ein Beispiel einer Kontextpfadtabelle für die in 1c dargestellte Partitionierung. In der Tabelle sind zwei Adressierbare Kontextpfade CP'1, CP'2 encodiert. Dementsprechend kann der Kontextcode mit der oben gegebenen Berechnung mit einem Bit codiert werden: 0 signalisiert den ersten Kontextpfad, 1 den zweiten.
  • 4 zeigt ein alternatives Ausführungsbeispiel einer Kontextpfadtabelle in der die Anzahl der Bits (8) mit dem der Kontextcode encodiert wird explizit im Datenstrom codiert ist – also dem Decoder signalisiert wird. Dies ist insbesondere vorteilhaft, wenn während der Übertragung die Kontextpfadtabelle mit weiteren Kontextpfaden erweitert werden soll. Dies ist insbesondere bei Verfahren zur Codierung von XML Dokumenten nötig, bei denen zum Beginn der Encodierung das komplette XML Dokument noch nicht vorliegt und damit noch nicht alle Kontextpfade der Wurzelelemente von Subbäumen bekannt sind.
  • 5 zeigt die Struktur eines mit dem erfindungsgemäßen Verfahren erstellten Datenstroms, in dem eine erste Kontextpfadtabelle CPT zu Beginn des Datenstroms codiert wurde und eine Erweiterung bzw. Aktualisierung der Kontextpfadtabelle CBTU später im Datenstrom codiert wurde.
  • 6 zeigt ein weiteres gemäß der Erfindung mögliches Ausführungsbeispiel einer Erweiterung einer Kontextpfadtabelle CPTU, die Informationen enthält an welcher Position (3) in der Kontextpfadtabelle die folgenden neuen Kontextpfade (/Group/Chair) eingetragen werden.
  • Literaturverzeichnis:
    • [1] ISO/IEC 15938-1 Multimedia Content Description Interface - Part 1: Systems, Geneva 2002
    • [2] ISO/IEC 15938-1:2002/FDAM 1:2004 Multimedia Content Description Interface – Part 1: Systems, Amendment 1: Systems Extensions
    • [3] http://www.w3.org/TR/xpath
    • [4] TV-Anytime Specification Series S-3 on Metadata, Part-B, Version 13
    • [5] ETSI TS 102 822-3-2: Broadcast and On-line Services: Search, select and rightful use of content on personal storage systems ("TV-Anytime Phase 1"), Part 3: Metadata, Sub-part 2: System Aspects in a Unidirectional Environment.
    • [6] DVB GBS0005r16: Carriage of TVA information in DVB TSs
    • [7] http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/
    • [8] http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/
    • [9] http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/

Claims (20)

  1. Verfahren zur Codierung eines strukturierten, insbesondere XML-basierten, Dokuments, bei dem eine Strukturierung auf Grundlage von Daten des Dokumentes beschreibenden Elementen derart erfolgt, dass a) die Daten des Dokumentes ausgehend von einem beschreibenden ersten Element (DRE) in die beschreibenden Elemente eingebettet sind, wobei hierzu jeweils zumindest Teile der beschreibenden Elemente als Vorgängerelemente bezeichnete sukzessive weitere beschreibende als Nachfolgelemente bezeichnete Elemente einbetten, wobei Nachfolgelemente auch Vorgängerelemente weiterer Elemente sein können, b) ein beschreibendes Element jeweils durch einen vom beschreibenden ersten Element ausgehenden über zu ihm hinführenden Vorgängerelementen verlaufenden ersten Pfad bestimmbar ist, c) das die Daten und beschreibenden Elemente des Dokuments derart aufgeteilt codiert werden, dass Teilmengen der Daten und beschreibenden Elemente des Dokuments gebildet und jeweils codiert werden, wobei die Teilmengen derart ausgestaltet sind, dass sie zumindest ein beschreibendes innerhalb der Teilmenge kein Vorgängerelement aufweisendes zweites Element (FRE1..FRE4), dadurch gekennzeichnet, dass d) zur Bildung einer ersten Relationsinformation (CPT) zu jedem zweiten Element der erste Pfad (CP) ermittelt wird, e) zur Bildung einer zweiten Relationsinformation (CCT) zu jedem ermittelten Pfad (CP) eine eindeutige Zuordnungsinformation (CC) erzeugt wird, f) zumindest die erste Relationsinformation (CPT) derart codiert wird, dass die erste Relationsinformation im Rahmen eines decoderseitigen Initialisierungsvorgangs decoderseitig bestimmbar ist, g) zur Bestimmung eines der zweiten Elementes (FRE1..FRE4) die Teilmengen derart codiert werden, dass die jeweils zugeordneten Zuordnungsinformation (CC) derart codiert wer den, dass decoderseitig auf Grundlage der ersten Relationsinformation (CPT) sowie der zweiten Relationsinformation (CCT) der zugehörige ermittelte Pfad ermittelt wird.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die zweite Relationsinformation (CCT) derart codiert wird, dass die zweite Relationsinformation im Rahmen eines decoderseitigen Initialisierungsvorgangs decoderseitig bestimmbar ist.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Zuordnungsinformation (CC) derart codiert wird, dass sie durch eine konstante Anzahl von Codiereinheiten dargestellt wird.
  4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste Relationsinformation (CPT) derart gebildet wird, dass die ermittelten ersten Pfade in einer ersten Tabelle organisiert sind.
  5. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die zweite Relationsinformation (CCT) derart gebildet wird, dass die ermittelten ersten Pfade (CP) und die jeweiligen Zuordnungsinformationen (CC) in einer zweiten Tabelle organisiert sind.
  6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste Tabelle und die zweiten Tabelle durch dieselbe Tabelle organisiert werden.
  7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste Tabelle und/oder zweite Tabelle zumindest temporär gespeichert werden.
  8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste Tabelle und/oder die zweite Tabelle derart organisiert werden, dass die ermittelten Pfade (CP) zumindest Teilweise relativ zu vorhergehenden Pfaden dargestellt werden.
  9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Codierung gemäß dem MPEG-7 Standard oder seinen Derivaten erfolgt.
  10. Verfahren nach einem vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Codierung der ersten Relationsinformation (CPT), insbesondere gemäß einem durch den MPEG-Standard oder seinen Derivaten definierten, binären Format erfolgt.
  11. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Codierung der Pfade (CP) in der ersten Relationsinformation (CPT) gemäß der MPEG-7 Standard definieren „ContextPfad" Codierung erfolgt.
  12. Verfahren nach einem der vorhergehenden Ansprüche dadurch gekennzeichnet, dass die Codierung der Zuordnungsinformation (CC), insbesondere gemäß einem durch den MPEG-Standard oder seinen Derivaten definierten Format erfolgt.
  13. Verfahren nach einem der vorhergehenden Ansprüche dadurch gekennzeichnet, dass die Anzahl der Codiereinheiten der Zuordnungsinformation (CC) derart codiert wird, dass diese decoderseitig bestimmbar ist.
  14. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die erste Relationsinformation (CPT) des Dokumentes wiederholt codiert wird.
  15. Verfahren nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass die Zuordnungsinformation (CC) derart codiert wird, dass die Anzahl der Codiereinheiten der Zuordnungsinformation (CC) variabel ist.
  16. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass, insbesondere bei einer wiederholten Codierung der ersten Relationsinformation (CPT), die erste Relationsinformation derart codiert wird, dass nur diejenigen ermittelten ersten Pfade (CP) decoderseitig bestimmbar sind, die bereits übertragen wurden.
  17. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine aktualisierte erste Relationsinformation des Dokumentes oder eine Erweiterung der ersten Relationsinformation des Dokumentes (CPTU) nach einer bereits codierten ersten Relationsinformation (CPT) codiert wird.
  18. 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.
  19. Codiervorrichtung, welche derart ausgestaltet ist, dass ein Codierverfahren nach einem der Ansprüche 1 bis 18 durchführbar ist.
  20. Decodiervorrichtung, welche derart ausgestaltet ist, dass ein Decodierverfahren nach dem Anspruch 19 durchführbar ist.
DE102004043269A 2004-09-07 2004-09-07 Verfahren zur Codierung eines XML-basierten Dokuments Ceased DE102004043269A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE102004043269A DE102004043269A1 (de) 2004-09-07 2004-09-07 Verfahren zur Codierung eines XML-basierten Dokuments
PCT/EP2005/054255 WO2006027323A1 (de) 2004-09-07 2005-08-30 Verfahren zur codierung eines xml-basierten dokuments
JP2007529356A JP4668273B2 (ja) 2004-09-07 2005-08-30 Xmlを基礎とする文書の符号化のための方法
US11/662,057 US20080189310A1 (en) 2004-09-07 2005-08-30 Method for Encoding an Xml-Based Document
EP05787133A EP1787474A1 (de) 2004-09-07 2005-08-30 Verfahren zur codierung eines xml-basierten dokuments

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102004043269A DE102004043269A1 (de) 2004-09-07 2004-09-07 Verfahren zur Codierung eines XML-basierten Dokuments

Publications (1)

Publication Number Publication Date
DE102004043269A1 true DE102004043269A1 (de) 2006-03-23

Family

ID=35539300

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004043269A Ceased DE102004043269A1 (de) 2004-09-07 2004-09-07 Verfahren zur Codierung eines XML-basierten Dokuments

Country Status (5)

Country Link
US (1) US20080189310A1 (de)
EP (1) EP1787474A1 (de)
JP (1) JP4668273B2 (de)
DE (1) DE102004043269A1 (de)
WO (1) WO2006027323A1 (de)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6745206B2 (en) * 2000-06-05 2004-06-01 International Business Machines Corporation File system with access and retrieval of XML documents
AUPQ867700A0 (en) * 2000-07-10 2000-08-03 Canon Kabushiki Kaisha Delivering multimedia descriptions
AUPR063400A0 (en) * 2000-10-06 2000-11-02 Canon Kabushiki Kaisha Xml encoding scheme
CN1401188B (zh) * 2000-10-17 2011-06-08 皇家菲利浦电子有限公司 Mpeg-7样品的二进制格式
FR2820228B1 (fr) * 2001-01-30 2004-03-12 Expway Procede de codage et de decodage d'un chemin dans l'arborescence d'un document structure
US7689901B2 (en) * 2001-03-01 2010-03-30 Sony Corporation Multiple updates to content descriptions using a single command
JP3832807B2 (ja) * 2001-06-28 2006-10-11 インターナショナル・ビジネス・マシーンズ・コーポレーション データ処理方法及びその手法を用いたエンコーダ、デコーダ並びにxmlパーサ
US20030009472A1 (en) * 2001-07-09 2003-01-09 Tomohiro Azami Method related to structured metadata
JP4231261B2 (ja) * 2002-09-12 2009-02-25 株式会社エヌ・ティ・ティ・ドコモ 同一性判定装置
JP2004318188A (ja) * 2002-09-26 2004-11-11 Victor Co Of Japan Ltd 構造化データの受信プログラム
DE10309336B4 (de) * 2003-03-04 2005-11-24 Siemens Ag Verfahren zur Codierung eines strukturierten Dokuments
WO2005114494A1 (en) * 2004-05-21 2005-12-01 Computer Associates Think, Inc. Storing multipart xml documents

Also Published As

Publication number Publication date
WO2006027323A1 (de) 2006-03-16
JP4668273B2 (ja) 2011-04-13
JP2008512886A (ja) 2008-04-24
EP1787474A1 (de) 2007-05-23
US20080189310A1 (en) 2008-08-07

Similar Documents

Publication Publication Date Title
EP2197213B1 (de) Verfahren zur Verbesserung der Funktionalität der binären Repräsentation von MPEG-7 und anderen XML basierten Inhaltsbeschreibungen
EP1522028B9 (de) Verfahren und vorrichtungen zum kodieren/dekodieren von strukturierten dokumenten, insbesondere von xml-dokumenten
DE60129232T2 (de) Xml-kodierungsverfahren
WO2003091905A2 (de) Generische datenstrombeschreibung
DE60225785T2 (de) Verfahren zur codierung und decodierung eines pfades in der baumstruktur eines strukturierten dokuments
EP1407610B1 (de) System zur verbesserten encodierung/decodierung von strukturierten, insbesondere xml-basierten, dokumenten sowie verfahren und vorrichtungen zur verbesserten encodierung/decodierung von binären repräsentationen von solchen dokumenten
EP1719345B1 (de) Verfahren und vorrichtung zur codierung und decodierung von strukturierten dokumenten
EP1561281B1 (de) Verfahren zur erzeugung eines bitstroms aus einem indizierungsbaum
EP1645133B1 (de) Verfahren zur codierung von strukturierten dokumenten
DE102004034004A1 (de) Verfahren zum Codieren eines XML-Dokuments, sowie Verfahren zum Decodieren, Verfahren zum Codieren und Decodieren, Codiervorrichtung, Decodiervorrichtung und Vorrichtung zum Codieren und Decodieren
EP1616274B1 (de) Verfahren zur codierung eines strukturierten dokuments
EP1400124B1 (de) Verfahren zur verbesserung der funktionalität der binären repräsentation von mpeg-7 und anderen xml-basierten inhaltsbeschreibungen
EP3411803B1 (de) Gerät und verfahren zur bearbeitung eines binärkodierten strukturdokuments
DE102004043269A1 (de) Verfahren zur Codierung eines XML-basierten Dokuments
DE10231970B3 (de) Verfahren zur Codierung von Positionen von Datenelementen in einer Datenstruktur sowie Vorrichtungen zur entsprechenden Codierung und/oder Decodierung
DE10339971A1 (de) Verfahren zur Codierung eines XML-basierten Dokuments
WO2005008521A1 (de) Verfahren zur indizierung von strukturierten dokumenten
DE10248758B4 (de) Verfahren und Vorrichtungen zum Encodieren/Decodieren von XML-Dokumenten
WO2004051502A2 (de) Verfahren zur codierung eines xml-basierten dokuments
DE10351897A1 (de) Verfahren zur Codierung von strukturierten Dokumenten
DE102004044164A1 (de) Verfahren und Vorrichtung zur Kodierung von XML-Dokumenten
WO2008052936A2 (de) Verfahren zur übertragung von szene-daten in einem unidirektionalen datenübertragungssystem

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection