Über diesen Blog

Diese Webseiten waren ursprünglich als chronologisch geordneter Blog konzipiert. Im Lauf der Zeit ist viel Inhalt hinzu gekommen, so daß eine andere Aufteilung notwendig wurde. Die folgende Liste zeigt die Reihenfolge der Updates.

Vielen Dank an Sie alle für die zahlreichen Tipps und Anregungen!

1 2019-06-30 Warum XML-Validierung?: Hier lesen Sie, warum ein XML-Dokument auf seine Gültigkeit überprüft (validiert) werden sollte. Mithilfe von DTD, XML-Schema, RelaxNG, NVDL oder Schematron stehen verschiedene Definitions- und Prüftechnologien zur Verfügung.
2 2019-06-30 XML-Verarbeitung ohne vorherige Validierung?: Der Sinn der XML-Schema-Validierung besteht darin, ein XML-Dokument hinsichtlich seiner Datenstruktur (Elemente, Attribute, Namespaces) und deren Datentypen zu prüfen, um die Folgeprogrammierung abzusichern und Informationsverlust vorzubeugen. Welchen Sinn macht es, XML-Dokumente zu verarbeiten, ohne sie vorher zu validieren?
3 2019-06-30 XPath-Funktionen: XPath 3.0 und XPath 3.1 bieten mehrere Hundert verschiedene Standard-Funktionen. Ein Teil davon steht bereits seit XPath 1.0 bzw. XPath 2.0 zur Verfügung.
4 2019-06-21 XML-Schema: Datenvalidierung mit C#.NET: Die XML-Schema-Datenvalidierung eines XML-Dokuments kann mit leistungsfähigen Klassen in C#.NET durchgeführt werden.
5 2019-05-25 XPath-Achsen: XPath-Pfade und -Achsen definieren den Verlauf, Umfang und die Richtung, in dem die umgebenden Nodes abgearbeitet werden.
6 2019-05-25 ancestor::*: ancestor::* gibt die Liste aller vorhergehender Nodes aus, aber ohne den aktuellen Mensch-Node.
7 2019-05-25 ancestor-or-self::*: ancestor-or-self::* gibt Ihnen eine Nodeliste aller vorhergehender Knoten bis zum Root-Element, und zwar in der Reihenfolge, dass der Rootnode zuerst ausgegeben wird.
8 2019-05-25 attribute::*: Mit attribute::* erhalten Sie alle Attribute eines adressierten Nodes. ➪Maximalwerte berechnen
9 2019-05-25 child::*: Mit child::* erhalten Sie die Childnodes des aktuellen Nodes.
10 2019-05-25 descendant::*: Mit descendant::* erhalten Sie sämtliche Nachkommen des akuellen Knotens.
11 2019-05-25 descendant-or-self::*: Mit descendant-or-self::* erhalten Sie den aktuellen Node und dessen sämtliche Nachkommen. ➪XML-Schema Analyse mit descendant-or-self::*
12 2019-05-25 Verschachtelungstiefe: Um eine maximale Verschachtelungstiefe ermitteln zu können, ist eine kombinierte Anwendung von descendant-or-self und ancestor-or-self sinnvoll. ➪Ermittlung der Verschachtelungstiefe in XQuery
13 2019-05-25 following::*: Mit following::* erhalten Sie Folge-Nodes des aktuellen Knotens.
14 2019-05-25 following-sibling::*: Mit following-sibling::* erhalten Sie Folge-Nodes des aktuellen Knotens.
15 2019-05-25 namespace::*: Sind Namespaces im Spiel, so erhalten Sie eine Liste aller Namepaces, die im betreffenden Node benannt worden sind, sodass sie für den aktuellen Node und dessen Childnodes gelten können. Das umfasst aber nicht jene Childnodes, deren Namespaces lokal definiert wurde.
16 2019-05-25 parent::*: Mit parent::* erhalten Sie den Parentnode des aktuellen Nodes.
17 2019-05-25 preceding::*: Mit preceding::* erhalten Sie Vorgänger-Nodes des aktuellen Knotens. Analog dem following::* erhalten Sie bei preceding::* sämtliche Nodes und deren Childnodes, die dem adressierten Node /Orte/Ort[2]/Mensch[2] vorausgehen.
18 2019-05-25 preceding-sibling::*: Mit preceding-sibling::* erhalten Sie Vorgänger-Nodes des aktuellen Knotens. ➪Countdown
19 2019-05-25 self::*: self::* spricht den jeweiligen Knoten an.
20 2019-05-25 Automatische Generierung des XPath-Statements: Der gezielte Einsatz von ancestor-or-self::*, preceding-sibling::*, wahlweise auch in Kombination mit descendant-or-self::* erlaubt, den XPath jedes Elements in einem XML-Dokument zu ermitteln. Das ist hilfreich für die Entwicklung und das professionelle Testen von XSL-Stylesheets sowie XQuery.
21 2019-05-25 xsl:text: xsl:text fügt einen Textnode im Transformations-Output ein. Dieser kann auch in Whitespaces bestehen. ➪Arbeiten mit @disable-output-escaping
22 2019-05-25 xsl:value-of: Mit xsl:value-of sind Sie in der Lage, die Textinhalte einzelner Elemente, Attribute oder berechneter Werte direkt oder formatiert auszugeben. Darüber hinaus können Sie mit xsl:value-of auch Sequenzen mehrerer Items abarbeiten.
23 2019-05-11 XProc: p:for-each, p:choose, p:xslt, p:validate-with-xml-schema: Mit p:for-each, p:iteration-source, p:iteration-position(), p:choose, p:when, p:store, bietet XProc eine gute Möglichkeit zum fallgesteuerten Abspeichern mehrerer Items einer Sequenz. ➪p:xslt mit p:store ➪p:for-each mit p:xslt und p:validate-with-xml-schema
24 2019-05-01 Zahlenfunktionen: Dieser Abschnitt bietet eine Übersicht über Spezialfunktionen zur Auswertung von Zahlensequenzen: avg, count, max, min, number, sum. Zudem stehen mathematische Standardfunktionen bereit: acos, asin, atan, cos, log, log10, number, pi, pow, sin, sqrt, tan.
25 2019-05-01 sum(): Die sum-Funktion berechnet die Summe der Zahlenwerte in der Sequenz (vorausgesetzt, es sind nur Werte enthalten, die auch als Zahlenwerte gecastet werden können). Die sum()-Funktion steht bereits seit XSLT 1.0/XPath 1.0 zur Verfügung. ➪sum() ab XSLT 2.0 ➪Prozessorabhängige Verarbeitung
26 2019-05-01 XPath Sequenzen: concat, union, except, intersect: Ab XSLT/XPath 2.0 sind Sequenzen äußerst leistungsfähig, nicht zuletzt durch die Möglichkeiten der Mengenoperationen: concat, union, except, intersect. Zusätzliche Hilfe bietet die Arbeit mit distinct-values. ➪Sequenzen verketten ➪Sequenzen vereinigen mit union ➪Sequenzen ausschließen mit except ➪Schnittmengen von Sequenzen bilden mit intersect
27 2019-05-01 XPath: for-each: Die XPath-Funktion for-each fordert zwei Parameter ein: a) ein oder mehrere Items als Sequenz, b) eine Funktion, die für jedes Item dieser Sequenz aufgerufen wird. ➪Die Lösung mit XQuery ➪Sequenz transformieren und filtern ➪Kumulierte Ergebnisse mit sum und for-each
28 2019-05-01 XPath: fold-left: Die XPath-Funktion fold-left verarbeitet alle Items einer Sequenz von links nach rechts. Sie eignet sich damit gut für erweiterte Zahlenfunktionen, etwa bei Kumulierungen oder Multiplikationen. ➪Sequenzen multiplizieren ➪Sequenzen kumulieren ➪fold-left
29 2019-05-01 JSON: JSON, die JavaScript-Object-Notation, ist ein textbasiertes Datenformat, das XML an Flexibilität am nächsten kommt. Zahlreiche REST-Webservices bieten neben XML auch JSON zur freien Auswahl an (auch CSV oder Text). Daher ist die Konvertierung von XML nach JSON eine häufige Aufgabe. ➪XML oder JSON? ➪JSON-Auswertung mit JavaScript ➪JSON-Auswertung mit JavaScript in XSL
30 2019-05-01 xsl:call-template: xsl:call-template ruft benannte Templates (xsl:template name=") auf. Damit eignet sich xsl:call-template gut zur Implementierung von "Unterprogrammen", die durch die eigentlichen "Hauptprogramme" beliebig oft aufgerufen werden können. ➪Rekursive Template-Aufrufe ➪Allgemeines zum Thema xsl:call-template
31 2019-05-01 CSV: Ein ebenfalls sehr gebräuchliches Format für den Datenaustausch ist CSV: comma-separated-value. Das Format eignet sich hervorragend für die Verarbeitung tabellenartiger, also 2-dimensionaler Strukturen. Der minimale Overhead wirkt sich vorteilhaft auf die Dateigröße und auf die Verarbeitungsgeschwindigkeit aus.
32 2019-04-22 XML-Schema 1.0: XML-Schema bietet eine Vielzahl unterschiedlicher atomarer und komplexer Datentypen sowie Design-Alternativen. ➪Simple Datentypen
33 2019-04-22 xs:element name: xs:element name definiert den Namen eines XML-Elements. Der interne Aufbau, eventuelle Datentypen, Attribute und Childnodes können an verschiedenen Stellen präzisiert werden.
34 2019-04-22 xs:complexType: xs:complexType name erlaubt, mehrere Attribute und/oder Childnodes an globaler Stelle zu deklarieren, wodurch die "type"-Deklaration von xs:element auf diesen definierten xs:complexType verweisen kann.
35 2019-04-22 xs:simpleType: Ähnlich wie bei der globalen Deklaration von xs:complexType können auch einfache Datentypen via xs:simpleType global deklariert und dann an anderer Stelle wiederholt eingesetzt werden.
36 2019-04-22 xs:element ref: xs:element ref erlaubt, XML-Elemente über Referenzierungen in die komplexen Typen einzubinden, die an anderer Stelle durch xs:element name definiert sind.
37 2019-04-22 xs:group: Eine weitere Design-Alternative liegt in den XML-Schema-Gruppierungen. Mit xs:group name werden Gruppen von Elementen global definiert, die sich an anderer Stelle durch xs:group ref wieder einbinden lassen.
38 2019-04-22 xs:unique, xs:key, xs:keyref, xs:selector, xs:field: Auch m:n-Relationen, wie sie in RDBMS üblich sind, können in XML problemlos abgebildet werden. XML-Schema bietet hier mit xs:unique, xs:key und xs:keyref effiziente Lösungsansätze.
39 2019-04-22 xs:element abstract, substitutionGroup: Zusätzliche Design-Alternativen für XML-Schema ergeben sich über abstrakte Elemente. Hierbei wird beispielsweise ein Dummy-Element definiert, das als Platzhalter für andere Elemente dient.
40 2019-04-22 elementFormDefault, attributeFormDefault: In XML-Schema finden Sie häufig Deklarationen wie elementFormDefault="qualified" oder attributeFormDefault="unqualified". Hierbei geht es um die Namespaces lokal definierter Elemente/Attribute in einem XML-Schema.
41 2019-04-22 xs:choice: xs:choice bietet in der Regel mehrere Auswahloptionen für Childnodes an.
42 2019-04-22 xs:sequence, xs:all: xs:sequence und xs:all definieren beide einen xs:complexType mit mehreren Childnodes. Dabei erzwingt xs:sequence in der Umsetzung die Einhaltung der deklarierten Reihenfolge; bei xs:all ist die Reihenfolge der Elemente frei.
43 2019-04-22 XML-Schema-Validation in XSLT 2.0: Neben dem Type-Casting atomarer Datentypen besteht in XSLT 2.0 die Möglichkeit, auch selbst definierte simple sowie komplexe Schema-Datentypen zu definieren und die Inhalte von Attributen bzw. Elementen gegenüber diesen Typvorgaben zu validieren. Damit werden komplexe Teilbäume definierbar, die in der Konvertierungsphase validiert werden können. Das ist sinnvoll, wenn der Konvertierungsprozess auch ohne vorgeschaltete Schemavalidierung beginnen soll. ➪XML-Schema-Validierung komplexer Variablen
44 2019-04-21 XSLT 3.0: Dieser Abschnitt zeigt eine Liste von XSLT-3.0-Elementen, deren Attributen, Assertions und Childnodes. ➪xsl:accept ➪xsl:accumulator ➪xsl:accumulator-rule ➪xsl:analyze-string ➪xsl:apply-imports ➪xsl:apply-templates ➪xsl:assert ➪xsl:attribute ➪xsl:attribute-set ➪xsl:break ➪xsl:call-template ➪xsl:catch ➪xsl:character-map ➪xsl:choose ➪xsl:comment ➪xsl:context-item ➪xsl:copy ➪xsl:copy-of ➪xsl:decimal-format ➪xsl:declaration ➪xsl:document ➪xsl:element ➪xsl:evaluate ➪xsl:expose ➪xsl:fallback ➪xsl:for-each ➪xsl:for-each-group ➪xsl:fork ➪xsl:function ➪xsl:global-context-item ➪xsl:if ➪xsl:import ➪xsl:import-schema ➪xsl:include ➪xsl:instruction ➪xsl:iterate ➪xsl:key ➪xsl:literal-result-element ➪xsl:map ➪xsl:map-entry ➪#ink#analyze_string#/link# ➪xsl:merge ➪xsl:merge-action ➪xsl:merge-key ➪xsl:merge-source ➪xsl:message ➪xsl:mode ➪xsl:namespace ➪xsl:namespace-alias ➪xsl:next-iteration ➪xsl:next-match ➪xsl:non-matching-substring ➪xsl:number ➪xsl:on-completion ➪xsl:on-empty ➪xsl:on-non-empty ➪xsl:otherwise ➪xsl:output ➪xsl:output-character ➪xsl:override ➪xsl:package ➪xsl:param ➪xsl:perform-sort ➪xsl:preserve-space ➪xsl:processing-instruction ➪xsl:result-document ➪xsl:sequence ➪xsl:sort ➪xsl:source-document ➪xsl:strip-space ➪xsl:stylesheet ➪xsl:template ➪xsl:text ➪xsl:transform ➪xsl:try ➪xsl:use-package ➪xsl:value-of ➪xsl:variable ➪xsl:when ➪xsl:where-populated ➪xsl:with-param
45 2019-04-18 XPath: deep-equal: Die deep-equal-Funktion kann zwei Sequenzen miteinander vergleichen. Sind die Sequenzen identisch, gibt deep-equal ein true() zurück, sonst ein false(). ➪Sequenztest
46 2019-04-10 xs:any, xs:anyType: Mitunter ist es erforderlich, die Validierung zu unterbinden oder sie davon abhängig zu machen, dass überhaupt ein XML-Schema existiert. xs:any sowie xs:anyType bieten die erforderliche Flexibilität. ➪processContents="strict" ➪processContents="lax" ➪processContents="skip" ➪xs:anyType, xs:anySimpleType
47 2019-04-10 XML-Schema 1.1: XML-Schema 1.1 bietet mit erweiterten Konzepten für Assertions (assert für komplexe Datentypen, assertion für simple Datentypen), bedingten Typisierungen, schemaweiten Attributen, openContent bzw. defaultOpenContent leistungsfähige Unterstützung bei der Datenvalidierung. ➪Versionierung ➪Assertions ➪Alternativen ➪xs:override ➪Beispiel mit Namespaces
48 2019-04-05 XPath: distinct-values: Die XPath-Funktion distinct-values löscht mehrfache identische Einträge in einer Sequenz und reduziert die Ausgabe auf Einzelresultate. ➪Gruppieren nach Elementnamen ➪Entfernen redundanter komplexer Elemente
49 2019-03-20 xsl:element: xsl:element erlaubt die flexible Generierung von XML-Elementen im Zieldokument. Der Vorteil gegenüber fixer Namensdefinition ist, dass der Elementname dynamisch generiert werden kann. ➪xsl:element-Syntax in XSLT 1.0: ➪xsl:element-Syntax in XSLT 2.0: ➪Arbeiten mit @namespace ➪Arbeiten mit @type ➪Arbeiten mit @use-attribute-sets ➪Das XML-Dokument mit xmlns:xsi und Attribut erzeugen ➪Konvertierung von Attributen in Elemente ➪Namespaces im XML-Input-Dokument ➪Timestamp-Elemente
50 2019-03-15 XPath: contains: Die XPath-Funktion contains prüft, ob in einem String ein bestimmter Teilstring enthalten ist. ➪XSL-Versionierung ➪Case-insensitive Suche ➪fn:contains-token
51 2019-03-15 XPath: tokenize: Die XPath-Funktion tokenize konvertiert einen String in eine Sequenz. ➪tokenize vs. string-join ➪Flags ➪Type-casting ➪tokenize vs. xs:token
52 2019-03-15 XPath: count(): Die count-Funktion zählt die Anzahl der Items in der Sequenz. Sie steht auch unter XPath 1.0 zur Verfügung. ➪Stringanalyse mit count(tokenize)
53 2019-03-15 XPath: unparsed-text: Eine häufige Aufgabe ist die Konvertierung CSV nach XML. In XSLT 2.0 ist auch die Konvertierung von CSV nach XML problemlos möglich. ➪Konvertierung von CSV nach XML
54 2019-03-15 XPath: unparsed-text-lines: Eine häufige Aufgabe ist die Konvertierung CSV nach XML. In XSLT 3.0 gestaltet sie sich noch einfacher als in XSLT 2.0. ➪unparsed-text-lines: CSV in XML konvertieren
55 2019-03-13 XML-Schema-Datenvalidierung mit XProc: Neben zahlreichen weiteren leistungsfähigen Features bietet XProc auch Ansätze zur effizienten Datenvalidierung von XML-Dokumenten.
56 2019-03-13 XML-Schema Validierung in Java: Die XML-Schema-Validierung eines XML-Dokuments kann auch über Java aufgerufen werden.
57 2019-03-13 Detailtests mit Schematron: Während XML-Schema im Kern die Datenstruktur von Elementen und Attributen sowie deren Datentypen und Namespaces festlegt, beruht Schematron auf einer Detailprüfung. So kann Schematron über einen klar definierten XPath-Pfad eine Nodeliste ansprechen und überprüfen, ob die jeweiligen Detailinformationen (z.B. eines Attributs) einem Vorgabewert entsprechen. Ist das nicht der Fall, erhalten Sie eine Fehlermeldung. ➪Automatisiertes Erzeugen von Schematron-Dateien
58 2019-03-13 Stringfunktionen: Unverzichtbar für zahlreiche tägliche XPath-Aufgaben ist die Verarbeitung von Zeichenketten. Hier stehen zahlreiche Funktionen zur Verfügung.
59 2019-03-13 XPath: concat: Die XPath-Funktion concat verkettet mehrere Informationen zu einem String. ➪Verknüpfungsoperatoren in XSL 3.0 / XPath 3.0
60 2019-03-13 XPath: matches: Die XPath-Funktion matches prüft, ob ein Item einem regulären Ausdruck entspricht. ➪Flags
61 2019-03-13 Reguläre Ausdrücke: Reguläre Ausdrücke sind eine zwar kryptische, aber mächtige Möglichkeit zur Stringverarbeitung.
62 2019-03-13 Reguläre Ausdrücke in C#.NET: Reguläre Ausdrücke sind eine zwar kryptische, aber mächtige Möglichkeit zur Stringverarbeitung.
63 2019-03-13 XPath: replace: Die XPath-Funktion replace erlaubt, einen String, der durch ein Pattern identifiziert wird, durch eine andere Zeichenkette zu ersetzen. ➪Flags
64 2019-03-13 XPath: starts-with: Die starts-with-Funktion prüft, ob ein Item (das als String gecastet werden kann) mit einer bestimmten Zeichenfolge beginnt. ➪starts-with und local-name
65 2019-03-13 XPath: string oder xs:string?: Die XPath-Funktion string konvertiert einen Textnode in einen String. ➪fn:string oder xs:string? ➪Typabhängige Auswertung ➪Sonderzeichen
66 2019-03-13 XPath: string-join: Bei der XPath-Funktion string-join kann eine Sequenz als Parameter übergeben werden, die dann mithilfe eines Trennzeichens in eine Zeichenkette konvertiert wird. ➪string-join-basierter Vergleich unterschiedlicher XML-Strukturen ➪Lösung mit XQuery ➪string-join vs. xsl:value-of separator ➪Verknüpfungsoperatoren in XSL 3.0 / XPath 3.0
67 2019-03-13 XPath: substring, string-length: Die XPath-Funktion substring erlaubt, aus einer Zeichenkette einen Teilstring zu ermitteln.
68 2019-03-13 XPath: substring-after: Die substring-before-Funktion liefert aus einem gegebenen String jenen Teil, der nach dem Auftreten eines zweiten Parameters liegt.
69 2019-03-13 XPath: collection: Die XPath-2.0-Funktion collection ermöglicht, mehrere XML-Dateien als Input anzusprechen und deren jeweiligen Dateinamen über base-uri zu ermitteln. In XPath 3.0 steht die uri-collection bereit, die erlaubt, eine Collection auch von Nicht-XML-Dateien (z.B. CSV) anzusprechen und auszuwerten. ➪XSL-Analyse mit Collections ➪Mehrfach-Implementierungen ➪tokenize bei Ermittlung des Dateinamens ➪uri-collection: Auflistung von Nicht-XML-Dateien
70 2019-03-13 XPath: Der Vergleich von leeren Sequenzen mit leeren Strings: Der Vergleich von leeren Sequenzen mit leeren Elementen liefert immer false(). Um eine Vergleichbarkeit herzustellen, ist eine string-Konvertierung der Sequenz beziehungsweise des Elements hilfreich.
71 2019-03-13 XPath: Anonyme Funktionen: In XSLT 3.0 gibt es die Möglichkeit, in einer Variablen einen anonymen Funktionsaufruf zu implementieren.
72 2019-03-13 XSLT 3.0, XPath 3.0: XSLT 3.0 und XPath 3.0 stehen gegenüber XSLT 2.0 weitere sehr leistungsfähige Features zur Verfügung.
73 2019-03-13 xsl:assert: xsl:assert ist in der Lage, den Programmablauf zu kontrollieren.
74 2019-03-13 xsl:evaluate: xsl:evaluate bietet die Möglichkeit, zur Laufzeit generierte XPath-Statements auszuführen. ➪Generische Template-Aufrufe in XSL 1.0
75 2019-03-13 xsl:iterate, xsl:break: Die xsl:iterate-Iteration läuft eine Reihe von Items einer Sequenz durch, sie kann dabei z.B. durch xsl:break abgebrochen werden.
76 2019-03-13 xsl:try/xsl:catch: Wie in diversen Programmier-Sprachen üblich, ist nun auch in XSLT 3.0 mit xsl:try/xsl:catch ein leistungsfähiges Exception-Handling verfügbar, mit dem diverse Fehler aufgefangen werden können.
77 2019-03-10 XPath: fn:json-doc: fn:json-doc liest eine externe Datei aus und gibt das Ergebnis als JSON zurück.
78 2019-03-10 XPath 3.1: Map, xsl:map: Wie Arrays sind auch Maps neue Datentypen in XDM 3.1. Das Datenformat JSON wird in beiden exzessiv genutzt. Spezialfunktionen wie map:size, map:keys, map:find, map:merge, map:get, map:contains, map:put, map:remove, map:entry, map:for-each sowie der Einsatz anonymer Programmierung heben die Möglichkeiten flexibler Implementierungen in XSLT bzw. XQuery auf eine neue Ebene. ➪XPath: map:size ➪XPath: map:keys ➪XPath: map:contains ➪XPath: map:find ➪XPath: map:put ➪XPath: map:remove ➪XPath: map:get ➪XPath: map:entry ➪XPath: map:merge ➪XPath: map:for-each ➪Weitere Beispiele ➪random-number-generator
79 2019-02-24 Fachkräftemangel in der IT?: Ein Fachkräftemangel ist zumindest in der IT objektiv nicht feststellbar, weil es keine Quelle gibt, die den Bedarf oder das Angebot an Fachkräften zuverlässig, aktuell und vollständig darstellt. Die Datenlage erscheint weder umfassend noch zweifelsfrei klar. Daher gibt es auch keine objektiven Kennzahlen für die Beurteilung. ➪Hohe Bewerbungsrückläufe ➪Fachkräfte - Vermittler ➪Arbeitsuchende Fachkräfte ➪Lebenslanges Lernen ➪Der Fachkräftemangel: ein Spezialisierungsproblem? ➪Technologiewechsel, Wartungsprobleme ➪Jobverlagerung in das Ausland ➪Fallstudie aus 2016 ➪Was sagten die Zahlen in 2016 aus? ➪Der Standortfaktor ➪Liegt die Zukunft in den Metropolen? ➪Anmerkungen ➪Fazit
80 2019-02-24 XPath 3.0, XPath 2.0, XPath 1.0: Die XML Path Language ist eine Empfehlung des W3C, um XML-Dokumente gezielt auswerten zu können. XPath-Statements sind in der Auswertung von XML-Dokumenten von zentraler Bedeutung. Ihr effizienter Einsatz erlaubt eine gezielte Adressierung komplexer Nodelisten wie auch Singlenodes bzw. Attribute und damit deren Auswertung.
81 2019-02-24 XSLT 1.0: Die Seite bietet eine alphabetisch sortierte Kurzreferenz von XSLT-1.0-Elementen, deren Attribute und Childnodes. ➪xsl:apply-imports ➪xsl:apply-templates ➪xsl:attribute ➪xsl:attribute-set ➪xsl:call-template ➪xsl:choose ➪xsl:comment ➪xsl:copy ➪xsl:copy-of ➪xsl:decimal-format ➪xsl:element ➪xsl:fallback ➪xsl:for-each ➪xsl:if ➪xsl:import ➪xsl:include ➪xsl:key ➪xsl:message ➪xsl:namespace-alias ➪xsl:number ➪xsl:otherwise ➪xsl:output ➪xsl:param ➪xsl:preserve-space ➪xsl:processing-instruction ➪xsl:sort ➪xsl:strip-space ➪xsl:stylesheet ➪xsl:template ➪xsl:text ➪xsl:transform ➪xsl:value-of ➪xsl:variable ➪xsl:when ➪xsl:with-param
82 2019-02-24 XSLT 2.0: Die Seite bietet eine alphabetisch sortierte Kurzreferenz von XSLT-2.0-Elementen, deren Attribute und Childnodes. ➪xsl:analyze-string ➪xsl:apply-imports ➪xsl:apply-templates ➪xsl:attribute ➪xsl:attribute-set ➪xsl:call-template ➪xsl:character-map ➪xsl:choose ➪xsl:comment ➪xsl:copy ➪xsl:copy-of ➪xsl:decimal-format ➪xsl:declaration ➪xsl:document ➪xsl:element ➪xsl:fallback ➪xsl:for-each ➪xsl:for-each-group ➪xsl:function ➪xsl:if ➪xsl:import ➪xsl:import-schema ➪xsl:include ➪xsl:instruction ➪xsl:key ➪xsl:literal-result-element ➪xsl:matching-substring ➪xsl:message ➪xsl:namespace ➪xsl:namespace-alias ➪xsl:next-match ➪xsl:non-matching-substring ➪xsl:number ➪xsl:otherwise ➪xsl:output ➪xsl:output-character ➪xsl:param ➪xsl:perform-sort ➪xsl:preserve-space ➪xsl:processing-instruction ➪xsl:result-document ➪xsl:sequence ➪xsl:sort ➪xsl:strip-space ➪xsl:stylesheet ➪xsl:template ➪xsl:text ➪xsl:transform ➪xsl:value-of ➪xsl:variable ➪xsl:when ➪xsl:with-param
83 2019-02-23 XML: wichtige Einsatzgebiete: XML ist ein weltweit verwendetes Standardformat für professionellen Datenaustausch in den unterschiedlichsten Bereichen im In- und Ausland. XML-Technologien kommen zum Einsatz im Gesundheits- und Sozialwesen (Krankenkassen , Arbeitgeber, Unfall- und Rentenversicherung, Knappschaft, Pflegekassen, Bundesagentur für Arbeit, Bundesversicherungsamt) und in der öffentlichen Verwaltung. ➪OFAC ➪Geodaten ➪XKfz ➪Finanzverwaltung ➪XRechnung ➪XJustiz ➪XÖV
84 2019-02-23 XJustiz: Der XML-basierte Standard XJustiz dient dem Austausch von strukturierten Fachdaten bzw. Verfahrensdaten in Justizverfahren im elektronischen Rechtsverkehr zwischen den Prozessbeteiligten (Bürgern, Unternehmen, Rechtsanwälten, IHKs) und den Gerichten. Der Standard steht öffentlich ohne Nutzungseinschränkungen zur Verfügung.
85 2019-02-23 XSL-Übersicht: XSL ist eine leistungsfähige Sprache zur Konvertierung vorrangig von XML-Input-Daten (aber z.B. auch Textformaten wie CSV), die in unterschiedlichem Kontext für unterschiedliche Zielformate (XML, HTML, Text sowie Formatting Object) zum Einsatz kommt.
86 2019-01-26 XML auswerten mit XPath, C#.NET und Java: Diese Seite beschreibt anhand eines einfachen Beispiels verschiedene Möglichkeiten zur Auswertung von XML-Dokumenten in XPath/XSLT, C#.NET und Java.
87 2019-01-26 Auswertung mit XQuery: Diese Seite beschreibt anhand eines einfachen Beispiels verschiedene Möglichkeiten zur Auswertung von XML-Dokumenten in XPath/XSLT, C#.NET und Java.
88 2019-01-26 Auswertung mit XSLT: Diese Seite beschreibt anhand eines einfachen Beispiels verschiedene Möglichkeiten zur Auswertung von XML-Dokumenten in XPath/XSLT, C#.NET und Java.
89 2019-01-26 Auswertung mit C#.NET via System.Xml.XmlDocument und XPath: Diese Seite beschreibt anhand eines einfachen Beispiels verschiedene Möglichkeiten zur Auswertung von XML-Dokumenten in XPath/XSLT, C#.NET und Java.
90 2019-01-26 Auswertung mit C#.NET via LINQ: Diese Seite beschreibt anhand eines einfachen Beispiels verschiedene Möglichkeiten zur Auswertung von XML-Dokumenten in XPath/XSLT, C#.NET und Java.
91 2019-01-26 Auswertung mit C#.NET via System.Xml.XmlReader: Diese Seite beschreibt anhand eines einfachen Beispiels verschiedene Möglichkeiten zur Auswertung von XML-Dokumenten in XPath/XSLT, C#.NET und Java.
92 2019-01-26 Auswertung mit Java via org.xml.sax.XMLReader: Diese Seite beschreibt anhand eines einfachen Beispiels verschiedene Möglichkeiten zur Auswertung von XML-Dokumenten in XPath/XSLT, C#.NET und Java.
93 2018-11-24 XProc: XProc bietet komfortable Möglichkeiten, ganze Konvertierungsstrecken bedingungsgesteuert samt Validierungen zu definieren. Dabei kann sowohl XSLT als auch XQuery zum Einsatz kommen. ➪Sequenz transformieren und filtern ➪XML Streaming mit XProc
94 2018-11-16 XSLT-Konvertierung von XML nach HTML: Mit xsl:for-each, xsl:apply-templates und xsl:call-template stehen unterschiedliche Möglichkeiten zur Verfügung, um XML-Daten nach HTML zu transformieren.
95 2018-11-16 Arbeiten mit xsl:for-each: Die Arbeit mit xsl:for-each ermöglicht eine übersichtliche Programmierlogik, die den Programmiergewohnheiten vieler Developer sehr entgegenkommt und sich zudem weitgehend unabhängig von ausgelagerten Subroutinen realisieren lässt. Damit können gegenseitige Abhängigkeiten reduziert werden, was sich sehr positiv auf die Wartbarkeit der Applikationen auswirkt.
96 2018-11-16 Einbindung externer XML-Dokumente: Der Datenimport aus separaten XML-Dokumenten kann sinnvoll sein, um zusätzliche Informationen in den Konvertierungsprozess einzubinden, die im eigentlichen XML-Input-Dokument nicht vorhanden sind.
97 2018-11-16 Arbeiten mit xsl:apply-templates: Alternativ zur Arbeit mit xsl:for-each besteht die Möglichkeit, dasselbe Ergebnis durch separate Templates (xsl:template match) zu erzielen.
98 2018-11-16 Arbeiten mit xsl:template name/xsl:call-template: Ein nochmals anderer Ansatz basiert auf der kompletten oder teilweisen Auslagerung der Implementierungslogik in benannte Templates (xsl:template name), die über xsl:call-template aufgerufen werden.
99 2018-11-15 xs:ENTITY, xs:ENTITIES: Entitäten sind ein Kernbestandteil der XML-Dokumente. Daneben können Sie in XML-Schema die Zulässigkeit von Entitäten definieren und überprüfen.
100 2018-11-15 Reguläre Ausdrücke in Java: In Java bietet die Stringklasse mit der matches-Methode eine effiziente Möglichkeit zum Umgang mit regulären Ausdrücken. ➪Das Java-Package java.util.regex
101 2018-11-15 XPath: translate: Die XPath-Funktion translate erlaubt, jedes Zeichen eines Strings gezielt durch ein anderes Zeichen zu ersetzen. ➪Alle Nicht-Zahlen löschen ➪Alternative: replace
102 2018-11-15 XPath: empty: Die XPath-Funktion empty überprüft, ob eine Sequenz leer ist, und gibt einen Booleanwert zurück. ➪Die empty-Lösung in XQuery
103 2018-11-15 xsl:apply-templates bei Referenzierungen: Sinnvoll kann der Einsatz von xsl:apply-templates und xsl:template match bei wiederholten Referenzierungen im XML-Input Dokument sein. ➪Das XSLT-Mapping ➪Das XQuery-Mapping ➪XSL-FO Darstellung in PDF ➪XQuery: Darstellung in PDF
104 2018-11-15 xsl:for-each vs. xsl:apply-templates: Grundsätzlich gibt es verschiedene Wege, in XSL Nodelists abzuarbeiten. Mit Blick auf eine effiziente Wartbarkeit des Programmcodes empfiehlt sich, die Entscheidung auch von der Struktur des XML-Dokuments abhängig zu machen. xsl:for-each, xsl:call-template und xsl:apply-templates bieten jeweils Vor- und Nachteile für unterschiedliche Aufgabenstellungen, mit unterschiedlichen Konsequenzen für den Maintenance-Aufwand.
105 2018-11-15 xsl:key: xsl:key erlaubt die Indizierung von Nodes in einer Sequenz durch ein key-value-Paar.
106 2018-10-15 xsl:apply-templates, xsl:next-match: Ein alternativer Ansatz zur Arbeit mit xsl:for-each ist xsl:apply-templates. ➪Arbeiten mit xsl:next-match
107 2018-10-15 xsl:apply-templates bei mixed content: Da die Struktur der mixed-content-Dokumente oft nicht so klar und übersichtlich erkennbar ist, wie das bei datensatzbasierten Dokumenten erwartet werden kann, ist hier eine hohe Flexibilität bei der Behandlung erforderlich.
108 2018-10-06 XRechnung: XRechnung ist der grundsätzliche, XML-basierte Standard für Datenaustausch bei elektronischen Rechnungen, die an die öffentlichen Verwaltungen in Deutschland gerichtet sind. XRechnung setzt die Vorgaben des Europäischen Komitees für Normung (CEN) um. ➪Die UBL-2.1-Schemadateien
109 2018-10-04 XPath: generate-id(): Die generate-id()-Funktion generiert eine Zeichenkette, die einen Node (zum Beispiel Element, Attribut, Kommentar) eindeutig benennt. Ist der Node leer, so ist auch die Zeichenkette leer. ➪generate-id() in XSLT 2.0 / Xpath 2.0
110 2018-10-04 XPath: innermost, outermost: innermost und outermost sind spezielle Funktionen zur gezielten Auswahl von "innersten" bzw. "äußersten" Nodes. ➪innermost ➪outermost
111 2018-09-22 Zeit ist Geld: Die XML-Schema-Datentypen xs:date, xs:time und xs:dateTime haben einen klar definierten Aufbau. Die aktuelle Systemzeit ist ermittelbar durch current-dateTime(), current-date() bzw. current-time(). Wichtig sind noch Spezialfunktionen zur Formatierung. Diese können prozessorbedingt (auch bei unterschiedlichen Versionen desselben Anbieters) beträchtlich abweichen, sodass ein eingehendes Testen der Ergebnisse notwendig erscheint. ➪xs:date ➪xs:time ➪xs:dateTime ➪format-dateTime ➪implicit-timezone() ➪adjust-date-to-timezone ➪Duration: Rechnen mit der Zeit
112 2018-09-22 Toll, ein Kalender: Um den Kalender für die Restlaufzeit bis zu einem Enddatum zu erstellen, können Sie mit rekursiven Aufrufen arbeiten.
113 2018-09-22 Zeitkalkulation in Java:
114 2018-09-15 xs:nillable, xsi:nil: xs:nillable bzw. xsi:nil ermöglicht, dass ein XML-Dokument auch dann valide sein kann, wenn streng typisierte Datenfelder leer sind, die normalerweise wenigstens einen Default-Wert erzwingen. ➪XSD -> XSLT -> XML: Generieren von Beispieldateien mit xsi:nil="true"
115 2018-09-15 available-environment-variables: available-environment-variables gibt eine Liste der Umgebungsvariablen zurück; den jeweiligen Einzelwert erfahren über die Funktion environment-variable. ➪Die Lösung in XQuery
116 2018-09-15 xsl:variable: Im XSL übernimmt eine Variable einen temporären Inhalt, der in der Regel zur Laufzeit gesetzt und an passender anderer Stelle wieder ausgelesen wird. ➪Rechnen mit xsl:variable ➪xsl:variable als komplexe Nodelist ➪Inkrementelle Anpassung der xsl:variable ➪Attribut-Atomisierung mit data ➪Externe XML-Dokumente als xsl:variable ➪xsl:sequence ➪Anonyme Funktionen
117 2018-09-15 Konvertierung von XML nach CSV: Eine häufige Aufgabe ist die Konvertierung von XML nach CSV. Diese Aufgabe kann in XSLT mit einfachen Mitteln bewältigt werden.
118 2018-08-25 XMeld: XMeld betrifft den elektronischen Datenaustausch zwischen den Meldebehörden und deren Kommunikationspartnern. Die Koordinierungsstelle für IT-Standards hat die Spezifikation OSCI-XMeld 2.3.1 in der Fassung vom 31. Juli 2017 veröffentlicht. Die in PDF vorliegende Spezifikation umfasst 1.600 Seiten.
119 2018-06-24 xsl:result-document: Ab XSLT 2.0 erlaubt xsl:result-document die Generierung mehrerer Zieldokumente.
120 2018-06-02 XML auswerten mit Powershell: Solide Unterstützung für XML-Auswertung mittel XPath wird auch in Powershell geboten.
121 2018-05-13 Gruppieren in XPath 1.0/XSL 1.0: Die Zusammenfassung mehrfach auftretender Werte ist eine häufige Aufgabe auch in XSLT 1.0/XPath 1.0. Wenn die Systemkonfiguration den Einsatz spezieller XSL-Prozessoren erzwingt, die nicht über geeignete Extensions verfügen, bleibt die Suche nach geeigneten Konzepten. ➪Arbeiten mit not und following:: ➪Arbeiten mit generate-id() ➪Die Muench'sche Methode
122 2018-05-13 xsl:for-each-group: xsl:for-each-group ist in der Lage, eine durch XPath ausgewählte Itemlist durch einen gewählten Grupperungsschlüssel so zusammenzufassen, dass die in der Itemlist wiederholt aufgeführten Werte jeweils nur einmal auftauchen (etwa analog einer DISTINCT-Auswertung bei einer SQL-Datenbankabfrage). ➪Zusammengesetzte Schlüssel ➪Gruppieren mit group-adjacent ➪Gruppieren mit group-starting-with und group-ending-with
123 2018-05-13 xsl:include, xsl:import, xsl:apply-imports: Mit xsl:import sowie xsl:include ist es möglich, externe XSL-Stylesheets in die aktuelle XSL-Logik einzubinden. Der Unterschied liegt in der Art, wie der Prozessor die externen Dokumente einbindet. ➪Arbeiten mit xsl:apply-imports ➪Mehrfachimplementierungen
124 2018-05-08 max(): Die max-Funktion berechnet den Maximalwert der Zahlen in der Sequenz (vorausgesetzt, es sind nur Werte enthalten, die auch als Zahlenwerte gecastet werden können). Die Funktion steht erst ab XSLT 2.0/XPath 2.0 zur Verfügung. ➪Selbst definierte Sequenzen ab XSL 2.0 ➪Maximalwerte in XSL 1.0 ermitteln ➪Maximalwerte mit C#.NET Scripting ermitteln
125 2018-05-03 xsl:for-each select: xsl:for-each select erlaubt eine effiziente Programmierung auf Basis komplexer, klar definierter Datenstrukturen, die sich beispielsweise aus verschachtelten Datenbankabfragen ergeben. Ein hilfreicher Trick ist auch der Loop allein um das Root-Element. ➪Präzise XPath-Adressierung ➪Der initiale Loop
126 2018-05-03 xsl:number: xsl:number bietet erweiterte, selektive wie hierarchische Möglichkeiten zur Nummerierung von Elementen. ➪Selektiv nummerieren mit count ➪Jedem Element seine ID ➪Hierarchisch nummerieren mit level="multiple" ➪Hierarchische Einzelnummerierung mit level="single" ➪Korrekturbedarf bei xsl:sort
127 2018-04-23 min(): Die min-Funktion berechnet den Minimalwert der Zahlen in der Sequenz (vorausgesetzt, es sind nur Werte enthalten, die auch als Zahlenwerte gecastet werden können). ➪Selbst definierte Sequenzen ab XSL 2.0 ➪Minimalwerte in XSL 1.0 ermitteln
128 2018-04-22 XSL-Prozessoren: In der Entwicklung, im Test- und im Produktivsystem werden mitunter unterschiedliche Prozessoren bzw. Versionen verwendet. Das kann zum Problem führen, wenn unterschiedliche Prozessoren nicht einheitlich arbeiten.
129 2018-04-13 XPath: analyze-string: Die XPath-Funktion analyze-string ist eine hervorragende Möglichkeit zur Stringanalyse mittels regulärer Ausdrücke. Sie generiert ein analyze-string-result-Element mit den Childnodes match bzw. non-match. Möglich ist so auch die Datenvalidierung von CSV-Dateien in XSLT 2.0 und XSL 3.0. ➪CSV validieren mit XSLT 3.0
130 2018-04-13 XPath: for-each-pair: Die XPath-Funktion for-each-pair bildet Kombinationen aus zwei Sequenzen, die dieselbe Anzahl Items haben müssen.
131 2018-04-13 XPath: fold-right: Die XPath-Funktion fold-right verarbeitet alle Items einer Sequenz von rechts nach links.
132 2018-04-13 XPath 3.1: Array: Ein Array ist ein neuer Datentyp in XDM 3.1. ➪XPath: array:size ➪XPath: array:get ➪XPath: array:append ➪XPath: array:subarray ➪XPath: array:remove ➪XPath: array:insert-before ➪XPath: array:head ➪XPath: array:tail ➪XPath: array:reverse ➪XPath: array:join ➪XPath: array:for-each ➪XPath: Array generieren ➪XPath: array:filter ➪XPath: array:for-each-pair ➪XPath: array:sort
133 2018-04-13 xsl:preserve-space, xsl:strip-space: xsl:strip-space und xsl:preserve-space erlauben eine unterschiedliche Behandlung bestehender Whitespaces zwischen den Elementen des XML-Input-Dokuments.
134 2018-04-12 XML-Schema-Validierung mit ANT: Neben zahlreichen anderen Features bietet ANT auch gute Unterstützung zur Validierung von XML-Dokumenten mit XML-Schema.
135 2018-04-12 NVDL: Effiziente Validierung ist auch mit NVDL möglich, der Namespace-based Validation Dispatching Language.
136 2018-04-12 Positionsbestimmung bei following-sibling: Mitunter stehen Sie vor der Spezialaufgabe, mit following-sibling::* die Abstände zwischen Elementen zu ermitteln, die sich beispielsweise durch das Vorhandensein eines bestimmten Attributs unterscheiden. ➪Lösung über eine separate Variable ➪Lösung in XSLT 2.0
137 2018-04-12 XPath: Pfade, Prädikate: Statt der möglicherweise aufwendigen Arbeit mit child::*, descendant::* etc. gibt es noch die Möglichkeit, Elemente und Attribute mit einer "Kurzschreibweise" sowie über sogenannte Prädikate präzise zu adressieren, um sie in eine Sequenz einzufügen, die ausgewertet werden kann. ➪XPath-Prädikate
138 2018-04-12 XPath-Operatoren: Mit XPath können auch Vergleiche, nummerische oder boolesche Rechenoperationen durchgeführt werden. ➪Nummerische Operatoren ➪Logische Operatoren ➪Boolesche Operatoren
139 2018-04-12 XPath: Sequenz-Funktionen: In XPath 2.0 kommen (gegenüber XPath 1.0) die mächtigen Sequenzen hinzu, auf denen wiederum zahlreiche Funktionen in XPath 2.0 und XPath 3.0 beruhen.
140 2018-04-12 XPath: copy-of: Die XPath-Funktion copy-of liefert eine tiefe Kopie einer Sequenz zurück.
141 2018-04-12 XPath: data: Die data()-Funktion liefert die atomisierten Werte einer Sequenz: Jeder Node wird also durch seinen Wert ersetzt. Das ist besonders wertvoll bei der Verarbeitung von Attributen. ➪Auswertung von xsl:attribute-set
142 2018-04-12 XPath: one-or-more: Die Funktion one-or-more überprüft, ob eine Sequenz überhaupt Inhalte hat: Mindestens ein Item muss vorhanden sein.
143 2018-04-07 xsl:param: xsl:param kommt zum Einsatz bei globaler und lokaler Parameterübergabe. ➪Globale Parameter ➪Lokale Parameter: Einzelwert bei xsl:call-template ➪Lokale Parameter: Nummerierung bei xsl:apply-templates
144 2018-04-05 XPath: Codepoints: Die Spezialfunktionen string-to-codepoints, codepoints-to-string und codepoint-equal unterstützen die Konvertierung von Strings in Codepoints sowie den Vergleich von Zeichenketten auf Codepoint-Basis. ➪string-to-codepoints ➪codepoints-to-string ➪codepoint-equal ➪Spezialsuche
145 2018-04-05 XPath: exactly-one: Die exactly-one-Funktion erzwingt, dass eine Sequenz genau ein einziges Item aufweist.
146 2018-04-05 head, tail, snapshot: Weitere XPath-Funktionen bieten zusätzliche Möglichkeiten, Sequenzen auszuwerten. ➪head ➪tail ➪snapshot
147 2018-04-05 XPath: transform: Die XPath-Funktion transform startet eine XSL-Transformation mit einem dynamisch geladenen XSL-Stylesheet.
148 2018-04-05 system-properties: available-system-properties() generiert eine Liste verfügbarer System-Properties, deren Einzelwerte mit system-property ausgelesen werden können.
149 2018-04-05 xsl:accumulator: xsl:accumulator bietet leistungsfähige Unterstützung bei der Implementierung globaler Counter.
150 2018-04-05 xsl:analyze-string: xsl:analyze-string ist eine hervorragende Möglichkeit zur Stringanalyse mittels regulärer Ausdrücke.
151 2018-04-05 xsl:attribute: Mit der Anweisung xsl:attribute ist es möglich, ein Attribut in eine XML- bzw. HTML-basierte Zielstruktur einzufügen.
152 2018-04-05 xsl:attribute-set: Mit xsl:attribute-set kann eine ganze Anzahl einzelner xsl:attribute in einer Gruppierung vordefiniert werden, die schließlich mit xsl:use-attribute-sets komplett in das XML-Element eingefügt wird. ➪Deklarationskonflikte? ➪xsl:attribute-set in XSLT generieren
153 2018-04-05 xsl:choose: xsl:choose erlaubt eine erweiterte, mehrstufige Fallunterscheidung nach dem Konzept "if/then/elseif/then/else". Dabei gibt es einige Besonderheiten zu beachten.
154 2018-04-05 xsl:copy, xsl:copy-of: xsl:copy generiert eine flache Kopie eines jeweils aktuellen Knotens. xsl:copy-of generiert eine tiefe Kopie eines jeweils aktuellen Knotens. ➪xsl:copy ➪xsl:copy-of
155 2018-04-05 xsl:decimal-format: xsl:decimal-format erlaubt eine benutzerdefinierte Zahlen-Formatierung: Für Dezimaltrenner (z.B. Komma) und Gruppierungszeichen (z.B. Punkt) können Sonderzeichen festgelegt werden (z.B. 1.234.567,89), die vom Standardwert (z.B. 1,234,567.89) abweichen. xsl:decimal-format kommt optional zum Einsatz in der XPath-Funktion format-number.
156 2018-04-05 xsl:fallback: xsl:fallback wird verwendet, wenn das XSL-Stylesheet Elemente beinhaltet, für die keine Implementierung vorhanden sind.
157 2018-04-05 xsl:fork: xsl:fork erlaubt, das Streaming von XML-Input in mehrere Prozesse aufzuteilen. Das ist vorteilhaft bei Datenstrukturen, deren Streaming nicht problemlos verläuft.
158 2018-04-05 xsl:if: xsl:if erlaubt eine einfache Fallprüfung.
159 2018-04-05 xsl:import-schema: xsl:import-schema bindet XML-Schema-Validierung in den XSL-Transformationsprozess ein.
160 2018-04-05 xsl:merge: xsl:merge erlaubt, die Inhalte diverser xsl:merge-source mit xsl:merge-key in eine Sequenz zu mergen. In der xsl:merge-action kann jedes einzelne Item der current-merge-group() angesprochen werden; dabei ist der jeweilige merge-key durch current-merge-key() erreichbar.
161 2018-04-05 xsl:message: xsl:message bietet sich beim Debuggen oder zum bedingungsgesteuerten Abbruch der Transformation an.
162 2018-04-05 xsl:namespace: xsl:namespace bietet ab XSLT 2.0 die Möglichkeit, Namespaces dynamisch zu generieren. Dabei übernimmt das Attribut "name", das zwingend vorhanden sein muss, den Namespace-Präfix. ➪xsl:namespace-alias
163 2018-04-05 xsl:output: Für xsl:output, unter XSLT 2.0 auch für xsl:result-document, gibt es eine Reihe von Attributen, die den Prozessor anweisen, den Ausgabestrom zu modifizieren. ➪method ➪indent ➪cdata-section-elements ➪encoding ➪omit-xml-declaration ➪name ➪version ➪use-character-maps
164 2018-04-05 Konvertierung von XML nach XML: Da viele Programmierer die mehrfache Implementierung identischer Codezeilen als No-Go ansehen, ist es sinnvoll, redundante Logik in separate Templates auszulagern. Bei der Konvertierung einer XML-Input-Struktur in eine andere Zielstruktur gibt es dabei unterschiedliche Konzepte. ➪Implementierung mit xsl:template match ➪Implementierung mit xsl:for-each und direktem xsl:call-template ➪Implementierung mit xsl:for-each und parametrisiertem xsl:call-template
165 2018-04-05 XSL-Transformationsaufrufe: Die XSL-Transformation kann direkt in ANT, XProc, Java, C#.NET oder anderen Programmiersprachen aufgerufen werden. ➪XSL-Transformationen mit ANT ➪XSL-Transformationen mit XProc ➪XSL-Transformationen mit C#.NET ➪XSL-Transformationen mit Java
166 2018-04-05 C#.NET in XSLT aufrufen: Auch in C#.NET können Sie XSL-Transformationen durchführen. Zwar ist die Funktionalität des verwendeten Microsoft-Standardprozessors auf XSL 1.0 beschränkt. Daneben gibt es (je nach verwendetem XSL-Prozessor) die Möglichkeit, in XSLT C#.NET-Code zu implementieren und dessen Ergebnisse in den XSLT-Konvertierungsprozess einzubinden. ➪Die Klasse Person
167 2018-04-04 XML-Schema: Datenvalidierung mit VisualBasic.NET: Die XML-Schema-Datenvalidierung eines XML-Dokuments kann mit leistungsfähigen Klassen in VisualBasic.NET durchgeführt werden. ➪Validierung mit Logdatei
168 2018-04-04 avg(): Die avg-Funktion berechnet den arithmetischen Durchschnitt der Zahlenwerte in der Sequenz (vorausgesetzt, es sind nur Werte enthalten, die auch als Zahlenwerte gecastet werden können). avg() steht erst seit XSLT 2.0 / XPath 2.0 zur Verfügung.
169 2018-04-04 XPath: compare: Die compare-Funktion vergleicht zwei Stringparameter miteinander. ➪collations
170 2018-04-04 XPath ends-with: Die XPath-Funktion ends-with prüft, ob ein Item (das als String gecastet werden kann) mit einer bestimmten Zeichenfolge endet.
171 2018-04-04 XPath: lower-case: Die lower-case-Funktion konvertiert jeden Großbuchstaben eines Strings in den entsprechenden Kleinbuchstaben.
172 2018-04-04 XPath: normalize-space: Die normalize-space-Funktion löscht führende und schließende Leerzeichen in einem String. ➪Sonderzeichen
173 2018-04-04 XPath: substring-before: Die substring-before-Funktion liefert aus einem gegebenen String jenen Teil, der vor dem Auftreten eines zweiten Parameters liegt.
174 2018-04-04 XPath: upper-case: Die upper-case-Funktion konvertiert jeden Kleinbuchstaben eines Strings in den entsprechenden Großbuchstaben.
175 2018-04-04 XPath: exists: exists überprüft, ob eine Sequenz NICHT leer ist, und gibt einen Booleanwert zurück.
176 2018-04-04 XPath: filter: Die XPath-Funktion filter gibt jene Items einer Sequenz zurück, die in der anonymen Funktion ein true() ergeben. ➪filter in XQuery
177 2018-04-04 XPath: index-of(), position(), last(): XPath bietet eine Reihe von Spezialfunktionen zur Positionsbestimmung eines Items in einer Sequenz, beispielsweise index-of(), position(), last(). ➪position() ➪last() ➪XPath: index-of
178 2018-04-04 XPath: in-scope-prefixes: Die XPath Funktion in-scope-prefixes gibt eine Liste aller Namespace-Präfixe, die im Kontext verwendet werden.
179 2018-04-04 XPath: insert-before: Die insert-before-Funktion fügt ab einer bestimmten Position zusätzliche Items in eine ursprüngliche Sequenz ein, sodass im Ergebnis eine neue Sequenz entsteht. ➪insert-after
180 2018-04-04 XPath: json-to-xml, xml-to-json: json-to-xml konvertiert JSON in eine XML-Struktur, die im Namespace http://www.w3.org/2013/XSL/json definiert ist. xml-to-json konvertiert ein XML-Dokument mit analoger Datenstruktur in einen JSON-String. ➪xml-to-json
181 2018-04-04 XPath: fn:parse-json: fn:parse-json parst einen JSON-String und gibt den Wert als Map oder Array zurück.
182 2018-04-04 XPath 3.0: path: Die XPath-Funktion path() gibt den XPath-Pfad eines Nodes zurück.
183 2018-04-04 XPath: remove: Die remove-Funktion löscht bestimmte Items (die sich aus ihrer Indexposition ergeben) aus einer Sequenz.
184 2018-04-04 XPath: reverse: Die reverse-Funktion kehrt die Reihenfolge der Items in einer Sequenz um.
185 2018-04-04 XPath: serialize: Die XPath-Funktion serialize konvertiert eine Sequenz in einen String.
186 2018-04-04 XPath: subsequence: Die subsequence-Funktion kann aus einer Sequenz einzelne Teile filtern, die sich über die Position und die Anzahl der Items definiert.
187 2018-04-04 XPath: zero-or-one: Die zero-or-one-Funktion stellt sicher, dass eine Sequenz maximal ein Item haben darf; die Sequenz kann auch leer sein.
188 2018-04-04 Liste der Sonderzeichen selbst erstellen: Was ich in der Praxis oft benötige, ist ein schneller Überblick, hinter welcher Codenummer sich welches Zeichen verbirgt.
189 2018-04-04 Zeichensätze generieren mit C#.NET: Eine grobe Übersicht von über 55.000 Zeichen können Sie sich auch in C#.NET einfach generieren.
190 2018-04-01 xsl:sort, xsl:perform-sort, fn:sort: Eine häufige Aufgabe ist das Sortieren von Ergebnissen. Hier finden Sie in xsl:sort, xsl:perform-sort und fn:sort leistungsfähige Unterstützung. ➪Sortierungen mit xsl:sort ➪Sortierungen mit fn:sort ➪Funktionsbasierte Sortierungen mit fn:sort ➪Textbasierte Sortierung mit Collations ➪Sortierungen mit xsl:perform-sort
191 2018-04-01 xsl:template: xsl:template ist ein Top-Level-Element und muss daher direkt als Childnode von xsl:stylesheet bzw. xsl:transform definiert werden.
192 2018-04-01 XSLT 2.0: Erweiterte Syntax: Ab XSLT 2.0 haben Sie die Möglichkeit, komplexe Logiken (Schleifen, Bedingungen) mit einer erweiterten Syntax zusammenzufassen. ➪Type-Casting ➪Alle oder nur einige?
193 2018-04-01 Konvertierung von Elementen in Attribute: In diesem Abschnitt lesen Sie, wie die Konvertierung von Elementen in Attribute mit Pfaden und Achsen einfach umgesetzt werden kann. ➪local-name(), node-name()
194 2018-04-01 Erzeugen von skalierbaren Vektor-Grafiken (SVG): Skalierbare Vektor-Grafiken (SVG) sind pures XML mit einem speziellen Namespace, der die Funktionalitäten definiert, auf der u.a. auch Browser arbeiten, die SVG-Dateien anzeigen können. Spezielle Grafikelemente (Text, Rechteck, Kreis, Linie, ...) können mit Koordinaten und weiteren Eigenschaften ausgestattet werden, die ein Anzeigen als Grafik möglich machen.
195 2018-03-31 sitemap.xml mit XSLT 3.0 generieren: Dieser Abschnitt beschreibt die Konvertierung einer Textdatei in eine "sitemap.xml"-Datei.
196 2018-03-31 Schattenkabinett: In XSLT 3.0 ist es möglich, mit einem statischen Wert während der Präprozessing-Phase zu arbeiten.
197 2018-03-30 Arbeiten mit optionalen Elementen: Bei der Arbeit mit optionalen Elementen/Attributen können Programmierfehler zu Informationsverlust führen. ➪XPath-Adressierung optionaler Werte ➪Gruppierung optionaler Werte
198 2018-03-29 xsl:character-map: In XSLT 2.0 gibt es die Möglichkeit, zur Behandlung von Zeichensätzen spezielle Character-Maps zu verwenden.
199 2018-03-29 xsl:function: In XSL 2.0 besteht auch die Möglichkeit, eigene Funktionen zu schreiben, denen Parameter übergeben werden können. Dabei können die Datentypen der übergebenen Parameter wie auch der Rückgabetyp klar definiert werden.
200 2018-03-28 xsl:apply-templates: Teilkonvertierung: Manchmal stehen Sie vor der Aufgabe, ein komplexes XML-Input-Dokument fast unverändert übernehmen und nur eine Teilstruktur verändern zu müssen.
201 2018-03-26 Zahlen-Rundungsfunktionen: In XSL bzw. XPath stehen auch mehrere Funktionen zum Auf- oder Abrunden von Zahlen zur Verfügung.
202 2018-03-20 XNorm: XNorm erscheint sehr übersichtlich. Es beinhaltet lediglich 5 XML-Schema Dateien, die keine externen Abhängigkeiten aufweisen.
203 2017-11-04 CSV Dateien validieren mit VisualBasic.NET: Die Seite beschreibt die Validierung von CSV-Dateien mithilfe von VisualBasic.NET.
204 2017-10-14 CSV Dateien validieren mit Java: Die Seite beschreibt die Validierung von CSV-Dateien mithilfe von Java.
205 2017-10-14 CSV Dateien validieren mit C#.NET: Die Seite beschreibt die Validierung von CSV-Dateien mithilfe von C#.NET.


Vielen Dank für Ihr Interesse an meiner Arbeit.


>

V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn

Mobil: 0151. 750 360 61 * eMail: info10@wilfried-grupe.de