XML Schnittstelle : 2 XML Aufbau
2.1 XML Grundstruktur
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<import>
<item>
...
</item>
<item>
...
</item>
</import>
2.2 Das Rootelement <import>
Das Rootelement <import>
enthält 1 oder mehrere Subelemente <item>
. Das Rootelement <import>
hat folgende Attribute:
Name | Bemerkung | Pflichtfeld |
---|---|---|
partnerid | Vorgegebene, numerische ID für den Partner, ist bei uns vorgängig in DB erfasst und muss übereinstimmen | ja |
passwort | Vorgängig definierter Schlüssel/Passwort, ist bei uns hinterlegt (einmalig pro Partner) | ja |
importid | Vorgegebene, numerische ID für den jeweiligen Import, ist bei uns vorgängig in DB erfasst und muss übereinstimmen | ja |
vaterobjekt | Key (von anthrazit kommunizierter alternativer Key, übergeordnetes Strukturelement) | optional |
partner | Name des Partners, ist bei uns vorgängig in DB erfasst und muss übereinstimmen. | optional |
Beispiel:
<import partner="Partner AG" partnerid="99" passwort="xyz012" importid="1">
2.3 Das <item>
Element und seine Attribute
Das Element <item>
enthält die eigentlichen Daten Elemente eines Datensatzes. Die darin enthaltenen Elemente sind in den Tabellen unter (Pt. 2.3 – 3.4) erklärt. Das <item>
Element selbst kann immer folgende Attribute enthalten:
Name | Bemerkung | Defaultwert |
---|---|---|
status | status: 0 für inaktiv (unsichtbar), 1 für aktiv | 1 |
suchbar | 0 oder 1, Erscheint bei 1 in moPage Suche. | 1 |
datumvon | Datum, ab wann das Objekt dargestellt wird. | Importdatum |
datumbis | Datum, ab wann das Objekt ausgeblendet wird. | 2038-01-01-00:00:00 |
loeschen | bei 1 wird entspr. Datensatz gelöscht (einziges zwingendes Subelement von <item> ist das <id> Element.) |
nicht gesetzt |
position | numerischer Wert für die Position (in Liste; danach wird aufsteigend sortiert) | nicht gesetzt |
vaterobjekt | Key (von anthrazit kommunizierter alternativer Key, übergeordnetes Strukturelement) | nicht gesetzt |
mutationsdatum | Datum letzter Änderung des Datensatzes 2011-12-13 00:0:00 WICHTIG: wird bei erneutem Import einer gleichen Item ID kein neueres mutationsdatum geliefert, wird auch nichts geupdated. |
nicht gesetzt |
ansichtbild | mögliche Werte (wenn nicht gesetzt, wir Default rechts angewendet): 0 = Standard (oben links, quadratisch) 1 = Bild unter Titel, volle Breite 2 = Bild oben links klein 3 = Bild ganz oben, volle Breite 10 = halbe Breite im Text 11 = Bild Top/Float (Standard) 12 = Bild halb (Desktop) / voll (mobile) |
0 |
ansichtliste | mögliche Werte (wenn nicht gesetzt, wir Default rechts angewendet): 3 = normaler Listeneintrag, ganzzeilig klickbar 4 = Objekt mit allen Details direkt in Liste ausgeben |
3 |
Anmerkung:
Werden die obigen Werte nicht gesetzt, gelten die Defaultwerte.
Beispiel:
<item status="1" suchbar="1" datumvon="2010-09-03 12:30:00" datumbis="2011-02-13 18:45:00" position="1" mutationsdatum="2011-12-13 00:0:00">
Anmerkungen zu einigen Subelementen von <item>
:
<id>
enthält einen numerischen Wert, eindeutige ID des Partner Datensatzes die auch über mehre Feeds hinaus unique sein muss, wird bei uns ebenfalls für die Identifizierung des Datensatzes (in Kombination mit der partnerid) verwendet.- Von Element
<rubrik>
dürfen mehrere vorhanden sein pro<item>
. Rubriken werden den Datensätzen "angehängt" sodass, man auch Listen von Datensätzen ausgeben kann, die einer gewissen Rubrik angegliedert sind. - Werden in den Elementen Sonderzeichen wie & und/oder ganze HTML Tags mitgeliefert, MUSS das in einem
CDATA
Abschnitt geschehen, also z.B. so:
<textmobile><![CDATA[<h1>Lorem ipsum</h1> dolor sit amet, <br />Nullam uscipit iaculis. Maecenas tempor molestie eros id interdum. Donec sed velit sem, vel luctus urna.]]></textmobile>
2.4 XML Beispiel für Standardseite
Priorität | Name | Typ | Bemerkung |
---|---|---|---|
muss | id | varchar 50 | unique numerische/alphanumerische id aus Partner System |
muss | titel | varchar 100 | Titel der Seite |
kann | textlead | varchar 1000 | Leadtext der Seite (Wird fett oberhalb von textmobile dargestellt) |
muss | textmobile | varchar 10000 | (Für Längere Texte wird empfohlen, die ersten 2-3 Sätze in diesem Feld zu speichern und zusätzlichen den ganzen Text im Feld Text) |
Kann | text | varchar 30000 | Falls zusätzlich eine ausführlichere Version des Textes vorhanden ist kann diese im |
kann | url_bild | varchar 255 | Verweis (URL) auf Bild (jpg, min. grösse 1000 px Breite optimalerweise) HINWEIS: Element kann mehrmals vorkommen (Slideshow) Kann optional folgende Attribute enthalten: legende : optionale Bildunterschriftvorschau : bei Wert 1 wird das entspr. Bild nur in einer Vorschausituation ausgegeben (zB Übersichtsliste) |
kann | keyword | varchar | es sind mehrere Elemente |
Beispiel:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<import partner="Partner AG" partnerid="99" passwort="xyz012" importid="1">
<item status="1" suchbar="1" mutationsdatum="2011-12-13 00:0:00">
<id>01</id>
<titel>Titel der Seite</titel>
<textmobile>Text der Seite </textmobile>
<textlead>Leadtext der Seite</textlead>
<url_bild vorschau="1">http://path.to/previewimage.png</url_bild>
<url_bild legende="Kirche beim Dorfzentrum">http://path.to/image.jpg</url_bild>
<keyword>essen</keyword>
<keyword>gastro</keyword>
<keyword>vegi</keyword>
</item>
</import>
2.5 Elemente für alle Seitentypen
Priorität | Name | Typ | Bemerkung |
---|---|---|---|
kann | bcode | varchar 16 | unique Zeichenfolge [a-z0-9] für den QR Code. Wenn dieses Element nicht geliefert wird, wir es auf Basis des <titel> Elements generiert. |
kann | icon | varchar 64 | Referenzname des Seiten Icons (wird in Listen ausgegeben) Liste aller Icons mit Referenznamen: https://xml.mopage.ch/icons |
kann | url_dokument | varchar 255 | Verweis (URL) auf Dokument (pdf, doc, xls, ppt...). Datei wird dabei auf mopage Server abgelegt, deshalb ist die Dateigrösse je nach mopage Version limitiert. HINWEIS: Element kann mehrmals vorkommen und Kann optional folgendes Attribut enthalten: legende : Alternativer Dokumententitel |
Beispiel:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<import partner="Partner AG" partnerid="99" passwort="xyz012" importid="1">
<item status="1" suchbar="1" mutationsdatum="2011-12-13 00:0:00">
<id>01</id>
<titel>Das Restaurant</titel>
<bcode>dasrestaurant</bcode>
<icon>People</icon>
<url_dokument legende="Preisliste PDF">http://www.server.com/thefile.pdf</url_dokument>
</item>
</import>
2.6 Attribute
Attribute sind eine Art von anthrazit vorgegebenen Tags/Keywords, die mit einem beliebigen Datensatz (Standardseite, News, Veranstaltung, Standort...) verlinkt werden können.
Eine Liste aller möglichen Attribute ist online auf https://xml.mopage.ch/attribute einsehbar. Fehlt Ihrer Meinung nach ein Attribut, dann nehmen Sie mit anthrazit Kontakt auf.
Attribute können zusätzlich einen Beschreibungstext und einen Skalawert (numerisch) haben.
Priorität | Name | Typ | Bemerkung |
---|---|---|---|
kann | attribut | alphanuum | Enthält folgende Elementattribute:id : pflichtfeld - wiederspiegelt die Attribut ID auf https://xml.mopage.ch/attribute skalawert : optional, ist ein numerischer Wert einer Skala von 1 – 5, im Sinne von 1 = schlecht, 5 = sehr gut. Das Element selbst kann einen Beschreibungstext enthalten. Es sind mehrere Elemente <attribut> innerhalb 1 <item> Elements erlaubt. |
Beispiel:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<import partner="Partner AG" partnerid="99" passwort="xyz012" importid="1">
<item status="1" suchbar="1" mutationsdatum="2011-12-13 00:0:00">
<id>01</id>
<titel>Titel der Seite</titel>
...
<attribut id="1" skalawert="3">weiterführende Info zu diesem Attribut</attribut>
<attribut id="3" skalawert="5">weiterführende Info zu jenem Attribut</attribut>
<attribut id="8" skalawert="2">weiterführende Info und hierzu</attribut>
</item>
</import>