annotate artifacts/doc/datacage_ref_de.rst @ 7716:aa5ad2f62def

Areas are not Volumes!
author Andre Heinecke <aheinecke@intevation.de>
date Fri, 20 Dec 2013 13:06:03 +0100
parents f26e7d386d8c
children b3534220aac7
rev   line source
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
1 =========
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
2 Datenkorb
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
3 =========
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
4
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
5
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
6 .. contents:: Inhalt
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
7
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
8 Übersicht
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
9 ---------
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
10
7379
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
11 Der Datenkorb ist im Kern ein Dive4Elements/River eingebetteter Webdienst,
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
12 der dazu dient, ein XML-Dokument zu generieren, das seinerseits benutzt
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
13 werden kann, um Daten so identifizierbar zu machen, dass sie zu
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
14 Projekten innerhalb von Dive4Elements/River hinzugeladen werden können.
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
15
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
16 Das vom Datenkorb erzeugte XML-Dokument wird dann vom D4E/River-Client in
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
17 eine Baumansicht innerhalb der graphischen Benutzeroberfläche
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
18 transformiert.
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
19
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
20 Die Grundlage für das XML-Doument, das an die Oberfäche gesandt wird,
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
21 ist ein XML-Dokument namens ``meta-data.xml``, das im ``conf``-Verzeichnis
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
22 des Servers als Template für die Ausgabe-XML benutzt wird.
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
23
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
24 Dieses Referenzhandbuch beschreibt die Strukturen innerhalb von
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
25 ``metadata.xml``.
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
26
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
27 Grundstruktur
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
28 -------------
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
29
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
30 Das Grundgerüst einer validen ``meta-data.xml`` sieht sieh so aus:
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
31
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
32 .. code:: xml
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
33
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
34 <xml version="1.0" encoding="UTF-8">
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
35 <dc:template xmlns:dc="http://www.intevation.org/2011/Datacage">
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
36 <datacage>
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
37 ...
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
38 </datacage>
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
39 </dc:template>
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
40
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
41 Dies erzeugt folgendes Dokument:
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
42
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
43 .. code:: xml
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
44
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
45 <xml version="1.0" encoding="UTF-8">
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
46 <datacage>
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
47 ...
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
48 </datacage>
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
49
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
50 Elemente, die nicht aus dem Namespace ``dc`` stammen, werden durchkopiert.
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
51 ``dc``-Elemente dienen der Steuerung des Templating. Generell kann sagen,
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
52 dass das ``meta-data.xml``-Template mittels einer
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
53 rekursiven Tiefensuche (siehe http://de.wikipedia.org/wiki/Tiefensuche)
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
54 über seine Elemente abgearbeitet wird.
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
55
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
56 Daten
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
57 -----
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
58 Im Datenkorb stehen zwei Arten von Daten zur Auswertung zur Verfügung.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
59
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
60 ``Datensätze``
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
61 ~~~~~~~~~~~~~~
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
62 Datensätze sind Tabellen mit benannten Spalten. Sie werden von Datenquellen
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
63 erzeugt und in einem Stapel verwaltet. Die konkreten Werte stehen erst durch
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
64 Auffaltung als Variablen zur Verfügung.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
65
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
66 ``Variablen``
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
67 ~~~~~~~~~~~~~
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
68 Variablen sind die Werte, die aktuell zur Auswertung zur Verfügung stehen. Sie haben
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
69 einen Namen und einen Typ (String, Zahl, durch Datenquelle bestimmt).
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
70
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
71 Textersatz
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
72 ----------
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
73 Um die Wertebelegungen in das Ausgabedokument schreiben zu kann an entsprechenden
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
74 Stellen eine String-Interpolation durchgeführt werden.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
75 Hier finden zwei Arten von Textersatz ihren Einsatz.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
76
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
77 ``${}-Ersetzungen``
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
78 ~~~~~~~~~~~~~~~~~~~
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
79 Die ältere Variante. Innerhalb von Strings werden hier nur Variablen aufgelöst.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
80 Beispiel: "**Hallo, ${planet}!**" wird bei planet = 'Welt' zu "**Hallo, Welt!**".
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
81
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
82 ``{$}-Ersetzungen``
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
83 ~~~~~~~~~~~~~~~~~~~
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
84 Die neuere Variante, allerdings noch nicht komplett an allen Stellen einsatzfähig.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
85 Innerhalb der geschweiften Klammern können beliebige XPath-Ausdrück stehen, die
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
86 zu Strings evaluiert werden. Dies orientiert sich an den String-Auswertungen in XSLT.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
87 "**{ concat($greet, ', ', $planet, '!') }**" wird bei gesetzten Variablen greet = Hallo
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
88 und planet = "Welt" zu **Hallo, Welt!** ausgewertet.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
89
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
90 Datenkorb-Elemente
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
91 ------------------
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
92
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
93 Datensätze erzeugen
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
94 ~~~~~~~~~~~~~~~~~~~
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
95
7315
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
96 ``dc:context`` Aufspannen eines Gültigkeitsbereiches eines Datenbankdatensatz
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
97 .............................................................................
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
98
7315
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
99 .. code:: xml
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
100
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
101 <dc:context connection="Verbindung">
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
102 ...
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
103 </dc:element>
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
104
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
105 Spannt einen Gültigkeitsbereich für einen Datensatz auf, der aus der Datenbank
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
106 kommt. Die adressierte Datenbank wird über das optionale Attribut 'connection'
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
107 bestimmt. Zur Zeit sind drei Datenbanken angebunden:
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
108
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
109 - **user**: Die Index-Datenbank des Artefakt-Servers. Hierüber stehen Meta-Informationen
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
110 zu alten Berechnungen zur Verfügung.
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
111
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
112 - **system**: Die FLYS-Datenbank mit den hydrologischen, morphologische und geodätischen
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
113 Daten.
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
114
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
115 - **seddb**: Die Sediment-Datenbank.
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
116
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
117 In einem `<dc:context>`-Element wird zwingend ein `<dc:statement>`-Element erwartet,
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
118 um einen Datensatz aus der Datenbank zu holen. Dieser Datensatz steht dann innerhalb des
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
119 `<dc:context>`-Elementes ein oder mehrfach zur Verfügung. Innerhalb eines
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
120 `<dc:context>`-Elementes können weitere `<dc:context>`-Elemente eingeschachtelt werden.
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
121 Ist kein 'connection'-Attribut vorhanden, wird die Datenbank-Verbindung des umgebenen
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
122 Kontextes weiterbenutzt. Initial wird je nach Aufrufart der Datenkorbs entweder
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
123 der **user** oder **system**-Kontext angenommen. Dies richtet sich danach, ob in
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
124 der Aufrufumgebung eine Artefakt gesetzt wird oder nicht. Im ersten Fall wird
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
125 angenommen, dass es sich um einen Ladevorgang für zusätzliche Daten handelt, die
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
126 auch alte Berechnungen mit einschliesst.
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
127
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
128
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
129 ``dc:statement`` Holen eines Datensatzes aus einer Datenbank
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
130 ............................................................
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
131
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
132 .. code:: xml
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
133
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
134 <dc:statement>
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
135 SQL-Select-Statement.
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
136 </dc:element>
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
137
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
138 Mittels eines SQL-Select-Statements werden in einem `<dc:context>`-Elementes aus
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
139 der dort definierten Datenbank geholt. Die Spaltennamen der Projektion des SQL-Statements
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
140 werden übernommen und später beim Auffalten des Datensatzes benutzt.
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
141
7379
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
142 ``dc:container-context`` Tabellarische Daten aus der Programm-Umgebung
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
143 ......................................................................
e07dc8854a8f More datacage ref doc.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7322
diff changeset
144
7401
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
145 .. code:: xml
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
146
7401
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
147 <dc:container-context container="Container">
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
148 ...
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
149 </dc:container-context>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
150
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
151 Dies spannt einen Kontext auf einem Container namens Container auf,
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
152 einer listen-ähnlichen Struktur, die als externe Datenquellen in
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
153 Form eines Java-Objekts an den Datenkorb übergeben werden kann.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
154 Dies müssen Klassen sein, die das Interface ``java.util.Collection``
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
155 implementieren. Mit diesem Konstrukt ist es möglich, tabellarische
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
156 Ergebnisse von außen in die Auswertung des Datenkorbs zu integrieren.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
157 Der Container muss hierfür über die Variable ``Container`` zur Verfügung
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
158 gestellt werden. Die Spalten des Tabelle werden über ``dc:properties``
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
159 definiert. Der Datensatz selbst kann wie gewohnt mittels ``dc:for-each``
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
160 realisiert werden.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
161
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
162 ``dc:properties`` Spaltendefinitionen für externe Daten aus der Programm-Umgebung
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
163 .................................................................................
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
164
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
165 .. code:: xml
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
166
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
167 <dc:container-context container="Container">
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
168 <dc:properties>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
169 <dc:property name="name" alias="alias"/>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
170 </dc:properties>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
171 </dc:container-context>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
172
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
173 Muss innerhalb eines ``dc:container-context`` angegeben werden und enthält eine
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
174 Liste von Attributen der Java-Objekte, die in den Datenkorb eingeblendet werden sollen.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
175 Die Auflösung der Namen auf der Java-Seite funktioniert nach Konvention von Java-Beans,
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
176 sprich aus ``name`` wird ``getName``. ``alias`` ist optional und weisst explizit einen
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
177 Spaltennamen aus. Dies entspricht im Wesentlichen einen 'AS' bei einem SQL-Statement.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
178
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
179 Ein vollständigeres Beispiel könnte in etwa so aussehen.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
180 Die Java-Seite:
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
181
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
182 .. code:: java
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
183
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
184 public class Car {
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
185
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
186 private String marke;
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
187 private String name;
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
188
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
189 public Car(String marke, String name) {
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
190 this.marke = marke;
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
191 this.name = name;
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
192 }
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
193
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
194 public String getMarke() {
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
195 return marke;
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
196 }
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
197
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
198 public String getName() {
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
199 return name;
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
200 }
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
201 }
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
202
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
203 // Liste befuellen.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
204
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
205 java.util.Container<Car> container = new java.util.ArrayList<Car>();
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
206
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
207 container.add(new Car("Volvo", "V80"));
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
208 container.add(new Car("Ferrari", "Testarossa"));
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
209
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
210 // Dem Datenkorb uebergeben.
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
211
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
212 parameters.put("CARS", cars);
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
213
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
214 Das Datenkorb-Schnipsel
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
215
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
216 .. code:: xml
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
217
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
218 <dc:container-context container="cars">
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
219 <dc:properties>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
220 <dc:property name="marke" alias="brand" />
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
221 <dc:property name="name" alias="type" />
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
222 </dc:properties>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
223
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
224 <cars>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
225 <dc:for-each>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
226 <car type="$type" brand="$brand" />
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
227 </dc:for-each>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
228 </cars>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
229 </dc:container-context>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
230
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
231 liefert dann folgende Ausgabe:
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
232
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
233 .. code:: xml
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
234
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
235 <cars>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
236 <car type="V80" brand="Volvo" />
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
237 <car type="Testarossa" brand="Ferrari" />
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
238 </cars>
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
239
bbf758e594bb Datacage reference doc: Explain dc:container-context and dc:properties.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7400
diff changeset
240
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
241
7318
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
242 ``dc:virtual-column`` Virtuelle Spalten definieren
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
243 ..................................................
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
244
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
245 .. code:: xml
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
246
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
247 <dc:virtual-column name="Name" type="Type" expr="XPath-Ausdruck">
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
248 ...
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
249 </dc:virtual-column>
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
250
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
251 Definiert eine neue, virtuelle Spalte namens Name für den aktuellen Datensatz.
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
252 Der Typ wird optional durch Typ festgelegt; ohne Angabe wird der Typ String angenommen.
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
253 Die Wertebelegung ergibt sich aus der zeilenweisen Auswertung des XPath-Ausdrucks.
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
254
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
255 Dies sei an folgendem Beispiel illustriert:
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
256
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
257 +----+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
258 +Zahl+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
259 +====+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
260 + 1+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
261 +----+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
262 + 2+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
263 +----+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
264 + 3+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
265 +----+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
266
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
267 .. code:: xml
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
268
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
269 <dc:virtual-column name="Quadrat" type="number" expr="$Zahl * $Zahl">
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
270 ...
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
271 </dc:virtual-column>
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
272
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
273 Erzeugt einen neuen Datensatz folgender Struktur:
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
274
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
275 +----+-------+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
276 +Zahl+Quadrat+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
277 +====+=======+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
278 + 1+ 1+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
279 +----+-------+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
280 + 2+ 4+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
281 +----+-------+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
282 + 3+ 9+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
283 +----+-------+
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
284
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
285 Innerhalb eines `virtual-column`-Elementes kann der Datensatz mittel `dc:for-each` wie
7319
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
286 gewohnt realisiert werden. Wird das `dc:virtual-column`-Element verlassen, gilt wieder
7318
d8ca7a1d522c Datacage ref doc: Explain dc:virtual-column.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7317
diff changeset
287 der vormalige Datensatz ohne die zusätzlich Spalte.
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
288
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
289 Datensätze einschränken
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
290 ~~~~~~~~~~~~~~~~~~~~~~~
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
291
7321
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
292 ``dc:filter`` Selektieren einzelner Zeilen aus dem aktuellen Datensatz
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
293 ......................................................................
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
294
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
295 .. code:: xml
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
296
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
297 <dc:filter expr="XPath-Ausdruck">
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
298 ...
7322
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
299 </dc:filter>
7321
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
300
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
301 Evaluiert pro Zeile des aktuellen Datensatzes den XPath-Ausdruck 'expr' und erzeugt
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
302 einen neuen Datensatz, der nur die Zeilen des Originaldatensatzes enthält für den
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
303 die Auswertung logisch wahr ergab. Im XPath-Ausdruck stehen die aufgefalteten Werte
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
304 der jeweiligen Zeile zur Verfügung.
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
305
7322
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
306 Folgends Beispiel soll dies verdeutlichen:
7321
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
307
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
308 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
309 +Zahl+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
310 +====+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
311 + 1+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
312 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
313 + 2+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
314 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
315 + 3+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
316 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
317 + 4+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
318 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
319
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
320 Zahlen erhalten, die einen Wert kleiner drei haben.
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
321
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
322 .. code:: xml
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
323
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
324 <dc:filter expr="$Zahl &lt; 3">
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
325 ...
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
326 <dc:filter>
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
327
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
328 Dies erzeugt folgenden neuen Datensatz:
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
329
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
330 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
331 +Zahl+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
332 +====+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
333 + 1+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
334 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
335 + 2+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
336 +----+
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
337
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
338 Innerhalb des `dc:filter`-Elementes kann der neue Datensatz wie gewohnt mit `dc:for-each`
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
339 realisiert werden. Nach Verlassen des `dc:filter`-Elementes ist wieder der vormalige
b33a2a437ab8 Datacage ref doc: Explain dc:filter.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7320
diff changeset
340 Datensatz aktuell.
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
341
7410
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
342 .. _dc:group:
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
343
7322
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
344 ``dc:group`` Datensätzen in Gruppen ordnen
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
345 ..........................................
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
346
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
347 .. code:: xml
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
348
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
349 <dc:group expr="XPath-Ausdruck">
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
350 ...
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
351 </dc:group>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
352
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
353 Pro Zeile der Originaldatensatzes wird der XPath-Ausdruck 'expr' ausgewertet.
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
354 Wie bei `dc:filter` stehen hier die aufgefalteten Werte der einzelnen Spalten zur
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
355 Verfügung. Das Resultat der XPath-Auswertung wird als Schlüssel für zu erzeugende
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
356 Gruppen benutzt, denen dann die Zeilen zugeordnet werden.
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
357 Nachdem alle Zeilen ihren entsprechenden Gruppen zugeordnet wurden, wir der
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
358 Inhalt des `dc:group`-Elements für jede Gruppe durchlaufen. Innerhalb des
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
359 `dc:group`-Elementes steht der jeweilige Schlüssel der aktuellen Gruppe über
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
360 die Funktion `dc:group-key()` zur Auswertung zu Verfügung. Innerhalb der
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
361 jeweiligen Gruppen kann mittel `dc:for-each` der jeweilige Unterdatensatz
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
362 realisiert werden.
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
363
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
364 Zur Verdeutlichung folgendes Beispiel:
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
365
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
366 +-------+-----------+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
367 +Marke +Bezeichnung+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
368 +=======+===========+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
369 +Ferrari+Testarossa +
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
370 +-------+-----------+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
371 +Volvo +V40 +
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
372 +-------+-----------+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
373 +Volvo +780 +
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
374 +-------+-----------+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
375 +Ferrari+F40 +
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
376 +-------+-----------+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
377 +VW +Käfer +
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
378 +-------+-----------+
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
379
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
380 .. code:: xml
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
381
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
382 <marken>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
383 <dc:group expr="$Marke">
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
384 <marke name="{dc:group-key()}">
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
385 <dc:for-each>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
386 <bezeichnung name="$Bezeichnung"/>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
387 </dc:for-each>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
388 </marke>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
389 </dc:group>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
390 </marken>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
391
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
392 Dies führt zu folgender Ausgabe:
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
393
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
394 .. code:: xml
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
395
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
396 <marken>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
397 <marke name="Ferrari">
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
398 <bezeichnung name="F40"/>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
399 <bezeichnung name="Testarossa"/>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
400 </marke>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
401 <marke name="Volvo">
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
402 <bezeichnung name="V40"/>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
403 <bezeichnung name="780"/>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
404 </marke>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
405 <marke name="VW">
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
406 <bezeichnung name="Käfer"/>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
407 </marke>
7be4425eaca9 Datacage doc ref: Explain dc:group
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7321
diff changeset
408 </marken>
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
409
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
410 Datensätze auffalten
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
411 ~~~~~~~~~~~~~~~~~~~~
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
412
7319
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
413 ``dc:for-each`` Realisieren eines Datensatzes
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
414 .............................................
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
415
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
416 .. code:: xml
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
417
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
418 <dc:for-each>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
419 ...
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
420 <dc:for-each>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
421
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
422 Erzeugt nacheinander alle zeilenweisen Realisationen des aktuellen Datensatzes. Die
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
423 einzelnen Spaltenwerte sind dann über Variablen erreichbar, die nach den Spaltenbezeichnern
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
424 des Datenstzes benannt sind.
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
425
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
426 Folgendes Beispiel soll den Sachverhalt illustieren:
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
427
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
428 +----+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
429 +Zahl+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
430 +====+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
431 + 1+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
432 +----+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
433 + 2+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
434 +----+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
435 + 3+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
436 +----+
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
437
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
438 .. code:: xml
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
439
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
440 <zahlen>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
441 <dc:for-each>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
442 <zahl wert="$Zahl"/>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
443 <dc:for-each>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
444 </zahlen>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
445
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
446 Dies erzeugt folgende Ausgabe:
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
447
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
448 .. code:: xml
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
449
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
450 <zahlen>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
451 <zahl wert="1"/>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
452 <zahl wert="2"/>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
453 <zahl wert="3"/>
d29a5e703cc4 Datacage ref doc: Explain dc:for-each
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7318
diff changeset
454 </zahlen>
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
455
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
456 ``dc:iterate`` **TODO**
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
457
7320
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
458 Bedingte Ausführung
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
459 ~~~~~~~~~~~~~~~~~~~
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
460
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
461 ``<dc:if>`` Einfaches Wenn-Dann ohne Sonst-Fall
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
462 ...............................................
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
463
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
464 .. code:: xml
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
465
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
466 <dc:if test="XPath-Ausdruck">
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
467 ...
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
468 </dc:if>
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
469
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
470 Der innere Teil wird nur dann betreten, wenn der XPath-Ausdruck zu
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
471 logisch wahr evaluiert wird. Dieses Konstrukt kennt keinen alternativen
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
472 Pfad, der betreten wird, falls der Ausdruck zu logisch falsch ausgewertet
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
473 wird. Wird dies benötigt, muss man ``<dc:choose>`` benutzen.
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
474 ``<dc:if>`` ist in Symmetrie zu ``<xsl:if>`` von XSLT entworfen worden.
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
475
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
476 ``<dc:choose>`` Ketten von Wenn-Dann-Ausdrücken
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
477 ...............................................
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
478
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
479 .. code:: xml
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
480
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
481 <dc:choose>
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
482 <dc:when test="XPath-Ausdruck 1"> ... </dc:when>
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
483 <dc:when test="XPath-Ausdruck 2"> ... </dc:when>
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
484 ...
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
485 <dc:otherwise> ... </dc:otherwise>
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
486 </dc:choose>
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
487
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
488 Es werden der Reihe nach von oben nach unter die ``test``-XPath-Ausdrücke der ``dc:when``-Elemente ausgewertet. Evaluiert ein Ausdruck zu logisch wahr, wird der innere Teil des entsprechenden ``<dc:when>``-Elements betreten. Die verbliebenen
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
489 ``<dc:when>``- und ``<dc:otherwise>``-Elemente werden dann ignoriert. Evaluiert
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
490 keiner der ``test``-Ausdrücke zu wahr, wird der innere Teil des
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
491 ``<dc:otherwise>``-Elements betreten.
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
492 ``<dc:choose>`` ist in Symmetrie zu ``<xsl:choose>`` von XSLT entworfen worden.
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
493
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
494
22c85b8232cc Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7319
diff changeset
495
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
496 Makros
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
497 ~~~~~~
7317
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
498 Um innerhalb des Definitionsdokumentes Wiederholungen zu vermeiden, können sogenannte
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
499 Makros definiert werden, die dann von anderer Stellen aus eingefügt werden können.
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
500
7317
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
501 ``dc:macro`` Wiederverwendbare Teile definieren
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
502 ...............................................
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
503
7317
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
504 .. code:: xml
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
505
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
506 <dc:macro name="Name">
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
507 ...
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
508 </dc:macro>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
509
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
510 Definiert ein Makro namens Name. Nach der Definition ist dieses dann unter diesem
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
511 Namen global innerhalb des Definitionsdokumentes bekannt. Makros können geschachtelt
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
512 werden. Auch eingeschachtelte Makros sind global sichtbar. Die Makrodefinition und
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
513 ihre eingeschalteten Elemente werden nicht in das Ausgabedokument übernommen.
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
514
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
515 ``dc:call-macro`` Makros aufrufen
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
516
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
517 .. code:: xml
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
518
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
519 <dc:call-macro name="Name">
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
520
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
521 Ruft ein Makro names Name auf. Dieses muss mit `dc:macro` definiert sein. Die Reihenfolge
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
522 von Definition und Aufruf ist egal.
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
523
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
524 ``dc:macro-body`` Elemente an ein Makro übergeben
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
525 .................................................
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
526
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
527 .. code:: xml
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
528
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
529 <dc:macro name="Name">
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
530 ...
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
531 <dc:macro-body/>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
532 ...
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
533 </dc:macro>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
534
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
535 Um an Makros weitere Bausteine als Argument übergeben zu können, ist es optional
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
536 möglich innerhalb einer Makrodefinition ein Element `dc:macro-body` einzufügen.
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
537 Dieses Element expandiert sich zum Inhalt des `dc:call-macro`-Aufrufs.
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
538
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
539 .. code:: xml
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
540
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
541 <dc:call-macro name="Name">Inhalt von dc:macro-body</dc:call-macro>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
542
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
543 Zur Verdeutlichung ein konkretes Beispiel
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
544
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
545 .. code:: xml
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
546
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
547 <dc:macro name="Greetings">
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
548 <Hallo>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
549 <dc:macro-body/>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
550 </Hallo>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
551 </dc:macro>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
552
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
553 <dc:call-macro name="Greetings">Welt</dc:call-macro>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
554 <dc:call-macro name="Greetings">Mond</dc:call-macro>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
555
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
556 Dies produziert folgende Ausgabe
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
557
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
558 .. code:: xml
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
559
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
560 <Hallo>Welt</Hallo>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
561 <Hallo>Mond</Hallo>
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
562
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
563 Das Haupteinsatzgebiet dieses Konstruktes ist die transparente Bereitstellung
00b17e77c2e8 Datacage ref doc: Explain dc:macro & Co.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7316
diff changeset
564 von Kontexten, die dann verschiedentlich ausgewertet werden sollen.
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
565
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
566 Sonstige Elemente
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
567 ~~~~~~~~~~~~~~~~~
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
568
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
569 ``dc:element`` Hinzufügen neuer Elemente in der Ausgabe
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
570 .......................................................
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
571
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
572 .. code:: xml
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
573
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
574 <dc:element name="Name">
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
575 ...
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
576 </dc:element>
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
577
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
578 Erzeugt ein Element namens Name. Für den Namen gelten die `${}-Ersetzungen`_.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
579
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
580
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
581 ``dc:attribute`` Hinzufügen neuer Attribute zum umgebenden Ausgabeelement
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
582 .........................................................................
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
583
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
584 .. code:: xml
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
585
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
586 <dc:attribute name="Name" value="Wert"/>
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
587
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
588 Fügt dem umgebenden Ausgabeelement ein weiteres Attribut namens Name mit dem
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
589 Wert von Wert hinzu. Für Namen und Wert gelten die `${}-Ersetzungen`_.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
590 Der Einsatz dieses Konstrukts findet häufig im Zusammenhang mit dc:element
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
591 seinen Einsatz, wenn es ein Ausgabeelement vollständig aus Variablenbelegungen
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
592 erstellt werden soll.
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
593
7315
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
594 ``dc:comment`` Kommentare im Beschreibungsdokument
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
595 ..................................................
7316
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
596
7315
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
597 .. code:: xml
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
598
7315
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
599 <dc:comment>
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
600 ...
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
601 </dc:comment>
7314
53d1dd441867 Datacage ref doc: More structure. Explain text interpolation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7255
diff changeset
602
7315
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
603 Ein Kommentar auf Ebene des Beschreibungsdokumentes, das keinerlei Ausgabe
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
604 im Ausgabedokument erzeugt. Eingeschachtelte Elemente werden ebenfalls nicht ausgewertet.
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
605 Im Gegensatz dazu werden die XML-typischen **<!-- Kommetare -->** in das Ausgabedokument übernommen!
8498fdd71a1e Dataage ref doc: Explain dc:context, dc:comment
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7314
diff changeset
606
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
607
7316
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
608 ``dc:message`` Ausgabe auf die Diagnoseausgabe (Log)
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
609 ....................................................
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
610
7316
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
611 .. code:: xml
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
612
7316
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
613 <dc:message>
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
614 Text für die Diagnose.
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
615 </dc:message>
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
616
7316
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
617 Gibt den Text innerhalb des Elementes aus Ausgabe im Log aus. Dies dient in erster Linie
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
618 dem Nachvollziehen von Aufrufen innerhalb des Datenkorbdokumentes. Für den Text gelten
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
619 die `{$}-Ersetzungen`_.
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
620
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
621 ``dc:variable`` Erzeugung einer kontext-lokalen Variablen
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
622 .........................................................
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
623
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
624 .. code:: xml
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
625
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
626 <dc:variable name="Name" type="Typ" expr="XPath-Ausdruck"/>
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
627
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
628 Legt im aktuellen Kontext eine lokale Variable namens Name an. Diese hat den
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
629 Typ Typ und entsteht durch Auswertung des XPath-Ausdruck expr. Der Typ
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
630 ist optional. Wird dieser nicht gesetzt, wird das Ergebnis als String interpretiert.
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
631 Alternativ können hier die Werte 'number' für Zahlen, 'bool' für Boolean-Werte
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
632 benutzt werden. Für den Namen und den Typ gelten die `${}-Ersetzungen`_.
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
633 Wird der aktuellen `dc:context` verlassen, ist diese Variable nicht mehr definiert.
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
634
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
635
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
636 ``dc:convert`` kontext-lokale Konvertierung von Variablen
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
637 .........................................................
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
638
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
639 .. code:: xml
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
640
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
641 <dc:convert name="Name" type="Typ"/>
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
642
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
643 Konvertiert die Variable namens Name für die Gültigkeit des aktuellen Kontextes in
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
644 einen anderen Typ. Für Name und Typ gelten die `${}-Ersetzungen`_. Für die
52bc38e6bbe1 Datacage ref doc: Explain dc:variable and dc:convert.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7315
diff changeset
645 Typen gilt das gleiche wie für die Typen von `dc:variable`.
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
646
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
647
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
648 Datenkorb-Funktionen
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
649 --------------------
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
650
7410
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
651 ``dc:has-result`` Prüfen, ob der aktuelle Datensatz nicht leer ist
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
652 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
653
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
654 ``dc:has-result()`` liefert logisch wahr zurück, falls der aktuelle
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
655 Datensatz nicht leer ist, sprich Datenzeilen enthält. Ansonsten wird
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
656 logisch falsch zurück gegeben. Mittels dieser Funktion können leere
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
657 Knoten im Resultatdokument verhindert werden. Die typische Nutzung
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
658 ist daher innerhalb des ``test``-Attributs eines ``<dc:if>``-Elements.
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
659
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
660 ``dc:contains`` Prüfen, ob Suchbegriff in einer Liste vorhanden ist
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
661 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
662
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
663 ``dc:contains(Nadel, Heuhaufen)`` prüft ob das Suchobjekt Nadel in
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
664 der Liste Heufhaufen zu finden ist. Liefert logisch wahr falls die
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
665 Nadel gefunden wurde, ansonsten logisch falsch. Typischer Anwendungsfall:
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
666 ``dc:contains($outs, 'longitudinal-section')`` prüft, ob in der Liste
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
667 der aktuellen Outs der Eintrag 'longitudinal-section' zu finden ist.
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
668
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
669 ``dc:replace`` Textersatz in Strings
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
670 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
671
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
672 ``dc:replace(Heuhaufen, Nadel, Ersatz)`` ersetzt in im String Heuhaufen alle
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
673 Vorkommen des Strings Nadel durch den String Ersatz. ``dc:replace('Banane', 'a', 'e')``
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
674 resultiert folglich in dem String ``Benene``.
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
675
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
676 ``dc:replace-all`` Textersatz in Strings mit regulären Ausdrücken
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
677 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
678
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
679 ``dc:replace-all(Heuhaufen, Nadel, Ersatz)`` ersetzt in im String Heuhaufen alle
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
680 Vorkommen des regulären Ausdrucks durch den String Ersatz. Auf im regulären Ausdruck
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
681 gebildete Gruppen ``()`` kann mit ``$1``, ``$2``, ``$3`` usw. im Ersatztext zurückgegriffen werden.
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
682 ``dc:replace-all('KlausGabiPeter', '(Klaus|Peter)', '>$1<')`` resultiert demnach
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
683 in ``>Klaus<Gabi>Peter<``.
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
684
7415
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
685 ``dc:find-all`` Extraktion von Strings aus einem String anhand eines regulären Ausdrucks
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
686 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
687
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
688 ``dc:find-all(Nadel, Heuhaufen)`` extrahiert aus einem String Heuhaufen all jene Substrings,
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
689 die auf den regulären Ausdruck Nadel passen. Das Resultat dieser Funktion ist eine Liste
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
690 von Strings. Sie ist leer, wenn das Muster nicht gefunden wurde.
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
691
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
692 ``dc:find-all('\d{4}', '1900 1930 1941 1960')`` liefert dem entsprechend die Liste
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
693 ``'1900'``, ``'1930'``, ``'1941'``, ``'1960'``.
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
694
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
695 ``dc:date-format`` Formatierte Ausgabe eines Datums
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
696 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
697
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
698 ``dc:date-format(Format, Datum)`` leifert für ein Datum Datum einen String, der
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
699 nach den Formatierungsregeln aus Format formatiert wird. Für die Formatierungen
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
700 gelten die in SimpleFormat_ beschriebenen Regeln.
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
701
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
702 .. _SimpleFormat: http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
703
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
704 ``dc::date-format(''dd.MM.yyyy', $datum,)`` liefert für ein ``$datum`` mit dem Wert 1. Dezember 1941
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
705 den String ``01.12.1941``.
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
706
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
707
7410
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
708 ``dc:group-key`` Wert des aktuellen Gruppierungsschlüssels
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
709 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
710
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
711 Siehe hierzu `dc:group`_.
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
712
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
713 ``dc:dump-variables`` Aktuelle Variablenbelegung als String
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
714 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
715
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
716 ``dc:dump-variables()`` liefert einen String mit der aktuellen Belegung aller Variablen.
0e56d7b4b38c Datacage ref doc: More doc for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7403
diff changeset
717 Dies ist zusammen mit ``dc:message`` nützlich, um eine Ablaufverfolgung zu implementieren.
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
718
7415
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
719 ``dc:get`` Dynamische Variablenauswertung
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
720 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
721
7415
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
722 ``dc:get(Variablenname)`` ermöglicht es, eine Variable über ihren Namen als String
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
723 auszuwerten. Gegenüber der normalen XPath-Variablenauswertung kann die Variable auch
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
724 null liefern. Bis auf diese Ausnahme ist der Aufruf ``dc:get('a')`` identisch zu ``$a``
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
725 in XPath-Kontexten.
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
726
7416
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
727 ``dc:max-number`` Bestimmung des Maximums einer Liste von Zahlen
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
728 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
729
7416
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
730 ``dc:max-number($liste)`` Ermittelt aus einer Liste von Zahlen das Maximum. Strings werden dabei in Zahlen umgewandelt.
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
731
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
732 ``dc:max-number(dc:find-all('\d{4}', '1900 1930 1941 1960'))`` liefert also ``1960``.
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
733
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
734
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
735 ``dc:min-number`` Bestimmung des Minimums einer Liste von Zahlen
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
736 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
737
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
738 ``dc:min-number($liste)`` Ermittelt aus einer Liste von Zahlen das Minimum. Strings werden dabei in Zahlen umgewandelt.
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
739
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
740 ``dc:min-number(dc:find-all('\d{4}', '1900 1930 1941 1960'))`` liefert also ``1960``.
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
741
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
742
f26e7d386d8c Datacage ref doc: More docs on functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7415
diff changeset
743
7255
5783bd29de8a First draft of a german reference document for datacage elements and functions written in reStructuredText. Lots of TODOs.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff changeset
744
7415
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
745 ``dc:fromValue`` **TODO**
7400
dd87e0a5f83c Datacage: Added TODOs for new functions in ref document.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7379
diff changeset
746
7415
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
747 ``dc:toValue`` **TODO**
f5948a07f317 Datacage ref doc: More docs for functions.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7410
diff changeset
748

http://dive4elements.wald.intevation.org