XML - Sprachelemente

Die XML Sprachelemente (Funktionen/Befehle) ermöglichen das Erstellen von XML-Files via F-Script.
Der zugehörige F-Script Befehl lautet: XML
Funktion
Parameter
Beschreibung
XML
 
XML(Encoding:ANSI)
XML(Encoding:UTF8)
Rückgabe:
<?xml version="1.0" encoding="iso-8859-1" standalone="yes?">
<?xml version="1.0" encoding="utf-8" standalone="yes?">
Achtung
Achtung
Ein leerer Aufruf des Befehls XML wie beispielsweise «WRITE(1: «XML»)» ist unbedingt zu vermeiden!
Text: Text
Rückgabe des konvertierten Textes.
- Folgende Zeichen werden xml-konform umgewandelt:
& wird zu &amp;
< wird zu &lt;
> wird zu &gt;
Zeilenumbruch: char(10) wird zu &#xA;
« F-Script Start-Befehl: char(174) wird zu &#xAE
» F-Script End-Befehl: char(175) wird zu &#xAF
Achtung
Achtung
Ab v15.10.02.64 bzw. v15.10.03.130 werden Quotes generell escaped.
Das hat u.U. zur Folge, dass Sie bestehende F-Scripts anpassen müssen.
Siehe auch Hinweis unter Code Beispiele.
Elem: Tag-Name, Text
Rückgabe:
<Tag-Name>Konvertierter Text</Tag-Name>
Der Text wird dabei analog «XML(Text:...)» konvertiert.
Hinweis
Hinweis
Der Text welchen Sie dem Befehl «XML(Elem:<TagName>,Text)» übergeben wird analog dem Befehl «XML(Text:<Text>)» konvertiert.
Beachten Sie, dass eine erneute Konvertierung innerhalb dieses Befehls (z.B. mittels «XML(Text:...)») zu falschen Ergebnissen führt.
Elem: Tag-Name
Rückgabe: Leeres Tag
<Tag-Name/>
STag: Tag-Name
Rückgabe: Start-Tag
<Tag-Name>
STag: Tag-Name, Tag-Erweiterung
Rückgabe: Start-Tag mit Erweiterung
<Tag-Name,Tag-Erweiterung>
ETag: Tag-Name
Rückgabe: End-Tag
</Tag-Name>
Comm: Kommentar
Rückgabe: In ANSI-Zeichensatz konvertierter Kommentar.
<!-- Konvertierter Kommentar wie oben unter Text: Text -->
Die F-Script Befehlszeichen werden in xml-konforme "Ersatzzeichen" umgewandelt.
char(174) « wird umgewandelt in {
char(175) » wird umgewandelt in }
Wichtig
Wichtig
Die Schlüsselworte sind in der obigen Aufstellung fett geschrieben und case-sensitive.
Die maximale Grösse eines F-Script Elementes beträgt 4096 Zeichen.
Encoding: Beim Schreiben von xml-Files, muss das Encoding angegeben werden! Also z.B. WRITE(1:UTF8... oder WRITE(1:ANSI...

Beispiel

/headerreport
# Beispiel zum Schreiben eines XML-Files in UTF-8
«WRITE(1:DIRECT ..\tx\test_utf8.xml)»
«WRITE(1:UTF8 «XML(Encoding:UTF8)»)»
«WRITE(1:UTF8 «XML(STag:Country)»)»
«WRITE(1:UTF8 «XML(STag:CountryCode,Ländercode="CH")»41«XML(ETag:CountryCode)»)»
«WRITE(1:UTF8 «XML(STag:CountryState,Kanton="NW")»«XML(Text:Nidwalden)»«XML(ETag:CountryState)»)»
«WRITE(1:UTF8 )»
«WRITE(1:UTF8 <![CDATA[)»
«WRITE(1:UTF8 «XML(STag:City)»«XML(Text:Stans)»«XML(ETag:City)»)»
«WRITE(1:UTF8 «XML(STag:City)»«XML(Text:Stansstad)»«XML(ETag:City)»)»
«WRITE(1:UTF8 «XML(STag:City)»«XML(Text:Hergiswil)»«XML(ETag:City)»)»
«WRITE(1:UTF8 ]]>)»
«WRITE(1:UTF8 )»

«WRITE(1:UTF8 «XML(STag:XmlElement)»)»
«WRITE(1:UTF8 «XML(Text:Dies ist ein Text mit verbotenen Zeichen: < >)»)»
«WRITE(1:UTF8 Umlaute wie Äöü können neu direkt ohne Kapselung in einem XML-Befehl geschrieben werden!)»
«WRITE(1:UTF8 Und hier kommt der Schneemann: «UC-CHR($2603)»)»
«WRITE(1:UTF8 «XML(ETag:XmlElement)»)»
«WRITE(1:UTF8 «XML(ETag:Country)»)»
«WRITE(1:CLOSE)»
/ 

Ausgabe

Ansicht des mit dem obigen F-Script Beispiel erzeugten xml-Files in einem Editor:
xml-utf8_output.jpg