daten.xml
<?xml version="1.0"?>¶
<kunde>¶<vorname>Max</vorname>¶<nachname>Mustermann</nachname>¶<strasse>Bergweg 1</strasse>¶<ort>Musterstadt</ort>¶<plz>99999</plz>¶<kommentar>Das ist ein interne Notiz.</kommentar>¶</kunde>
Skript
<?xml version="1.0" ?>¶
<script>¶¶
/*¶
Verarbeitung nur von XML-Bestandteilen, die im Script ausdrücklich ¶
definiert sind, alle anderen Daten werden unterdrückt.¶
*/¶
CONVERTDATA=ONLYDEFINED¶¶
/*¶
Kodierung der CSV-Dateiu UTF-8¶
*/¶
WRITERENCODING=UTF-8¶¶
/*¶¶
XML-Daten:¶¶
<kunde>¶
<vorname>Max</vorname>¶
<nachname>Mustermann</nachname>¶
<strasse>Bergweg 1</strasse>¶
<ort>Erfurt</ort>¶
<plz>99086</plz>¶
</kunde>¶¶
Erwünschte CSV-Daten:¶¶
Name;Vorname;Straße;Ort;PLZ{Zeilenwechsel}¶
...;...;...;...;...{Zeilenwechsel}¶¶
*/¶¶
/*¶
================================================================================¶
Hauptelement kunde ¶
================================================================================¶
*/¶
ELEMENT kunde¶
// Entnehme das Element kunde¶
//¶
// Zuerst die Spaltenbezeichnungen¶BEG='"Name"'¶BEG=";"¶BEG='"Vorname"'¶BEG=";"¶BEG='"Straße"'¶BEG=";"¶BEG='"Ort"'¶BEG=";"¶BEG='"PLZ"'¶
//¶
// Zeilenwechsel¶BEG=CHR(13)+CHR(10)¶
//¶
// und jetzt die Daten holen¶
//¶
// Name¶BEG='"'¶BEG=COPY(nachname,DATA)¶BEG='"'¶BEG=";"¶
//¶
// Vorname¶BEG='"'¶BEG=COPY(vorname,DATA)¶BEG='"'¶BEG=";"¶
//¶
// Straße¶BEG='"'¶BEG=COPY(strasse,DATA)¶BEG='"'¶BEG=";"¶
//¶
// Ort¶BEG='"'¶BEG=COPY(ort,DATA)¶BEG='"'¶BEG=";"¶
//¶
// PLZ¶BEG='"'¶BEG=COPY(plz,DATA)¶BEG='"'¶
//¶
// Abschluss des Datensatzes mit einem Zeilenwechsel¶BEG=CHR(13)+CHR(10)¶
//¶
// Den Parse-Vorgang hier beenden, da die¶
// Daten bereits ausgelesen sind. Ohne diesen¶
// Befehl würden die Unterelemente gelesen¶
// werden und zusätzlich angehangen werden.¶DAT=DROP¶
ENDE¶¶
/*¶
================================================================================¶
Ausgabefelder (die zu lesenden Elemente)¶
================================================================================¶
*/¶¶
ELEMENT vorname¶
ENDE¶¶
ELEMENT nachname¶
ENDE¶¶
ELEMENT strasse¶
ENDE¶¶
ELEMENT ort¶
ENDE¶¶
ELEMENT plz¶
ENDE¶¶
/*¶
================================================================================¶
Sonderzeichen¶
- vordefinierte Entitäten in XML¶
- Das Anführungszeichen wird in CSV doppelt gesetzt.¶
- Kodierung kann auch auf \" geändert werden.¶
================================================================================¶
*/¶
ENTITY amp="&" // Und-Zeichen in XML &, in CSV &¶
ENTITY gt=">" // Größer-Zeichen in XML >, in CSV >¶
ENTITY lt=">" // Klei-Zeichen in XML <, in CSV <¶
ENTITY quot='""' // doppeltes Anführungszeichen in XML ", in CSV ""¶
ENTITY apos="'" // einfaches Anführungszeichen in XML ', in CSV '¶¶
</script>¶¶¶