XML Aufbau

XML Grundstruktur 

 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<import>

 <item>

 ...

 </item>

 <item>

 ...

 </item>

</import> 

 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"> 

 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. <br />

 Donec sed velit sem, vel luctus urna.

]]></textmobile> 

 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 Feld abgelegt werden. In der mobile Ansicht wird dann unter dem textmobile ein Textlink mit "mehr" angezeigt. 

 

 

 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 Bildunterschrift vorschau : bei Wert 1 wird das entspr. Bild nur in einer Vorschausituation ausgegeben (zB Übersichtsliste) 

 

 

 kann 

  keyword 

 varchar 

  es sind mehrere Elemente möglich. Die Gesamtlänge aller Keywords muss < 1000 Zeichen sein (Rest wird abgeschnitten). Keywords dienen zur Auffindbarkeit in der Suche und werden nicht sichtbar dargestellt. 

 

 

 

 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> 

 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> 

 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>