API:Data formats/de

From MediaWiki.org

Jump to: navigation, search
Tools clipart.png Diese Seite ist Teil der deutschen Übersetzung der MediaWiki-API-Dokumentation.
MediaWiki-API


Die MediaWiki API unterstützt mehrere Standard-Formate für die Ausgabe der Daten (zum Beispiel XML, JSON oder YAML), dazu noch einige Domain-Spezifische für bestimmte Module, wie z.B. RSS

Wenn es nicht anders angegeben ist, kann jedes Modul die Daten in jedem Standard-Format ausgeben. Um das Testen und Debuggen einfacher zu gestalten kann jedes Format in einem HTML-Format eingebettet werden. Dies erreicht man, in dem man dem format-Parameter ein 'fm' anhängt. Bei der Weiterverarbeitung in Programmen sollte man von der verwendung dieser "pretty HTML"-Formate absehen. Wenn das Ausgabeformat nicht angegeben wird, wird xmlfm (XML in HTML eingebettet) verwendet.

Format Beschreibung Parameter
json JSON-Format callback (optional): Übergibt die Ausgabe in einen Funktions-Call
php serialized PHP format
wddx WDDX-Format
xml XML-Format
yaml YAML-Format
rawfm JSON-Format with the debugging elements (HTML) callback (optional): Übergibt die Ausgabe in einen Funktions-Call
txt PHP print_r()
dbg PHP var_export()

[edit] Beispiele

XML

<?xml version="1.0" encoding="utf-8"?>
<api>
  <query>
    <pages>
      <page pageid="736" ns="0" title="Albert Einstein" touched="2007-07-06T04:37:30Z" lastrevid="142335140" counter="4698" length="86906" />
    </pages>
  </query>
</api>

JSON

{
    "query": {
        "pages": {
            "736": {
                "pageid": 736,
                "ns": 0,
                "title": "Albert Einstein",
                "touched": "2007-07-06T04:37:30Z",
                "lastrevid": 142335140,
                "counter": 4698,
                "length": 86906
            }
        }
    }
}

YAML

---
query: 
  pages: 
    - 
      pageid: 736
      ns: 0
      title: Albert Einstein
      touched: |
        2008-03-16T04:59:39Z
      lastrevid: 198568286
      counter: 4698
      length: 81076

WDDX

<?xml version="1.0" encoding="utf-8"?>
<wddxPacket version="1.0">
  <header/>
  <data>
    <struct>
      <var name="query">
        <struct>
          <var name="pages">
            <struct>
              <var name="736">
                <struct>
                  <var name="pageid">
                    <number>736</number>
                  </var>
                  <var name="ns">
                    <number>0</number>
                  </var>
                  <var name="title">
                    <string>Albert Einstein</string>
                  </var>
                  <var name="touched">
                    <string>2007-07-06T04:37:30Z</string>
                  </var>
                  <var name="lastrevid">
                    <number>142335140</number>
                  </var>
                  <var name="counter">
                    <number>4698</number>
                  </var>
                  <var name="length">
                    <number>86906</number>
                  </var>
                </struct>
              </var>
            </struct>
          </var>
        </struct>
      </var>
    </struct>
  </data>
</wddxPacket>

PHP (Zeilenumbrüche wurden für die Lesbarkeit nachträglich hinzugefügt)

a:1:{s:5:"query";a:1:{s:5:"pages";a:1:{i:736;a:7:{s:6:"pageid";i:736;s:2:"ns";i:0;s:5:"title";s:15:"Albert Einstein";
s:7:"touched";s:20:"2007-07-06T04:37:30Z";s:9:"lastrevid";i:142335140;s:7:"counter";i:4698;s:6:"length";i:86906;}}}}