Zum Hauptinhalt springen

Transform Optionen

createEmptyNodes boolean

createEmptyNodes?: boolean = true;

Sollen leere XML-Knoten erstellt werden, wenn der Wert des Properties null oder leer ist.

Beispiel (default)

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root")
const xml = serializer.serialize({
node1: "test",
emptyText: "",
node2: "test2",
})

Ergebnis:

<root>
<node1>test</node1>
<emptyText></emptyText>
<node2>test2</node2>
</root>

Beispiel (false)

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root", {
createEmptyNodes: false
})
const xml = serializer.serialize({
node1: "test",
emptyText: "",
node2: "test2",
})

Ergebnis:

<root>
<node1>test</node1>
<node2>test2</node2>
</root>

convertNumericToString boolean

convertNumericToString?: boolean = false;

Sollen numerische Werte anhand der otris Logik ( context.convertNumericToString ) formatiert werden?

Beispiel convertNumericToString (default)

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root")
const xml = serializer.serialize({
node1: 123456.78,
})

Ergebnis:

<root>
<node1>123456.78</node1>
</root>

Beispiel convertNumericToString (false)

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root", {
convertNumericToString: true
})
const xml = serializer.serialize({
node1: 123456.78,
})

Ergebnis:

<root>
<node1>123.456,78</node1>
</root>

convertDateToString boolean

convertDateToString?: boolean = false;

Sollen Datum anhand der otris Logik ( context.convertDateToString ) formatiert werden? Ist die Option false , so wird das Datum über die toLocaleString() in ein string umgewandelt.

Beispiel convertDateToString (default)

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root")
const xml = serializer.serialize({
node1: new Date(2000, 0, 1),
})

Ergebnis:

<root>
<node1>1.1.2000</node1>
</root>

Beispiel convertDateToString (false)

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root", {
convertDateToString: true
})
const xml = serializer.serialize({
node1: new Date(2000, 0, 1),
})

Ergebnis:

<root>
<node1>01.01.2000</node1>
</root>

dateFormat string

dateFormat?: string = "";

Ein Datumsformat, welche an die otris Logik ( util.convertDateToString ) übergeben werden soll.

info

Wird die Option verwendet, wird die Option convertDateToString ignoriert.

Beispiel dateFormat

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root", {
dateFormat: "yyyy-mm-dd"
})
const xml = serializer.serialize({
node1: new Date(2000, 0, 1),
})

Ergebnis:

<root>
<node1>2000-01-01</node1>
</root>

specialHandlingPrefix string

specialHandlingPrefix?: string = "_";

Interne Option zum Steuern der speziellen Properties, wie attributes , value oder children

Beispiel specialHandlingPrefix

context.enableModules();
const { XmlSerializer } = require("ou.sp.XmlSerializer");
const serializer = new XmlSerializer("root", {
specialHandlingPrefix: "$"
})
const xml = serializer.serialize({
node1: {
$attributes: {
id: "someId"
},
$value: "test"
},
})
<root>
<node1 id="someId">test</node1>
</root>