WaBis

walter.bislins.ch

Wxml: Aufbau-Funktionen

Mit den Aufbau-Funktionen des Wxml-Moduls wird eine hierarchische Tag-Datenstruktur erstellt, welche über die Funktion Serialize in einen String im Wxml-Format zwecks Speicherung in einer Datei umgewandelt werden kann.

Elemente einer hierarchischen Tag-Struktur sind die CXmlTag Objekte. Diese werden entweder explizit erzeugt und müssen allenfalls explizit in eine bereits aufgebaute Teilstruktur integriert werden oder sie werden implizit erzeugt und dabei an der entsprechenden Stelle in eine bestehende Struktur eingebaut. Bei den Funktionen auf dieser Seite wird beschrieben, ob dabei explizit oder implizit Tags erzeugt werden.

NewXmlTag

set tag = NewXmlTag( aName )
aName: string
Name für den Tag oder Leerstring.
Return: CXmlTag

Erzeugt explizit ein CXmlTag-Objekt. Dieses Tag kann z.B. mit der Funktion AddTag in eine bereits aufgebaute Tag-Struktur integriert werden oder es kann einem Array-Element des Properties TagList eines Tags zugewiesen werden.

Das Root-Tag muss natürlich nicht in eine Tag-Struktur eingebunden werden. Daher ist die Funktion NewXmlTag vor allem auch für das Erzeugen des Root-Tag zuständig.

NewXmlValueTag

set tag = NewXmlValueTag( aName, aValue )
aName: string
Name für den Tag oder Leerstring.
aValue: string
Tag-Wert oder Leerstring.
Return: CXmlTag

Erzeugt explizit ein CXmlTag-Objekt als Werte-Tag. Dieses Tag kann z.B. mit der Funktion AddTag in eine bereits aufgebaute Tag-Struktur integriert werden oder es kann einem Array-Element des Properties TagList eines Tags zugewiesen werden.

NewXmlArrayTag

set tag = NewXmlArrayTag( aName, aSize )
aName: string
Name für den Tag oder Leerstring.
aSize: long >= 0
Grösse des Arrays.
Return: CXmlTag

Erzeugt explizit ein CXmlTag-Objekt als Tag-Knoten für aSize Sub-Tags. Dieser Tag-Knoten kann z.B. mit der Funktion AddTag in eine bereits aufgebaute Tag-Struktur integriert werden oder es kann einem Array-Element des Properties TagList eines Tags zugewiesen werden.

NewTag

set tag = wxmlTag.NewTag( aName )
wxmlTag: CXmlTag
aName: string
Optionaler Name für den Tag.
Return: CXmlTag

Erzeugt explizit einen neuen Tag und fügt ihn am Ende der Tag-Liste des wxmlTag Objektes an.

AddTag

wxmlTag.AddTag aTag
wxmlTag: CXmlTag
aTag: CXmlTag
Ein Tag, der am Ende der Tag-Liste von wxmlTag angefügt werden soll.

Fügt einen explizit erzeugten Wxml-Tag aTag am Ende der TagList des wxmlTag Objektes an.

AddValueTag

wxmlTag.AddValueTag aName, aValue
wxmlTag: CXmlTag
aName: string
Optionaler Name für den Tag.
aValue: string
Wert des neues Tags.

Erzeugt implizit einen neuen Werte-Tag und fügt ihn am Ende der Tag-Liste des wxmlTag Objektes an.

AddBool, AddInt, AddDate, AddStr

wxmlTag.AddBool aName, aBool
wxmlTag.AddInt  aName, aInt
wxmlTag.AddDate aName, aDate
wxmlTag.AddStr  aName, aStr
wxmlTag: CXmlTag
aName: string
Optionaler Name für den Tag. Wird als Name ein Leerstring angegeben, wird intern ein Name vergeben, der den Datentyp bezeichnet: "bool", "int", "date", "str".
aBool: bool
true oder false
aInt: long/int
aDate: date
aStr: string

Erzeugt implizit einen Werte-Tag mit dem Namen aName und dem Wert aBool - aStr und fügt den Tag am Ende der TagList des Objektes wxmlTag an.

Wenn kein Name für den Tag angegeben wird (Leerstring), wird ein Name vergeben, welcher den Datentyp des Wertes repräsentiert: (bool, int, date, str).

Intern wird jeder Wert in einen String konvertiert und im Property Value des Tags gespeichert.

AddStrArray

wxmlTag.AddStrArray aName, aStrArray
wxmlTag: CXmlTag
aName: string
Optionaler Name für den Tag. Wird als Name ein Leerstring angegeben, wird intern der Name "array" vergeben.
aStrArray: array of string

Erzeugt implizit einen Tag-Knoten mit dem Namen aName oder "array" und fügt den Tag am Ende der TagList des Objektes wxmlTag an. Der erzeugte Tag-Knoten erhält im Property TagList eine Liste von Werte-Tags der gleichen Grösse wie aStrArray. Diese Werte-Tags erhalten alle den Namen "str" und werden mit den Werten von aStrArray initialisiert. AddStrArray erzeugt also insgesamt UBound(aStrArray)+1 Tags.

Beispiel: Erzeugte Struktur

wxmlTag
  Tag: "array"
    Tag: "str", aStrArray(0)
     :
    Tag: "str", aStrArray(n)

AddArray

set tag = wxmlTag.AddArray( aName, aSize )
wxmlTag: CXmlTag
aName: string
Optionaler Name für den Tag. Wird als Name ein Leerstring angegeben, wird intern der Name "array" vergeben.
aSize: int >= 0
Grösse des Arrays
Return: CxmlTag

Erzeugt explizit einen Tag-Knoten mit dem Namen aName oder "array" und fügt den Tag am Ende der TagList des Objektes wxmlTag an. Eine Referenz auf den neuen Tag-Knoten wird von AddArray zurückgegeben. Die TagList des Tag-Knotens wird auf die Grösse aSize dimensioniert. Der Liste müssen jedoch explizit Tags zugewiesen werden.

Weitere Infos zur Seite
Erzeugt Sonntag, 21. November 2010
von wabis
Zum Seitenanfang
Geändert Samstag, 18. Juli 2015
von wabis