diff flys-artifacts/doc/conf/meta-data-system.xml @ 1015:9a1a3080ad98

Bring user specific meta data service to life. flys-artifacts/trunk@2461 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 03 Aug 2011 16:40:04 +0000
parents
children a60d2a46f0a8
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/flys-artifacts/doc/conf/meta-data-system.xml	Wed Aug 03 16:40:04 2011 +0000
@@ -0,0 +1,258 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<dc:template xmlns:dc="http://www.intevation.org/2011/Datacage">
+<datacage>
+  <dc:context>
+    <dc:statement>
+      SELECT id AS river_id, name as river_name FROM rivers
+      WHERE name ILIKE ${river}
+    </dc:statement>
+    <dc:elements>
+      <river>
+        <dc:attribute name="name" value="${river_name}"/>
+        <dc:attribute name="db-id" value="${river_id}"/>
+        <dc:if test="dc:contains($artifact-outs, 'computed_discharge_curve')">
+            <discharge-table-nn>
+              <discharge-table-gauge>
+                <dc:context>
+                  <dc:statement>
+                    SELECT id   AS gauge_id,
+                           name AS gauge_name
+                    FROM gauges WHERE river_id = ${river_id}
+                  </dc:statement>
+                  <dc:elements>
+                    <gauge>
+                      <dc:attribute name="name" value="${gauge_name}"/>
+                      <dc:attribute name="db-id" value="${gauge_id}"/>
+                      <dc:context>
+                        <dc:statement>
+                          SELECT description   AS gauge_desc, 
+                                 d.id          AS discharge_id,
+                                 ti.start_time AS g_start, 
+                                 ti.stop_time  AS g_stop
+                          FROM discharge_tables d JOIN time_intervals ti 
+                          ON d.time_interval_id = ti.id
+                          WHERE d.gauge_id = ${gauge_id} AND d.kind = 1
+                        </dc:statement>
+                        <dc:elements>
+                          <historical>
+                            <dc:attribute name="name" value="${gauge_desc}"/>
+                            <dc:attribute name="from" value="${g_start}"/>
+                            <dc:attribute name="to" value="${g_stop}"/>
+                            <dc:attribute name="db-id" value="${discharge_id}"/></historical>
+                        </dc:elements>
+                      </dc:context>
+                    </gauge>
+                  </dc:elements>
+                </dc:context>
+              </discharge-table-gauge>
+              <fixations>
+                <dc:attribute name="id" value="fixations-${river_id}"/>
+                <dc:context>
+                  <dc:statement>
+                    SELECT id          AS fix_id,
+                           description AS fix_description
+                    FROM wsts WHERE kind = 2 AND river_id = ${river_id}
+                  </dc:statement>
+                  <dc:elements>
+                    <fixation>
+                      <dc:attribute name="name" value="${fix_description}"/>
+                      <dc:attribute name="db-id" value="${fix_id}"/>
+                      <columns>
+                        <dc:context>
+                          <dc:statement>
+                            SELECT id   AS fix_column_id,
+                                   name AS fix_column_name
+                            FROM wst_columns WHERE wst_id = ${fix_id}
+                            ORDER by position
+                          </dc:statement>
+                          <dc:elements>
+                            <column>
+                              <dc:attribute name="name" value="${fix_column_name}"/>
+                              <dc:attribute name="db-id" value="${fix_column_id}"/></column>
+                          </dc:elements>
+                        </dc:context>
+                      </columns>
+                    </fixation>
+                  </dc:elements>
+                </dc:context>
+              </fixations>
+              <flood-protections>
+                <dc:attribute name="id" value="flood-protections-${river_id}"/>
+                <dc:context>
+                  <dc:statement>
+                    SELECT id          AS prot_id,
+                           description AS prot_description
+                    FROM wsts WHERE kind = 5 AND river_id = ${river_id}
+                  </dc:statement>
+                  <dc:elements>
+                    <flood-protection>
+                      <dc:attribute name="name" value="${prot_description}"/>
+                      <dc:attribute name="db-id" value="${prot_id}"/>
+                      <columns>
+                        <dc:context>
+                          <dc:statement>
+                            SELECT id   AS prot_column_id,
+                                   name AS prot_column_name
+                            FROM wst_columns WHERE wst_id = ${prot_id}
+                            ORDER by position
+                          </dc:statement>
+                          <dc:elements>
+                            <column>
+                              <dc:attribute name="name" value="${prot_column_name}"/>
+                              <dc:attribute name="db-id" value="${prot_column_id}"/></column>
+                          </dc:elements>
+                        </dc:context>
+                      </columns>
+                    </flood-protection>
+                  </dc:elements>
+                </dc:context>
+              </flood-protections>
+              <flood-water-marks>
+                <dc:attribute name="id" value="flood-water-marks-${river_id}"/>
+                <dc:context>
+                  <dc:statement>
+                    SELECT id          AS fw_id,
+                           description AS fw_description
+                    FROM wsts WHERE kind = 4 AND river_id = ${river_id}
+                  </dc:statement>
+                  <dc:elements>
+                    <flood-water-mark>
+                      <dc:attribute name="name" value="${fw_description}"/>
+                      <dc:attribute name="db-id" value="${fw_id}"/>
+                      <columns>
+                        <dc:context>
+                          <dc:statement>
+                            SELECT id   AS fw_column_id,
+                                   name AS fw_column_name
+                            FROM wst_columns WHERE wst_id = ${fw_id}
+                            ORDER by position
+                          </dc:statement>
+                          <dc:elements>
+                            <column>
+                              <dc:attribute name="name" value="${fw_column_name}"/>
+                              <dc:attribute name="db-id" value="${fw_column_id}"/></column>
+                          </dc:elements>
+                        </dc:context>
+                      </columns>
+                    </flood-water-mark>
+                  </dc:elements>
+                </dc:context>
+              </flood-water-marks>
+              <water-levels>
+                <dc:attribute name="id" value="water-levels-${river_id}"/>
+                <dc:context>
+                  <dc:statement>
+                    SELECT id          AS wl_id,
+                           description AS wl_description
+                    FROM wsts WHERE kind = 0 AND river_id = ${river_id}
+                  </dc:statement>
+                  <dc:elements>
+                    <water-level>
+                      <dc:attribute name="name" value="${wl_description}"/>
+                      <dc:attribute name="db-id" value="${wl_id}"/>
+                      <columns>
+                        <dc:context>
+                          <dc:statement>
+                            SELECT id   AS wl_column_id,
+                                   name AS wl_column_name
+                            FROM wst_columns WHERE wst_id = ${wl_id}
+                            ORDER by position
+                          </dc:statement>
+                          <dc:elements>
+                            <column>
+                              <dc:attribute name="name" value="${wl_column_name}"/>
+                              <dc:attribute name="db-id" value="${wl_column_id}"/></column>
+                          </dc:elements>
+                        </dc:context>
+                      </columns>
+                    </water-level>
+                  </dc:elements>
+                </dc:context>
+              </water-levels>
+              <extra-longitudinal-sections>
+                <dc:attribute name="id" value="extra-longitudinal-sections-${river_id}"/>
+                <dc:context>
+                  <dc:statement>
+                    SELECT id          AS els_id,
+                           description AS els_description
+                    FROM wsts WHERE kind = 1 AND river_id = ${river_id}
+                  </dc:statement>
+                  <dc:elements>
+                    <extra-longitudinal-section>
+                      <dc:attribute name="name" value="${els_description}"/>
+                      <dc:attribute name="db-id" value="${els_id}"/>
+                      <columns>
+                        <dc:context>
+                          <dc:statement>
+                            SELECT id   AS els_column_id,
+                                   name AS els_column_name
+                            FROM wst_columns WHERE wst_id = ${els_id}
+                            ORDER by position
+                          </dc:statement>
+                          <dc:elements>
+                            <column>
+                                <dc:attribute name="name" value="${els_column_name}"/>
+                                <dc:attribute name="db-id" value="${els_column_id}"/></column>
+                          </dc:elements>
+                        </dc:context>
+                      </columns>
+                    </extra-longitudinal-section>
+                  </dc:elements>
+                </dc:context>
+              </extra-longitudinal-sections>
+            </discharge-table-nn>
+        </dc:if>
+        <dc:if test="dc:contains($artifact-outs, 'longitudinal_section')">
+            <longitudinal-section>
+              <fixations><dc:attribute name="ref" value="fixations-${river_id}"/></fixations>
+              <flood-protections><dc:attribute name="ref" value="flood-protections-${river_id}"/></flood-protections>
+              <flood-water-marks><dc:attribute name="ref" value="flood-water-marks-${river_id}"/></flood-water-marks>
+              <water-levels><dc:attribute name="ref" value="water-levels-${river_id}"/></water-levels>
+              <extra-longitudinal-sections><dc:attribute name="ref" value="extra-longitudinal-sections-${river_id}"/></extra-longitudinal-sections>
+            </longitudinal-section>
+        </dc:if>
+        <dc:if test="dc:contains($artifact-outs, 'floodmap')">
+            <floodmap>
+            <dc:choose>
+                <dc:when test="dc:contains($parameters, 'recommended')">
+                  <dc:call-macro name="flood-map-recommended"/>
+                </dc:when>
+                <dc:otherwise>
+                  <dc:call-macro name="flood-map-complete"/>
+                </dc:otherwise>
+            </dc:choose>
+            </floodmap>
+            <dc:macro name="flood-map-recommended">
+                <kilometrage>
+                    <riveraxis>
+                        <dc:attribute name="factory" value="riveraxis"/>
+                        <dc:attribute name="db-ids" value="${river_id}"/>
+                    </riveraxis>
+                </kilometrage>
+                <rastermap>
+                    <background>
+                        <dc:attribute name="factory" value="wmsbackground"/>
+                        <dc:attribute name="db-ids" value="${river_id}"/>
+                    </background>
+                </rastermap>
+            </dc:macro>
+            <dc:macro name="flood-map-complete">
+                <kilometrage>
+                    <riveraxis>
+                        <dc:attribute name="factory" value="riveraxis"/>
+                        <dc:attribute name="db-ids" value="${river_id}"/>
+                    </riveraxis>
+                </kilometrage>
+                <rastermap>
+                    <background>
+                        <dc:attribute name="factory" value="wmsbackground"/>
+                        <dc:attribute name="db-ids" value="${river_id}"/>
+                    </background>
+                </rastermap>
+            </dc:macro>
+        </dc:if>
+      </river>
+    </dc:elements>
+  </dc:context>
+</datacage>
+</dc:template>

http://dive4elements.wald.intevation.org