comparison artifacts/doc/datacage_ref_de.rst @ 7320:22c85b8232cc

Datacage ref doc: Move dc:if & dc:choose up because they are more important than other elements.
author Sascha L. Teichmann <teichmann@intevation.de>
date Mon, 14 Oct 2013 15:55:36 +0200
parents d29a5e703cc4
children b33a2a437ab8
comparison
equal deleted inserted replaced
7319:d29a5e703cc4 7320:22c85b8232cc
199 <zahl wert="3"/> 199 <zahl wert="3"/>
200 </zahlen> 200 </zahlen>
201 201
202 ``dc:iterate`` **TODO** 202 ``dc:iterate`` **TODO**
203 203
204 Makros
205 ~~~~~~
206 Um innerhalb des Definitionsdokumentes Wiederholungen zu vermeiden, können sogenannte
207 Makros definiert werden, die dann von anderer Stellen aus eingefügt werden können.
208
209 ``dc:macro`` Wiederverwendbare Teile definieren
210 ...............................................
211
212 .. code:: xml
213
214 <dc:macro name="Name">
215 ...
216 </dc:macro>
217
218 Definiert ein Makro namens Name. Nach der Definition ist dieses dann unter diesem
219 Namen global innerhalb des Definitionsdokumentes bekannt. Makros können geschachtelt
220 werden. Auch eingeschachtelte Makros sind global sichtbar. Die Makrodefinition und
221 ihre eingeschalteten Elemente werden nicht in das Ausgabedokument übernommen.
222
223 ``dc:call-macro`` Makros aufrufen
224
225 .. code:: xml
226
227 <dc:call-macro name="Name">
228
229 Ruft ein Makro names Name auf. Dieses muss mit `dc:macro` definiert sein. Die Reihenfolge
230 von Definition und Aufruf ist egal.
231
232 ``dc:macro-body`` Elemente an ein Makro übergeben
233 .................................................
234
235 .. code:: xml
236
237 <dc:macro name="Name">
238 ...
239 <dc:macro-body/>
240 ...
241 </dc:macro>
242
243 Um an Makros weitere Bausteine als Argument übergeben zu können, ist es optional
244 möglich innerhalb einer Makrodefinition ein Element `dc:macro-body` einzufügen.
245 Dieses Element expandiert sich zum Inhalt des `dc:call-macro`-Aufrufs.
246
247 .. code:: xml
248
249 <dc:call-macro name="Name">Inhalt von dc:macro-body</dc:call-macro>
250
251 Zur Verdeutlichung ein konkretes Beispiel
252
253 .. code:: xml
254
255 <dc:macro name="Greetings">
256 <Hallo>
257 <dc:macro-body/>
258 </Hallo>
259 </dc:macro>
260
261 <dc:call-macro name="Greetings">Welt</dc:call-macro>
262 <dc:call-macro name="Greetings">Mond</dc:call-macro>
263
264 Dies produziert folgende Ausgabe
265
266 .. code:: xml
267
268 <Hallo>Welt</Hallo>
269 <Hallo>Mond</Hallo>
270
271 Das Haupteinsatzgebiet dieses Konstruktes ist die transparente Bereitstellung
272 von Kontexten, die dann verschiedentlich ausgewertet werden sollen.
273
274 Sonstige Elemente
275 ~~~~~~~~~~~~~~~~~
276
277 ``dc:element`` Hinzufügen neuer Elemente in der Ausgabe
278 .......................................................
279
280 .. code:: xml
281
282 <dc:element name="Name">
283 ...
284 </dc:element>
285
286 Erzeugt ein Element namens Name. Für den Namen gelten die `${}-Ersetzungen`_.
287
288
289 ``dc:attribute`` Hinzufügen neuer Attribute zum umgebenden Ausgabeelement
290 .........................................................................
291
292 .. code:: xml
293
294 <dc:attribute name="Name" value="Wert"/>
295
296 Fügt dem umgebenden Ausgabeelement ein weiteres Attribut namens Name mit dem
297 Wert von Wert hinzu. Für Namen und Wert gelten die `${}-Ersetzungen`_.
298 Der Einsatz dieses Konstrukts findet häufig im Zusammenhang mit dc:element
299 seinen Einsatz, wenn es ein Ausgabeelement vollständig aus Variablenbelegungen
300 erstellt werden soll.
301
302 ``dc:comment`` Kommentare im Beschreibungsdokument
303 ..................................................
304
305 .. code:: xml
306
307 <dc:comment>
308 ...
309 </dc:comment>
310
311 Ein Kommentar auf Ebene des Beschreibungsdokumentes, das keinerlei Ausgabe
312 im Ausgabedokument erzeugt. Eingeschachtelte Elemente werden ebenfalls nicht ausgewertet.
313 Im Gegensatz dazu werden die XML-typischen **<!-- Kommetare -->** in das Ausgabedokument übernommen!
314
315
316 ``dc:message`` Ausgabe auf die Diagnoseausgabe (Log)
317 ....................................................
318
319 .. code:: xml
320
321 <dc:message>
322 Text für die Diagnose.
323 </dc:message>
324
325 Gibt den Text innerhalb des Elementes aus Ausgabe im Log aus. Dies dient in erster Linie
326 dem Nachvollziehen von Aufrufen innerhalb des Datenkorbdokumentes. Für den Text gelten
327 die `{$}-Ersetzungen`_.
328
329 ``dc:variable`` Erzeugung einer kontext-lokalen Variablen
330 .........................................................
331
332 .. code:: xml
333
334 <dc:variable name="Name" type="Typ" expr="XPath-Ausdruck"/>
335
336 Legt im aktuellen Kontext eine lokale Variable namens Name an. Diese hat den
337 Typ Typ und entsteht durch Auswertung des XPath-Ausdruck expr. Der Typ
338 ist optional. Wird dieser nicht gesetzt, wird das Ergebnis als String interpretiert.
339 Alternativ können hier die Werte 'number' für Zahlen, 'bool' für Boolean-Werte
340 benutzt werden. Für den Namen und den Typ gelten die `${}-Ersetzungen`_.
341 Wird der aktuellen `dc:context` verlassen, ist diese Variable nicht mehr definiert.
342
343
344 ``dc:convert`` kontext-lokale Konvertierung von Variablen
345 .........................................................
346
347 .. code:: xml
348
349 <dc:convert name="Name" type="Typ"/>
350
351 Konvertiert die Variable namens Name für die Gültigkeit des aktuellen Kontextes in
352 einen anderen Typ. Für Name und Typ gelten die `${}-Ersetzungen`_. Für die
353 Typen gilt das gleiche wie für die Typen von `dc:variable`.
354
355 Bedingte Ausführung 204 Bedingte Ausführung
356 ~~~~~~~~~~~~~~~~~~~ 205 ~~~~~~~~~~~~~~~~~~~
357 206
358 ``<dc:if>`` Einfaches Wenn-Dann ohne Sonst-Fall 207 ``<dc:if>`` Einfaches Wenn-Dann ohne Sonst-Fall
359 ............................................... 208 ...............................................
388 ``<dc:otherwise>``-Elements betreten. 237 ``<dc:otherwise>``-Elements betreten.
389 ``<dc:choose>`` ist in Symmetrie zu ``<xsl:choose>`` von XSLT entworfen worden. 238 ``<dc:choose>`` ist in Symmetrie zu ``<xsl:choose>`` von XSLT entworfen worden.
390 239
391 240
392 241
242 Makros
243 ~~~~~~
244 Um innerhalb des Definitionsdokumentes Wiederholungen zu vermeiden, können sogenannte
245 Makros definiert werden, die dann von anderer Stellen aus eingefügt werden können.
246
247 ``dc:macro`` Wiederverwendbare Teile definieren
248 ...............................................
249
250 .. code:: xml
251
252 <dc:macro name="Name">
253 ...
254 </dc:macro>
255
256 Definiert ein Makro namens Name. Nach der Definition ist dieses dann unter diesem
257 Namen global innerhalb des Definitionsdokumentes bekannt. Makros können geschachtelt
258 werden. Auch eingeschachtelte Makros sind global sichtbar. Die Makrodefinition und
259 ihre eingeschalteten Elemente werden nicht in das Ausgabedokument übernommen.
260
261 ``dc:call-macro`` Makros aufrufen
262
263 .. code:: xml
264
265 <dc:call-macro name="Name">
266
267 Ruft ein Makro names Name auf. Dieses muss mit `dc:macro` definiert sein. Die Reihenfolge
268 von Definition und Aufruf ist egal.
269
270 ``dc:macro-body`` Elemente an ein Makro übergeben
271 .................................................
272
273 .. code:: xml
274
275 <dc:macro name="Name">
276 ...
277 <dc:macro-body/>
278 ...
279 </dc:macro>
280
281 Um an Makros weitere Bausteine als Argument übergeben zu können, ist es optional
282 möglich innerhalb einer Makrodefinition ein Element `dc:macro-body` einzufügen.
283 Dieses Element expandiert sich zum Inhalt des `dc:call-macro`-Aufrufs.
284
285 .. code:: xml
286
287 <dc:call-macro name="Name">Inhalt von dc:macro-body</dc:call-macro>
288
289 Zur Verdeutlichung ein konkretes Beispiel
290
291 .. code:: xml
292
293 <dc:macro name="Greetings">
294 <Hallo>
295 <dc:macro-body/>
296 </Hallo>
297 </dc:macro>
298
299 <dc:call-macro name="Greetings">Welt</dc:call-macro>
300 <dc:call-macro name="Greetings">Mond</dc:call-macro>
301
302 Dies produziert folgende Ausgabe
303
304 .. code:: xml
305
306 <Hallo>Welt</Hallo>
307 <Hallo>Mond</Hallo>
308
309 Das Haupteinsatzgebiet dieses Konstruktes ist die transparente Bereitstellung
310 von Kontexten, die dann verschiedentlich ausgewertet werden sollen.
311
312 Sonstige Elemente
313 ~~~~~~~~~~~~~~~~~
314
315 ``dc:element`` Hinzufügen neuer Elemente in der Ausgabe
316 .......................................................
317
318 .. code:: xml
319
320 <dc:element name="Name">
321 ...
322 </dc:element>
323
324 Erzeugt ein Element namens Name. Für den Namen gelten die `${}-Ersetzungen`_.
325
326
327 ``dc:attribute`` Hinzufügen neuer Attribute zum umgebenden Ausgabeelement
328 .........................................................................
329
330 .. code:: xml
331
332 <dc:attribute name="Name" value="Wert"/>
333
334 Fügt dem umgebenden Ausgabeelement ein weiteres Attribut namens Name mit dem
335 Wert von Wert hinzu. Für Namen und Wert gelten die `${}-Ersetzungen`_.
336 Der Einsatz dieses Konstrukts findet häufig im Zusammenhang mit dc:element
337 seinen Einsatz, wenn es ein Ausgabeelement vollständig aus Variablenbelegungen
338 erstellt werden soll.
339
340 ``dc:comment`` Kommentare im Beschreibungsdokument
341 ..................................................
342
343 .. code:: xml
344
345 <dc:comment>
346 ...
347 </dc:comment>
348
349 Ein Kommentar auf Ebene des Beschreibungsdokumentes, das keinerlei Ausgabe
350 im Ausgabedokument erzeugt. Eingeschachtelte Elemente werden ebenfalls nicht ausgewertet.
351 Im Gegensatz dazu werden die XML-typischen **<!-- Kommetare -->** in das Ausgabedokument übernommen!
352
353
354 ``dc:message`` Ausgabe auf die Diagnoseausgabe (Log)
355 ....................................................
356
357 .. code:: xml
358
359 <dc:message>
360 Text für die Diagnose.
361 </dc:message>
362
363 Gibt den Text innerhalb des Elementes aus Ausgabe im Log aus. Dies dient in erster Linie
364 dem Nachvollziehen von Aufrufen innerhalb des Datenkorbdokumentes. Für den Text gelten
365 die `{$}-Ersetzungen`_.
366
367 ``dc:variable`` Erzeugung einer kontext-lokalen Variablen
368 .........................................................
369
370 .. code:: xml
371
372 <dc:variable name="Name" type="Typ" expr="XPath-Ausdruck"/>
373
374 Legt im aktuellen Kontext eine lokale Variable namens Name an. Diese hat den
375 Typ Typ und entsteht durch Auswertung des XPath-Ausdruck expr. Der Typ
376 ist optional. Wird dieser nicht gesetzt, wird das Ergebnis als String interpretiert.
377 Alternativ können hier die Werte 'number' für Zahlen, 'bool' für Boolean-Werte
378 benutzt werden. Für den Namen und den Typ gelten die `${}-Ersetzungen`_.
379 Wird der aktuellen `dc:context` verlassen, ist diese Variable nicht mehr definiert.
380
381
382 ``dc:convert`` kontext-lokale Konvertierung von Variablen
383 .........................................................
384
385 .. code:: xml
386
387 <dc:convert name="Name" type="Typ"/>
388
389 Konvertiert die Variable namens Name für die Gültigkeit des aktuellen Kontextes in
390 einen anderen Typ. Für Name und Typ gelten die `${}-Ersetzungen`_. Für die
391 Typen gilt das gleiche wie für die Typen von `dc:variable`.
392
393
393 Datenkorb-Funktionen 394 Datenkorb-Funktionen
394 -------------------- 395 --------------------
395 396
396 ``dc:contains`` **TODO** 397 ``dc:contains`` **TODO**
397 398

http://dive4elements.wald.intevation.org