Ü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 2018-11-24 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.
2 2018-11-24 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
3 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
4 2018-11-20 Lambda-Expressions in Java: Konzepte und Elemente der funktionalen Programmierung halten immer mehr Einzug auch in Programmiersprachen, die als streng objektorientiert wahrgenommen werden. Seit Java 8 stehen in Java auch Lambda-Expressions zur Verfügung. ➪Interfaces und Default-Implementierung ➪Funktionale Interfaces (SAM) ➪Funktionale Interfaces in java.util.function ➪Verwendung von Lambda-Expressions in java.util.List ➪map / filter / reduce ➪HashMap und Lambda-Expressions
5 2018-11-19 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
6 2018-11-17 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
7 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.
8 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.
9 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.
10 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.
11 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.
12 2018-11-15 XML-Validierung: Wozu?: Die enorme Gestaltungsflexibilität der XML-Dokumente zwingt zu systematischer Strukturierung, damit sie durch Folgeprogramme effizient ausgewertet werden können. ➪XML-Verarbeitung ohne vorherige Validierung?
13 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.
14 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
15 2018-11-15 XPath: replace: Die XPath-Funktion replace erlaubt, einen String, der durch ein Pattern identifiziert wird, durch eine andere Zeichenkette zu ersetzen. ➪Flags
16 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
17 2018-11-15 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
18 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
19 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
20 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.
21 2018-11-15 xsl:key: xsl:key erlaubt die Indizierung von Nodes in einer Sequenz durch ein key-value-Paar.
22 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
23 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.
24 2018-10-04 XPath: tokenize: Die XPath-Funktion tokenize konvertiert einen String in eine Sequenz. ➪Flags ➪Type-casting ➪tokenize vs. xs:token
25 2018-10-04 XPath: count(): Die count-Funktion zählt die Anzahl der Items in der Sequenz. Sie steht auch unter XPath 1.0 zur Verfügung.
26 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
27 2018-10-04 XPath: innermost, outermost: innermost und outermost sind spezielle Funktionen zur gezielten Auswahl von "innersten" bzw. "äußersten" Nodes. ➪innermost ➪outermost
28 2018-09-29 C#.NET: LINQ: LINQ (Language Integrated Query) bietet leistungsfähige Standards, diverse Datenquellen (Objektlisten, SQL-DB-Tabellen, XML-Dateien) in einer SQL-ähnlichen Syntax auszuwerten. Dabei arbeitet LINQ mit Lambda-Ausdrücken, anonymen Typen, Objektinitialisierern und Typinferenz. ➪Auswerten von CSV mit LINQ ➪Gruppierungen mit LINQ
29 2018-09-24 XML-Schema 1.0: XML-Schema bietet eine Vielzahl unterschiedlicher atomarer und komplexer Datentypen sowie Design-Alternativen. ➪Simple Datentypen
30 2018-09-24 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.
31 2018-09-24 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.
32 2018-09-24 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.
33 2018-09-24 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.
34 2018-09-24 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.
35 2018-09-24 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.
36 2018-09-24 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.
37 2018-09-24 elementFormDefault, attributeFormDefault: In XML-Schema finden Sie häufig Deklarationen wie elementFormDefault="qualified" oder attributeFormDefault="unqualified".
38 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
39 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.
40 2018-09-22 Zeitkalkulation in Java:
41 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"
42 2018-09-15 XPath-Achsen: XPath-Pfade und -Achsen definieren den Verlauf, Umfang und die Richtung, in dem die umgebenden Nodes abgearbeitet werden.
43 2018-09-15 ancestor::*: ancestor::* gibt die Liste aller vorhergehender Nodes aus, aber ohne den aktuellen Mensch-Node.
44 2018-09-15 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.
45 2018-09-15 attribute::*: Mit attribute::* erhalten Sie alle Attribute eines adressierten Nodes. ➪Maximalwerte berechnen
46 2018-09-15 child::*: Mit child::* erhalten Sie die Childnodes des aktuellen Nodes.
47 2018-09-15 descendant::*: Mit descendant::* erhalten Sie sämtliche Nachkommen des akuellen Knotens.
48 2018-09-15 descendant-or-self::*: Mit descendant-or-self::* erhalten Sie den aktuellen Node und dessen sämtliche Nachkommen. ➪XML-Schema Analyse mit descendant-or-self::*
49 2018-09-15 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
50 2018-09-15 following::*: Mit following::* erhalten Sie Folge-Nodes des aktuellen Knotens.
51 2018-09-15 following-sibling::*: Mit following-sibling::* erhalten Sie Folge-Nodes des aktuellen Knotens.
52 2018-09-15 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.
53 2018-09-15 parent::*: Mit parent::* erhalten Sie den Parentnode des aktuellen Nodes.
54 2018-09-15 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.
55 2018-09-15 preceding-sibling::*: Mit preceding-sibling::* erhalten Sie Vorgänger-Nodes des aktuellen Knotens. ➪Countdown
56 2018-09-15 self::*: self::* spricht den jeweiligen Knoten an.
57 2018-09-15 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.
58 2018-09-15 XPath: concat: Die XPath-Funktion concat verkettet mehrere Informationen zu einem String. ➪Verknüpfungsoperatoren in XSL 3.0 / XPath 3.0
59 2018-09-15 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 ➪uri-collection: Auflistung von Nicht-XML-Dateien
60 2018-09-15 Anonyme Funktionen: In XSLT 3.0 gibt es die Möglichkeit, in einer Variablen einen anonymen Funktionsaufruf zu implementieren.
61 2018-09-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
62 2018-09-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
63 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
64 2018-09-15 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.
65 2018-09-15 xsl:assert: xsl:assert ist in der Lage, den Programmablauf zu kontrollieren.
66 2018-09-15 xsl:evaluate: xsl:evaluate bietet die Möglichkeit, zur Laufzeit generierte XPath-Statements auszuführen. ➪Generische Template-Aufrufe in XSL 1.0
67 2018-09-15 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.
68 2018-09-15 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.
69 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
70 2018-09-15 PDF-Listendruck mit XQuery 3.0: Die FO-Generierung von PDF-Dokumenten ist auch mit XQuery 3.0 problemlos möglich.
71 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.
72 2018-07-07 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 ➪JSON-Auswertung mit C#.NET ➪Der JavaScriptSerializer
73 2018-06-28 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
74 2018-06-25 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. ➪Das XML-Dokument mit xmlns:xsi und Attribut erzeugen ➪Konvertierung von Attributen in Elemente ➪Namespaces im XML-Input-Dokument ➪Timestamp-Elemente
75 2018-06-24 xsl:result-document: Ab XSLT 2.0 erlaubt xsl:result-document die Generierung mehrerer Zieldokumente.
76 2018-06-02 XML auswerten mit Powershell: Solide Unterstützung für XML-Auswertung mittel XPath wird auch in Powershell geboten.
77 2018-05-31 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
78 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
79 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
80 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
81 2018-05-13 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.
82 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
83 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
84 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
85 2018-05-01 XML-Schema: Datenvalidierung mit C#.NET: Die XML-Schema-Datenvalidierung eines XML-Dokuments kann mit leistungsfähigen Klassen in VisualBasic.NET durchgeführt werden.
86 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
87 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.
88 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
89 2018-04-13 Reguläre Ausdrücke: Reguläre Ausdrücke sind eine zwar kryptische, aber mächtige Möglichkeit zur Stringverarbeitung.
90 2018-04-13 Reguläre Ausdrücke in C#.NET: Reguläre Ausdrücke sind eine zwar kryptische, aber mächtige Möglichkeit zur Stringverarbeitung.
91 2018-04-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
92 2018-04-13 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. ➪Sequenzen verketten ➪Sequenzen vereinigen ➪Sequenzen ausschließen mit "except" ➪Schnittmengen von Sequenzen bilden mit "intersect"
93 2018-04-13 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.
94 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.
95 2018-04-13 XPath: fold-right: Die XPath-Funktion fold-right verarbeitet alle Items einer Sequenz von rechts nach links.
96 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
97 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.
98 2018-04-12 xs:any, xs:anyType: Häufig ist es erforderlich, nur Teilvalidierungen durchzuführen, also einzelne Elemente von der Validierung auszunehmen. xs:any sowie xs:anyType bieten die erforderliche Flexibilität. ➪processContents="strict" ➪processContents="lax" ➪processContents="skip" ➪xs:anyType, xs:anySimpleType
99 2018-04-12 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
100 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.
101 2018-04-12 XML-Schema-Datenvalidierung mit XProc: Neben zahlreichen weiteren leistungsfähigen Features bietet XProc auch Ansätze zur effizienten Datenvalidierung von XML-Dokumenten.
102 2018-04-12 NVDL: Effiziente Validierung ist auch mit NVDL möglich, der Namespace-based Validation Dispatching Language.
103 2018-04-12 XML-Schema Validierung in Java: Die XML-Schema-Validierung eines XML-Dokuments kann auch über Java aufgerufen werden.
104 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
105 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
106 2018-04-12 XPath-Operatoren: Mit XPath können auch Vergleiche, nummerische oder boolesche Rechenoperationen durchgeführt werden. ➪Nummerische Operatoren ➪Logische Operatoren ➪Boolesche Operatoren
107 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.
108 2018-04-12 XPath: copy-of: Die XPath-Funktion copy-of liefert eine tiefe Kopie einer Sequenz zurück.
109 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
110 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.
111 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
112 2018-04-06 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.
113 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
114 2018-04-05 XPath: matches: Die XPath-Funktion matches prüft, ob ein Item einem regulären Ausdruck entspricht. ➪Flags
115 2018-04-05 XPath: substring, string-length: Die XPath-Funktion substring erlaubt, aus einer Zeichenkette einen Teilstring zu ermitteln.
116 2018-04-05 XPath: exactly-one: Die exactly-one-Funktion erzwingt, dass eine Sequenz genau ein einziges Item aufweist.
117 2018-04-05 head, tail, snapshot: Weitere XPath-Funktionen bieten zusätzliche Möglichkeiten, Sequenzen auszuwerten. ➪head ➪tail ➪snapshot
118 2018-04-05 XPath: transform: Die XPath-Funktion transform startet eine XSL-Transformation mit einem dynamisch geladenen XSL-Stylesheet.
119 2018-04-05 system-properties: available-system-properties() generiert eine Liste verfügbarer System-Properties, deren Einzelwerte mit system-property ausgelesen werden können.
120 2018-04-05 xsl:accumulator: xsl:accumulator bietet leistungsfähige Unterstützung bei der Implementierung globaler Counter.
121 2018-04-05 xsl:analyze-string: xsl:analyze-string ist eine hervorragende Möglichkeit zur Stringanalyse mittels regulärer Ausdrücke.
122 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.
123 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
124 2018-04-05 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 duch die eigentlichen "Hauptprogramme" beliebig oft aufgerufen werden können.
125 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.
126 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
127 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.
128 2018-04-05 xsl:fallback: xsl:fallback wird verwendet, wenn das XSL-Stylesheet Elemente beinhaltet, für die keine Implementierung vorhanden sind.
129 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.
130 2018-04-05 xsl:if: xsl:if erlaubt eine einfache Fallprüfung.
131 2018-04-05 xsl:import-schema: xsl:import-schema bindet XML-Schema-Validierung in den XSL-Transformationsprozess ein.
132 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.
133 2018-04-05 xsl:message: xsl:message bietet sich beim Debuggen oder zum bedingungsgesteuerten Abbruch der Transformation an.
134 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
135 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
136 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
137 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
138 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
139 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
140 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.
141 2018-04-04 XPath: compare: Die compare-Funktion vergleicht zwei Stringparameter miteinander. ➪collations
142 2018-04-04 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
143 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.
144 2018-04-04 XPath: lower-case: Die lower-case-Funktion konvertiert jeden Großbuchstaben eines Strings in den entsprechenden Kleinbuchstaben.
145 2018-04-04 XPath: normalize-space: Die normalize-space-Funktion löscht führende und schließende Leerzeichen in einem String. ➪Sonderzeichen
146 2018-04-04 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
147 2018-04-04 XPath: substring-after: Die substring-before-Funktion liefert aus einem gegebenen String jenen Teil, der nach dem Auftreten eines zweiten Parameters liegt.
148 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.
149 2018-04-04 XPath: upper-case: Die upper-case-Funktion konvertiert jeden Kleinbuchstaben eines Strings in den entsprechenden Großbuchstaben.
150 2018-04-04 XPath: deep-equal: Die deep-equal-Funktion kann zwei Sequenzen miteinander vergleichen.
151 2018-04-04 XPath: exists: exists überprüft, ob eine Sequenz NICHT leer ist, und gibt einen Booleanwert zurück.
152 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
153 2018-04-04 XPath: fold-left: Die XPath-Funktion fold-left verarbeitet alle Items einer Sequenz von links nach rechts.
154 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
155 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.
156 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
157 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
158 2018-04-04 XPath: fn:json-doc: fn:json-doc liest eine externe Datei aus und gibt das Ergebnis als JSON zurück.
159 2018-04-04 XPath: fn:parse-json: fn:parse-json parst einen JSON-String und gibt den Wert als Map oder Array zurück.
160 2018-04-04 XPath 3.0: path: Die XPath-Funktion path() gibt den XPath-Pfad eines Nodes zurück.
161 2018-04-04 XPath: remove: Die remove-Funktion löscht bestimmte Items (die sich aus ihrer Indexposition ergeben) aus einer Sequenz.
162 2018-04-04 XPath: reverse: Die reverse-Funktion kehrt die Reihenfolge der Items in einer Sequenz um.
163 2018-04-04 XPath: serialize: Die XPath-Funktion serialize konvertiert eine Sequenz in einen String.
164 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.
165 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.
166 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.
167 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.
168 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
169 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.
170 2018-04-01 xsl:text: xsl:text fügt einen Textnode im Transformations-Output ein. Dieser kann auch in Whitespaces bestehen.
171 2018-04-01 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.
172 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?
173 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()
174 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.
175 2018-03-31 sitemap.xml mit XSLT 3.0 generieren: Dieser Abschnitt beschreibt die Konvertierung einer Textdatei in eine "sitemap.xml"-Datei.
176 2018-03-31 Schattenkabinett: In XSLT 3.0 ist es möglich, mit einem statischen Wert während der Präprozessing-Phase zu arbeiten.
177 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
178 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.
179 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.
180 2018-03-28 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 ➪xsl:matching-substring ➪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
181 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.
182 2018-03-26 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.
183 2018-03-26 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.
184 2018-03-26 Zahlen-Rundungsfunktionen: In XSL bzw. XPath stehen auch mehrere Funktionen zum Auf- oder Abrunden von Zahlen zur Verfügung.
185 2018-03-26 Stringfunktionen: Unverzichtbar für zahlreiche tägliche XPath-Aufgaben ist die Verarbeitung von Zeichenketten. Hier stehen zahlreiche Funktionen zur Verfügung.
186 2018-03-04 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
187 2018-01-18 XSLT 1.0 Elemente: 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
188 2018-01-18 XSLT 2.0 Elemente: 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
189 2017-11-04 CSV Dateien validieren mit VisualBasic.NET: Die Seite beschreibt die Validierung von CSV-Dateien mithilfe von VisualBasic.NET.
190 2017-10-14 CSV Dateien validieren mit Java: Die Seite beschreibt die Validierung von CSV-Dateien mithilfe von Java.
191 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