<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Efficient_XML_Interchange</id>
	<title>Efficient XML Interchange - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Efficient_XML_Interchange"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Efficient_XML_Interchange&amp;action=history"/>
	<updated>2026-05-27T06:06:51Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Efficient_XML_Interchange&amp;diff=1752650&amp;oldid=prev</id>
		<title>imported&gt;Eriosw: Parameter language</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Efficient_XML_Interchange&amp;diff=1752650&amp;oldid=prev"/>
		<updated>2026-01-09T09:36:00Z</updated>

		<summary type="html">&lt;p&gt;Parameter language&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox Dateiformat&lt;br /&gt;
| Name = Efficient XML Interchange (EXI)&lt;br /&gt;
| Dateiendung = .exi&lt;br /&gt;
| MIME = application/exi&lt;br /&gt;
| MIME-Anm = &amp;lt;ref&amp;gt;[http://www.w3.org/TR/exi/#internetMediaType proposed]&amp;lt;/ref&amp;gt;&lt;br /&gt;
| MagischeZahl = $EXI&lt;br /&gt;
| MagischeZahlNotation = [[ASCII-C-Notation]]&lt;br /&gt;
| MagischeZahlHex = 2445.5849&lt;br /&gt;
| Entwickler = [http://www.w3.org/ World Wide Web Consortium]&lt;br /&gt;
| Veröffentlicht =&lt;br /&gt;
| LetzteVersion = 1.0&lt;br /&gt;
| LetzteVersionDatum = 19. September 2008&lt;br /&gt;
| Art = [[Binary XML]]&lt;br /&gt;
| Erweitert von = [[XML]]&lt;br /&gt;
| Standard = [http://www.w3.org/TR/exi/ Format 1.0 (Recommendation)]&lt;br /&gt;
| Website = [http://www.w3.org/XML/EXI/ Efficient XML Interchange Working Group]&lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Efficient XML Interchange (EXI)&amp;#039;&amp;#039;&amp;#039; ist ein vom [[World Wide Web Consortium|World Wide Web Consortium (W3C)]] vorgeschlagenes Format für die binäre Repräsentation von [[XML Information Set]]s. Im Vergleich zu textbasierten [[Extensible Markup Language|XML-Dokumenten]] können Dokumente im EXI-Format schneller verarbeitet werden und benötigen weniger Bandbreite beim Transfer über ein Netzwerk. Neben EXI gibt es weitere Ansätze eine binäre Repräsentation für XML zu etablieren (vgl. [[Binary XML]]).&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
Auf Basis der Schlussfolgerungen der &amp;#039;&amp;#039;XML Binary Characterization Working Group&amp;#039;&amp;#039; wurde im November 2005 die &amp;#039;&amp;#039;Efficient XML Interchange (EXI) working Group&amp;#039;&amp;#039; gegründet, mit dem Ziel ein binäres Beschreibungsformat für XML zu definieren.&amp;lt;ref name=&amp;quot;Goldman &amp;amp; Lenkov 2005&amp;quot; /&amp;gt; Nach Analyse und Vergleich mehrerer Ansätze (u.&amp;amp;nbsp;a. XML+gzip, Fast Infoset, Fujitsu Binary, Xebu und esXML) wurde im November 2006 Efficient XML als Basis für EXI gewählt.&amp;lt;ref name=&amp;quot;AgileDelta 2007&amp;quot; /&amp;gt; Im Juli 2007 wurde der erste Entwurf für den &amp;#039;&amp;#039;Efficient XML Interchange standard&amp;#039;&amp;#039; veröffentlicht.&lt;br /&gt;
&lt;br /&gt;
Die Planung der Arbeitsgruppe sah es vor, EXI im September 2009 als W3C-Empfehlung zu veröffentlichen.&amp;lt;ref name=&amp;quot;W3C 2009&amp;quot; /&amp;gt; Im Januar 2011 wurde dann ein Vorschlag für eine W3C-Empfehlung&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya 2011a&amp;quot; /&amp;gt; und im März 2011 die darauf aufbauende W3C-Empfehlung&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya 2011b&amp;quot; /&amp;gt; publiziert. Im Februar 2014 wurde eine 2te Edition&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya &amp;amp; Peintner &amp;amp; Kyusakov 2014&amp;quot; /&amp;gt; veröffentlicht.&lt;br /&gt;
&lt;br /&gt;
Im November 2016 hat die Arbeitsgruppe ihren Namen von „Efficient XML Interchange (EXI)“ zu „Efficient Extensible Interchange (EXI)“ geändert um der breiten Anwendbarkeit des Formates Rechnung zu tragen.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://www.w3.org/blog/2016/11/efficient-representation-for-web-formats |titel=Efficient representation for Web formats |werk=W3C Blog |autor=Daniel Peintner |datum=2016-11-22 |sprache=en |zugriff=2017-02-28}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Konzept ==&lt;br /&gt;
Der Algorithmus verwendet eine [[Formale Grammatik|Grammatik]], um anhand dieser zu bestimmen, was wahrscheinlich an einer bestimmten Stelle in einem XML-Dokument vorkommt. Die wahrscheinlichste Alternative wird dann mit weniger Bits kodiert als unwahrscheinlichere (vgl. [[Entropiekodierung]]). Dieser allgemein gehaltene Algorithmus kann auf jede Sprache, die von einer Grammatik beschrieben wird (z.&amp;amp;nbsp;B. [[Scalable Vector Graphics|SVG]], [[Java (Programmiersprache)|Java]], [[HTML]] usw.), angewendet werden. EXI ist für XML-Sprachen optimiert, das EXI4JSON-Beispiel zeigt wiederum die Anwendbarkeit des Verfahrens auf JSON-Dokumente.&amp;lt;ref&amp;gt;{{Cite web |title= EXI for JSON (EXI4JSON) |date=2016-08-23 |work= Public Working Draft |publisher= World Wide Web Consortium |author= Daniel Peintner and Don Brutzman editors |url= https://www.w3.org/TR/exi-for-json/ |language=en |access-date=2016-09-23 }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Grammatik erlaubt als Eingabe ein beliebiges XML-Dokument oder Fragmente davon. Um genauere Vorhersagen treffen zu können, was an einer bestimmten Stelle vorkommt, kann die Grammatik durch verschiedene [[Schemasprache (XML)|Schemata]] (z.&amp;amp;nbsp;B. [[Dokumenttypdefinition|DTD]] oder [[XML Schema]]) erweitert werden.&lt;br /&gt;
&lt;br /&gt;
Der Encoder erzeugt, unter Zuhilfenahme der Grammatik, aus der Eingabe einen &amp;#039;&amp;#039;Stream of Events&amp;#039;&amp;#039; (englisch für „Strom der Ereignisse“), der aus einer Reihe von einfachen Codes variabler Länge besteht. Diese Event Codes ähneln [[Huffman-Kodierung]]en, sind aber viel einfacher zu berechnen und zu pflegen. Zusätzlich können die Event Codes durch [[Lauflängenkodierung]] komprimiert werden.&lt;br /&gt;
&lt;br /&gt;
== Magische Zahl ==&lt;br /&gt;
Um EXI-Streams von XML-Streams zu unterscheiden, wurden zwei Unterscheidungs-Bits eingeführt. Die ersten zwei Bits des ersten Oktetts müssen die Werte ‚1‘ und ‚0‘ in genau der Reihenfolge haben. Diese Reihenfolge ist in [[Extensible Markup Language#Fachbegriffe|wohlgeformten]] XML-1.0-Dokumenten in den &amp;#039;&amp;#039;üblichen&amp;#039;&amp;#039; [[Zeichenkodierung]]en nicht möglich.&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya 2008&amp;quot; /&amp;gt; Um aber die Unterscheidung auch für mögliche zukünftige Kodierungen zu gewährleisten, wurde schon früh die Einführung eines &amp;#039;&amp;#039;magic cookie&amp;#039;&amp;#039; vorgeschlagen.&amp;lt;ref name=&amp;quot;Peintner &amp;amp; Pericas-Geertsen 2007&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Spezifikation zum Format 1.0 wird festgelegt, dass der &amp;#039;&amp;#039;EXI-Header&amp;#039;&amp;#039; mit dem so genannten &amp;#039;&amp;#039;EXI-Cookie&amp;#039;&amp;#039;, der ASCII-Zeichenfolge &amp;lt;code&amp;gt;$EXI&amp;lt;/code&amp;gt; (0x24455849), beginnen kann. Unmittelbar darauf müssen die zwei Unterscheidungs-Bits folgen. Bis auf die ersten zwei und das vierte Bit des ersten Oktetts (nach dem EXI-Cookie) sind die anderen fünf variabel. Daraus ergeben sich theoretisch 32 verschiedene [[Magische Zahl (Informatik)|&amp;#039;&amp;#039;magische Zahlen&amp;#039;&amp;#039;]].&lt;br /&gt;
&lt;br /&gt;
Zwar ist die Verwendung des EXI-Cookies optional, sie wird aber in der Spezifikation dringend empfohlen.&lt;br /&gt;
&lt;br /&gt;
=== Beispiel ===&lt;br /&gt;
Ein EXI-Stream der Version 1 mit EXI-Cookie und ohne EXI-Optionen würde mit folgenden Bytes beginnen:&lt;br /&gt;
 24 45 58 49 80&lt;br /&gt;
Ein EXI-Stream ab der Version 16 mit EXI-Cookie und EXI-Optionen würde wie folgt beginnen:&lt;br /&gt;
 24 45 58 49 AF&lt;br /&gt;
&lt;br /&gt;
== Implementierungen ==&lt;br /&gt;
Auf der Webseite der Interchange Working Group findet man eine ausführliche Beschreibung der Implementierungen.&amp;lt;ref name=&amp;quot;W3C 2011&amp;quot; /&amp;gt;&lt;br /&gt;
* EXIficient: Ein von [[Siemens]] unterstütztes Open-Source-Projekt zur Implementation der EXI-Spezifikation in Java, C/C++, JavaScript.&lt;br /&gt;
* Efficient&amp;amp;nbsp;XML: Eine durch die Firma AgileDelta kommerziell vertriebene Implementierung der EXI-Spezifikation in Java, .NET und C++&lt;br /&gt;
* OpenEXI: Ein von [[Fujitsu]], [[Naval Postgraduate School|Naval Postgraduate School (NPS)]] und OptimaLogic vorangetriebenes Open-Source-Projekt zur Implementation der EXI-Spezifikation in Java.&lt;br /&gt;
* [https://github.com/pfisterer/exi-connexion Exi-Connexion] - Open Source Implementation des [http://www.w3.org/TR/2008/WD-exi-20080326/ EXI Working Draft] vom 26. März 2008.&lt;br /&gt;
* EXIP: Open-Source-Projekt von der Universität Luleå in C.&lt;br /&gt;
* OSS EXI Tools von OSS Nokalva in C/C++ und .NET&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Binary XML]]&lt;br /&gt;
* [[WAP Binary XML]]&lt;br /&gt;
* [[Exchange Broadcast Binary and Metadata Format]]&lt;br /&gt;
* [[EBML]]&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://exificient.github.io/ EXIficient] - Verschiedene Open Source Implementierungen rund um das EXI Format&lt;br /&gt;
* [http://openexi.sourceforge.net/ OpenEXI] - Open Source Implementation des EXI Format 1.0&lt;br /&gt;
* [http://www.w3.org/TR/2005/NOTE-xbc-characterization-20050331/ W3C binary XML requirements]&lt;br /&gt;
&lt;br /&gt;
== Quellen ==&lt;br /&gt;
&amp;lt;references&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Goldman &amp;amp; Lenkov 2005&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |autor=Oliver Goldman, Dmitry Lenkov&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=http://www.w3.org/TR/xbc-characterization/#N107D4&lt;br /&gt;
 |titel=XML Binary Characterization&lt;br /&gt;
 |datum=2005-03-31&lt;br /&gt;
 |zugriff=2009-09-07&lt;br /&gt;
 |sprache=en}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;AgileDelta 2007&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |url=http://www.agiledelta.com/product_efx.html&lt;br /&gt;
 |titel=Lightning-Fast Delivery of XML to More Devices in More Locations&lt;br /&gt;
 |hrsg=AgileDelta&lt;br /&gt;
 |datum=2007-07-08&lt;br /&gt;
 |zugriff=2009-09-07&lt;br /&gt;
 |sprache=en}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;W3C 2009&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=http://www.w3.org/XML/2009/02/exi-charter.html#milestones&lt;br /&gt;
 |sprache=en&lt;br /&gt;
 |titel=Charter of the Efficient XML Interchange Working Group&lt;br /&gt;
 |zugriff=2009-09-07}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;W3C 2011&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=http://www.w3.org/XML/EXI/#implementations&lt;br /&gt;
 |sprache=en&lt;br /&gt;
 |titel=Efficient XML Interchange Working Group&lt;br /&gt;
 |titelerg=EXI Implementations&lt;br /&gt;
 |datum=2011-03-12&lt;br /&gt;
 |zugriff=2011-03-17}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya 2008&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |autor=John Schneider, Takuki Kamiya&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=http://www.w3.org/TR/2008/WD-exi-20080919/#DistinguishingBits&lt;br /&gt;
 |sprache=en&lt;br /&gt;
 |titel=Efficient XML Interchange (EXI) Format 1.0&lt;br /&gt;
 |titelerg=W3C Working Draft 19 September 2008&lt;br /&gt;
 |datum=2008-12-19&lt;br /&gt;
 |zugriff=2009-09-07&lt;br /&gt;
 |zitat=Unlike the optional EXI cookie that MAY occur to precede this field, the presence of Distinguishing Bits is REQUIRED in the EXI header. It is used to distinguish EXI streams from text XML documents in the absence of an EXI cookie. This two bit sequence is the minimum that suffices to distinguish EXI streams from XML documents since it is the minimum length bit pattern that cannot occur as the first two bits of a well-formed XML document represented in any one of the conventional character encodings, such as UTF-8, UTF-16, UCS-2, UCS-4, EBCDIC, ISO 8859, Shift-JIS and EUC, according to XML 1.0}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya 2011a&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |autor=John Schneider, Takuki Kamiya&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=http://www.w3.org/TR/2011/PR-exi-20110120/&lt;br /&gt;
 |sprache=en&lt;br /&gt;
 |titel=Efficient XML Interchange (EXI) Format 1.0&lt;br /&gt;
 |titelerg=W3C Proposed Recommendation 20 January 2011&lt;br /&gt;
 |datum=2011-01-20&lt;br /&gt;
 |zugriff=2011-03-17}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya 2011b&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |autor=John Schneider, Takuki Kamiya&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=http://www.w3.org/TR/2011/REC-exi-20110310/&lt;br /&gt;
 |sprache=en&lt;br /&gt;
 |titel=Efficient XML Interchange (EXI) Format 1.0&lt;br /&gt;
 |titelerg=W3C Recommendation 10 March 2011&lt;br /&gt;
 |datum=2011-03-10&lt;br /&gt;
 |zugriff=2011-03-17}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Schneider &amp;amp; Kamiya &amp;amp; Peintner &amp;amp; Kyusakov 2014&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |autor=John Schneider, Takuki Kamiya, Daniel Peintner, Rumen Kyusakov&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=https://www.w3.org/TR/2014/REC-exi-20140211//&lt;br /&gt;
 |sprache=en&lt;br /&gt;
 |titel=Efficient XML Interchange (EXI) Format 1.0 (Second Edition)&lt;br /&gt;
 |titelerg=W3C Recommendation 11 February 2014&lt;br /&gt;
 |datum=2014-02-11&lt;br /&gt;
 |zugriff=2017-03-09}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Peintner &amp;amp; Pericas-Geertsen 2007&amp;quot;&amp;gt;&lt;br /&gt;
{{Internetquelle&lt;br /&gt;
 |autor=Daniel Peintner, Santiago Pericas-Geertsen&lt;br /&gt;
 |hrsg=W3C&lt;br /&gt;
 |url=http://www.w3.org/TR/2007/WD-exi-primer-20071219/#exiHeader&lt;br /&gt;
 |sprache=en&lt;br /&gt;
 |titel=Efficient XML Interchange (EXI) Primer&lt;br /&gt;
 |datum=2007-12-19&lt;br /&gt;
 |zugriff=2009-09-07&lt;br /&gt;
 |kommentar=Editorial note&lt;br /&gt;
 |zitat=The integration of a magic cookie is under consideration by the EXI WG. A magic cookie would allow distinguishing an EXI document from formats other than XML or from future character encodings}}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;/references&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Navigationsleiste W3C-Standards}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Datenserialisierungformat]]&lt;br /&gt;
[[Kategorie:Binärformat]]&lt;br /&gt;
[[Kategorie:XML]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Eriosw</name></author>
	</entry>
</feed>