comparison artifacts/doc/conf/meta-data.xml @ 9515:4efaa2622c43

Formatting
author gernotbelger
date Mon, 01 Oct 2018 14:19:42 +0200
parents 8b7bf26b8782
children 2e6fd354dd8e
comparison
equal deleted inserted replaced
9514:ee6508687e3f 9515:4efaa2622c43
1 <?xml version="1.0" encoding="UTF-8"?> 1 <?xml version="1.0" encoding="UTF-8"?>
2 <dc:template xmlns:dc="http://www.intevation.org/2011/Datacage"> 2 <dc:template xmlns:dc="http://www.intevation.org/2011/Datacage">
3 <datacage> 3 <datacage>
4 4
5 <dc:call-macro name="load-user" /> 5 <dc:call-macro name="load-user"/>
6 6
7 <dc:call-macro name="load-system" /> 7 <dc:call-macro name="load-system"/>
8 8
9 <dc:macro name="load-system"> 9 <dc:macro name="load-system">
10 <dc:context connection="system"> 10 <dc:context connection="system">
11 <dc:statement> 11 <dc:statement>
12 SELECT id AS river_id, name AS river_name 12 SELECT id AS river_id, name AS river_name
13 FROM rivers 13 FROM rivers
14 WHERE lower(name) LIKE lower(${river}) 14 WHERE lower(name) LIKE lower(${river})
15 </dc:statement> 15 </dc:statement>
16 <dc:for-each> 16 <dc:for-each>
17 <dc:call-macro name="generate-system-content" /> 17 <dc:call-macro name="generate-system-content"/>
18 </dc:for-each> 18 </dc:for-each>
19 </dc:context> 19 </dc:context>
20 </dc:macro> 20 </dc:macro>
21 21
22 <dc:macro name="load-user"> 22 <dc:macro name="load-user">
23 <old_calculations> 23 <old_calculations>
24 <dc:call-macro name="generate-user-content" /> 24 <dc:call-macro name="generate-user-content"/>
25 </old_calculations> 25 </old_calculations>
26 </dc:macro> 26 </dc:macro>
27 27
28 <dc:macro name="generate-system-content"> 28 <dc:macro name="generate-system-content">
29 <dc:message>Generate system content with variables: {dc:dump-variables()}</dc:message> 29 <dc:message>Generate system content with variables: {dc:dump-variables()}</dc:message>
37 <dc:iterate var="out" container="artifact-outs"> 37 <dc:iterate var="out" container="artifact-outs">
38 <dc:message>Rec out iteration for: {$out}</dc:message> 38 <dc:message>Rec out iteration for: {$out}</dc:message>
39 <dc:choose> 39 <dc:choose>
40 <dc:comment> Longitudinal sections </dc:comment> 40 <dc:comment> Longitudinal sections </dc:comment>
41 <dc:when test="$out = 'w_differences'"> 41 <dc:when test="$out = 'w_differences'">
42 <dc:call-macro name="annotations" /> 42 <dc:call-macro name="annotations"/>
43 </dc:when> 43 </dc:when>
44 <dc:when test="$out = 'discharge_longitudinal_section'"> 44 <dc:when test="$out = 'discharge_longitudinal_section'">
45 <dc:call-macro name="annotations" /> 45 <dc:call-macro name="annotations"/>
46 <dc:call-macro name="officiallines_user" /> 46 <dc:call-macro name="officiallines_user"/>
47 </dc:when> 47 </dc:when>
48 <dc:when test="$out = 'longitudinal_section'"> 48 <dc:when test="$out = 'longitudinal_section'">
49 <dc:call-macro name="annotations" /> 49 <dc:call-macro name="annotations"/>
50 <dc:call-macro name="officiallines_user" /> 50 <dc:call-macro name="officiallines_user"/>
51 </dc:when> 51 </dc:when>
52 <dc:when test="$out = 'fix_longitudinal_section_curve'"> 52 <dc:when test="$out = 'fix_longitudinal_section_curve'">
53 <dc:call-macro name="annotations" /> 53 <dc:call-macro name="annotations"/>
54 </dc:when> 54 </dc:when>
55 <dc:when test="$out = 'bedheight_middle'"> 55 <dc:when test="$out = 'bedheight_middle'">
56 <dc:call-macro name="annotations" /> 56 <dc:call-macro name="annotations"/>
57 </dc:when> 57 </dc:when>
58 <dc:when test="$out = 'bed_difference_year'"> 58 <dc:when test="$out = 'bed_difference_year'">
59 <dc:call-macro name="annotations" /> 59 <dc:call-macro name="annotations"/>
60 <dc:call-macro name="basedata_6_delta_w" /> 60 <dc:call-macro name="basedata_6_delta_w"/>
61 <dc:call-macro name="sounding-width-recommendations" /> 61 <dc:call-macro name="sounding-width-recommendations"/>
62 </dc:when> 62 </dc:when>
63 <dc:when test="$out = 'bed_difference_height_year'"> 63 <dc:when test="$out = 'bed_difference_height_year'">
64 <dc:call-macro name="annotations" /> 64 <dc:call-macro name="annotations"/>
65 <dc:call-macro name="basedata_6_delta_w" /> 65 <dc:call-macro name="basedata_6_delta_w"/>
66 </dc:when> 66 </dc:when>
67 <dc:when test="$out = 'sedimentload_ls'"> 67 <dc:when test="$out = 'sedimentload_ls'">
68 <dc:call-macro name="annotations" /> 68 <dc:call-macro name="annotations"/>
69 <dc:call-macro name="sedimentload_off_epochs" /> 69 <dc:call-macro name="sedimentload_off_epochs"/>
70 </dc:when> 70 </dc:when>
71 <dc:when test="$out = 'bed_longitudinal_section'"> 71 <dc:when test="$out = 'bed_longitudinal_section'">
72 <dc:call-macro name="annotations" /> 72 <dc:call-macro name="annotations"/>
73 </dc:when> 73 </dc:when>
74 <dc:when test="$out = 'flow_velocity'"> 74 <dc:when test="$out = 'flow_velocity'">
75 <dc:call-macro name="annotations" /> 75 <dc:call-macro name="annotations"/>
76 </dc:when> 76 </dc:when>
77 <dc:comment> Discharge curves </dc:comment> 77 <dc:comment> Discharge curves </dc:comment>
78 <dc:when test="$out = 'historical_discharge_wq'"> 78 <dc:when test="$out = 'historical_discharge_wq'">
79 <dc:call-macro name="hist_discharge_rec" /> 79 <dc:call-macro name="hist_discharge_rec"/>
80 <dc:call-macro name="mainvalues" /> 80 <dc:call-macro name="mainvalues"/>
81 </dc:when> 81 </dc:when>
82 <dc:when test="$out = 'discharge_curve'"> 82 <dc:when test="$out = 'discharge_curve'">
83 <dc:call-macro name="mainvalues" /> 83 <dc:call-macro name="mainvalues"/>
84 <dc:call-macro name="basedata_3_officials_wq" /> 84 <dc:call-macro name="basedata_3_officials_wq"/>
85 </dc:when> 85 </dc:when>
86 <dc:when test="$out = 'computed_discharge_curve'"> 86 <dc:when test="$out = 'computed_discharge_curve'">
87 <dc:call-macro name="mainvalues" /> 87 <dc:call-macro name="mainvalues"/>
88 <dc:call-macro name="basedata_3_officials_wq" /> 88 <dc:call-macro name="basedata_3_officials_wq"/>
89 <dc:call-macro name="basedata_2_fixations_wq" /> 89 <dc:call-macro name="basedata_2_fixations_wq"/>
90 </dc:when> 90 </dc:when>
91 <dc:when test="$out = 'fix_wq_curve'"> 91 <dc:when test="$out = 'fix_wq_curve'">
92 <dc:call-macro name="mainvalues" /> 92 <dc:call-macro name="mainvalues"/>
93 <dc:call-macro name="qsectors" /> 93 <dc:call-macro name="qsectors"/>
94 </dc:when> 94 </dc:when>
95 <dc:when test="$out = 'fix_derivate_curve'"> 95 <dc:when test="$out = 'fix_derivate_curve'">
96 <dc:call-macro name="qmainvalues" /> 96 <dc:call-macro name="qmainvalues"/>
97 </dc:when> 97 </dc:when>
98 <dc:when test="starts-with($out, 'sq_') and 98 <dc:when test="starts-with($out, 'sq_') and
99 not($out = 'sq_relation_export')"> 99 not($out = 'sq_relation_export')">
100 <dc:call-macro name="qmainvalues" /> 100 <dc:call-macro name="qmainvalues"/>
101 </dc:when> 101 </dc:when>
102 <dc:comment> Cross sections </dc:comment> 102 <dc:comment> Cross sections </dc:comment>
103 <dc:when test="$out = 'cross_section'"> 103 <dc:when test="$out = 'cross_section'">
104 <dc:call-macro name="cross_sections" /> 104 <dc:call-macro name="cross_sections"/>
105 <dc:call-macro name="hyks" /> 105 <dc:call-macro name="hyks"/>
106 <dc:call-macro name="officiallines_user" /> 106 <dc:call-macro name="officiallines_user"/>
107 </dc:when> 107 </dc:when>
108 <dc:comment> Duration curve </dc:comment> 108 <dc:comment> Duration curve </dc:comment>
109 <dc:when test="$out = 'duration_curve'"> 109 <dc:when test="$out = 'duration_curve'">
110 <dc:call-macro name="mainvalues" /> 110 <dc:call-macro name="mainvalues"/>
111 </dc:when> 111 </dc:when>
112 <dc:comment> Reference curve </dc:comment> 112 <dc:comment> Reference curve </dc:comment>
113 <dc:when test="$out = 'reference_curve'"> 113 <dc:when test="$out = 'reference_curve'">
114 <dc:call-macro name="mainvalues" /> 114 <dc:call-macro name="mainvalues"/>
115 </dc:when> 115 </dc:when>
116 <dc:comment> Maps </dc:comment> 116 <dc:comment> Maps </dc:comment>
117 <dc:when test="$out = 'floodmap'"> 117 <dc:when test="$out = 'floodmap'">
118 <dc:call-macro name="flood-map-recommended" /> 118 <dc:call-macro name="flood-map-recommended"/>
119 </dc:when> 119 </dc:when>
120 120
121 <dc:when test="$out = 'sinfo_flow_depth'"> 121 <dc:when test="$out = 'sinfo_flow_depth'">
122 <dc:call-macro name="annotations" /> 122 <dc:call-macro name="annotations"/>
123 </dc:when> 123 </dc:when>
124 <dc:when test="$out = 'sinfo_flow_depth_minmax'"> 124 <dc:when test="$out = 'sinfo_flow_depth_minmax'">
125 <dc:call-macro name="annotations" /> 125 <dc:call-macro name="annotations"/>
126 </dc:when> 126 </dc:when>
127 <dc:when test="$out = 'sinfo_flow_depth_development'"> 127 <dc:when test="$out = 'sinfo_flow_depth_development'">
128 <dc:call-macro name="annotations" /> 128 <dc:call-macro name="annotations"/>
129 </dc:when> 129 </dc:when>
130 <dc:when test="$out = 'sinfo_flow_depth_development_peryear'"> 130 <dc:when test="$out = 'sinfo_flow_depth_development_peryear'">
131 <dc:call-macro name="annotations" /> 131 <dc:call-macro name="annotations"/>
132 </dc:when> 132 </dc:when>
133 <dc:when test="$out = 'sinfo_tkk'"> 133 <dc:when test="$out = 'sinfo_tkk'">
134 <dc:call-macro name="annotations" /> 134 <dc:call-macro name="annotations"/>
135 </dc:when> 135 </dc:when>
136 <dc:when test="$out = 'sinfo_collision'"> 136 <dc:when test="$out = 'sinfo_collision'">
137 <dc:call-macro name="annotations" /> 137 <dc:call-macro name="annotations"/>
138 </dc:when> 138 </dc:when>
139 <dc:when test="$out = 'sinfo_flood_duration'"> 139 <dc:when test="$out = 'sinfo_flood_duration'">
140 <dc:call-macro name="annotations" /> 140 <dc:call-macro name="annotations"/>
141 </dc:when> 141 </dc:when>
142 <dc:when test="$out = 'sinfo_flood_height'"> 142 <dc:when test="$out = 'sinfo_flood_height'">
143 <dc:call-macro name="annotations" /> 143 <dc:call-macro name="annotations"/>
144 </dc:when> 144 </dc:when>
145 <!--TODO sinfo_floodduration_curve: mainvalues wie in winfo-duration_curve unterstuetzen --> 145 <!--TODO sinfo_floodduration_curve: mainvalues wie in winfo-duration_curve unterstuetzen -->
146 <!--dc:when test="$out = 'sinfo_floodduration_curve'"> 146 <!--dc:when test="$out = 'sinfo_floodduration_curve'">
147 <dc:call-macro name="mainvalues" /> 147 <dc:call-macro name="mainvalues" />
148 </dc:when --> 148 </dc:when -->
149 <dc:when test="$out = 'uinfo_salix_line'"> 149 <dc:when test="$out = 'uinfo_salix_line'">
150 <dc:call-macro name="annotations" /> 150 <dc:call-macro name="annotations"/>
151 </dc:when> 151 </dc:when>
152 <dc:when test="$out = 'bundu_wspl_longitudinal_section'"> 152 <dc:when test="$out = 'bundu_wspl_longitudinal_section'">
153 <dc:call-macro name="annotations" /> 153 <dc:call-macro name="annotations"/>
154 </dc:when> 154 </dc:when>
155 <dc:when test="$out = 'bundu_depth_longitudinal_section'"> 155 <dc:when test="$out = 'bundu_depth_longitudinal_section'">
156 <dc:call-macro name="annotations" /> 156 <dc:call-macro name="annotations"/>
157 </dc:when> 157 </dc:when>
158 </dc:choose> 158 </dc:choose>
159 </dc:iterate> 159 </dc:iterate>
160 </dc:when> 160 </dc:when>
161 <dc:otherwise> 161 <dc:otherwise>
165 <dc:iterate var="out" container="artifact-outs"> 165 <dc:iterate var="out" container="artifact-outs">
166 <dc:message>Non Rec out iteration for: {$out}</dc:message> 166 <dc:message>Non Rec out iteration for: {$out}</dc:message>
167 <dc:choose> 167 <dc:choose>
168 <dc:comment> Inline datacage panels </dc:comment> 168 <dc:comment> Inline datacage panels </dc:comment>
169 <dc:when test="$out = 'minfo_diff_panel'"> 169 <dc:when test="$out = 'minfo_diff_panel'">
170 <dc:call-macro name="minfo-heights-diff" /> 170 <dc:call-macro name="minfo-heights-diff"/>
171 </dc:when> 171 </dc:when>
172 <dc:when test="$out = 'floodmap_dem_panel'"> 172 <dc:when test="$out = 'floodmap_dem_panel'">
173 <dc:call-macro name="flood-map-dem" /> 173 <dc:call-macro name="flood-map-dem"/>
174 </dc:when> 174 </dc:when>
175 <dc:when test="$out = 'floodmap_hws_panel'"> 175 <dc:when test="$out = 'floodmap_hws_panel'">
176 <hws> 176 <hws>
177 <dc:call-macro name="flood-map-hws-lines" /> 177 <dc:call-macro name="flood-map-hws-lines"/>
178 <dc:call-macro name="flood-map-hws-points" /> 178 <dc:call-macro name="flood-map-hws-points"/>
179 </hws> 179 </hws>
180 </dc:when> 180 </dc:when>
181 <dc:when test="$out = 'winfo_diff_twin_panel'"> 181 <dc:when test="$out = 'winfo_diff_twin_panel'">
182 <dc:if test="$current-state-id != 'state.winfo.uesk.wsp'"> 182 <dc:if test="$current-state-id != 'state.winfo.uesk.wsp'">
183 <dc:call-macro name="basedata_0" /> 183 <dc:call-macro name="basedata_0"/>
184 <dc:call-macro name="basedata_1_additionals" /> 184 <dc:call-macro name="basedata_1_additionals"/>
185 <dc:call-macro name="basedata_2_fixations" /> 185 <dc:call-macro name="basedata_2_fixations"/>
186 <dc:call-macro name="basedata_4_heightmarks-points" /> 186 <dc:call-macro name="basedata_4_heightmarks-points"/>
187 <dc:call-macro name="basedata_5_flood-protections" /> 187 <dc:call-macro name="basedata_5_flood-protections"/>
188 </dc:if> 188 </dc:if>
189 </dc:when> 189 </dc:when>
190 <dc:when test="$out = 'waterlevels_panel'"> 190 <dc:when test="$out = 'waterlevels_panel'">
191 <dc:call-macro name="basedata_0" /> 191 <dc:call-macro name="basedata_0"/>
192 <dc:call-macro name="basedata_1_additionals" /> 192 <dc:call-macro name="basedata_1_additionals"/>
193 <dc:call-macro name="basedata_2_fixations" /> 193 <dc:call-macro name="basedata_2_fixations"/>
194 <dc:call-macro name="basedata_3_officials" /> 194 <dc:call-macro name="basedata_3_officials"/>
195 <dc:call-macro name="basedata_4_heightmarks-points" /> 195 <dc:call-macro name="basedata_4_heightmarks-points"/>
196 <dc:call-macro name="basedata_5_flood-protections" /> 196 <dc:call-macro name="basedata_5_flood-protections"/>
197 </dc:when> 197 </dc:when>
198 <dc:comment> Longitudinal sections </dc:comment> 198 <dc:comment> Longitudinal sections </dc:comment>
199 <dc:when test="$out = 'longitudinal_section'"> 199 <dc:when test="$out = 'longitudinal_section'">
200 <dc:call-macro name="longitudinal-section-prototype" /> 200 <dc:call-macro name="longitudinal-section-prototype"/>
201 </dc:when> 201 </dc:when>
202 <dc:when test="$out = 'w_differences'"> 202 <dc:when test="$out = 'w_differences'">
203 <dc:call-macro name="longitudinal-section-prototype" /> 203 <dc:call-macro name="longitudinal-section-prototype"/>
204 </dc:when> 204 </dc:when>
205 <dc:when test="$out = 'discharge_longitudinal_section'"> 205 <dc:when test="$out = 'discharge_longitudinal_section'">
206 <dc:call-macro name="longitudinal-section-prototype" /> 206 <dc:call-macro name="longitudinal-section-prototype"/>
207 </dc:when> 207 </dc:when>
208 <dc:when test="$out = 'fix_longitudinal_section_curve'"> 208 <dc:when test="$out = 'fix_longitudinal_section_curve'">
209 <dc:call-macro name="longitudinal-section-prototype" /> 209 <dc:call-macro name="longitudinal-section-prototype"/>
210 </dc:when> 210 </dc:when>
211 <dc:when test="$out = 'flow_velocity'"> 211 <dc:when test="$out = 'flow_velocity'">
212 <dc:call-macro name="longitudinal-section-prototype" /> 212 <dc:call-macro name="longitudinal-section-prototype"/>
213 </dc:when> 213 </dc:when>
214 <dc:when test="$out = 'bed_longitudinal_section'"> 214 <dc:when test="$out = 'bed_longitudinal_section'">
215 <dc:call-macro name="longitudinal-section-prototype" /> 215 <dc:call-macro name="longitudinal-section-prototype"/>
216 </dc:when> 216 </dc:when>
217 <dc:when test="$out = 'sedimentload_ls'"> 217 <dc:when test="$out = 'sedimentload_ls'">
218 <dc:call-macro name="longitudinal-section-prototype" /> 218 <dc:call-macro name="longitudinal-section-prototype"/>
219 </dc:when> 219 </dc:when>
220 <dc:when test="$out = 'bedheight_middle'"> 220 <dc:when test="$out = 'bedheight_middle'">
221 <dc:call-macro name="longitudinal-section-prototype" /> 221 <dc:call-macro name="longitudinal-section-prototype"/>
222 </dc:when> 222 </dc:when>
223 <dc:when test="$out = 'bed_difference_height_year'"> 223 <dc:when test="$out = 'bed_difference_height_year'">
224 <dc:call-macro name="longitudinal-section-prototype" /> 224 <dc:call-macro name="longitudinal-section-prototype"/>
225 </dc:when> 225 </dc:when>
226 <dc:when test="$out = 'bed_difference_year'"> 226 <dc:when test="$out = 'bed_difference_year'">
227 <dc:call-macro name="longitudinal-section-prototype" /> 227 <dc:call-macro name="longitudinal-section-prototype"/>
228 </dc:when> 228 </dc:when>
229 <dc:comment> Discharge curves </dc:comment> 229 <dc:comment> Discharge curves </dc:comment>
230 <dc:when test="$out = 'historical_discharge_wq'"> 230 <dc:when test="$out = 'historical_discharge_wq'">
231 <dc:call-macro name="discharge-curve-prototype" /> 231 <dc:call-macro name="discharge-curve-prototype"/>
232 </dc:when> 232 </dc:when>
233 <dc:when test="$out = 'discharge_curve'"> 233 <dc:when test="$out = 'discharge_curve'">
234 <dc:call-macro name="discharge-curve-prototype" /> 234 <dc:call-macro name="discharge-curve-prototype"/>
235 </dc:when> 235 </dc:when>
236 <dc:when test="$out = 'fix_wq_curve'"> 236 <dc:when test="$out = 'fix_wq_curve'">
237 <dc:call-macro name="discharge-curve-prototype" /> 237 <dc:call-macro name="discharge-curve-prototype"/>
238 </dc:when> 238 </dc:when>
239 <dc:when test="$out = 'fix_derivate_curve'"> 239 <dc:when test="$out = 'fix_derivate_curve'">
240 <dc:call-macro name="discharge-curve-prototype" /> 240 <dc:call-macro name="discharge-curve-prototype"/>
241 </dc:when> 241 </dc:when>
242 <dc:when test="$out = 'computed_discharge_curve'"> 242 <dc:when test="$out = 'computed_discharge_curve'">
243 <dc:call-macro name="discharge-curve-prototype" /> 243 <dc:call-macro name="discharge-curve-prototype"/>
244 </dc:when> 244 </dc:when>
245 <dc:when test="starts-with($out, 'sq_relation') or 245 <dc:when test="starts-with($out, 'sq_relation') or
246 $out = 'sq_overview'"> 246 $out = 'sq_overview'">
247 <dc:call-macro name="discharge-curve-prototype" /> 247 <dc:call-macro name="discharge-curve-prototype"/>
248 </dc:when> 248 </dc:when>
249 <dc:comment> Cross sections </dc:comment> 249 <dc:comment> Cross sections </dc:comment>
250 <dc:when test="$out = 'cross_section'"> 250 <dc:when test="$out = 'cross_section'">
251 <dc:call-macro name="basedata_0" /> 251 <dc:call-macro name="basedata_0"/>
252 <dc:call-macro name="basedata_1_additionals" /> 252 <dc:call-macro name="basedata_1_additionals"/>
253 <dc:call-macro name="basedata_2_fixations" /> 253 <dc:call-macro name="basedata_2_fixations"/>
254 <dc:call-macro name="basedata_3_officials" /> 254 <dc:call-macro name="basedata_3_officials"/>
255 <dc:call-macro name="basedata_4_heightmarks-points" /> 255 <dc:call-macro name="basedata_4_heightmarks-points"/>
256 <dc:call-macro name="cross_sections" /> 256 <dc:call-macro name="cross_sections"/>
257 <dc:call-macro name="basedata_5_flood-protections" /> 257 <dc:call-macro name="basedata_5_flood-protections"/>
258 <dc:call-macro name="hyks" /> 258 <dc:call-macro name="hyks"/>
259 <dc:call-macro name="predefined_vegetation_zones" /> 259 <dc:call-macro name="predefined_vegetation_zones"/>
260 </dc:when> 260 </dc:when>
261 <dc:comment> Duration curve </dc:comment> 261 <dc:comment> Duration curve </dc:comment>
262 <dc:when test="$out = 'duration_curve'"> 262 <dc:when test="$out = 'duration_curve'">
263 <dc:call-macro name="mainvalues" /> 263 <dc:call-macro name="mainvalues"/>
264 <dc:call-macro name="basedata_2_fixations_relative_point" /> 264 <dc:call-macro name="basedata_2_fixations_relative_point"/>
265 <dc:call-macro name="basedata_4_heightmarks-points-relative_points" /> 265 <dc:call-macro name="basedata_4_heightmarks-points-relative_points"/>
266 <dc:call-macro name="basedata_5_flood-protections_relative_points" /> 266 <dc:call-macro name="basedata_5_flood-protections_relative_points"/>
267 </dc:when> 267 </dc:when>
268 <dc:comment> Reference curve </dc:comment> 268 <dc:comment> Reference curve </dc:comment>
269 <dc:when test="$out = 'reference_curve'"> 269 <dc:when test="$out = 'reference_curve'">
270 <dc:call-macro name="mainvalues" /> 270 <dc:call-macro name="mainvalues"/>
271 <dc:call-macro name="annotations" /> 271 <dc:call-macro name="annotations"/>
272 <dc:call-macro name="basedata_1_additionals-relative_point" /> 272 <dc:call-macro name="basedata_1_additionals-relative_point"/>
273 <dc:call-macro name="basedata_2_fixations_relative_point" /> 273 <dc:call-macro name="basedata_2_fixations_relative_point"/>
274 <dc:call-macro name="basedata_4_heightmarks-points-relative_points" /> 274 <dc:call-macro name="basedata_4_heightmarks-points-relative_points"/>
275 <dc:call-macro name="basedata_5_flood-protections_relative_points" /> 275 <dc:call-macro name="basedata_5_flood-protections_relative_points"/>
276 </dc:when> 276 </dc:when>
277 <dc:comment> Maps </dc:comment> 277 <dc:comment> Maps </dc:comment>
278 <dc:when test="$out = 'map'"> 278 <dc:when test="$out = 'map'">
279 <dc:call-macro name="flood-map-complete" /> 279 <dc:call-macro name="flood-map-complete"/>
280 </dc:when> 280 </dc:when>
281 <dc:when test="$out = 'floodmap'"> 281 <dc:when test="$out = 'floodmap'">
282 <dc:call-macro name="flood-map-complete" /> 282 <dc:call-macro name="flood-map-complete"/>
283 </dc:when> 283 </dc:when>
284 284
285 <dc:comment> S-INFO </dc:comment> 285 <dc:comment> S-INFO </dc:comment>
286 <dc:when test="$out = 'sinfo_flowdepth_minfo_heights'"> 286 <dc:when test="$out = 'sinfo_flowdepth_minfo_heights'">
287 <dc:call-macro name="bed-heights-single-MW" /> 287 <dc:call-macro name="bed-heights-single-MW"/>
288 </dc:when> 288 </dc:when>
289 <dc:when test="$out = 'sinfo_flowdepthminmax_heights'"> 289 <dc:when test="$out = 'sinfo_flowdepthminmax_heights'">
290 <dc:call-macro name="bed-heights-single-KL_TW" /> 290 <dc:call-macro name="bed-heights-single-KL_TW"/>
291 </dc:when> 291 </dc:when>
292 <dc:when test="$out = 'sinfo_flowdepth_waterlevels'"> 292 <dc:when test="$out = 'sinfo_flowdepth_waterlevels'">
293 <minfo> 293 <minfo>
294 <fixanalysis> 294 <fixanalysis>
295 <dc:call-macro name="basedata_7_waterlevels" /> 295 <dc:call-macro name="basedata_7_waterlevels"/>
296 </fixanalysis> 296 </fixanalysis>
297 </minfo> 297 </minfo>
298 <dc:call-macro name="basedata_3_officials" /> 298 <dc:call-macro name="basedata_3_officials"/>
299 <dc:call-macro name="basedata_2_fixations" /> 299 <dc:call-macro name="basedata_2_fixations"/>
300 <sinfo> 300 <sinfo>
301 <sinfo_additional_ls> 301 <sinfo_additional_ls>
302 <dc:call-macro name="basedata_1_additionals-sinfo-with-q" /> 302 <dc:call-macro name="basedata_1_additionals-sinfo-with-q"/>
303 <dc:call-macro name="basedata_1_additionals-sinfo-without-q" /> 303 <dc:call-macro name="basedata_1_additionals-sinfo-without-q"/>
304 </sinfo_additional_ls> 304 </sinfo_additional_ls>
305 </sinfo> 305 </sinfo>
306 </dc:when> 306 </dc:when>
307 307
308 <dc:when test="$out = 'sinfo_flow_depth'"> 308 <dc:when test="$out = 'sinfo_flow_depth'">
309 <dc:call-macro name="longitudinal-section-prototype" /> 309 <dc:call-macro name="longitudinal-section-prototype"/>
310 </dc:when> 310 </dc:when>
311 <dc:when test="$out = 'sinfo_flow_depth_minmax'"> 311 <dc:when test="$out = 'sinfo_flow_depth_minmax'">
312 <dc:call-macro name="longitudinal-section-prototype" /> 312 <dc:call-macro name="longitudinal-section-prototype"/>
313 </dc:when> 313 </dc:when>
314 <dc:when test="$out = 'sinfo_flow_depth_development'"> 314 <dc:when test="$out = 'sinfo_flow_depth_development'">
315 <dc:call-macro name="longitudinal-section-prototype" /> 315 <dc:call-macro name="longitudinal-section-prototype"/>
316 </dc:when> 316 </dc:when>
317 <dc:when test="$out = 'sinfo_flow_depth_development_peryear'"> 317 <dc:when test="$out = 'sinfo_flow_depth_development_peryear'">
318 <dc:call-macro name="longitudinal-section-prototype" /> 318 <dc:call-macro name="longitudinal-section-prototype"/>
319 </dc:when> 319 </dc:when>
320 <dc:when test="$out = 'sinfo_tkk'"> 320 <dc:when test="$out = 'sinfo_tkk'">
321 <dc:call-macro name="longitudinal-section-prototype" /> 321 <dc:call-macro name="longitudinal-section-prototype"/>
322 </dc:when> 322 </dc:when>
323 <dc:when test="$out = 'sinfo_collision'"> 323 <dc:when test="$out = 'sinfo_collision'">
324 <dc:call-macro name="longitudinal-section-prototype" /> 324 <dc:call-macro name="longitudinal-section-prototype"/>
325 </dc:when> 325 </dc:when>
326 <dc:when test="$out = 'sinfo_flood_duration'"> 326 <dc:when test="$out = 'sinfo_flood_duration'">
327 <dc:call-macro name="longitudinal-section-prototype" /> 327 <dc:call-macro name="longitudinal-section-prototype"/>
328 </dc:when> 328 </dc:when>
329 <dc:when test="$out = 'sinfo_flood_height'"> 329 <dc:when test="$out = 'sinfo_flood_height'">
330 <dc:call-macro name="longitudinal-section-prototype" /> 330 <dc:call-macro name="longitudinal-section-prototype"/>
331 </dc:when> 331 </dc:when>
332 <!--TODO sinfo_floodduration_curve: mainvalues wie in winfo-duration_curve unterstuetzen --> 332 <!--TODO sinfo_floodduration_curve: mainvalues wie in winfo-duration_curve unterstuetzen -->
333 <!--dc:when test="$out = 'sinfo_floodduration_curve'"> 333 <!--dc:when test="$out = 'sinfo_floodduration_curve'">
334 <dc:call-macro name="mainvalues" /> 334 <dc:call-macro name="mainvalues" />
335 <dc:call-macro name="basedata_2_fixations_relative_point" /> 335 <dc:call-macro name="basedata_2_fixations_relative_point" />
336 <dc:call-macro name="basedata_4_heightmarks-points-relative_points" /> 336 <dc:call-macro name="basedata_4_heightmarks-points-relative_points" />
337 <dc:call-macro name="basedata_5_flood-protections_relative_points" /> 337 <dc:call-macro name="basedata_5_flood-protections_relative_points" />
338 </dc:when --> 338 </dc:when -->
339 339
340 <dc:when test="$out = 'uinfo_salix_line'"> 340 <dc:when test="$out = 'uinfo_salix_line'">
341 <dc:call-macro name="longitudinal-section-prototype" /> 341 <dc:call-macro name="longitudinal-section-prototype"/>
342 </dc:when> 342 </dc:when>
343 <dc:when test="$out = 'uinfo.inundation_duration.vegzoneselect'"> 343 <dc:when test="$out = 'uinfo.inundation_duration.vegzoneselect'">
344 <dc:call-macro name="predefined_vegetation_zones" /> 344 <dc:call-macro name="predefined_vegetation_zones"/>
345 </dc:when> 345 </dc:when>
346 <dc:when test="$out = 'bundu_wspl_longitudinal_section'"> 346 <dc:when test="$out = 'bundu_wspl_longitudinal_section'">
347 <dc:call-macro name="longitudinal-section-prototype" /> 347 <dc:call-macro name="longitudinal-section-prototype"/>
348 </dc:when> 348 </dc:when>
349 <dc:when test="$out = 'bundu_depth_longitudinal_section'"> 349 <dc:when test="$out = 'bundu_depth_longitudinal_section'">
350 <dc:call-macro name="longitudinal-section-prototype" /> 350 <dc:call-macro name="longitudinal-section-prototype"/>
351 </dc:when> 351 </dc:when>
352 </dc:choose> 352 </dc:choose>
353 </dc:iterate> 353 </dc:iterate>
354 </dc:otherwise> 354 </dc:otherwise>
355 </dc:choose> 355 </dc:choose>
356 </dc:call-macro> 356 </dc:call-macro>
357 </dc:call-macro> 357 </dc:call-macro>
368 Recommendations (user) 368 Recommendations (user)
369 </dc:comment> 369 </dc:comment>
370 <dc:iterate var="out" container="artifact-outs"> 370 <dc:iterate var="out" container="artifact-outs">
371 <dc:choose> 371 <dc:choose>
372 <dc:when test="$out = 'longitudinal_section'"> 372 <dc:when test="$out = 'longitudinal_section'">
373 <dc:call-macro name="officiallines_user" /> 373 <dc:call-macro name="officiallines_user"/>
374 </dc:when> 374 </dc:when>
375 </dc:choose> 375 </dc:choose>
376 </dc:iterate> 376 </dc:iterate>
377 </dc:when> 377 </dc:when>
378 <dc:otherwise> 378 <dc:otherwise>
381 </dc:comment> 381 </dc:comment>
382 <dc:iterate var="out" container="artifact-outs"> 382 <dc:iterate var="out" container="artifact-outs">
383 <dc:choose> 383 <dc:choose>
384 <dc:comment> Inline datacage panels </dc:comment> 384 <dc:comment> Inline datacage panels </dc:comment>
385 <dc:when test="$out = 'winfo_diff_twin_panel'"> 385 <dc:when test="$out = 'winfo_diff_twin_panel'">
386 <dc:call-macro name="differences-fix" /> 386 <dc:call-macro name="differences-fix"/>
387 <dc:call-macro name="differences" /> 387 <dc:call-macro name="differences"/>
388 <dc:comment comment="Candidate for:"> 388 <dc:comment comment="Candidate for:">
389 <dc:call-macro name="longitudinal-section-user-prototype" /> 389 <dc:call-macro name="longitudinal-section-user-prototype"/>
390 </dc:comment> 390 </dc:comment>
391 </dc:when> 391 </dc:when>
392 <dc:when test="$out = 'waterlevels_panel'"> 392 <dc:when test="$out = 'waterlevels_panel'">
393 <dc:call-macro name="waterlevels-user" /> 393 <dc:call-macro name="waterlevels-user"/>
394 <dc:comment comment="Candidate for:"> 394 <dc:comment comment="Candidate for:">
395 <dc:call-macro name="longitudinal-section-user-prototype" /> 395 <dc:call-macro name="longitudinal-section-user-prototype"/>
396 </dc:comment> 396 </dc:comment>
397 </dc:when> 397 </dc:when>
398 <dc:when test="$out = 'floodmap_hws_panel'"> 398 <dc:when test="$out = 'floodmap_hws_panel'">
399 <dc:call-macro name="floodmap-hws-user" /> 399 <dc:call-macro name="floodmap-hws-user"/>
400 </dc:when> 400 </dc:when>
401 <dc:comment> Longitudinal sections </dc:comment> 401 <dc:comment> Longitudinal sections </dc:comment>
402 <dc:when test="$out = 'longitudinal_section'"> 402 <dc:when test="$out = 'longitudinal_section'">
403 <dc:call-macro name="longitudinal-section-user-prototype" /> 403 <dc:call-macro name="longitudinal-section-user-prototype"/>
404 </dc:when> 404 </dc:when>
405 <dc:when test="$out = 'discharge_longitudinal_section'"> 405 <dc:when test="$out = 'discharge_longitudinal_section'">
406 <dc:call-macro name="longitudinal-section-user-prototype" /> 406 <dc:call-macro name="longitudinal-section-user-prototype"/>
407 </dc:when> 407 </dc:when>
408 <dc:when test="$out = 'w_differences'"> 408 <dc:when test="$out = 'w_differences'">
409 <dc:call-macro name="longitudinal-section-user-prototype" /> 409 <dc:call-macro name="longitudinal-section-user-prototype"/>
410 </dc:when> 410 </dc:when>
411 <dc:when test="$out = 'fix_longitudinal_section_curve'"> 411 <dc:when test="$out = 'fix_longitudinal_section_curve'">
412 <dc:call-macro name="longitudinal-section-user-prototype" /> 412 <dc:call-macro name="longitudinal-section-user-prototype"/>
413 </dc:when> 413 </dc:when>
414 <dc:when test="$out = 'bedheight_middle'"> 414 <dc:when test="$out = 'bedheight_middle'">
415 <dc:call-macro name="longitudinal-section-user-prototype" /> 415 <dc:call-macro name="longitudinal-section-user-prototype"/>
416 </dc:when> 416 </dc:when>
417 <dc:when test="$out = 'flow_velocity'"> 417 <dc:when test="$out = 'flow_velocity'">
418 <dc:call-macro name="longitudinal-section-user-prototype" /> 418 <dc:call-macro name="longitudinal-section-user-prototype"/>
419 </dc:when> 419 </dc:when>
420 <dc:when test="$out = 'bed_longitudinal_section'"> 420 <dc:when test="$out = 'bed_longitudinal_section'">
421 <dc:call-macro name="longitudinal-section-user-prototype" /> 421 <dc:call-macro name="longitudinal-section-user-prototype"/>
422 </dc:when> 422 </dc:when>
423 <dc:when test="$out = 'sedimentload_ls'"> 423 <dc:when test="$out = 'sedimentload_ls'">
424 <dc:call-macro name="longitudinal-section-user-prototype" /> 424 <dc:call-macro name="longitudinal-section-user-prototype"/>
425 </dc:when> 425 </dc:when>
426 <dc:when test="$out = 'bed_difference_year'"> 426 <dc:when test="$out = 'bed_difference_year'">
427 <dc:call-macro name="longitudinal-section-user-prototype" /> 427 <dc:call-macro name="longitudinal-section-user-prototype"/>
428 </dc:when> 428 </dc:when>
429 <dc:when test="$out = 'bed_difference_height_year'"> 429 <dc:when test="$out = 'bed_difference_height_year'">
430 <dc:call-macro name="longitudinal-section-user-prototype" /> 430 <dc:call-macro name="longitudinal-section-user-prototype"/>
431 </dc:when> 431 </dc:when>
432 <dc:when test="$out = 'sinfo_flow_depth'"> 432 <dc:when test="$out = 'sinfo_flow_depth'">
433 <dc:call-macro name="longitudinal-section-user-prototype" /> 433 <dc:call-macro name="longitudinal-section-user-prototype"/>
434 </dc:when> 434 </dc:when>
435 <dc:when test="$out = 'sinfo_flow_depth_minmax'"> 435 <dc:when test="$out = 'sinfo_flow_depth_minmax'">
436 <dc:call-macro name="longitudinal-section-user-prototype" /> 436 <dc:call-macro name="longitudinal-section-user-prototype"/>
437 </dc:when> 437 </dc:when>
438 <dc:when test="$out = 'sinfo_flow_depth_development'"> 438 <dc:when test="$out = 'sinfo_flow_depth_development'">
439 <dc:call-macro name="longitudinal-section-user-prototype" /> 439 <dc:call-macro name="longitudinal-section-user-prototype"/>
440 </dc:when> 440 </dc:when>
441 <dc:when test="$out = 'sinfo_flow_depth_development_peryear'"> 441 <dc:when test="$out = 'sinfo_flow_depth_development_peryear'">
442 <dc:call-macro name="longitudinal-section-user-prototype" /> 442 <dc:call-macro name="longitudinal-section-user-prototype"/>
443 </dc:when> 443 </dc:when>
444 <dc:when test="$out = 'sinfo_tkk'"> 444 <dc:when test="$out = 'sinfo_tkk'">
445 <dc:call-macro name="longitudinal-section-user-prototype" /> 445 <dc:call-macro name="longitudinal-section-user-prototype"/>
446 </dc:when> 446 </dc:when>
447 <dc:when test="$out = 'sinfo_collision'"> 447 <dc:when test="$out = 'sinfo_collision'">
448 <dc:call-macro name="longitudinal-section-user-prototype" /> 448 <dc:call-macro name="longitudinal-section-user-prototype"/>
449 </dc:when> 449 </dc:when>
450 <dc:when test="$out = 'sinfo_flood_duration'"> 450 <dc:when test="$out = 'sinfo_flood_duration'">
451 <dc:call-macro name="longitudinal-section-user-prototype" /> 451 <dc:call-macro name="longitudinal-section-user-prototype"/>
452 </dc:when> 452 </dc:when>
453 <dc:when test="$out = 'sinfo_flood_height'"> 453 <dc:when test="$out = 'sinfo_flood_height'">
454 <dc:call-macro name="longitudinal-section-user-prototype" /> 454 <dc:call-macro name="longitudinal-section-user-prototype"/>
455 </dc:when> 455 </dc:when>
456 <dc:when test="$out = 'uinfo_salix_line'"> 456 <dc:when test="$out = 'uinfo_salix_line'">
457 <dc:call-macro name="longitudinal-section-user-prototype" /> 457 <dc:call-macro name="longitudinal-section-user-prototype"/>
458 </dc:when> 458 </dc:when>
459 <dc:when test="$out = 'uinfo.inundation_duration.vegzoneselect'"> 459 <dc:when test="$out = 'uinfo.inundation_duration.vegzoneselect'">
460 <dc:call-macro name="vegetationzones" /> 460 <dc:call-macro name="vegetationzones"/>
461 </dc:when> 461 </dc:when>
462 <dc:when test="$out = 'bundu_wspl_longitudinal_section'"> 462 <dc:when test="$out = 'bundu_wspl_longitudinal_section'">
463 <dc:call-macro name="longitudinal-section-user-prototype" /> 463 <dc:call-macro name="longitudinal-section-user-prototype"/>
464 </dc:when> 464 </dc:when>
465 <dc:when test="$out = 'bundu_depth_longitudinal_section'"> 465 <dc:when test="$out = 'bundu_depth_longitudinal_section'">
466 <dc:call-macro name="longitudinal-section-user-prototype" /> 466 <dc:call-macro name="longitudinal-section-user-prototype"/>
467 </dc:when> 467 </dc:when>
468
469 468
470 <dc:comment> Discharge curves </dc:comment> 469 <dc:comment> Discharge curves </dc:comment>
471 <dc:when test="$out = 'computed_discharge_curve'"> 470 <dc:when test="$out = 'computed_discharge_curve'">
472 <dc:call-macro name="discharge-curve-user-prototype" /> 471 <dc:call-macro name="discharge-curve-user-prototype"/>
473 </dc:when> 472 </dc:when>
474 <dc:when test="$out = 'fix_derivate_curve'"> 473 <dc:when test="$out = 'fix_derivate_curve'">
475 <dc:call-macro name="discharge-curve-user-prototype" /> 474 <dc:call-macro name="discharge-curve-user-prototype"/>
476 </dc:when> 475 </dc:when>
477 <dc:when test="$out = 'fix_wq_curve'"> 476 <dc:when test="$out = 'fix_wq_curve'">
478 <dc:call-macro name="discharge-curve-user-prototype" /> 477 <dc:call-macro name="discharge-curve-user-prototype"/>
479 </dc:when> 478 </dc:when>
480 <dc:when test="$out = 'historical_discharge_wq'"> 479 <dc:when test="$out = 'historical_discharge_wq'">
481 <dc:call-macro name="discharge-curve-user-prototype" /> 480 <dc:call-macro name="discharge-curve-user-prototype"/>
482 </dc:when> 481 </dc:when>
483 <dc:when test="starts-with($out, 'sq_relation') or $out = 'sq_overview'"> 482 <dc:when test="starts-with($out, 'sq_relation') or $out = 'sq_overview'">
484 <dc:call-macro name="discharge-curve-user-prototype" /> 483 <dc:call-macro name="discharge-curve-user-prototype"/>
485 </dc:when> 484 </dc:when>
486 <dc:comment> Time series </dc:comment> 485 <dc:comment> Time series </dc:comment>
487 <dc:when test="$out = 'fix_deltawt_curve'"> 486 <dc:when test="$out = 'fix_deltawt_curve'">
488 <dc:call-macro name="delta-wt" /> 487 <dc:call-macro name="delta-wt"/>
489 </dc:when> 488 </dc:when>
490 <dc:when test="$out = 'historical_discharge'"> 489 <dc:when test="$out = 'historical_discharge'">
491 <dc:call-macro name="historical-discharge-user" /> 490 <dc:call-macro name="historical-discharge-user"/>
492 </dc:when> 491 </dc:when>
492
493 <dc:comment> Cross sections </dc:comment> 493 <dc:comment> Cross sections </dc:comment>
494 <dc:when test="$out = 'cross_section'"> 494 <dc:when test="$out = 'cross_section'">
495 <dc:call-macro name="cross_section_user_content" /> 495 <dc:call-macro name="cross_section_user_content"/>
496 </dc:when> 496 </dc:when>
497 <dc:comment> Duration curve </dc:comment> 497 <dc:comment> Duration curve </dc:comment>
498 <dc:when test="$out = 'duration_curve'"> 498 <dc:when test="$out = 'duration_curve'">
499 <dc:call-macro name="duration-curve" /> 499 <dc:call-macro name="duration-curve"/>
500 </dc:when> 500 </dc:when>
501 <dc:comment> Reference curve </dc:comment> 501 <dc:comment> Reference curve </dc:comment>
502 <dc:when test="$out = 'reference_curve'"> 502 <dc:when test="$out = 'reference_curve'">
503 <dc:call-macro name="reference-curves" /> 503 <dc:call-macro name="reference-curves"/>
504 </dc:when> 504 </dc:when>
505 <dc:comment> Maps </dc:comment> 505 <dc:comment> Maps </dc:comment>
506 <dc:when test="$out = 'floodmap'"> 506 <dc:when test="$out = 'floodmap'">
507 <dc:call-macro name="flood-map" /> 507 <dc:call-macro name="flood-map"/>
508 </dc:when> 508 </dc:when>
509 <dc:when test="$out = 'map'"> 509 <dc:when test="$out = 'map'">
510 <dc:call-macro name="flood-map" /> 510 <dc:call-macro name="flood-map"/>
511 </dc:when> 511 </dc:when>
512 512
513 <dc:when test="$out = 'sinfo_flowdepth_waterlevels'"> 513 <dc:when test="$out = 'sinfo_flowdepth_waterlevels'">
514 <dc:call-macro name="longitudinal-section-fix-vollmer_w" /> 514 <dc:call-macro name="longitudinal-section-fix-vollmer_w"/>
515 </dc:when> 515 </dc:when>
516 </dc:choose> 516 </dc:choose>
517 </dc:iterate> 517 </dc:iterate>
518 </dc:otherwise> 518 </dc:otherwise>
519 </dc:choose> 519 </dc:choose>
530 <historical_discharges> 530 <historical_discharges>
531 <dc:call-macro name="collection-group"> 531 <dc:call-macro name="collection-group">
532 <discharges description="{dc:group-key()}"> 532 <discharges description="{dc:group-key()}">
533 <dc:for-each> 533 <dc:for-each>
534 <dc:element name="${facet_name}"> 534 <dc:element name="${facet_name}">
535 <dc:attribute name="description" value="${facet_description}" /> 535 <dc:attribute name="description" value="${facet_description}"/>
536 <dc:attribute name="factory" value="winfo" /> 536 <dc:attribute name="factory" value="winfo"/>
537 <dc:attribute name="target_out" value="${out}" /> 537 <dc:attribute name="target_out" value="${out}"/>
538 <dc:attribute name="artifact-id" value="${a_gid}" /> 538 <dc:attribute name="artifact-id" value="${a_gid}"/>
539 <dc:attribute name="ids" value="${facet_num}" /> 539 <dc:attribute name="ids" value="${facet_num}"/>
540 <dc:attribute name="out" value="historical_discharge" /> 540 <dc:attribute name="out" value="historical_discharge"/>
541 </dc:element> 541 </dc:element>
542 </dc:for-each> 542 </dc:for-each>
543 </discharges> 543 </discharges>
544 </dc:call-macro> 544 </dc:call-macro>
545 </historical_discharges> 545 </historical_discharges>
553 <differences> 553 <differences>
554 <dc:call-macro name="collection-group"> 554 <dc:call-macro name="collection-group">
555 <differences description="{dc:group-key()}"> 555 <differences description="{dc:group-key()}">
556 <dc:for-each> 556 <dc:for-each>
557 <dc:element name="${facet_name}"> 557 <dc:element name="${facet_name}">
558 <dc:attribute name="description" value="${facet_description}" /> 558 <dc:attribute name="description" value="${facet_description}"/>
559 <dc:attribute name="factory" value="winfo" /> 559 <dc:attribute name="factory" value="winfo"/>
560 <dc:attribute name="artifact-id" value="${a_gid}" /> 560 <dc:attribute name="artifact-id" value="${a_gid}"/>
561 <dc:attribute name="ids" value="${facet_num}" /> 561 <dc:attribute name="ids" value="${facet_num}"/>
562 <dc:attribute name="target_out" value="${out}" /> 562 <dc:attribute name="target_out" value="${out}"/>
563 <dc:attribute name="out" value="${out_name}" /> 563 <dc:attribute name="out" value="${out_name}"/>
564 </dc:element> 564 </dc:element>
565 </dc:for-each> 565 </dc:for-each>
566 </differences> 566 </differences>
567 </dc:call-macro> 567 </dc:call-macro>
568 </differences> 568 </differences>
576 <reference_curves> 576 <reference_curves>
577 <dc:call-macro name="collection-group"> 577 <dc:call-macro name="collection-group">
578 <ref_curve description="{dc:group-key()}"> 578 <ref_curve description="{dc:group-key()}">
579 <dc:for-each> 579 <dc:for-each>
580 <dc:element name="${facet_name}"> 580 <dc:element name="${facet_name}">
581 <dc:attribute name="description" value="${facet_description}" /> 581 <dc:attribute name="description" value="${facet_description}"/>
582 <dc:attribute name="factory" value="winfo" /> 582 <dc:attribute name="factory" value="winfo"/>
583 <dc:attribute name="target_out" value="${out}" /> 583 <dc:attribute name="target_out" value="${out}"/>
584 <dc:attribute name="artifact-id" value="${a_gid}" /> 584 <dc:attribute name="artifact-id" value="${a_gid}"/>
585 <dc:attribute name="ids" value="${facet_num}" /> 585 <dc:attribute name="ids" value="${facet_num}"/>
586 <dc:attribute name="out" value="reference_curve" /> 586 <dc:attribute name="out" value="reference_curve"/>
587 </dc:element> 587 </dc:element>
588 </dc:for-each> 588 </dc:for-each>
589 </ref_curve> 589 </ref_curve>
590 </dc:call-macro> 590 </dc:call-macro>
591 </reference_curves> 591 </reference_curves>
597 <dc:macro name="flood-map"> 597 <dc:macro name="flood-map">
598 <dc:filter expr="$facet_name = 'floodmap.wsplgen'"> 598 <dc:filter expr="$facet_name = 'floodmap.wsplgen'">
599 <dc:if test="dc:has-result()"> 599 <dc:if test="dc:has-result()">
600 <floodmap> 600 <floodmap>
601 <dc:for-each> 601 <dc:for-each>
602 <dc:variable name="combined_desc" expr="concat($facet_description, ' ', dc:date-format('dd.MM.yyyy - H:mm:ss', $a_creation), ' ', $collection_name)" /> 602 <dc:variable name="combined_desc" expr="concat($facet_description, ' ', dc:date-format('dd.MM.yyyy - H:mm:ss', $a_creation), ' ', $collection_name)"/>
603 <dc:element name="${facet_name}"> 603 <dc:element name="${facet_name}">
604 <dc:attribute name="description" value="${combined_desc}" /> 604 <dc:attribute name="description" value="${combined_desc}"/>
605 <dc:attribute name="factory" value="winfo" /> 605 <dc:attribute name="factory" value="winfo"/>
606 <dc:attribute name="target_out" value="${out}" /> 606 <dc:attribute name="target_out" value="${out}"/>
607 <dc:attribute name="artifact-id" value="${a_id}" /> 607 <dc:attribute name="artifact-id" value="${a_id}"/>
608 <dc:attribute name="ids" value="${a_id}" /> 608 <dc:attribute name="ids" value="${a_id}"/>
609 <dc:attribute name="out" value="floodmap" /> 609 <dc:attribute name="out" value="floodmap"/>
610 </dc:element> 610 </dc:element>
611 </dc:for-each> 611 </dc:for-each>
612 </floodmap> 612 </floodmap>
613 </dc:if> 613 </dc:if>
614 </dc:filter> 614 </dc:filter>
615 </dc:macro> 615 </dc:macro>
616 616
617 <dc:macro name="cross_section_user_content"> 617 <dc:macro name="cross_section_user_content">
618 <dc:call-macro name="waterlevels" /> 618 <dc:call-macro name="waterlevels"/>
619 <dc:call-macro name="vegetationzones" /> 619 <dc:call-macro name="vegetationzones"/>
620 </dc:macro> 620 </dc:macro>
621 621
622 <dc:macro name="waterlevels"> 622 <dc:macro name="waterlevels">
623 <dc:filter expr="$out_name = 'cross_section'"> 623 <dc:filter expr="$out_name = 'cross_section'">
624 <dc:if test="dc:has-result()"> 624 <dc:if test="dc:has-result()">
626 <dc:group expr="concat($river, ' ', dc:date-format('dd.MM.yyyy - H:mm:ss', $a_creation))"> 626 <dc:group expr="concat($river, ' ', dc:date-format('dd.MM.yyyy - H:mm:ss', $a_creation))">
627 <dc:comment>Aheinecke: Why is this grouping different from the rest?</dc:comment> 627 <dc:comment>Aheinecke: Why is this grouping different from the rest?</dc:comment>
628 <longitudinal_section_columns description="{dc:group-key()}"> 628 <longitudinal_section_columns description="{dc:group-key()}">
629 <dc:for-each> 629 <dc:for-each>
630 <dc:element name="${facet_name}"> 630 <dc:element name="${facet_name}">
631 <dc:attribute name="description" value="${facet_description}" /> 631 <dc:attribute name="description" value="${facet_description}"/>
632 <dc:attribute name="ids" value="${facet_num}" /> 632 <dc:attribute name="ids" value="${facet_num}"/>
633 <dc:attribute name="factory" value="winfo" /> 633 <dc:attribute name="factory" value="winfo"/>
634 <dc:attribute name="target_out" value="${out}" /> 634 <dc:attribute name="target_out" value="${out}"/>
635 <dc:attribute name="artifact-id" value="${a_gid}" /> 635 <dc:attribute name="artifact-id" value="${a_gid}"/>
636 <dc:attribute name="out" value="cross_section" /> 636 <dc:attribute name="out" value="cross_section"/>
637 </dc:element> 637 </dc:element>
638 </dc:for-each> 638 </dc:for-each>
639 </longitudinal_section_columns> 639 </longitudinal_section_columns>
640 </dc:group> 640 </dc:group>
641 </waterlevels> 641 </waterlevels>
645 645
646 646
647 647
648 <dc:macro name="collection-group"> 648 <dc:macro name="collection-group">
649 <dc:group expr="concat($river, ' ', dc:date-format('dd.MM.yyyy - H:mm:ss', $a_creation), ' ', $collection_name)"> 649 <dc:group expr="concat($river, ' ', dc:date-format('dd.MM.yyyy - H:mm:ss', $a_creation), ' ', $collection_name)">
650 <dc:macro-body /> 650 <dc:macro-body/>
651 </dc:group> 651 </dc:group>
652 </dc:macro> 652 </dc:macro>
653 653
654 <dc:macro name="longitudinal"> 654 <dc:macro name="longitudinal">
655 <dc:filter expr="$out_name = 'longitudinal_section' and $a_state != 'state.fix.vollmer.compute'"> 655 <dc:filter expr="$out_name = 'longitudinal_section' and $a_state != 'state.fix.vollmer.compute'">
658 <dc:call-macro name="collection-group"> 658 <dc:call-macro name="collection-group">
659 <dc:comment>Aheinecke: Why is this grouping different from the rest?</dc:comment> 659 <dc:comment>Aheinecke: Why is this grouping different from the rest?</dc:comment>
660 <longitudinal_section_columns description="{dc:group-key()}"> 660 <longitudinal_section_columns description="{dc:group-key()}">
661 <dc:for-each> 661 <dc:for-each>
662 <dc:element name="${facet_name}"> 662 <dc:element name="${facet_name}">
663 <dc:attribute name="description" value="${facet_description}" /> 663 <dc:attribute name="description" value="${facet_description}"/>
664 <dc:attribute name="ids" value="${facet_num}" /> 664 <dc:attribute name="ids" value="${facet_num}"/>
665 <dc:attribute name="factory" value="winfo" /> 665 <dc:attribute name="factory" value="winfo"/>
666 <dc:attribute name="target_out" value="${out}" /> 666 <dc:attribute name="target_out" value="${out}"/>
667 <dc:attribute name="artifact-id" value="${a_gid}" /> 667 <dc:attribute name="artifact-id" value="${a_gid}"/>
668 <dc:attribute name="out" value="longitudinal_section" /> 668 <dc:attribute name="out" value="longitudinal_section"/>
669 </dc:element> 669 </dc:element>
670 </dc:for-each> 670 </dc:for-each>
671 </longitudinal_section_columns> 671 </longitudinal_section_columns>
672 </dc:call-macro> 672 </dc:call-macro>
673 </waterlevels_ls> 673 </waterlevels_ls>
678 <dc:macro name="longitudinal-section-fix-vollmer"> 678 <dc:macro name="longitudinal-section-fix-vollmer">
679 <dc:filter expr="$a_state = 'state.fix.vollmer.compute' and 679 <dc:filter expr="$a_state = 'state.fix.vollmer.compute' and
680 ($facet_name = 'longitudinal_section.w' or 680 ($facet_name = 'longitudinal_section.w' or
681 $facet_name = 'longitudinal_section.q') 681 $facet_name = 'longitudinal_section.q')
682 "> 682 ">
683 <dc:call-macro name="longitudinal-section-fix-vollmer_macro" /> 683 <dc:call-macro name="longitudinal-section-fix-vollmer_macro"/>
684 </dc:filter> 684 </dc:filter>
685 </dc:macro> 685 </dc:macro>
686 686
687 <dc:macro name="longitudinal-section-fix-vollmer_w"> 687 <dc:macro name="longitudinal-section-fix-vollmer_w">
688 <dc:filter expr="$a_state = 'state.fix.vollmer.compute' and $facet_name = 'longitudinal_section.w'"> 688 <dc:filter expr="$a_state = 'state.fix.vollmer.compute' and $facet_name = 'longitudinal_section.w'">
689 <dc:call-macro name="longitudinal-section-fix-vollmer_macro" /> 689 <dc:call-macro name="longitudinal-section-fix-vollmer_macro"/>
690 </dc:filter> 690 </dc:filter>
691 </dc:macro> 691 </dc:macro>
692 692
693 <dc:macro name="longitudinal-section-fix-vollmer_macro"> 693 <dc:macro name="longitudinal-section-fix-vollmer_macro">
694 <dc:if test="dc:has-result()"> 694 <dc:if test="dc:has-result()">
695 <waterlevels_fix_vollmer> 695 <waterlevels_fix_vollmer>
696 <dc:call-macro name="collection-group"> 696 <dc:call-macro name="collection-group">
697 <waterlevels description="{dc:group-key()}"> 697 <waterlevels description="{dc:group-key()}">
698 <dc:for-each> 698 <dc:for-each>
699 <dc:element name="${facet_name}"> 699 <dc:element name="${facet_name}">
700 <dc:attribute name="description" value="${facet_description}" /> 700 <dc:attribute name="description" value="${facet_description}"/>
701 <dc:attribute name="ids" value="${facet_num}" /> 701 <dc:attribute name="ids" value="${facet_num}"/>
702 <dc:attribute name="factory" value="fixanalysis" /> 702 <dc:attribute name="factory" value="fixanalysis"/>
703 <dc:attribute name="target_out" value="${out}" /> 703 <dc:attribute name="target_out" value="${out}"/>
704 <dc:attribute name="artifact-id" value="${a_gid}" /> 704 <dc:attribute name="artifact-id" value="${a_gid}"/>
705 <dc:attribute name="out" value="longitudinal_section" /> 705 <dc:attribute name="out" value="longitudinal_section"/>
706 706
707 <dc:variable name="fixAnalysisYear" expr="dc:fix_analysis_year($a_gid)" /> 707 <dc:variable name="fixAnalysisYear" expr="dc:fix_analysis_year($a_gid)"/>
708 <dc:attribute name="year" value="${fixAnalysisYear}" /> 708 <dc:attribute name="year" value="${fixAnalysisYear}"/>
709 </dc:element> 709 </dc:element>
710 </dc:for-each> 710 </dc:for-each>
711 </waterlevels> 711 </waterlevels>
712 </dc:call-macro> 712 </dc:call-macro>
713 </waterlevels_fix_vollmer> 713 </waterlevels_fix_vollmer>
725 <waterlevels_fix> 725 <waterlevels_fix>
726 <dc:call-macro name="collection-group"> 726 <dc:call-macro name="collection-group">
727 <waterlevels description="{dc:group-key()}"> 727 <waterlevels description="{dc:group-key()}">
728 <dc:for-each> 728 <dc:for-each>
729 <dc:element name="${facet_name}"> 729 <dc:element name="${facet_name}">
730 <dc:attribute name="description" value="${facet_description}" /> 730 <dc:attribute name="description" value="${facet_description}"/>
731 <dc:attribute name="ids" value="${facet_num}" /> 731 <dc:attribute name="ids" value="${facet_num}"/>
732 <dc:attribute name="factory" value="fixanalysis" /> 732 <dc:attribute name="factory" value="fixanalysis"/>
733 <dc:attribute name="target_out" value="${out}" /> 733 <dc:attribute name="target_out" value="${out}"/>
734 <dc:attribute name="artifact-id" value="${a_gid}" /> 734 <dc:attribute name="artifact-id" value="${a_gid}"/>
735 <dc:attribute name="out" value="fix_longitudinal_section_curve" /> 735 <dc:attribute name="out" value="fix_longitudinal_section_curve"/>
736 </dc:element> 736 </dc:element>
737 </dc:for-each> 737 </dc:for-each>
738 </waterlevels> 738 </waterlevels>
739 </dc:call-macro> 739 </dc:call-macro>
740 </waterlevels_fix> 740 </waterlevels_fix>
753 <waterlevels> 753 <waterlevels>
754 <dc:call-macro name="collection-group"> 754 <dc:call-macro name="collection-group">
755 <waterlevels description="{dc:group-key()}"> 755 <waterlevels description="{dc:group-key()}">
756 <dc:for-each> 756 <dc:for-each>
757 <dc:element name="${facet_name}"> 757 <dc:element name="${facet_name}">
758 <dc:attribute name="description" value="${facet_description}" /> 758 <dc:attribute name="description" value="${facet_description}"/>
759 <dc:attribute name="ids" value="${facet_num}" /> 759 <dc:attribute name="ids" value="${facet_num}"/>
760 <dc:attribute name="factory" value="fixanalysis" /> 760 <dc:attribute name="factory" value="fixanalysis"/>
761 <dc:attribute name="target_out" value="${out}" /> 761 <dc:attribute name="target_out" value="${out}"/>
762 <dc:attribute name="artifact-id" value="${a_gid}" /> 762 <dc:attribute name="artifact-id" value="${a_gid}"/>
763 <dc:attribute name="out" value="fix_deltawt_curve" /> 763 <dc:attribute name="out" value="fix_deltawt_curve"/>
764 </dc:element> 764 </dc:element>
765 </dc:for-each> 765 </dc:for-each>
766 </waterlevels> 766 </waterlevels>
767 </dc:call-macro> 767 </dc:call-macro>
768 </waterlevels> 768 </waterlevels>
769 </dc:if> 769 </dc:if>
770 </dc:filter> 770 </dc:filter>
771 </dc:macro> 771 </dc:macro>
772 772
773 <dc:macro name="fix-wq-curve"> 773 <dc:macro name="fix-wq-curve">
774 <dc:filter 774 <dc:filter expr="($out_name = 'fix_wq_curve' and
775 expr="($out_name = 'fix_wq_curve' and
776 (starts-with($facet_name, 'fix_analysis_events_wq') or 775 (starts-with($facet_name, 'fix_analysis_events_wq') or
777 starts-with($facet_name, 'fix_reference_events_wq') or 776 starts-with($facet_name, 'fix_reference_events_wq') or
778 starts-with($facet_name, 'fix_sector_average_wq') or 777 starts-with($facet_name, 'fix_sector_average_wq') or
779 $facet_name = 'fix_wq_curve')) or 778 $facet_name = 'fix_wq_curve')) or
780 ($out_name = 'fix_derivate_curve' and 779 ($out_name = 'fix_derivate_curve' and
785 <projects description="{dc:group-key()}"> 784 <projects description="{dc:group-key()}">
786 <dc:for-each> 785 <dc:for-each>
787 <dc:choose> 786 <dc:choose>
788 <dc:when test="$out_name = 'fix_wq_curve'"> 787 <dc:when test="$out_name = 'fix_wq_curve'">
789 <dc:element name="${facet_name}"> 788 <dc:element name="${facet_name}">
790 <dc:attribute name="description" value="${facet_description}" /> 789 <dc:attribute name="description" value="${facet_description}"/>
791 <dc:attribute name="ids" value="${facet_num}" /> 790 <dc:attribute name="ids" value="${facet_num}"/>
792 <dc:attribute name="factory" value="fixanalysis" /> 791 <dc:attribute name="factory" value="fixanalysis"/>
793 <dc:attribute name="target_out" value="${out}" /> 792 <dc:attribute name="target_out" value="${out}"/>
794 <dc:attribute name="artifact-id" value="${a_gid}" /> 793 <dc:attribute name="artifact-id" value="${a_gid}"/>
795 <dc:attribute name="out" value="fix_wq_curve" /> 794 <dc:attribute name="out" value="fix_wq_curve"/>
796 </dc:element> 795 </dc:element>
797 </dc:when> 796 </dc:when>
798 <dc:when test="$out_name = 'fix_derivate_curve'"> 797 <dc:when test="$out_name = 'fix_derivate_curve'">
799 <dc:element name="${facet_name}"> 798 <dc:element name="${facet_name}">
800 <dc:attribute name="description" value="${facet_description}" /> 799 <dc:attribute name="description" value="${facet_description}"/>
801 <dc:attribute name="ids" value="${facet_num}" /> 800 <dc:attribute name="ids" value="${facet_num}"/>
802 <dc:attribute name="factory" value="fixanalysis" /> 801 <dc:attribute name="factory" value="fixanalysis"/>
803 <dc:attribute name="target_out" value="${out}" /> 802 <dc:attribute name="target_out" value="${out}"/>
804 <dc:attribute name="artifact-id" value="${a_gid}" /> 803 <dc:attribute name="artifact-id" value="${a_gid}"/>
805 <dc:attribute name="out" value="fix_derivate_curve" /> 804 <dc:attribute name="out" value="fix_derivate_curve"/>
806 </dc:element> 805 </dc:element>
807 </dc:when> 806 </dc:when>
808 </dc:choose> 807 </dc:choose>
809 </dc:for-each> 808 </dc:for-each>
810 </projects> 809 </projects>
818 <dc:filter expr="$facet_name = 'extreme_wq_curve' or $facet_name = 'extreme_wq_curve_base'"> 817 <dc:filter expr="$facet_name = 'extreme_wq_curve' or $facet_name = 'extreme_wq_curve_base'">
819 <dc:if test="dc:has-result()"> 818 <dc:if test="dc:has-result()">
820 <computed_discharge_curves> 819 <computed_discharge_curves>
821 <dc:for-each> 820 <dc:for-each>
822 <dc:element name="${facet_name}"> 821 <dc:element name="${facet_name}">
823 <dc:attribute name="description" value="${facet_description}" /> 822 <dc:attribute name="description" value="${facet_description}"/>
824 <dc:attribute name="factory" value="fixanalysis" /> 823 <dc:attribute name="factory" value="fixanalysis"/>
825 <dc:attribute name="target_out" value="${out}" /> 824 <dc:attribute name="target_out" value="${out}"/>
826 <dc:attribute name="artifact-id" value="${a_gid}" /> 825 <dc:attribute name="artifact-id" value="${a_gid}"/>
827 <dc:attribute name="ids" value="${a_gid}" /> 826 <dc:attribute name="ids" value="${a_gid}"/>
828 <dc:attribute name="out" value="computed_discharge_curve" /> 827 <dc:attribute name="out" value="computed_discharge_curve"/>
829 </dc:element> 828 </dc:element>
830 </dc:for-each> 829 </dc:for-each>
831 </computed_discharge_curves> 830 </computed_discharge_curves>
832 </dc:if> 831 </dc:if>
833 </dc:filter> 832 </dc:filter>
839 <computed_discharge_curves> 838 <computed_discharge_curves>
840 <dc:call-macro name="collection-group"> 839 <dc:call-macro name="collection-group">
841 <projects description="{dc:group-key()}"> 840 <projects description="{dc:group-key()}">
842 <dc:for-each> 841 <dc:for-each>
843 <dc:element name="${facet_name}"> 842 <dc:element name="${facet_name}">
844 <dc:attribute name="description" value="${facet_description}" /> 843 <dc:attribute name="description" value="${facet_description}"/>
845 <dc:attribute name="factory" value="winfo" /> 844 <dc:attribute name="factory" value="winfo"/>
846 <dc:attribute name="target_out" value="${out}" /> 845 <dc:attribute name="target_out" value="${out}"/>
847 <dc:attribute name="artifact-id" value="${a_gid}" /> 846 <dc:attribute name="artifact-id" value="${a_gid}"/>
848 <dc:attribute name="ids" value="${a_gid}" /> 847 <dc:attribute name="ids" value="${a_gid}"/>
849 <dc:attribute name="out" value="computed_discharge_curve" /> 848 <dc:attribute name="out" value="computed_discharge_curve"/>
850 </dc:element> 849 </dc:element>
851 </dc:for-each> 850 </dc:for-each>
852 </projects> 851 </projects>
853 </dc:call-macro> 852 </dc:call-macro>
854 </computed_discharge_curves> 853 </computed_discharge_curves>
860 <dc:filter expr="$facet_name = 'duration_curve.q' or $facet_name = 'duration_curve.w'"> 859 <dc:filter expr="$facet_name = 'duration_curve.q' or $facet_name = 'duration_curve.w'">
861 <dc:if test="dc:has-result()"> 860 <dc:if test="dc:has-result()">
862 <computed_discharge_curves> 861 <computed_discharge_curves>
863 <dc:for-each> 862 <dc:for-each>
864 <dc:element name="${facet_name}"> 863 <dc:element name="${facet_name}">
865 <dc:attribute name="description" value="${facet_description}" /> 864 <dc:attribute name="description" value="${facet_description}"/>
866 <dc:attribute name="factory" value="winfo" /> 865 <dc:attribute name="factory" value="winfo"/>
867 <dc:attribute name="target_out" value="${out}" /> 866 <dc:attribute name="target_out" value="${out}"/>
868 <dc:attribute name="artifact-id" value="${a_id}" /> 867 <dc:attribute name="artifact-id" value="${a_id}"/>
869 <dc:attribute name="ids" value="${a_id}" /> 868 <dc:attribute name="ids" value="${a_id}"/>
870 <dc:attribute name="out" value="duration_curve" /> 869 <dc:attribute name="out" value="duration_curve"/>
871 </dc:element> 870 </dc:element>
872 </dc:for-each> 871 </dc:for-each>
873 </computed_discharge_curves> 872 </computed_discharge_curves>
874 </dc:if> 873 </dc:if>
875 </dc:filter> 874 </dc:filter>
887 <waterlevels description="{dc:group-key()}"> 886 <waterlevels description="{dc:group-key()}">
888 <dc:for-each> 887 <dc:for-each>
889 <dc:choose> 888 <dc:choose>
890 <dc:when test="$ld_m = 'location'"> 889 <dc:when test="$ld_m = 'location'">
891 <dc:variable name="combined_desc" expr="concat($facet_description, 890 <dc:variable name="combined_desc" expr="concat($facet_description,
892 ' an KM ', $deffrom)" /> 891 ' an KM ', $deffrom)"/>
893 </dc:when> 892 </dc:when>
894 <dc:otherwise> 893 <dc:otherwise>
895 <dc:variable name="combined_desc" expr="concat($facet_description, ' von KM ', 894 <dc:variable name="combined_desc" expr="concat($facet_description, ' von KM ',
896 $deffrom, ' bis KM ', $defto)" /> 895 $deffrom, ' bis KM ', $defto)"/>
897 </dc:otherwise> 896 </dc:otherwise>
898 </dc:choose> 897 </dc:choose>
899 <dc:element name="${facet_name}"> 898 <dc:element name="${facet_name}">
900 <dc:attribute name="description" value="${combined_desc}" /> 899 <dc:attribute name="description" value="${combined_desc}"/>
901 <dc:attribute name="ids" value="${facet_num}" /> 900 <dc:attribute name="ids" value="${facet_num}"/>
902 <dc:attribute name="factory" value="winfo" /> 901 <dc:attribute name="factory" value="winfo"/>
903 <dc:attribute name="target_out" value="${out}" /> 902 <dc:attribute name="target_out" value="${out}"/>
904 <dc:attribute name="artifact-id" value="${a_gid}" /> 903 <dc:attribute name="artifact-id" value="${a_gid}"/>
905 <dc:attribute name="out" value="longitudinal_section" /> 904 <dc:attribute name="out" value="longitudinal_section"/>
906 </dc:element> 905 </dc:element>
907 </dc:for-each> 906 </dc:for-each>
908 </waterlevels> 907 </waterlevels>
909 </dc:call-macro> 908 </dc:call-macro>
910 </waterlevels> 909 </waterlevels>
911 </dc:if> 910 </dc:if>
912 </dc:filter> 911 </dc:filter>
913 </dc:macro> 912 </dc:macro>
914 913
915 <dc:comment comment="For building differences." /> 914 <dc:comment comment="For building differences."/>
916 <dc:macro name="differences-fix"> 915 <dc:macro name="differences-fix">
917 <dc:comment comment="Vollmer curves need own factory" /> 916 <dc:comment comment="Vollmer curves need own factory"/>
918 <dc:filter expr="$a_state = 'state.fix.vollmer.compute' and $facet_name = 'longitudinal_section.w'"> 917 <dc:filter expr="$a_state = 'state.fix.vollmer.compute' and $facet_name = 'longitudinal_section.w'">
919 <dc:if test="dc:has-result()"> 918 <dc:if test="dc:has-result()">
920 <vollmer_waterlevels> 919 <vollmer_waterlevels>
921 <dc:call-macro name="collection-group"> 920 <dc:call-macro name="collection-group">
922 <waterlevels description="{dc:group-key()}"> 921 <waterlevels description="{dc:group-key()}">
923 <dc:for-each> 922 <dc:for-each>
924 <dc:choose> 923 <dc:choose>
925 <dc:when test="$ld_m = 'location'"> 924 <dc:when test="$ld_m = 'location'">
926 <dc:variable name="combined_desc" expr="concat($facet_description, ' an KM ', $deffrom)" /> 925 <dc:variable name="combined_desc" expr="concat($facet_description, ' an KM ', $deffrom)"/>
927 </dc:when> 926 </dc:when>
928 <dc:otherwise> 927 <dc:otherwise>
929 <dc:variable name="combined_desc" expr="concat($facet_description, ' von KM ', 928 <dc:variable name="combined_desc" expr="concat($facet_description, ' von KM ',
930 $deffrom, ' bis KM ', $defto)" /> 929 $deffrom, ' bis KM ', $defto)"/>
931 </dc:otherwise> 930 </dc:otherwise>
932 </dc:choose> 931 </dc:choose>
933 <dc:element name="${facet_name}"> 932 <dc:element name="${facet_name}">
934 <dc:attribute name="description" value="${combined_desc}" /> 933 <dc:attribute name="description" value="${combined_desc}"/>
935 <dc:attribute name="ids" value="${facet_num}" /> 934 <dc:attribute name="ids" value="${facet_num}"/>
936 <dc:attribute name="factory" value="fixanalysis" /> 935 <dc:attribute name="factory" value="fixanalysis"/>
937 <dc:attribute name="target_out" value="${out}" /> 936 <dc:attribute name="target_out" value="${out}"/>
938 <dc:attribute name="artifact-id" value="${a_gid}" /> 937 <dc:attribute name="artifact-id" value="${a_gid}"/>
939 <dc:attribute name="out" value="longitudinal_section" /> 938 <dc:attribute name="out" value="longitudinal_section"/>
940 </dc:element> 939 </dc:element>
941 </dc:for-each> 940 </dc:for-each>
942 </waterlevels> 941 </waterlevels>
943 </dc:call-macro> 942 </dc:call-macro>
944 </vollmer_waterlevels> 943 </vollmer_waterlevels>
951 <dc:call-macro name="collection-group"> 950 <dc:call-macro name="collection-group">
952 <waterlevels description="{dc:group-key()}"> 951 <waterlevels description="{dc:group-key()}">
953 <dc:for-each> 952 <dc:for-each>
954 <dc:choose> 953 <dc:choose>
955 <dc:when test="$ld_m = 'location'"> 954 <dc:when test="$ld_m = 'location'">
956 <dc:variable name="combined_desc" expr="concat($facet_description, ' an KM ', $deffrom)" /> 955 <dc:variable name="combined_desc" expr="concat($facet_description, ' an KM ', $deffrom)"/>
957 </dc:when> 956 </dc:when>
958 <dc:otherwise> 957 <dc:otherwise>
959 <dc:variable name="combined_desc" expr="concat($facet_description, ' von KM ', 958 <dc:variable name="combined_desc" expr="concat($facet_description, ' von KM ',
960 $deffrom, ' bis KM ', $defto)" /> 959 $deffrom, ' bis KM ', $defto)"/>
961 </dc:otherwise> 960 </dc:otherwise>
962 </dc:choose> 961 </dc:choose>
963 <dc:element name="${facet_name}"> 962 <dc:element name="${facet_name}">
964 <dc:attribute name="description" value="${combined_desc}" /> 963 <dc:attribute name="description" value="${combined_desc}"/>
965 <dc:attribute name="ids" value="${facet_num}" /> 964 <dc:attribute name="ids" value="${facet_num}"/>
966 <dc:attribute name="factory" value="winfo" /> 965 <dc:attribute name="factory" value="winfo"/>
967 <dc:attribute name="target_out" value="${out}" /> 966 <dc:attribute name="target_out" value="${out}"/>
968 <dc:attribute name="artifact-id" value="${a_gid}" /> 967 <dc:attribute name="artifact-id" value="${a_gid}"/>
969 <dc:attribute name="out" value="longitudinal_section" /> 968 <dc:attribute name="out" value="longitudinal_section"/>
970 </dc:element> 969 </dc:element>
971 </dc:for-each> 970 </dc:for-each>
972 </waterlevels> 971 </waterlevels>
973 </dc:call-macro> 972 </dc:call-macro>
974 </waterlevels> 973 </waterlevels>
981 <dc:comment>No grouping in this?</dc:comment> 980 <dc:comment>No grouping in this?</dc:comment>
982 <dc:filter expr="$out_name = 'floodmap' and $facet_name = 'floodmap.usershape'"> 981 <dc:filter expr="$out_name = 'floodmap' and $facet_name = 'floodmap.usershape'">
983 <own-hws> 982 <own-hws>
984 <dc:for-each> 983 <dc:for-each>
985 <dc:element name="${facet_name}"> 984 <dc:element name="${facet_name}">
986 <dc:attribute name="description" value="${facet_description}" /> 985 <dc:attribute name="description" value="${facet_description}"/>
987 <dc:attribute name="ids" value="${facet_num}" /> 986 <dc:attribute name="ids" value="${facet_num}"/>
988 <dc:attribute name="factory" value="winfo" /> 987 <dc:attribute name="factory" value="winfo"/>
989 <dc:attribute name="target_out" value="${out}" /> 988 <dc:attribute name="target_out" value="${out}"/>
990 <dc:attribute name="artifact-id" value="${a_gid}" /> 989 <dc:attribute name="artifact-id" value="${a_gid}"/>
991 <dc:attribute name="out" value="floodmap" /> 990 <dc:attribute name="out" value="floodmap"/>
992 </dc:element> 991 </dc:element>
993 </dc:for-each> 992 </dc:for-each>
994 </own-hws> 993 </own-hws>
995 </dc:filter> 994 </dc:filter>
996 </dc:macro> 995 </dc:macro>
1002 <bed_quality> 1001 <bed_quality>
1003 <dc:call-macro name="collection-group"> 1002 <dc:call-macro name="collection-group">
1004 <quality-bed description="{dc:group-key()}"> 1003 <quality-bed description="{dc:group-key()}">
1005 <dc:for-each> 1004 <dc:for-each>
1006 <dc:element name="${facet_name}"> 1005 <dc:element name="${facet_name}">
1007 <dc:attribute name="factory" value="minfo" /> 1006 <dc:attribute name="factory" value="minfo"/>
1008 <dc:attribute name="target_out" value="${out}" /> 1007 <dc:attribute name="target_out" value="${out}"/>
1009 <dc:attribute name="description" value="${facet_description}" /> 1008 <dc:attribute name="description" value="${facet_description}"/>
1010 <dc:attribute name="ids" value="${facet_num}" /> 1009 <dc:attribute name="ids" value="${facet_num}"/>
1011 <dc:attribute name="artifact-id" value="${a_gid}" /> 1010 <dc:attribute name="artifact-id" value="${a_gid}"/>
1012 <dc:attribute name="out" value="bed_longitudinal_section" /> 1011 <dc:attribute name="out" value="bed_longitudinal_section"/>
1013 </dc:element> 1012 </dc:element>
1014 </dc:for-each> 1013 </dc:for-each>
1015 </quality-bed> 1014 </quality-bed>
1016 </dc:call-macro> 1015 </dc:call-macro>
1017 </bed_quality> 1016 </bed_quality>
1026 <flow_velocity> 1025 <flow_velocity>
1027 <dc:call-macro name="collection-group"> 1026 <dc:call-macro name="collection-group">
1028 <flow description="{dc:group-key()}"> 1027 <flow description="{dc:group-key()}">
1029 <dc:for-each> 1028 <dc:for-each>
1030 <dc:element name="${facet_name}"> 1029 <dc:element name="${facet_name}">
1031 <dc:attribute name="factory" value="minfo" /> 1030 <dc:attribute name="factory" value="minfo"/>
1032 <dc:attribute name="target_out" value="${out}" /> 1031 <dc:attribute name="target_out" value="${out}"/>
1033 <dc:attribute name="description" value="${facet_description}" /> 1032 <dc:attribute name="description" value="${facet_description}"/>
1034 <dc:attribute name="ids" value="${facet_num}" /> 1033 <dc:attribute name="ids" value="${facet_num}"/>
1035 <dc:attribute name="artifact-id" value="${a_gid}" /> 1034 <dc:attribute name="artifact-id" value="${a_gid}"/>
1036 <dc:attribute name="out" value="flow_velocity" /> 1035 <dc:attribute name="out" value="flow_velocity"/>
1037 </dc:element> 1036 </dc:element>
1038 </dc:for-each> 1037 </dc:for-each>
1039 </flow> 1038 </flow>
1040 </dc:call-macro> 1039 </dc:call-macro>
1041 </flow_velocity> 1040 </flow_velocity>
1049 <sediment_load> 1048 <sediment_load>
1050 <dc:call-macro name="collection-group"> 1049 <dc:call-macro name="collection-group">
1051 <load description="{dc:group-key()}"> 1050 <load description="{dc:group-key()}">
1052 <dc:for-each> 1051 <dc:for-each>
1053 <dc:element name="${facet_name}"> 1052 <dc:element name="${facet_name}">
1054 <dc:attribute name="factory" value="minfo" /> 1053 <dc:attribute name="factory" value="minfo"/>
1055 <dc:attribute name="target_out" value="${out}" /> 1054 <dc:attribute name="target_out" value="${out}"/>
1056 <dc:attribute name="description" value="${facet_description}" /> 1055 <dc:attribute name="description" value="${facet_description}"/>
1057 <dc:attribute name="ids" value="${facet_num}" /> 1056 <dc:attribute name="ids" value="${facet_num}"/>
1058 <dc:attribute name="artifact-id" value="${a_gid}" /> 1057 <dc:attribute name="artifact-id" value="${a_gid}"/>
1059 <dc:attribute name="out" value="${out_name}" /> 1058 <dc:attribute name="out" value="${out_name}"/>
1060 </dc:element> 1059 </dc:element>
1061 </dc:for-each> 1060 </dc:for-each>
1062 </load> 1061 </load>
1063 </dc:call-macro> 1062 </dc:call-macro>
1064 </sediment_load> 1063 </sediment_load>
1073 <middle_bedheights> 1072 <middle_bedheights>
1074 <dc:call-macro name="collection-group"> 1073 <dc:call-macro name="collection-group">
1075 <middle_bedheight description="{dc:group-key()}"> 1074 <middle_bedheight description="{dc:group-key()}">
1076 <dc:for-each> 1075 <dc:for-each>
1077 <dc:element name="${facet_name}"> 1076 <dc:element name="${facet_name}">
1078 <dc:attribute name="factory" value="minfo" /> 1077 <dc:attribute name="factory" value="minfo"/>
1079 <dc:attribute name="target_out" value="${out}" /> 1078 <dc:attribute name="target_out" value="${out}"/>
1080 <dc:attribute name="description" value="${facet_description}" /> 1079 <dc:attribute name="description" value="${facet_description}"/>
1081 <dc:attribute name="ids" value="${facet_num}" /> 1080 <dc:attribute name="ids" value="${facet_num}"/>
1082 <dc:attribute name="artifact-id" value="${a_gid}" /> 1081 <dc:attribute name="artifact-id" value="${a_gid}"/>
1083 <dc:attribute name="out" value="${out_name}" /> 1082 <dc:attribute name="out" value="${out_name}"/>
1084 </dc:element> 1083 </dc:element>
1085 </dc:for-each> 1084 </dc:for-each>
1086 </middle_bedheight> 1085 </middle_bedheight>
1087 </dc:call-macro> 1086 </dc:call-macro>
1088 </middle_bedheights> 1087 </middle_bedheights>
1097 <bedheight_differences> 1096 <bedheight_differences>
1098 <dc:call-macro name="collection-group"> 1097 <dc:call-macro name="collection-group">
1099 <difference description="{dc:group-key()}"> 1098 <difference description="{dc:group-key()}">
1100 <dc:for-each> 1099 <dc:for-each>
1101 <dc:element name="${facet_name}"> 1100 <dc:element name="${facet_name}">
1102 <dc:attribute name="factory" value="minfo" /> 1101 <dc:attribute name="factory" value="minfo"/>
1103 <dc:attribute name="target_out" value="${out}" /> 1102 <dc:attribute name="target_out" value="${out}"/>
1104 <dc:attribute name="description" value="${facet_description}" /> 1103 <dc:attribute name="description" value="${facet_description}"/>
1105 <dc:attribute name="ids" value="${facet_num}" /> 1104 <dc:attribute name="ids" value="${facet_num}"/>
1106 <dc:attribute name="artifact-id" value="${a_gid}" /> 1105 <dc:attribute name="artifact-id" value="${a_gid}"/>
1107 <dc:attribute name="out" value="${out_name}" /> 1106 <dc:attribute name="out" value="${out_name}"/>
1108 </dc:element> 1107 </dc:element>
1109 </dc:for-each> 1108 </dc:for-each>
1110 </difference> 1109 </difference>
1111 </dc:call-macro> 1110 </dc:call-macro>
1112 </bedheight_differences> 1111 </bedheight_differences>
1129 <sq_relations> 1128 <sq_relations>
1130 <dc:call-macro name="collection-group"> 1129 <dc:call-macro name="collection-group">
1131 <sqrel description="{dc:group-key()}"> 1130 <sqrel description="{dc:group-key()}">
1132 <dc:for-each> 1131 <dc:for-each>
1133 <dc:element name="${facet_name}"> 1132 <dc:element name="${facet_name}">
1134 <dc:attribute name="factory" value="minfo" /> 1133 <dc:attribute name="factory" value="minfo"/>
1135 <dc:attribute name="target_out" value="${out}" /> 1134 <dc:attribute name="target_out" value="${out}"/>
1136 <dc:attribute name="description" value="${facet_description}" /> 1135 <dc:attribute name="description" value="${facet_description}"/>
1137 <dc:attribute name="ids" value="${facet_num}" /> 1136 <dc:attribute name="ids" value="${facet_num}"/>
1138 <dc:attribute name="artifact-id" value="${a_gid}" /> 1137 <dc:attribute name="artifact-id" value="${a_gid}"/>
1139 <dc:attribute name="out" value="${out_name}" /> 1138 <dc:attribute name="out" value="${out_name}"/>
1140 </dc:element> 1139 </dc:element>
1141 </dc:for-each> 1140 </dc:for-each>
1142 </sqrel> 1141 </sqrel>
1143 </dc:call-macro> 1142 </dc:call-macro>
1144 </sq_relations> 1143 </sq_relations>
1152 <waterlevels_discharge> 1151 <waterlevels_discharge>
1153 <dc:call-macro name="collection-group"> 1152 <dc:call-macro name="collection-group">
1154 <discharge description="{dc:group-key()}"> 1153 <discharge description="{dc:group-key()}">
1155 <dc:for-each> 1154 <dc:for-each>
1156 <dc:element name="${facet_name}"> 1155 <dc:element name="${facet_name}">
1157 <dc:attribute name="factory" value="winfo" /> 1156 <dc:attribute name="factory" value="winfo"/>
1158 <dc:attribute name="target_out" value="${out}" /> 1157 <dc:attribute name="target_out" value="${out}"/>
1159 <dc:attribute name="description" value="${facet_description}" /> 1158 <dc:attribute name="description" value="${facet_description}"/>
1160 <dc:attribute name="ids" value="${facet_num}-${facet_name}" /> 1159 <dc:attribute name="ids" value="${facet_num}-${facet_name}"/>
1161 <dc:attribute name="artifact-id" value="${a_gid}" /> 1160 <dc:attribute name="artifact-id" value="${a_gid}"/>
1162 <dc:attribute name="out" value="discharge_longitudinal_section" /> 1161 <dc:attribute name="out" value="discharge_longitudinal_section"/>
1163 </dc:element> 1162 </dc:element>
1164 </dc:for-each> 1163 </dc:for-each>
1165 </discharge> 1164 </discharge>
1166 </dc:call-macro> 1165 </dc:call-macro>
1167 </waterlevels_discharge> 1166 </waterlevels_discharge>
1171 1170
1172 1171
1173 <!-- Macros to load system data --> 1172 <!-- Macros to load system data -->
1174 1173
1175 <dc:macro name="qmainvalues"> 1174 <dc:macro name="qmainvalues">
1176 <qmainvalue factory="mainvalue" ids="{$river_id}:q" target_out="{$out}" /> 1175 <qmainvalue factory="mainvalue" ids="{$river_id}:q" target_out="{$out}"/>
1177 </dc:macro> 1176 </dc:macro>
1178 1177
1179 <dc:macro name="mainvalues"> 1178 <dc:macro name="mainvalues">
1180 <wmainvalue factory="mainvalue" ids="{$river_id}:w" target_out="{$out}" /> 1179 <wmainvalue factory="mainvalue" ids="{$river_id}:w" target_out="{$out}"/>
1181 <dc:call-macro name="qmainvalues" /> 1180 <dc:call-macro name="qmainvalues"/>
1182 </dc:macro> 1181 </dc:macro>
1183 1182
1184 <!-- discharge curves --> 1183 <!-- discharge curves -->
1185 <dc:macro name="hist_discharge_factory"> 1184 <dc:macro name="hist_discharge_factory">
1186 <dc:for-each> 1185 <dc:for-each>
1187 <dc:variable name="validity" expr="concat( 1186 <dc:variable name="validity" expr="concat(
1188 dc:date-format('dd.MM.yyyy', $start_time), 1187 dc:date-format('dd.MM.yyyy', $start_time),
1189 ' - ', 1188 ' - ',
1190 dc:date-format('dd.MM.yyyy', $stop_time))" /> 1189 dc:date-format('dd.MM.yyyy', $stop_time))"/>
1191 <histdis name="{concat($bfg_id, ' ', $validity)}" description="{concat($bfg_id, ' ', $validity)}" factory="gaugedischarge" target_out="{$out}" ids="{$gauge_name};{$dt_id};{concat($bfg_id, ' ', 1190 <histdis name="{concat($bfg_id, ' ', $validity)}" description="{concat($bfg_id, ' ', $validity)}" factory="gaugedischarge" target_out="{$out}" ids="{$gauge_name};{$dt_id};{concat($bfg_id, ' ',
1192 $gauge_name, ' ', $validity)}" /> 1191 $gauge_name, ' ', $validity)}"/>
1193 </dc:for-each> 1192 </dc:for-each>
1194 </dc:macro> 1193 </dc:macro>
1195 1194
1196 <dc:macro name="hist_discharge_rec"> 1195 <dc:macro name="hist_discharge_rec">
1197 <dc:variable name="start" type="number" expr="dc:date-format('yyyyMMdd', 1196 <dc:variable name="start" type="number" expr="dc:date-format('yyyyMMdd',
1198 number(substring-before($year_range, ';')))" /> 1197 number(substring-before($year_range, ';')))"/>
1199 <dc:variable name="stop" type="number" expr="dc:date-format('yyyyMMdd', 1198 <dc:variable name="stop" type="number" expr="dc:date-format('yyyyMMdd',
1200 number(substring-after($year_range, ';')))" /> 1199 number(substring-after($year_range, ';')))"/>
1201 <dc:call-macro name="discharge_curve_choose_context"> 1200 <dc:call-macro name="discharge_curve_choose_context">
1202 <dc:filter expr="$kind = 1 and 1201 <dc:filter expr="$kind = 1 and
1203 number(dc:date-format('yyyyMMdd', $start_time)) 1202 number(dc:date-format('yyyyMMdd', $start_time))
1204 &lt; $stop and 1203 &lt; $stop and
1205 number(dc:coalesce( 1204 number(dc:coalesce(
1206 dc:date-format('yyyyMMdd', $stop_time), 1205 dc:date-format('yyyyMMdd', $stop_time),
1207 '99999999')) 1206 '99999999'))
1208 &gt; $start"> 1207 &gt; $start">
1209 <dc:call-macro name="hist_discharge_factory" /> 1208 <dc:call-macro name="hist_discharge_factory"/>
1210 </dc:filter> 1209 </dc:filter>
1211 </dc:call-macro> 1210 </dc:call-macro>
1212 </dc:macro> 1211 </dc:macro>
1213 1212
1214 <dc:macro name="discharge_table_gauge"> 1213 <dc:macro name="discharge_table_gauge">
1215 <dc:call-macro name="discharge_curve_choose_context"> 1214 <dc:call-macro name="discharge_curve_choose_context">
1216 <dc:filter expr="$kind = 0"> 1215 <dc:filter expr="$kind = 0">
1217 <dc:group expr="$gauge_name"> 1216 <dc:group expr="$gauge_name">
1218 <gauge name="{dc:group-key()}"> 1217 <gauge name="{dc:group-key()}">
1219 <dc:for-each> 1218 <dc:for-each>
1220 <current_gauge factory="gaugedischarge" target_out="{$out}" ids="{$gauge_name}" /> 1219 <current_gauge factory="gaugedischarge" target_out="{$out}" ids="{$gauge_name}"/>
1221 </dc:for-each> 1220 </dc:for-each>
1222 </gauge> 1221 </gauge>
1223 </dc:group> 1222 </dc:group>
1224 </dc:filter> 1223 </dc:filter>
1225 </dc:call-macro> 1224 </dc:call-macro>
1229 <dc:call-macro name="discharge_curve_choose_context"> 1228 <dc:call-macro name="discharge_curve_choose_context">
1230 <dc:filter expr="$kind = 1"> 1229 <dc:filter expr="$kind = 1">
1231 <historical_discharge_curves> 1230 <historical_discharge_curves>
1232 <dc:group expr="$gauge_name"> 1231 <dc:group expr="$gauge_name">
1233 <gauge name="{dc:group-key()}"> 1232 <gauge name="{dc:group-key()}">
1234 <dc:call-macro name="hist_discharge_factory" /> 1233 <dc:call-macro name="hist_discharge_factory"/>
1235 </gauge> 1234 </gauge>
1236 </dc:group> 1235 </dc:group>
1237 </historical_discharge_curves> 1236 </historical_discharge_curves>
1238 </dc:filter> 1237 </dc:filter>
1239 </dc:call-macro> 1238 </dc:call-macro>
1241 1240
1242 <dc:macro name="discharge_curve_choose_context"> 1241 <dc:macro name="discharge_curve_choose_context">
1243 <dc:choose> 1242 <dc:choose>
1244 <dc:when test="$fromkm &gt; -99999 and $tokm &lt; 99999"> 1243 <dc:when test="$fromkm &gt; -99999 and $tokm &lt; 99999">
1245 <dc:context> 1244 <dc:context>
1246 <dc:call-macro name="discharge_curves_km" /> 1245 <dc:call-macro name="discharge_curves_km"/>
1247 <dc:macro-body /> 1246 <dc:macro-body/>
1248 </dc:context> 1247 </dc:context>
1249 </dc:when> 1248 </dc:when>
1250 <dc:otherwise> 1249 <dc:otherwise>
1251 <dc:variable name="refgauge" type="number" expr="dc:get('reference_gauge')" /> 1250 <dc:variable name="refgauge" type="number" expr="dc:get('reference_gauge')"/>
1252 <dc:context> 1251 <dc:context>
1253 <dc:call-macro name="discharge_curves_refgauge" /> 1252 <dc:call-macro name="discharge_curves_refgauge"/>
1254 <dc:macro-body /> 1253 <dc:macro-body/>
1255 </dc:context> 1254 </dc:context>
1256 </dc:otherwise> 1255 </dc:otherwise>
1257 </dc:choose> 1256 </dc:choose>
1258 </dc:macro> 1257 </dc:macro>
1259 1258
1303 JOIN cross_section_lines csl ON csl.cross_section_id = cs.id 1302 JOIN cross_section_lines csl ON csl.cross_section_id = cs.id
1304 WHERE cs.river_id = ${river_id} 1303 WHERE cs.river_id = ${river_id}
1305 AND csl.km BETWEEN ${fromkm} AND ${tokm} 1304 AND csl.km BETWEEN ${fromkm} AND ${tokm}
1306 </dc:statement> 1305 </dc:statement>
1307 <dc:for-each> 1306 <dc:for-each>
1308 <cross_section name="{$prot_description}" ids="{$prot_id}" factory="crosssections" target_out="{$out}" /> 1307 <cross_section name="{$prot_description}" ids="{$prot_id}" factory="crosssections" target_out="{$out}"/>
1309 </dc:for-each> 1308 </dc:for-each>
1310 </dc:context> 1309 </dc:context>
1311 </cross_sections> 1310 </cross_sections>
1312 </dc:macro> 1311 </dc:macro>
1313 1312
1322 JOIN hyk_entries he ON he.hyk_id = h.id 1321 JOIN hyk_entries he ON he.hyk_id = h.id
1323 WHERE river_id = ${river_id} 1322 WHERE river_id = ${river_id}
1324 AND he.km BETWEEN ${fromkm} AND ${tokm} 1323 AND he.km BETWEEN ${fromkm} AND ${tokm}
1325 </dc:statement> 1324 </dc:statement>
1326 <dc:for-each> 1325 <dc:for-each>
1327 <hyk name="{$hyk_description}" ids="{$hyk_id}" factory="hyk" target_out="{$out}" /> 1326 <hyk name="{$hyk_description}" ids="{$hyk_id}" factory="hyk" target_out="{$out}"/>
1328 </dc:for-each> 1327 </dc:for-each>
1329 </dc:context> 1328 </dc:context>
1330 </hyks> 1329 </hyks>
1331 </dc:macro> 1330 </dc:macro>
1332 1331
1334 <dc:macro name="predefined_vegetation_zones"> 1333 <dc:macro name="predefined_vegetation_zones">
1335 <uinfo> 1334 <uinfo>
1336 <vegetation_zones> 1335 <vegetation_zones>
1337 <dc:variable name="vegzonedata" expr="dc:defaultvegetationzone($river)"/> 1336 <dc:variable name="vegzonedata" expr="dc:defaultvegetationzone($river)"/>
1338 1337
1339 <defaultVegetationZone factory="predefined_vegetation_zonesf" target_out="{$out}" ids="{$vegzonedata}"/> 1338 <defaultVegetationZone factory="predefined_vegetation_zonesf" target_out="{$out}" ids="{$vegzonedata}"/>
1340 </vegetation_zones> 1339 </vegetation_zones>
1341 </uinfo> 1340 </uinfo>
1342 </dc:macro> 1341 </dc:macro>
1343 1342
1344 <!-- wst-data --> 1343 <!-- wst-data -->
1349 <dc:if test="dc:has-result()"> 1348 <dc:if test="dc:has-result()">
1350 <basedata> 1349 <basedata>
1351 <dc:group expr="$wst_description"> 1350 <dc:group expr="$wst_description">
1352 <basedata name="{dc:group-key()}"> 1351 <basedata name="{dc:group-key()}">
1353 <dc:for-each> 1352 <dc:for-each>
1354 <dc:macro-body /> 1353 <dc:macro-body/>
1355 </dc:for-each> 1354 </dc:for-each>
1356 </basedata> 1355 </basedata>
1357 </dc:group> 1356 </dc:group>
1358 </basedata> 1357 </basedata>
1359 </dc:if> 1358 </dc:if>
1360 </dc:filter> 1359 </dc:filter>
1361 </dc:macro> 1360 </dc:macro>
1362 1361
1363 <dc:macro name="basedata_0"> 1362 <dc:macro name="basedata_0">
1364 <dc:call-macro name="basedata_0_macro"> 1363 <dc:call-macro name="basedata_0_macro">
1365 <column name="{$wst_column_name}" ids="base_data-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1364 <column name="{$wst_column_name}" ids="base_data-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1366 </dc:call-macro> 1365 </dc:call-macro>
1367 </dc:macro> 1366 </dc:macro>
1368 1367
1369 <dc:macro name="basedata_0_wq"> 1368 <dc:macro name="basedata_0_wq">
1370 <dc:call-macro name="basedata_0_macro"> 1369 <dc:call-macro name="basedata_0_macro">
1371 <column name="{$wst_column_name}" ids="base_data-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1370 <column name="{$wst_column_name}" ids="base_data-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1372 </dc:call-macro> 1371 </dc:call-macro>
1373 </dc:macro> 1372 </dc:macro>
1374 1373
1375 <!-- additional longitudinal sections --> 1374 <!-- additional longitudinal sections -->
1376 <dc:macro name="basedata_1_additionals_macro"> 1375 <dc:macro name="basedata_1_additionals_macro">
1378 <dc:if test="dc:has-result()"> 1377 <dc:if test="dc:has-result()">
1379 <additionals> 1378 <additionals>
1380 <dc:group expr="dc:replace($wst_description, 'Zus.Längsschnitte/', '')"> 1379 <dc:group expr="dc:replace($wst_description, 'Zus.Längsschnitte/', '')">
1381 <additional name="{dc:group-key()}" description="{dc:group-key()}"> 1380 <additional name="{dc:group-key()}" description="{dc:group-key()}">
1382 <dc:for-each> 1381 <dc:for-each>
1383 <dc:macro-body /> 1382 <dc:macro-body/>
1384 </dc:for-each> 1383 </dc:for-each>
1385 </additional> 1384 </additional>
1386 </dc:group> 1385 </dc:group>
1387 </additionals> 1386 </additionals>
1388 </dc:if> 1387 </dc:if>
1389 </dc:filter> 1388 </dc:filter>
1390 </dc:macro> 1389 </dc:macro>
1391 1390
1392 <dc:macro name="basedata_1_additionals"> 1391 <dc:macro name="basedata_1_additionals">
1393 <dc:call-macro name="basedata_1_additionals_macro"> 1392 <dc:call-macro name="basedata_1_additionals_macro">
1394 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1393 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1395 </dc:call-macro> 1394 </dc:call-macro>
1396 </dc:macro> 1395 </dc:macro>
1397 1396
1398 <dc:macro name="basedata_1_additionals-sinfo-with-q_macro"> 1397 <dc:macro name="basedata_1_additionals-sinfo-with-q_macro">
1399 <dc:filter expr="$kind=1 and $sinfo_selection='Q'"> 1398 <dc:filter expr="$kind=1 and $sinfo_selection='Q'">
1400 <dc:if test="dc:has-result()"> 1399 <dc:if test="dc:has-result()">
1401 <sinfo_additional_ls_withQ> 1400 <sinfo_additional_ls_withQ>
1402 <dc:group expr="dc:replace($wst_description, 'Zus.Längsschnitte/', '')"> 1401 <dc:group expr="dc:replace($wst_description, 'Zus.Längsschnitte/', '')">
1403 <additional name="{dc:group-key()}" description="{dc:group-key()}"> 1402 <additional name="{dc:group-key()}" description="{dc:group-key()}">
1404 <dc:for-each> 1403 <dc:for-each>
1405 <dc:macro-body /> 1404 <dc:macro-body/>
1406 </dc:for-each> 1405 </dc:for-each>
1407 </additional> 1406 </additional>
1408 </dc:group> 1407 </dc:group>
1409 </sinfo_additional_ls_withQ> 1408 </sinfo_additional_ls_withQ>
1410 </dc:if> 1409 </dc:if>
1411 </dc:filter> 1410 </dc:filter>
1412 </dc:macro> 1411 </dc:macro>
1413 1412
1414 <dc:macro name="basedata_1_additionals-sinfo-with-q"> 1413 <dc:macro name="basedata_1_additionals-sinfo-with-q">
1415 <dc:call-macro name="basedata_1_additionals-sinfo-with-q_macro"> 1414 <dc:call-macro name="basedata_1_additionals-sinfo-with-q_macro">
1416 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}" /> 1415 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}"/>
1417 </dc:call-macro> 1416 </dc:call-macro>
1418 </dc:macro> 1417 </dc:macro>
1419 1418
1420 <dc:macro name="basedata_1_additionals-sinfo-without-q_macro"> 1419 <dc:macro name="basedata_1_additionals-sinfo-without-q_macro">
1421 <dc:filter expr="$kind=1 and $sinfo_selection='W'"> 1420 <dc:filter expr="$kind=1 and $sinfo_selection='W'">
1422 <dc:if test="dc:has-result()"> 1421 <dc:if test="dc:has-result()">
1423 <sinfo_additional_ls_withoutQ> 1422 <sinfo_additional_ls_withoutQ>
1424 <dc:group expr="dc:replace($wst_description, 'Zus.Längsschnitte/', '')"> 1423 <dc:group expr="dc:replace($wst_description, 'Zus.Längsschnitte/', '')">
1425 <additional name="{dc:group-key()}" description="{dc:group-key()}"> 1424 <additional name="{dc:group-key()}" description="{dc:group-key()}">
1426 <dc:for-each> 1425 <dc:for-each>
1427 <dc:macro-body /> 1426 <dc:macro-body/>
1428 </dc:for-each> 1427 </dc:for-each>
1429 </additional> 1428 </additional>
1430 </dc:group> 1429 </dc:group>
1431 </sinfo_additional_ls_withoutQ> 1430 </sinfo_additional_ls_withoutQ>
1432 </dc:if> 1431 </dc:if>
1433 </dc:filter> 1432 </dc:filter>
1434 </dc:macro> 1433 </dc:macro>
1435 1434
1436 <dc:macro name="basedata_1_additionals-sinfo-without-q"> 1435 <dc:macro name="basedata_1_additionals-sinfo-without-q">
1437 <dc:call-macro name="basedata_1_additionals-sinfo-without-q_macro"> 1436 <dc:call-macro name="basedata_1_additionals-sinfo-without-q_macro">
1438 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)" /> 1437 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)"/>
1439 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}" /> 1438 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}"/>
1440 </dc:call-macro> 1439 </dc:call-macro>
1441 </dc:macro> 1440 </dc:macro>
1442 1441
1443 <dc:macro name="basedata_1_additionals_wq"> 1442 <dc:macro name="basedata_1_additionals_wq">
1444 <dc:call-macro name="basedata_1_additionals_macro"> 1443 <dc:call-macro name="basedata_1_additionals_macro">
1445 <column name="{$wst_column_name}" ids="base_data-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1444 <column name="{$wst_column_name}" ids="base_data-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1446 </dc:call-macro> 1445 </dc:call-macro>
1447 </dc:macro> 1446 </dc:macro>
1448 1447
1449 <dc:macro name="basedata_1_additionals-relative_point"> 1448 <dc:macro name="basedata_1_additionals-relative_point">
1450 <dc:call-macro name="basedata_1_additionals_macro"> 1449 <dc:call-macro name="basedata_1_additionals_macro">
1451 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1450 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1452 </dc:call-macro> 1451 </dc:call-macro>
1453 </dc:macro> 1452 </dc:macro>
1454 1453
1455 <!-- fixations --> 1454 <!-- fixations -->
1456 <dc:macro name="fixings-macro"> 1455 <dc:macro name="fixings-macro">
1458 <dc:if test="dc:has-result()"> 1457 <dc:if test="dc:has-result()">
1459 <fixations> 1458 <fixations>
1460 <dc:group expr="dc:replace($wst_description, 'Fixierungen/', '')"> 1459 <dc:group expr="dc:replace($wst_description, 'Fixierungen/', '')">
1461 <fixation name="{dc:group-key()}"> 1460 <fixation name="{dc:group-key()}">
1462 <dc:for-each> 1461 <dc:for-each>
1463 <dc:macro-body /> 1462 <dc:macro-body/>
1464 </dc:for-each> 1463 </dc:for-each>
1465 </fixation> 1464 </fixation>
1466 </dc:group> 1465 </dc:group>
1467 </fixations> 1466 </fixations>
1468 </dc:if> 1467 </dc:if>
1469 </dc:filter> 1468 </dc:filter>
1470 </dc:macro> 1469 </dc:macro>
1471 1470
1472 <dc:macro name="basedata_2_fixations"> 1471 <dc:macro name="basedata_2_fixations">
1473 <dc:call-macro name="fixings-macro"> 1472 <dc:call-macro name="fixings-macro">
1474 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)" /> 1473 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)"/>
1475 <column name="{$wst_column_name}" ids="fixations-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}" /> 1474 <column name="{$wst_column_name}" ids="fixations-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}"/>
1476 </dc:call-macro> 1475 </dc:call-macro>
1477 </dc:macro> 1476 </dc:macro>
1478 1477
1479 <dc:macro name="basedata_2_fixations_wq"> 1478 <dc:macro name="basedata_2_fixations_wq">
1480 <dc:call-macro name="fixings-macro"> 1479 <dc:call-macro name="fixings-macro">
1481 <column name="{$wst_column_name}" ids="fixations-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1480 <column name="{$wst_column_name}" ids="fixations-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1482 </dc:call-macro> 1481 </dc:call-macro>
1483 </dc:macro> 1482 </dc:macro>
1484 1483
1485 <dc:macro name="basedata_2_fixations_relative_point"> 1484 <dc:macro name="basedata_2_fixations_relative_point">
1486 <dc:call-macro name="fixings-macro"> 1485 <dc:call-macro name="fixings-macro">
1487 <column name="{$wst_column_name}" ids="fixations-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1486 <column name="{$wst_column_name}" ids="fixations-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1488 </dc:call-macro> 1487 </dc:call-macro>
1489 </dc:macro> 1488 </dc:macro>
1490 1489
1491 <!-- official lines --> 1490 <!-- official lines -->
1492 <dc:macro name="basedata_3_macro"> 1491 <dc:macro name="basedata_3_macro">
1494 <dc:if test="dc:has-result()"> 1493 <dc:if test="dc:has-result()">
1495 <officiallines> 1494 <officiallines>
1496 <dc:group expr="$wst_description"> 1495 <dc:group expr="$wst_description">
1497 <official name="{dc:group-key()}"> 1496 <official name="{dc:group-key()}">
1498 <dc:for-each> 1497 <dc:for-each>
1499 <dc:macro-body /> 1498 <dc:macro-body/>
1500 </dc:for-each> 1499 </dc:for-each>
1501 </official> 1500 </official>
1502 </dc:group> 1501 </dc:group>
1503 </officiallines> 1502 </officiallines>
1504 </dc:if> 1503 </dc:if>
1505 </dc:filter> 1504 </dc:filter>
1506 </dc:macro> 1505 </dc:macro>
1507 1506
1508 <dc:macro name="basedata_3_officials"> 1507 <dc:macro name="basedata_3_officials">
1509 <dc:call-macro name="basedata_3_macro"> 1508 <dc:call-macro name="basedata_3_macro">
1510 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)" /> 1509 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)"/>
1511 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}" /> 1510 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}"/>
1512 </dc:call-macro> 1511 </dc:call-macro>
1513 </dc:macro> 1512 </dc:macro>
1514 1513
1515 <dc:macro name="basedata_3_officials_wq"> 1514 <dc:macro name="basedata_3_officials_wq">
1516 <dc:call-macro name="basedata_3_macro"> 1515 <dc:call-macro name="basedata_3_macro">
1517 <column name="{$wst_column_name}" ids="officials_wq-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1516 <column name="{$wst_column_name}" ids="officials_wq-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1518 </dc:call-macro> 1517 </dc:call-macro>
1519 </dc:macro> 1518 </dc:macro>
1520 1519
1521 <!-- flood marks --> 1520 <!-- flood marks -->
1522 <dc:macro name="basedata_4_macro"> 1521 <dc:macro name="basedata_4_macro">
1524 <dc:if test="dc:has-result()"> 1523 <dc:if test="dc:has-result()">
1525 <heightmarks> 1524 <heightmarks>
1526 <dc:group expr="dc:replace($wst_description, 'HW-Marken/', '')"> 1525 <dc:group expr="dc:replace($wst_description, 'HW-Marken/', '')">
1527 <heightmark name="{dc:group-key()}" description="{dc:group-key()}"> 1526 <heightmark name="{dc:group-key()}" description="{dc:group-key()}">
1528 <dc:for-each> 1527 <dc:for-each>
1529 <dc:macro-body /> 1528 <dc:macro-body/>
1530 </dc:for-each> 1529 </dc:for-each>
1531 </heightmark> 1530 </heightmark>
1532 </dc:group> 1531 </dc:group>
1533 </heightmarks> 1532 </heightmarks>
1534 </dc:if> 1533 </dc:if>
1535 </dc:filter> 1534 </dc:filter>
1536 </dc:macro> 1535 </dc:macro>
1537 1536
1538 <dc:macro name="basedata_4_heightmarks-points"> 1537 <dc:macro name="basedata_4_heightmarks-points">
1539 <dc:call-macro name="basedata_4_macro"> 1538 <dc:call-macro name="basedata_4_macro">
1540 <column name="{$wst_column_name}" ids="heightmarks_points-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1539 <column name="{$wst_column_name}" ids="heightmarks_points-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1541 </dc:call-macro> 1540 </dc:call-macro>
1542 </dc:macro> 1541 </dc:macro>
1543 1542
1544 <dc:macro name="basedata_4_heightmarks-points_wq"> 1543 <dc:macro name="basedata_4_heightmarks-points_wq">
1545 <dc:call-macro name="basedata_4_macro"> 1544 <dc:call-macro name="basedata_4_macro">
1546 <column name="{$wst_column_name}" ids="heightmarks_points-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1545 <column name="{$wst_column_name}" ids="heightmarks_points-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1547 </dc:call-macro> 1546 </dc:call-macro>
1548 </dc:macro> 1547 </dc:macro>
1549 1548
1550 <dc:macro name="basedata_4_heightmarks-points-relative_points"> 1549 <dc:macro name="basedata_4_heightmarks-points-relative_points">
1551 <dc:call-macro name="basedata_4_macro"> 1550 <dc:call-macro name="basedata_4_macro">
1552 <column name="{$wst_column_name}" ids="heightmarks_points-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1551 <column name="{$wst_column_name}" ids="heightmarks_points-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1553 </dc:call-macro> 1552 </dc:call-macro>
1554 </dc:macro> 1553 </dc:macro>
1555 1554
1556 <!-- flood protection structures --> 1555 <!-- flood protection structures -->
1557 <dc:macro name="basedata_5_macro"> 1556 <dc:macro name="basedata_5_macro">
1559 <dc:if test="dc:has-result()"> 1558 <dc:if test="dc:has-result()">
1560 <flood_protections> 1559 <flood_protections>
1561 <dc:group expr="dc:replace($wst_description, 'HW-Schutzanlagen/', '')"> 1560 <dc:group expr="dc:replace($wst_description, 'HW-Schutzanlagen/', '')">
1562 <flood_protection name="{dc:group-key()}" description="{dc:group-key()}"> 1561 <flood_protection name="{dc:group-key()}" description="{dc:group-key()}">
1563 <dc:for-each> 1562 <dc:for-each>
1564 <dc:macro-body /> 1563 <dc:macro-body/>
1565 </dc:for-each> 1564 </dc:for-each>
1566 </flood_protection> 1565 </flood_protection>
1567 </dc:group> 1566 </dc:group>
1568 </flood_protections> 1567 </flood_protections>
1569 </dc:if> 1568 </dc:if>
1570 </dc:filter> 1569 </dc:filter>
1571 </dc:macro> 1570 </dc:macro>
1572 1571
1573 <dc:macro name="basedata_5_flood-protections"> 1572 <dc:macro name="basedata_5_flood-protections">
1574 <dc:call-macro name="basedata_5_macro"> 1573 <dc:call-macro name="basedata_5_macro">
1575 <column name="{$wst_column_name}" ids="flood_protection-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1574 <column name="{$wst_column_name}" ids="flood_protection-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1576 </dc:call-macro> 1575 </dc:call-macro>
1577 </dc:macro> 1576 </dc:macro>
1578 1577
1579 <dc:macro name="basedata_5_flood-protections_wq"> 1578 <dc:macro name="basedata_5_flood-protections_wq">
1580 <dc:call-macro name="basedata_5_macro"> 1579 <dc:call-macro name="basedata_5_macro">
1581 <column name="{$wst_column_name}" ids="flood_protection-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1580 <column name="{$wst_column_name}" ids="flood_protection-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1582 </dc:call-macro> 1581 </dc:call-macro>
1583 </dc:macro> 1582 </dc:macro>
1584 1583
1585 <dc:macro name="basedata_5_flood-protections_relative_points"> 1584 <dc:macro name="basedata_5_flood-protections_relative_points">
1586 <dc:call-macro name="basedata_5_macro"> 1585 <dc:call-macro name="basedata_5_macro">
1587 <column name="{$wst_column_name}" ids="flood_protection-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1586 <column name="{$wst_column_name}" ids="flood_protection-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1588 </dc:call-macro> 1587 </dc:call-macro>
1589 </dc:macro> 1588 </dc:macro>
1590 1589
1591 <!-- waterlevel differences imported from CSV-files for M-INFO --> 1590 <!-- waterlevel differences imported from CSV-files for M-INFO -->
1592 <dc:macro name="basedata_6_delta_w"> 1591 <dc:macro name="basedata_6_delta_w">
1596 <delta_w_cm> 1595 <delta_w_cm>
1597 <dc:filter expr="contains($wst_description, 'cm.csv')"> 1596 <dc:filter expr="contains($wst_description, 'cm.csv')">
1598 <dc:group expr="dc:replace($wst_description, 'CSV/', '')"> 1597 <dc:group expr="dc:replace($wst_description, 'CSV/', '')">
1599 <relativepoint name="{dc:group-key()}" description="{dc:group-key()}"> 1598 <relativepoint name="{dc:group-key()}" description="{dc:group-key()}">
1600 <dc:for-each> 1599 <dc:for-each>
1601 <column name="{$wst_column_name}" ids="delta_w-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1600 <column name="{$wst_column_name}" ids="delta_w-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1602 </dc:for-each> 1601 </dc:for-each>
1603 </relativepoint> 1602 </relativepoint>
1604 </dc:group> 1603 </dc:group>
1605 </dc:filter> 1604 </dc:filter>
1606 </delta_w_cm> 1605 </delta_w_cm>
1607 <delta_w_cma> 1606 <delta_w_cma>
1608 <dc:filter expr="contains($wst_description, 'cm-a.csv')"> 1607 <dc:filter expr="contains($wst_description, 'cm-a.csv')">
1609 <dc:group expr="dc:replace($wst_description, 'CSV/', '')"> 1608 <dc:group expr="dc:replace($wst_description, 'CSV/', '')">
1610 <relativepoint name="{dc:group-key()}" description="{dc:group-key()}"> 1609 <relativepoint name="{dc:group-key()}" description="{dc:group-key()}">
1611 <dc:for-each> 1610 <dc:for-each>
1612 <column name="{$wst_column_name}" ids="delta_w_cma-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1611 <column name="{$wst_column_name}" ids="delta_w_cma-wstv-{$wst_column_position}-{$wst_id}" factory="staticwkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1613 </dc:for-each> 1612 </dc:for-each>
1614 </relativepoint> 1613 </relativepoint>
1615 </dc:group> 1614 </dc:group>
1616 </dc:filter> 1615 </dc:filter>
1617 </delta_w_cma> 1616 </delta_w_cma>
1626 <dc:if test="dc:has-result()"> 1625 <dc:if test="dc:has-result()">
1627 <wlevel> 1626 <wlevel>
1628 <dc:group expr="dc:replace($wst_description, 'CSV/', '')"> 1627 <dc:group expr="dc:replace($wst_description, 'CSV/', '')">
1629 <relativepoint name="{dc:group-key()}" description="{dc:group-key()}"> 1628 <relativepoint name="{dc:group-key()}" description="{dc:group-key()}">
1630 <dc:for-each> 1629 <dc:for-each>
1631 <dc:macro-body /> 1630 <dc:macro-body/>
1632 </dc:for-each> 1631 </dc:for-each>
1633 </relativepoint> 1632 </relativepoint>
1634 </dc:group> 1633 </dc:group>
1635 </wlevel> 1634 </wlevel>
1636 </dc:if> 1635 </dc:if>
1637 </dc:filter> 1636 </dc:filter>
1638 </dc:macro> 1637 </dc:macro>
1639 1638
1640 <dc:macro name="basedata_7_waterlevels"> 1639 <dc:macro name="basedata_7_waterlevels">
1641 <dc:call-macro name="basedata_7_macro"> 1640 <dc:call-macro name="basedata_7_macro">
1642 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)" /> 1641 <dc:variable name="start_year" expr="dc:date-format('yyyy', $start_time)"/>
1643 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}" /> 1642 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="staticwqkms" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" year="{dc:date-format('yyyy', $start_time)}"/>
1644 </dc:call-macro> 1643 </dc:call-macro>
1645 </dc:macro> 1644 </dc:macro>
1646 1645
1647 <dc:macro name="basedata_7_waterlevels_wq"> 1646 <dc:macro name="basedata_7_waterlevels_wq">
1648 <dc:call-macro name="basedata_7_macro"> 1647 <dc:call-macro name="basedata_7_macro">
1649 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]" /> 1648 <column name="{$wst_column_name}" ids="additionals-wstv-{$wst_column_position}-{$wst_id}" factory="wqinterpol" target_out="{$out}" info="{$info} [km {$deffrom} - {$defto}]"/>
1650 </dc:call-macro> 1649 </dc:call-macro>
1651 </dc:macro> 1650 </dc:macro>
1652 1651
1653 1652
1654 <!-- prototypes --> 1653 <!-- prototypes -->
1655 1654
1656 <dc:macro name="discharge-curve-prototype"> 1655 <dc:macro name="discharge-curve-prototype">
1657 <computed_discharge_curve> 1656 <computed_discharge_curve>
1658 <dc:call-macro name="discharge_table_gauge" /> 1657 <dc:call-macro name="discharge_table_gauge"/>
1659 <dc:call-macro name="mainvalues" /> 1658 <dc:call-macro name="mainvalues"/>
1660 </computed_discharge_curve> 1659 </computed_discharge_curve>
1661 <dc:call-macro name="historical_discharge_curve" /> 1660 <dc:call-macro name="historical_discharge_curve"/>
1662 <dc:call-macro name="basedata_0_wq" /> 1661 <dc:call-macro name="basedata_0_wq"/>
1663 <dc:call-macro name="basedata_1_additionals_wq" /> 1662 <dc:call-macro name="basedata_1_additionals_wq"/>
1664 <dc:call-macro name="basedata_2_fixations_wq" /> 1663 <dc:call-macro name="basedata_2_fixations_wq"/>
1665 <dc:call-macro name="basedata_3_officials_wq" /> 1664 <dc:call-macro name="basedata_3_officials_wq"/>
1666 <dc:call-macro name="basedata_4_heightmarks-points_wq" /> 1665 <dc:call-macro name="basedata_4_heightmarks-points_wq"/>
1667 <dc:call-macro name="basedata_5_flood-protections_wq" /> 1666 <dc:call-macro name="basedata_5_flood-protections_wq"/>
1668 <minfo> 1667 <minfo>
1669 <dc:call-macro name="sqrelations" /> 1668 <dc:call-macro name="sqrelations"/>
1670 <dc:call-macro name="basedata_7_waterlevels_wq" /> 1669 <dc:call-macro name="basedata_7_waterlevels_wq"/>
1671 </minfo> 1670 </minfo>
1672 </dc:macro> 1671 </dc:macro>
1673 1672
1674 <dc:macro name="discharge-curve-user-prototype"> 1673 <dc:macro name="discharge-curve-user-prototype">
1675 <dc:call-macro name="waterlevels-user" /> 1674 <dc:call-macro name="waterlevels-user"/>
1676 <dc:call-macro name="computed-discharge-curve" /> 1675 <dc:call-macro name="computed-discharge-curve"/>
1677 <!-- TODO: macro for discharge longitudinal section --> 1676 <!-- TODO: macro for discharge longitudinal section -->
1678 <dc:call-macro name="fix-wq-curve" /> 1677 <dc:call-macro name="fix-wq-curve"/>
1679 <!-- TODO: own macro for Vollmer-curve (extract from fix-wq-curve and waterlevels-user) --> 1678 <!-- TODO: own macro for Vollmer-curve (extract from fix-wq-curve and waterlevels-user) -->
1680 <dc:call-macro name="extreme-wq-curve" /> 1679 <dc:call-macro name="extreme-wq-curve"/>
1681 <minfo> 1680 <minfo>
1682 <dc:call-macro name="sqrelations_user" /> 1681 <dc:call-macro name="sqrelations_user"/>
1683 </minfo> 1682 </minfo>
1684 </dc:macro> 1683 </dc:macro>
1685 1684
1686 <dc:macro name="longitudinal-section-prototype"> 1685 <dc:macro name="longitudinal-section-prototype">
1687 <dc:call-macro name="basedata_0" /> 1686 <dc:call-macro name="basedata_0"/>
1688 <dc:call-macro name="basedata_1_additionals" /> 1687 <dc:call-macro name="basedata_1_additionals"/>
1689 <dc:call-macro name="basedata_2_fixations" /> 1688 <dc:call-macro name="basedata_2_fixations"/>
1690 <dc:call-macro name="basedata_3_officials" /> 1689 <dc:call-macro name="basedata_3_officials"/>
1691 <dc:call-macro name="basedata_4_heightmarks-points" /> 1690 <dc:call-macro name="basedata_4_heightmarks-points"/>
1692 <dc:call-macro name="basedata_5_flood-protections" /> 1691 <dc:call-macro name="basedata_5_flood-protections"/>
1693 <dc:call-macro name="annotations_per_type" /> 1692 <dc:call-macro name="annotations_per_type"/>
1694 <minfo> 1693 <minfo>
1695 <fixanalysis> 1694 <fixanalysis>
1696 <dc:call-macro name="basedata_6_delta_w" /> 1695 <dc:call-macro name="basedata_6_delta_w"/>
1697 <dc:call-macro name="basedata_7_waterlevels" /> 1696 <dc:call-macro name="basedata_7_waterlevels"/>
1698 </fixanalysis> 1697 </fixanalysis>
1699 <dc:call-macro name="sedimentloads" /> 1698 <dc:call-macro name="sedimentloads"/>
1700 <dc:call-macro name="densities" /> 1699 <dc:call-macro name="densities"/>
1701 <dc:call-macro name="minfo-heights" /> 1700 <dc:call-macro name="minfo-heights"/>
1702 <dc:call-macro name="sounding-width" /> 1701 <dc:call-macro name="sounding-width"/>
1703 <dc:call-macro name="morph_width" /> 1702 <dc:call-macro name="morph_width"/>
1704 <dc:call-macro name="porosities" /> 1703 <dc:call-macro name="porosities"/>
1705 <flow_velocities> 1704 <flow_velocities>
1706 <dc:call-macro name="flow_velocity_measurements" /> 1705 <dc:call-macro name="flow_velocity_measurements"/>
1707 <dc:call-macro name="flow_velocity_models" /> 1706 <dc:call-macro name="flow_velocity_models"/>
1708 </flow_velocities> 1707 </flow_velocities>
1709 </minfo> 1708 </minfo>
1710 1709
1711 <sinfo> 1710 <sinfo>
1712 <sinfo_predefined_flowdepths> 1711 <sinfo_predefined_flowdepths>
1713 <dc:call-macro name="sinfo_predefined_flowdepth-m" /> 1712 <dc:call-macro name="sinfo_predefined_flowdepth-m"/>
1714 </sinfo_predefined_flowdepths> 1713 </sinfo_predefined_flowdepths>
1715 1714
1716 <sinfo_predefined_collision> 1715 <sinfo_predefined_collision>
1717 <dc:call-macro name="sinfo_predefined_collision" /> 1716 <dc:call-macro name="sinfo_predefined_collision"/>
1718 </sinfo_predefined_collision> 1717 </sinfo_predefined_collision>
1719 1718
1720 <sinfo_predefined_channel> 1719 <sinfo_predefined_channel>
1721 <dc:call-macro name="sinfo_predefined_channel" /> 1720 <dc:call-macro name="sinfo_predefined_channel"/>
1722 </sinfo_predefined_channel> 1721 </sinfo_predefined_channel>
1723 1722
1724 <sinfo_predefined_infrastructure> 1723 <sinfo_predefined_infrastructure>
1725 <dc:call-macro name="sinfo_predefined_infrastructure" /> 1724 <dc:call-macro name="sinfo_predefined_infrastructure"/>
1726 </sinfo_predefined_infrastructure> 1725 </sinfo_predefined_infrastructure>
1727 1726
1728 <sinfo_predefined_tkh> 1727 <sinfo_predefined_tkh>
1729 <dc:call-macro name="sinfo_predefined_tkh-berechnung" /> 1728 <dc:call-macro name="sinfo_predefined_tkh-berechnung"/>
1730 <dc:call-macro name="sinfo_predefined_tkh-messung" /> 1729 <dc:call-macro name="sinfo_predefined_tkh-messung"/>
1731 </sinfo_predefined_tkh> 1730 </sinfo_predefined_tkh>
1732 1731
1733 <sinfo_predefined_depthevol> 1732 <sinfo_predefined_depthevol>
1734 <dc:call-macro name="sinfo_predefined_depthevol-aktuell" /> 1733 <dc:call-macro name="sinfo_predefined_depthevol-aktuell"/>
1735 <dc:call-macro name="sinfo_predefined_depthevol-etappe" /> 1734 <dc:call-macro name="sinfo_predefined_depthevol-etappe"/>
1736 </sinfo_predefined_depthevol> 1735 </sinfo_predefined_depthevol>
1737 1736
1738 </sinfo> 1737 </sinfo>
1739 1738
1740 </dc:macro> 1739 </dc:macro>
1741 1740
1742 <dc:macro name="longitudinal-section-user-prototype"> 1741 <dc:macro name="longitudinal-section-user-prototype">
1743 <dc:comment> SINFO </dc:comment> 1742 <dc:comment> SINFO </dc:comment>
1744 <dc:call-macro name="sinfo_flowdepths" /> 1743 <dc:call-macro name="sinfo_flowdepths"/>
1745 <dc:call-macro name="sinfo_flowdepths_minmax" /> 1744 <dc:call-macro name="sinfo_flowdepths_minmax"/>
1746 <dc:call-macro name="sinfo_flow_depth_development" /> 1745 <dc:call-macro name="sinfo_flow_depth_development"/>
1747 <dc:call-macro name="sinfo_tkh" /> 1746 <dc:call-macro name="sinfo_tkh"/>
1748 <dc:call-macro name="sinfo_collision" /> 1747 <dc:call-macro name="sinfo_collision"/>
1749 <dc:call-macro name="sinfo_flood_duration" /> 1748 <dc:call-macro name="sinfo_flood_duration"/>
1750 1749
1751 <dc:comment> WINFO/DIFF/FIX </dc:comment> 1750 <dc:comment> WINFO/DIFF/FIX </dc:comment>
1752 <dc:call-macro name="longitudinal" /> 1751 <dc:call-macro name="longitudinal"/>
1753 <dc:call-macro name="differences" /> 1752 <dc:call-macro name="differences"/>
1754 <dc:call-macro name="waterlevels-discharge" /> 1753 <dc:call-macro name="waterlevels-discharge"/>
1755 <dc:call-macro name="longitudinal-section-fix" /> 1754 <dc:call-macro name="longitudinal-section-fix"/>
1756 <dc:call-macro name="longitudinal-section-fix-vollmer" /> 1755 <dc:call-macro name="longitudinal-section-fix-vollmer"/>
1757 1756
1758 <dc:comment> MINFO </dc:comment> 1757 <dc:comment> MINFO </dc:comment>
1759 <dc:call-macro name="middle_bedheights" /> 1758 <dc:call-macro name="middle_bedheights"/>
1760 <dc:call-macro name="bedheight_differences" /> 1759 <dc:call-macro name="bedheight_differences"/>
1761 <dc:call-macro name="bedquality" /> 1760 <dc:call-macro name="bedquality"/>
1762 <dc:call-macro name="flow-velocity" /> 1761 <dc:call-macro name="flow-velocity"/>
1763 <dc:call-macro name="sediment-load" /> 1762 <dc:call-macro name="sediment-load"/>
1764 1763
1765 <dc:comment> UINFO </dc:comment> 1764 <dc:comment> UINFO </dc:comment>
1766 <dc:call-macro name="uinfo_salix_line" /> 1765 <dc:call-macro name="uinfo_salix_line"/>
1767 1766
1768 <dc:comment> BUNDU </dc:comment> 1767 <dc:comment> BUNDU </dc:comment>
1769 <dc:call-macro name="bundu_bezugswst" /> 1768 <dc:call-macro name="bundu_bezugswst"/>
1770 </dc:macro> 1769 </dc:macro>
1771 1770
1772 <!-- porosities --> 1771 <!-- porosities -->
1773 <dc:macro name="porosities"> 1772 <dc:macro name="porosities">
1774 <porosities> 1773 <porosities>
1793 ORDER BY depth_lower, depth_upper 1792 ORDER BY depth_lower, depth_upper
1794 </dc:statement> 1793 </dc:statement>
1795 <dc:if test="dc:has-result()"> 1794 <dc:if test="dc:has-result()">
1796 <dc:for-each> 1795 <dc:for-each>
1797 <porosity description="{$depth_lower}-{$depth_upper} cm" factory="porosity" target_out="{$out}" info="{concat($info, dc:date-format('yyyy', $syear), 1796 <porosity description="{$depth_lower}-{$depth_upper} cm" factory="porosity" target_out="{$out}" info="{concat($info, dc:date-format('yyyy', $syear),
1798 ' - ', dc:date-format('yyyy', $eyear))}" ids="{$pid};{$description}" /> 1797 ' - ', dc:date-format('yyyy', $eyear))}" ids="{$pid};{$description}"/>
1799 </dc:for-each> 1798 </dc:for-each>
1800 </dc:if> 1799 </dc:if>
1801 </dc:context> 1800 </dc:context>
1802 </porosities> 1801 </porosities>
1803 </dc:macro> 1802 </dc:macro>
1820 ORDER BY 1819 ORDER BY
1821 year, depth_lower, depth_upper 1820 year, depth_lower, depth_upper
1822 </dc:statement> 1821 </dc:statement>
1823 <dc:if test="dc:has-result()"> 1822 <dc:if test="dc:has-result()">
1824 <dc:for-each> 1823 <dc:for-each>
1825 <density description="{$depth_lower}-{$depth_upper} cm" factory="sedimentdensity" target_out="{$out}" info="{$info}" ids="{$sdid}" /> 1824 <density description="{$depth_lower}-{$depth_upper} cm" factory="sedimentdensity" target_out="{$out}" info="{$info}" ids="{$sdid}"/>
1826 </dc:for-each> 1825 </dc:for-each>
1827 </dc:if> 1826 </dc:if>
1828 </dc:context> 1827 </dc:context>
1829 </densities> 1828 </densities>
1830 </dc:macro> 1829 </dc:macro>
1831 1830
1832 <!-- sediment load --> 1831 <!-- sediment load -->
1833 <dc:macro name="load"> 1832 <dc:macro name="load">
1834 <year description="{$timespan}" factory="sedimentload" target_out="{$out}" info="{$info}" ids="{$slid};{$fraction};{$timespan};{$kind}" /> 1833 <year description="{$timespan}" factory="sedimentload" target_out="{$out}" info="{$info}" ids="{$slid};{$fraction};{$timespan};{$kind}"/>
1835 </dc:macro> 1834 </dc:macro>
1836 1835
1837 <dc:macro name="load_ls"> 1836 <dc:macro name="load_ls">
1838 <year description="{$timespan}" factory="sedimentload_ls" target_out="{$out}" info="{$info}" ids="{$slid};{$timespan};{$kind}" /> 1837 <year description="{$timespan}" factory="sedimentload_ls" target_out="{$out}" info="{$info}" ids="{$slid};{$timespan};{$kind}"/>
1839 </dc:macro> 1838 </dc:macro>
1840 1839
1841 <dc:macro name="loads"> 1840 <dc:macro name="loads">
1842 <dc:if test="dc:has-result()"> 1841 <dc:if test="dc:has-result()">
1843 <dc:group expr="concat('SQ ', dc:date-format('yyyy', $sqstart), '-', 1842 <dc:group expr="concat('SQ ', dc:date-format('yyyy', $sqstart), '-',
1844 dc:date-format('yyyy', $sqstop))"> 1843 dc:date-format('yyyy', $sqstop))">
1845 <sq_time description="{dc:group-key()}"> 1844 <sq_time description="{dc:group-key()}">
1846 <dc:group expr="$fraction"> 1845 <dc:group expr="$fraction">
1847 <dc:variable name="fraction_name" expr="concat('${', dc:group-key(), '}')" /> 1846 <dc:variable name="fraction_name" expr="concat('${', dc:group-key(), '}')"/>
1848 <fraction description="{$fraction_name}"> 1847 <fraction description="{$fraction_name}">
1849 <dc:for-each> 1848 <dc:for-each>
1850 <dc:choose> 1849 <dc:choose>
1851 <dc:when test="string-length(dc:get('endyear')) = 0"> 1850 <dc:when test="string-length(dc:get('endyear')) = 0">
1852 <dc:variable name="timespan" type="string" expr="dc:date-format('yyyy', $startyear)" /> 1851 <dc:variable name="timespan" type="string" expr="dc:date-format('yyyy', $startyear)"/>
1853 </dc:when> 1852 </dc:when>
1854 <dc:otherwise> 1853 <dc:otherwise>
1855 <dc:variable name="timespan" type="string" expr="concat(dc:date-format('yyyy', 1854 <dc:variable name="timespan" type="string" expr="concat(dc:date-format('yyyy',
1856 $startyear), '-', 1855 $startyear), '-',
1857 dc:date-format('yyyy', $endyear))" /> 1856 dc:date-format('yyyy', $endyear))"/>
1858 </dc:otherwise> 1857 </dc:otherwise>
1859 </dc:choose> 1858 </dc:choose>
1860 <dc:if test="$kind = 'official'"> 1859 <dc:if test="$kind = 'official'">
1861 <dc:variable name="info" type="string" expr="concat('Amtliche Epoche&lt;BR&gt;', 1860 <dc:variable name="info" type="string" expr="concat('Amtliche Epoche&lt;BR&gt;',
1862 dc:get('info'))" /> 1861 dc:get('info'))"/>
1863 </dc:if> 1862 </dc:if>
1864 <dc:macro-body /> 1863 <dc:macro-body/>
1865 </dc:for-each> 1864 </dc:for-each>
1866 </fraction> 1865 </fraction>
1867 </dc:group> 1866 </dc:group>
1868 </sq_time> 1867 </sq_time>
1869 </dc:group> 1868 </dc:group>
1872 1871
1873 <dc:macro name="sedimentloads-filter"> 1872 <dc:macro name="sedimentloads-filter">
1874 <years> 1873 <years>
1875 <dc:filter expr="string-length(dc:get('endyear')) = 0 and 1874 <dc:filter expr="string-length(dc:get('endyear')) = 0 and
1876 $kind != 'official'"> 1875 $kind != 'official'">
1877 <dc:macro-body /> 1876 <dc:macro-body/>
1878 </dc:filter> 1877 </dc:filter>
1879 </years> 1878 </years>
1880 <epochs> 1879 <epochs>
1881 <dc:filter expr="string-length(dc:get('endyear')) &gt; 0 and 1880 <dc:filter expr="string-length(dc:get('endyear')) &gt; 0 and
1882 $kind != 'official'"> 1881 $kind != 'official'">
1883 <dc:macro-body /> 1882 <dc:macro-body/>
1884 </dc:filter> 1883 </dc:filter>
1885 </epochs> 1884 </epochs>
1886 <off_epochs> 1885 <off_epochs>
1887 <dc:filter expr="$kind = 'official'"> 1886 <dc:filter expr="$kind = 'official'">
1888 <dc:macro-body /> 1887 <dc:macro-body/>
1889 </dc:filter> 1888 </dc:filter>
1890 </off_epochs> 1889 </off_epochs>
1891 </dc:macro> 1890 </dc:macro>
1892 1891
1893 <dc:macro name="sedimentloads"> 1892 <dc:macro name="sedimentloads">
1894 <sedimentloads> 1893 <sedimentloads>
1895 <dc:call-macro name="annotations_sediment_load_ls" /> 1894 <dc:call-macro name="annotations_sediment_load_ls"/>
1896 <measurement_stations> 1895 <measurement_stations>
1897 <dc:context> 1896 <dc:context>
1898 <dc:call-macro name="sedimentload_stations_statement" /> 1897 <dc:call-macro name="sedimentload_stations_statement"/>
1899 <dc:call-macro name="sedimentloads-filter"> 1898 <dc:call-macro name="sedimentloads-filter">
1900 <dc:call-macro name="loads"> 1899 <dc:call-macro name="loads">
1901 <dc:call-macro name="load" /> 1900 <dc:call-macro name="load"/>
1902 </dc:call-macro> 1901 </dc:call-macro>
1903 </dc:call-macro> 1902 </dc:call-macro>
1904 </dc:context> 1903 </dc:context>
1905 </measurement_stations> 1904 </measurement_stations>
1906 <sediment_load_ls> 1905 <sediment_load_ls>
1907 <dc:context> 1906 <dc:context>
1908 <dc:call-macro name="sedimentload_ls_statement" /> 1907 <dc:call-macro name="sedimentload_ls_statement"/>
1909 <dc:call-macro name="sedimentloads-filter"> 1908 <dc:call-macro name="sedimentloads-filter">
1910 <dc:call-macro name="loads"> 1909 <dc:call-macro name="loads">
1911 <dc:call-macro name="load_ls" /> 1910 <dc:call-macro name="load_ls"/>
1912 </dc:call-macro> 1911 </dc:call-macro>
1913 </dc:call-macro> 1912 </dc:call-macro>
1914 </dc:context> 1913 </dc:context>
1915 </sediment_load_ls> 1914 </sediment_load_ls>
1916 </sedimentloads> 1915 </sedimentloads>
1983 </dc:statement> 1982 </dc:statement>
1984 </dc:macro> 1983 </dc:macro>
1985 1984
1986 <!-- annotations --> 1985 <!-- annotations -->
1987 <dc:macro name="annotations"> 1986 <dc:macro name="annotations">
1988 <annotation factory="annotations" ids="{$river_id}" target_out="{$out}" /> 1987 <annotation factory="annotations" ids="{$river_id}" target_out="{$out}"/>
1989 </dc:macro> 1988 </dc:macro>
1990 1989
1991 <dc:macro name="annotations_per_type"> 1990 <dc:macro name="annotations_per_type">
1992 <annotations> 1991 <annotations>
1993 <dc:context> 1992 <dc:context>
1994 <all_annotations factory="annotations" ids="{$river_id}" target_out="{$out}" /> 1993 <all_annotations factory="annotations" ids="{$river_id}" target_out="{$out}"/>
1995 <dc:statement> 1994 <dc:statement>
1996 SELECT id AS anno_id, 1995 SELECT id AS anno_id,
1997 name AS anno_description 1996 name AS anno_description
1998 FROM annotation_types 1997 FROM annotation_types
1999 </dc:statement> 1998 </dc:statement>
2000 <dc:for-each> 1999 <dc:for-each>
2001 <annotation name="{$anno_description}" factory="annotations" target_out="{$out}" ids="{$river_id}:{$anno_description}" /> 2000 <annotation name="{$anno_description}" factory="annotations" target_out="{$out}" ids="{$river_id}:{$anno_description}"/>
2002 </dc:for-each> 2001 </dc:for-each>
2003 </dc:context> 2002 </dc:context>
2004 </annotations> 2003 </annotations>
2005 </dc:macro> 2004 </dc:macro>
2006 2005
2012 name AS anno_description 2011 name AS anno_description
2013 FROM annotation_types 2012 FROM annotation_types
2014 WHERE name LIKE 'Quelle %' OR name LIKE 'Senke %' 2013 WHERE name LIKE 'Quelle %' OR name LIKE 'Senke %'
2015 </dc:statement> 2014 </dc:statement>
2016 <dc:for-each> 2015 <dc:for-each>
2017 <annotation name="{$anno_description}" factory="annotations" target_out="{$out}" ids="{$river_id}:{$anno_description}" /> 2016 <annotation name="{$anno_description}" factory="annotations" target_out="{$out}" ids="{$river_id}:{$anno_description}"/>
2018 </dc:for-each> 2017 </dc:for-each>
2019 </dc:context> 2018 </dc:context>
2020 </sources_sinks> 2019 </sources_sinks>
2021 </dc:macro> 2020 </dc:macro>
2022 2021
2023 <dc:macro name="qsectors"> 2022 <dc:macro name="qsectors">
2024 <qsector factory="qsectors" ids="{$river_id}" target_out="{$out}" /> 2023 <qsector factory="qsectors" ids="{$river_id}" target_out="{$out}"/>
2025 </dc:macro> 2024 </dc:macro>
2026 2025
2027 <dc:macro name="flood-map-recommended"> 2026 <dc:macro name="flood-map-recommended">
2028 <kilometrage> 2027 <kilometrage>
2029 <riveraxis factory="riveraxis" ids="{$river_id}" target_out="{$out}" /> 2028 <riveraxis factory="riveraxis" ids="{$river_id}" target_out="{$out}"/>
2030 </kilometrage> 2029 </kilometrage>
2031 <rastermap> 2030 <rastermap>
2032 <background factory="wmsbackground" ids="{$river_id}" target_out="{$out}" /> 2031 <background factory="wmsbackground" ids="{$river_id}" target_out="{$out}"/>
2033 </rastermap> 2032 </rastermap>
2034 </dc:macro> 2033 </dc:macro>
2035 2034
2036 <!-- bed heights --> 2035 <!-- bed heights -->
2037 <dc:macro name="minfo-heights-diff"> 2036 <dc:macro name="minfo-heights-diff">
2066 FROM csta 2065 FROM csta
2067 ORDER BY b1desc, b2desc 2066 ORDER BY b1desc, b2desc
2068 </dc:statement> 2067 </dc:statement>
2069 <dc:if test="dc:has-result()"> 2068 <dc:if test="dc:has-result()">
2070 <bedheights> 2069 <bedheights>
2071 <dc:call-macro name="bed-heights-single-diff" /> 2070 <dc:call-macro name="bed-heights-single-diff"/>
2072 <dc:call-macro name="bed-heights-epoch-diff" /> 2071 <dc:call-macro name="bed-heights-epoch-diff"/>
2073 </bedheights> 2072 </bedheights>
2074 </dc:if> 2073 </dc:if>
2075 </dc:context> 2074 </dc:context>
2076 </dc:macro> 2075 </dc:macro>
2077 2076
2078 <dc:macro name="bed-heights-single-diff"> 2077 <dc:macro name="bed-heights-single-diff">
2079 <dc:filter expr="not(contains(dc:lowercase($b1desc), 'epoche'))"> 2078 <dc:filter expr="not(contains(dc:lowercase($b1desc), 'epoche'))">
2080 <years> 2079 <years>
2081 <dc:call-macro name="minfo-heights-diff-tree" /> 2080 <dc:call-macro name="minfo-heights-diff-tree"/>
2082 </years> 2081 </years>
2083 </dc:filter> 2082 </dc:filter>
2084 </dc:macro> 2083 </dc:macro>
2085 2084
2086 <dc:macro name="bed-heights-epoch-diff"> 2085 <dc:macro name="bed-heights-epoch-diff">
2087 <dc:filter expr="contains(dc:lowercase($b1desc), 'epoche')"> 2086 <dc:filter expr="contains(dc:lowercase($b1desc), 'epoche')">
2088 <epochs> 2087 <epochs>
2089 <dc:call-macro name="minfo-heights-diff-tree" /> 2088 <dc:call-macro name="minfo-heights-diff-tree"/>
2090 </epochs> 2089 </epochs>
2091 </dc:filter> 2090 </dc:filter>
2092 </dc:macro> 2091 </dc:macro>
2093 2092
2094 <dc:macro name="minfo-heights-diff-tree"> 2093 <dc:macro name="minfo-heights-diff-tree">
2095 <dc:group expr="dc:coalesce($b1year, 'sonstige')"> 2094 <dc:group expr="dc:coalesce($b1year, 'sonstige')">
2096 <minfo-diff name="{dc:group-key()}"> 2095 <minfo-diff name="{dc:group-key()}">
2097 <dc:for-each> 2096 <dc:for-each>
2098 <dc:choose> 2097 <dc:choose>
2099 <dc:when test="dc:group-key() = $b1year"> 2098 <dc:when test="dc:group-key() = $b1year">
2100 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$b1id}-{$b1desc}#bedheight-single-{$b2id}-{$b2desc}" info="{$b1desc}#{$b2desc}" description="{$b1desc} - {$b2desc}" /> 2099 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$b1id}-{$b1desc}#bedheight-single-{$b2id}-{$b2desc}" info="{$b1desc}#{$b2desc}" description="{$b1desc} - {$b2desc}"/>
2101 </dc:when> 2100 </dc:when>
2102 <dc:when test="dc:group-key() = 'sonstige'"> 2101 <dc:when test="dc:group-key() = 'sonstige'">
2103 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$b1id}-{$b1desc}#bedheight-single-{$b2id}-{$b2desc}" info="{$b1desc}#{$b2desc}" description="{$b1desc} - {$b2desc}" /> 2102 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$b1id}-{$b1desc}#bedheight-single-{$b2id}-{$b2desc}" info="{$b1desc}#{$b2desc}" description="{$b1desc} - {$b2desc}"/>
2104 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$b2id}-{$b1desc}#bedheight-single-{$b1id}-{$b2desc}" info="{$b2desc}#{$b1desc}" description="{$b2desc} - {$b1desc}" /> 2103 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$b2id}-{$b1desc}#bedheight-single-{$b1id}-{$b2desc}" info="{$b2desc}#{$b1desc}" description="{$b2desc} - {$b1desc}"/>
2105 </dc:when> 2104 </dc:when>
2106 </dc:choose> 2105 </dc:choose>
2107 </dc:for-each> 2106 </dc:for-each>
2108 </minfo-diff> 2107 </minfo-diff>
2109 </dc:group> 2108 </dc:group>
2110 </dc:macro> 2109 </dc:macro>
2111 2110
2112 <dc:macro name="minfo-heights"> 2111 <dc:macro name="minfo-heights">
2113 <bedheights> 2112 <bedheights>
2114 <dc:call-macro name="bed-heights-single" /> 2113 <dc:call-macro name="bed-heights-single"/>
2115 <dc:call-macro name="bed-heights-epoch" /> 2114 <dc:call-macro name="bed-heights-epoch"/>
2116 </bedheights> 2115 </bedheights>
2117 </dc:macro> 2116 </dc:macro>
2118 2117
2119 <!-- Show all three MW, TL, and KL bedheights --> 2118 <!-- Show all three MW, TL, and KL bedheights -->
2120 <dc:macro name="bed-heights-factory_MW_TW_KL"> 2119 <dc:macro name="bed-heights-factory_MW_TW_KL">
2121 <dc:for-each> 2120 <dc:for-each>
2122 <dc:if test="$bedh_height_count > 0"> 2121 <dc:if test="$bedh_height_count > 0">
2123 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$bedh_id}-{$bedh_year}-MW-{$bedh_descr}" info="{$info}" description="MW-{$bedh_descr}" /> 2122 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$bedh_id}-{$bedh_year}-MW-{$bedh_descr}" info="{$info}" description="MW-{$bedh_descr}"/>
2124 </dc:if> 2123 </dc:if>
2125 <dc:if test="$bedh_min_count > 0"> 2124 <dc:if test="$bedh_min_count > 0">
2126 <height factory="bedheight" target_out="{$out}" ids="bedheight-singleMin-{$bedh_id}-{$bedh_year}-TW-{$bedh_descr}" info="{$info}" description="TW-{$bedh_descr}" /> 2125 <height factory="bedheight" target_out="{$out}" ids="bedheight-singleMin-{$bedh_id}-{$bedh_year}-TW-{$bedh_descr}" info="{$info}" description="TW-{$bedh_descr}"/>
2127 </dc:if> 2126 </dc:if>
2128 <dc:if test="$bedh_max_count > 0"> 2127 <dc:if test="$bedh_max_count > 0">
2129 <height factory="bedheight" target_out="{$out}" ids="bedheight-singleMax-{$bedh_id}-{$bedh_year}-KL-{$bedh_descr}" info="{$info}" description="KL-{$bedh_descr}" /> 2128 <height factory="bedheight" target_out="{$out}" ids="bedheight-singleMax-{$bedh_id}-{$bedh_year}-KL-{$bedh_descr}" info="{$info}" description="KL-{$bedh_descr}"/>
2130 </dc:if> 2129 </dc:if>
2131 </dc:for-each> 2130 </dc:for-each>
2132 </dc:macro> 2131 </dc:macro>
2133 2132
2134 <!-- Show only MW bed height and name it in a neutral way --> 2133 <!-- Show only MW bed height and name it in a neutral way -->
2135 <dc:macro name="bed-heights-factory_MW"> 2134 <dc:macro name="bed-heights-factory_MW">
2136 <dc:for-each> 2135 <dc:for-each>
2137 <dc:if test="$bedh_height_count > 0"> 2136 <dc:if test="$bedh_height_count > 0">
2138 <!-- REMARK: addition 'yaer' attribute is used by intelligent datacage filter of SINFO --> 2137 <!-- REMARK: addition 'yaer' attribute is used by intelligent datacage filter of SINFO -->
2139 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$bedh_id}-{$bedh_year}-{$bedh_descr}" info="{$info}" description="{$bedh_descr}" year="{$bedh_year}" /> 2138 <height factory="bedheight" target_out="{$out}" ids="bedheight-single-{$bedh_id}-{$bedh_year}-{$bedh_descr}" info="{$info}" description="{$bedh_descr}" year="{$bedh_year}"/>
2140 </dc:if> 2139 </dc:if>
2141 </dc:for-each> 2140 </dc:for-each>
2142 </dc:macro> 2141 </dc:macro>
2143 2142
2144 <dc:macro name="bed-heights-single"> 2143 <dc:macro name="bed-heights-single">
2145 <single> 2144 <single>
2146 <dc:context> 2145 <dc:context>
2147 <dc:call-macro name="bed-heights-statement" /> 2146 <dc:call-macro name="bed-heights-statement"/>
2148 <dc:if test="dc:has-result()"> 2147 <dc:if test="dc:has-result()">
2149 <dc:group expr="dc:coalesce($bedh_year, 'sonstige')"> 2148 <dc:group expr="dc:coalesce($bedh_year, 'sonstige')">
2150 <heights name="{dc:group-key()}" description="{dc:group-key()}"> 2149 <heights name="{dc:group-key()}" description="{dc:group-key()}">
2151 <dc:call-macro name="bed-heights-factory_MW_TW_KL" /> 2150 <dc:call-macro name="bed-heights-factory_MW_TW_KL"/>
2152 </heights> 2151 </heights>
2153 </dc:group> 2152 </dc:group>
2154 </dc:if> 2153 </dc:if>
2155 </dc:context> 2154 </dc:context>
2156 </single> 2155 </single>
2158 2157
2159 <!-- Show bed heights that have MW values with a neutral name --> 2158 <!-- Show bed heights that have MW values with a neutral name -->
2160 <dc:macro name="bed-heights-single-MW"> 2159 <dc:macro name="bed-heights-single-MW">
2161 <single> 2160 <single>
2162 <dc:context> 2161 <dc:context>
2163 <dc:call-macro name="bed-heights-statement" /> 2162 <dc:call-macro name="bed-heights-statement"/>
2164 <dc:filter expr="$bedh_height_count"> 2163 <dc:filter expr="$bedh_height_count">
2165 <dc:if test="dc:has-result()"> 2164 <dc:if test="dc:has-result()">
2166 <dc:group expr="dc:coalesce($bedh_year, 'sonstige')"> 2165 <dc:group expr="dc:coalesce($bedh_year, 'sonstige')">
2167 <heights name="{dc:group-key()}" description="{dc:group-key()}"> 2166 <heights name="{dc:group-key()}" description="{dc:group-key()}">
2168 <dc:call-macro name="bed-heights-factory_MW" /> 2167 <dc:call-macro name="bed-heights-factory_MW"/>
2169 </heights> 2168 </heights>
2170 </dc:group> 2169 </dc:group>
2171 </dc:if> 2170 </dc:if>
2172 </dc:filter> 2171 </dc:filter>
2173 </dc:context> 2172 </dc:context>
2176 2175
2177 <!-- Show bed heights that have KL and TW values with a neutral name --> 2176 <!-- Show bed heights that have KL and TW values with a neutral name -->
2178 <dc:macro name="bed-heights-single-KL_TW"> 2177 <dc:macro name="bed-heights-single-KL_TW">
2179 <single> 2178 <single>
2180 <dc:context> 2179 <dc:context>
2181 <dc:call-macro name="bed-heights-statement" /> 2180 <dc:call-macro name="bed-heights-statement"/>
2182 <dc:filter expr="$bedh_max_count > 0 and $bedh_min_count > 0"> 2181 <dc:filter expr="$bedh_max_count > 0 and $bedh_min_count > 0">
2183 <dc:if test="dc:has-result()"> 2182 <dc:if test="dc:has-result()">
2184 <dc:group expr="dc:coalesce($bedh_year, 'sonstige')"> 2183 <dc:group expr="dc:coalesce($bedh_year, 'sonstige')">
2185 <heights name="{dc:group-key()}" description="{dc:group-key()}"> 2184 <heights name="{dc:group-key()}" description="{dc:group-key()}">
2186 <dc:call-macro name="bed-heights-factory_MW" /> 2185 <dc:call-macro name="bed-heights-factory_MW"/>
2187 </heights> 2186 </heights>
2188 </dc:group> 2187 </dc:group>
2189 </dc:if> 2188 </dc:if>
2190 </dc:filter> 2189 </dc:filter>
2191 </dc:context> 2190 </dc:context>
2193 </dc:macro> 2192 </dc:macro>
2194 2193
2195 <dc:macro name="bed-heights-epoch"> 2194 <dc:macro name="bed-heights-epoch">
2196 <epoch> 2195 <epoch>
2197 <dc:context> 2196 <dc:context>
2198 <dc:call-macro name="bed-heights-statement" /> 2197 <dc:call-macro name="bed-heights-statement"/>
2199 <dc:filter expr="contains($bedh_descr, 'Epoche')"> 2198 <dc:filter expr="contains($bedh_descr, 'Epoche')">
2200 <dc:call-macro name="bed-heights-factory_MW_TW_KL" /> 2199 <dc:call-macro name="bed-heights-factory_MW_TW_KL"/>
2201 </dc:filter> 2200 </dc:filter>
2202 </dc:context> 2201 </dc:context>
2203 </epoch> 2202 </epoch>
2204 </dc:macro> 2203 </dc:macro>
2205 2204
2206 <dc:macro name="sounding-width-factory"> 2205 <dc:macro name="sounding-width-factory">
2207 <dc:for-each> 2206 <dc:for-each>
2208 <height factory="bedheight" target_out="{$out}" ids="bedheight-soundings-{$bedh_id}-{$bedh_year}-{$bedh_descr}" info="{$info}" description="{$bedh_descr}" /> 2207 <height factory="bedheight" target_out="{$out}" ids="bedheight-soundings-{$bedh_id}-{$bedh_year}-{$bedh_descr}" info="{$info}" description="{$bedh_descr}"/>
2209 </dc:for-each> 2208 </dc:for-each>
2210 </dc:macro> 2209 </dc:macro>
2211 2210
2212 <dc:macro name="sounding-width"> 2211 <dc:macro name="sounding-width">
2213 <dc:context> 2212 <dc:context>
2214 <dc:call-macro name="bed-heights-statement" /> 2213 <dc:call-macro name="bed-heights-statement"/>
2215 <dc:if test="dc:has-result()"> 2214 <dc:if test="dc:has-result()">
2216 <soundings_width> 2215 <soundings_width>
2217 <dc:call-macro name="sounding-width-factory" /> 2216 <dc:call-macro name="sounding-width-factory"/>
2218 </soundings_width> 2217 </soundings_width>
2219 </dc:if> 2218 </dc:if>
2220 </dc:context> 2219 </dc:context>
2221 </dc:macro> 2220 </dc:macro>
2222 2221
2223 <dc:macro name="sounding-width-recommendations"> 2222 <dc:macro name="sounding-width-recommendations">
2224 <dc:context> 2223 <dc:context>
2225 <dc:call-macro name="bed-heights-statement" /> 2224 <dc:call-macro name="bed-heights-statement"/>
2226 <dc:filter expr="dc:contains($diffids, concat(';', $bedh_descr, ']'))"> 2225 <dc:filter expr="dc:contains($diffids, concat(';', $bedh_descr, ']'))">
2227 <dc:call-macro name="sounding-width-factory" /> 2226 <dc:call-macro name="sounding-width-factory"/>
2228 </dc:filter> 2227 </dc:filter>
2229 </dc:context> 2228 </dc:context>
2230 </dc:macro> 2229 </dc:macro>
2231 2230
2232 <dc:macro name="bed-heights-statement"> 2231 <dc:macro name="bed-heights-statement">
2250 JOIN elevation_model cur_em ON cur_em.id = cur_elevation_model_id 2249 JOIN elevation_model cur_em ON cur_em.id = cur_elevation_model_id
2251 LEFT JOIN 2250 LEFT JOIN
2252 elevation_model old_em 2251 elevation_model old_em
2253 ON old_em.id = old_elevation_model_id 2252 ON old_em.id = old_elevation_model_id
2254 LEFT JOIN ranges r ON r.id = range_id 2253 LEFT JOIN ranges r ON r.id = range_id
2255 LEFT JOIN (SELECT bed_height_id, COUNT(height) AS height_count, COUNT(min_height) AS min_count, COUNT(max_height) AS max_count 2254 LEFT JOIN (SELECT bed_height_id, COUNT(height) AS height_count, COUNT(min_height) AS min_count, COUNT(max_height)
2255 AS max_count
2256 FROM bed_height_values 2256 FROM bed_height_values
2257 WHERE (station BETWEEN (${fromkm}-0.0001) AND (${tokm}+0.0001)) 2257 WHERE (station BETWEEN (${fromkm}-0.0001) AND (${tokm}+0.0001))
2258 GROUP BY bed_height_id 2258 GROUP BY bed_height_id
2259 ) bhv ON bhs.id = bhv.bed_height_id 2259 ) bhv ON bhs.id = bhv.bed_height_id
2260 WHERE bhs.river_id = 2260 WHERE bhs.river_id =
2280 <dc:if test="dc:has-result()"> 2280 <dc:if test="dc:has-result()">
2281 <flowvelocitymodel> 2281 <flowvelocitymodel>
2282 <dc:for-each> 2282 <dc:for-each>
2283 <measurement_value name="{$fvmd}" description="{$fvmd}" ids="{$fvmid}" factory="flowvelocitymodel" info="{$lowerQ} - {$upperQ}&lt;BR&gt; 2283 <measurement_value name="{$fvmd}" description="{$fvmd}" ids="{$fvmid}" factory="flowvelocitymodel" info="{$lowerQ} - {$upperQ}&lt;BR&gt;
2284 Pegel {$gauge}&lt;BR&gt; 2284 Pegel {$gauge}&lt;BR&gt;
2285 Q = {$q} m3/s" target_out="{$out}" /> 2285 Q = {$q} m3/s" target_out="{$out}"/>
2286 </dc:for-each> 2286 </dc:for-each>
2287 </flowvelocitymodel> 2287 </flowvelocitymodel>
2288 </dc:if> 2288 </dc:if>
2289 </dc:context> 2289 </dc:context>
2290 </dc:macro> 2290 </dc:macro>
2307 FROM flow_velocity_measure_values 2307 FROM flow_velocity_measure_values
2308 WHERE measurements_id = ${fvmid} 2308 WHERE measurements_id = ${fvmid}
2309 AND station BETWEEN ${fromkm} AND ${tokm} 2309 AND station BETWEEN ${fromkm} AND ${tokm}
2310 </dc:statement> 2310 </dc:statement>
2311 <dc:for-each> 2311 <dc:for-each>
2312 <measurement_value name="{$description} - {$station} - {$datetime}" description="{$description} - {$station} - {$datetime}" ids="{$id}" factory="flowvelocity" target_out="{$out}" /> 2312 <measurement_value name="{$description} - {$station} - {$datetime}" description="{$description} - {$station} - {$datetime}" ids="{$id}" factory="flowvelocity" target_out="{$out}"/>
2313 </dc:for-each> 2313 </dc:for-each>
2314 </dc:context> 2314 </dc:context>
2315 </flow_velocity_measurement> 2315 </flow_velocity_measurement>
2316 </dc:for-each> 2316 </dc:for-each>
2317 </flowvelocitymeasurement> 2317 </flowvelocitymeasurement>
2335 max(station) AS to_station 2335 max(station) AS to_station
2336 FROM morphologic_width_values 2336 FROM morphologic_width_values
2337 WHERE morphologic_width_id = ${width_id} 2337 WHERE morphologic_width_id = ${width_id}
2338 </dc:statement> 2338 </dc:statement>
2339 <dc:for-each> 2339 <dc:for-each>
2340 <morphologic-width name="{$from_station} - {$to_station}" description="{$from_station} - {$to_station}" ids="{$width_id}" factory="morph-width" target_out="{$out}" /> 2340 <morphologic-width name="{$from_station} - {$to_station}" description="{$from_station} - {$to_station}" ids="{$width_id}" factory="morph-width" target_out="{$out}"/>
2341 </dc:for-each> 2341 </dc:for-each>
2342 </dc:context> 2342 </dc:context>
2343 </dc:for-each> 2343 </dc:for-each>
2344 </morph_width> 2344 </morph_width>
2345 </dc:if> 2345 </dc:if>
2376 <station description="{dc:group-key()}"> 2376 <station description="{dc:group-key()}">
2377 <dc:for-each> 2377 <dc:for-each>
2378 <dc:variable name="combined_desc" expr="concat(dc:date-format('yyyy', 2378 <dc:variable name="combined_desc" expr="concat(dc:date-format('yyyy',
2379 $start_time), ' bis ', 2379 $start_time), ' bis ',
2380 dc:date-format('yyyy', 2380 dc:date-format('yyyy',
2381 $stop_time))" /> 2381 $stop_time))"/>
2382 <sqvalue factory="sqrelationdatacage" target_out="{$out}" ids="{$sqvid};{dc:uppercase($parameter)} - {$station_name}: {$combined_desc}" description="{$combined_desc}" /> 2382 <sqvalue factory="sqrelationdatacage" target_out="{$out}" ids="{$sqvid};{dc:uppercase($parameter)} - {$station_name}: {$combined_desc}" description="{$combined_desc}"/>
2383 </dc:for-each> 2383 </dc:for-each>
2384 </station> 2384 </station>
2385 </dc:group> 2385 </dc:group>
2386 </dc:group> 2386 </dc:group>
2387 </parameter> 2387 </parameter>
2391 </dc:context> 2391 </dc:context>
2392 </dc:macro> 2392 </dc:macro>
2393 2393
2394 <!-- Floodmap part --> 2394 <!-- Floodmap part -->
2395 <dc:macro name="flood-map-complete"> 2395 <dc:macro name="flood-map-complete">
2396 <dc:call-macro name="flood-map-buildings" /> 2396 <dc:call-macro name="flood-map-buildings"/>
2397 <dc:call-macro name="flood-map-gaugelocations" /> 2397 <dc:call-macro name="flood-map-gaugelocations"/>
2398 <dc:call-macro name="floodmarks" /> 2398 <dc:call-macro name="floodmarks"/>
2399 <hws> 2399 <hws>
2400 <dc:call-macro name="hwslines" /> 2400 <dc:call-macro name="hwslines"/>
2401 <dc:call-macro name="hwspoints" /> 2401 <dc:call-macro name="hwspoints"/>
2402 </hws> 2402 </hws>
2403 <dc:call-macro name="flood-map-routing" /> 2403 <dc:call-macro name="flood-map-routing"/>
2404 <hydrboundaries> 2404 <hydrboundaries>
2405 <dc:call-macro name="flood-map-floodplain" /> 2405 <dc:call-macro name="flood-map-floodplain"/>
2406 <dc:call-macro name="flood-map-hydr-boundaries" /> 2406 <dc:call-macro name="flood-map-hydr-boundaries"/>
2407 </hydrboundaries> 2407 </hydrboundaries>
2408 <dc:call-macro name="flood-map-uesk" /> 2408 <dc:call-macro name="flood-map-uesk"/>
2409 </dc:macro> 2409 </dc:macro>
2410 2410
2411 <dc:macro name="flood-map-routing"> 2411 <dc:macro name="flood-map-routing">
2412 <route_data> 2412 <route_data>
2413 <dc:call-macro name="flood-map-qps" /> 2413 <dc:call-macro name="flood-map-qps"/>
2414 <dc:call-macro name="flood-map-fixpoints" /> 2414 <dc:call-macro name="flood-map-fixpoints"/>
2415 <dc:call-macro name="flood-map-km" /> 2415 <dc:call-macro name="flood-map-km"/>
2416 <dc:call-macro name="flood-map-riveraxis" /> 2416 <dc:call-macro name="flood-map-riveraxis"/>
2417 </route_data> 2417 </route_data>
2418 </dc:macro> 2418 </dc:macro>
2419 2419
2420 <dc:macro name="flood-map-hydr-boundaries"> 2420 <dc:macro name="flood-map-hydr-boundaries">
2421 <bfg_model> 2421 <bfg_model>
2422 <dc:call-macro name="flood-map-hydr-boundaries-poly" /> 2422 <dc:call-macro name="flood-map-hydr-boundaries-poly"/>
2423 <dc:call-macro name="flood-map-hydr-boundaries-lines" /> 2423 <dc:call-macro name="flood-map-hydr-boundaries-lines"/>
2424 </bfg_model> 2424 </bfg_model>
2425 <dc:call-macro name="flood-map-hydr-boundaries-state" /> 2425 <dc:call-macro name="flood-map-hydr-boundaries-state"/>
2426 </dc:macro> 2426 </dc:macro>
2427 2427
2428 <dc:macro name="flood-map-dem"> 2428 <dc:macro name="flood-map-dem">
2429 <dems> 2429 <dems>
2430 <dc:context> 2430 <dc:context>
2446 = t.id 2446 = t.id
2447 WHERE d.river_id = ${river_id} 2447 WHERE d.river_id = ${river_id}
2448 AND NOT((${tokm} &lt; r.a) or (${fromkm} &gt; r.b)) 2448 AND NOT((${tokm} &lt; r.a) or (${fromkm} &gt; r.b))
2449 </dc:statement> 2449 </dc:statement>
2450 <dc:for-each> 2450 <dc:for-each>
2451 <dem factory="demfactory" target_out="{$out}" ids="{$dem_id}" name="{$name}" info="{$info}{dc:date-format('yyyy', $start_time)} - {dc:date-format('yyyy', $stop_time)}" /> 2451 <dem factory="demfactory" target_out="{$out}" ids="{$dem_id}" name="{$name}" info="{$info}{dc:date-format('yyyy', $start_time)} - {dc:date-format('yyyy', $stop_time)}"/>
2452 </dc:for-each> 2452 </dc:for-each>
2453 </dc:context> 2453 </dc:context>
2454 </dems> 2454 </dems>
2455 </dc:macro> 2455 </dc:macro>
2456 2456
2457 <dc:macro name="filter_hws_ddg"> 2457 <dc:macro name="filter_hws_ddg">
2458 <dc:macro name="durchlass_damm_graben"> 2458 <dc:macro name="durchlass_damm_graben">
2459 <dc:macro name="ddg_factory"> 2459 <dc:macro name="ddg_factory">
2460 <dc:for-each> 2460 <dc:for-each>
2461 <hws factory="hwsfactory" name="{$hws_name}" target_out="{$out}" /> 2461 <hws factory="hwsfactory" name="{$hws_name}" target_out="{$out}"/>
2462 </dc:for-each> 2462 </dc:for-each>
2463 </dc:macro> 2463 </dc:macro>
2464 2464
2465 <dc:filter expr="$hws_kind=1"> 2465 <dc:filter expr="$hws_kind=1">
2466 <dc:if test="dc:has-result()"> 2466 <dc:if test="dc:has-result()">
2467 <Durchlass> 2467 <Durchlass>
2468 <dc:call-macro name="ddg_factory" /> 2468 <dc:call-macro name="ddg_factory"/>
2469 </Durchlass> 2469 </Durchlass>
2470 </dc:if> 2470 </dc:if>
2471 </dc:filter> 2471 </dc:filter>
2472 2472
2473 <dc:filter expr="$hws_kind=2"> 2473 <dc:filter expr="$hws_kind=2">
2474 <dc:if test="dc:has-result()"> 2474 <dc:if test="dc:has-result()">
2475 <Damm> 2475 <Damm>
2476 <dc:call-macro name="ddg_factory" /> 2476 <dc:call-macro name="ddg_factory"/>
2477 </Damm> 2477 </Damm>
2478 </dc:if> 2478 </dc:if>
2479 </dc:filter> 2479 </dc:filter>
2480 2480
2481 <dc:filter expr="$hws_kind=3"> 2481 <dc:filter expr="$hws_kind=3">
2482 <dc:if test="dc:has-result()"> 2482 <dc:if test="dc:has-result()">
2483 <Graben> 2483 <Graben>
2484 <dc:call-macro name="ddg_factory" /> 2484 <dc:call-macro name="ddg_factory"/>
2485 </Graben> 2485 </Graben>
2486 </dc:if> 2486 </dc:if>
2487 </dc:filter> 2487 </dc:filter>
2488 </dc:macro> 2488 </dc:macro>
2489 2489
2490 <dc:filter expr="$hws_official=1"> 2490 <dc:filter expr="$hws_official=1">
2491 <dc:if test="dc:has-result()"> 2491 <dc:if test="dc:has-result()">
2492 <official> 2492 <official>
2493 <dc:call-macro name="durchlass_damm_graben" /> 2493 <dc:call-macro name="durchlass_damm_graben"/>
2494 </official> 2494 </official>
2495 </dc:if> 2495 </dc:if>
2496 </dc:filter> 2496 </dc:filter>
2497 2497
2498 <dc:filter expr="$hws_official=0"> 2498 <dc:filter expr="$hws_official=0">
2499 <dc:if test="dc:has-result()"> 2499 <dc:if test="dc:has-result()">
2500 <inofficial> 2500 <inofficial>
2501 <dc:call-macro name="durchlass_damm_graben" /> 2501 <dc:call-macro name="durchlass_damm_graben"/>
2502 </inofficial> 2502 </inofficial>
2503 </dc:if> 2503 </dc:if>
2504 </dc:filter> 2504 </dc:filter>
2505 </dc:macro> 2505 </dc:macro>
2506 2506
2514 FROM hws_lines 2514 FROM hws_lines
2515 WHERE river_id = ${river_id} 2515 WHERE river_id = ${river_id}
2516 </dc:statement> 2516 </dc:statement>
2517 <dc:if test="dc:has-result()"> 2517 <dc:if test="dc:has-result()">
2518 <lines> 2518 <lines>
2519 <dc:call-macro name="filter_hws_ddg" /> 2519 <dc:call-macro name="filter_hws_ddg"/>
2520 </lines> 2520 </lines>
2521 </dc:if> 2521 </dc:if>
2522 </dc:context> 2522 </dc:context>
2523 </dc:macro> 2523 </dc:macro>
2524 2524
2532 FROM hws_points 2532 FROM hws_points
2533 WHERE river_id = ${river_id} 2533 WHERE river_id = ${river_id}
2534 </dc:statement> 2534 </dc:statement>
2535 <dc:if test="dc:has-result()"> 2535 <dc:if test="dc:has-result()">
2536 <points> 2536 <points>
2537 <dc:call-macro name="filter_hws_ddg" /> 2537 <dc:call-macro name="filter_hws_ddg"/>
2538 </points> 2538 </points>
2539 </dc:if> 2539 </dc:if>
2540 </dc:context> 2540 </dc:context>
2541 </dc:macro> 2541 </dc:macro>
2542 2542
2549 FROM hydr_boundaries 2549 FROM hydr_boundaries
2550 WHERE river_id = ${river_id} 2550 WHERE river_id = ${river_id}
2551 AND kind = 2 2551 AND kind = 2
2552 </dc:statement> 2552 </dc:statement>
2553 <dc:for-each> 2553 <dc:for-each>
2554 <line factory="wmshydrboundariesfactory" target_out="{$out}" ids="{$river_id};{$name};2" name="{$name}" /> 2554 <line factory="wmshydrboundariesfactory" target_out="{$out}" ids="{$river_id};{$name};2" name="{$name}"/>
2555 </dc:for-each> 2555 </dc:for-each>
2556 </dc:context> 2556 </dc:context>
2557 <dc:context> 2557 <dc:context>
2558 <dc:statement> 2558 <dc:statement>
2559 SELECT DISTINCT 2559 SELECT DISTINCT
2561 FROM hydr_boundaries_poly 2561 FROM hydr_boundaries_poly
2562 WHERE river_id = ${river_id} 2562 WHERE river_id = ${river_id}
2563 AND kind = 2 2563 AND kind = 2
2564 </dc:statement> 2564 </dc:statement>
2565 <dc:for-each> 2565 <dc:for-each>
2566 <line factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$name};2" name="{$name}" /> 2566 <line factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$name};2" name="{$name}"/>
2567 </dc:for-each> 2567 </dc:for-each>
2568 </dc:context> 2568 </dc:context>
2569 </federal> 2569 </federal>
2570 </dc:macro> 2570 </dc:macro>
2571 2571
2580 </dc:statement> 2580 </dc:statement>
2581 <dc:comment> What about all other line kinds?</dc:comment> 2581 <dc:comment> What about all other line kinds?</dc:comment>
2582 <dc:if test="dc:has-result()"> 2582 <dc:if test="dc:has-result()">
2583 <lines> 2583 <lines>
2584 <dc:for-each> 2584 <dc:for-each>
2585 <line factory="wmshydrboundariesfactory" target_out="{$out}" ids="{$river_id};{$name};1" name="{$name}" /> 2585 <line factory="wmshydrboundariesfactory" target_out="{$out}" ids="{$river_id};{$name};1" name="{$name}"/>
2586 </dc:for-each> 2586 </dc:for-each>
2587 </lines> 2587 </lines>
2588 </dc:if> 2588 </dc:if>
2589 </dc:context> 2589 </dc:context>
2590 </dc:macro> 2590 </dc:macro>
2602 AND b.kind = 1 2602 AND b.kind = 1
2603 </dc:statement> 2603 </dc:statement>
2604 <dc:if test="dc:has-result()"> 2604 <dc:if test="dc:has-result()">
2605 <sobek_areas> 2605 <sobek_areas>
2606 <dc:for-each> 2606 <dc:for-each>
2607 <boundary name="{$sectie}" factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$sectie};1;{$sectie_id};-1" /> 2607 <boundary name="{$sectie}" factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$sectie};1;{$sectie_id};-1"/>
2608 </dc:for-each> 2608 </dc:for-each>
2609 </sobek_areas> 2609 </sobek_areas>
2610 </dc:if> 2610 </dc:if>
2611 </dc:context> 2611 </dc:context>
2612 <dc:context> 2612 <dc:context>
2620 AND b.kind = 1 2620 AND b.kind = 1
2621 </dc:statement> 2621 </dc:statement>
2622 <dc:if test="dc:has-result()"> 2622 <dc:if test="dc:has-result()">
2623 <sobek_flooded> 2623 <sobek_flooded>
2624 <dc:for-each> 2624 <dc:for-each>
2625 <boundary name="{$sobek}" factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$sobek};1;-1;{$sobek_id}" /> 2625 <boundary name="{$sobek}" factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$sobek};1;-1;{$sobek_id}"/>
2626 </dc:for-each> 2626 </dc:for-each>
2627 </sobek_flooded> 2627 </sobek_flooded>
2628 </dc:if> 2628 </dc:if>
2629 </dc:context> 2629 </dc:context>
2630 <dc:context> 2630 <dc:context>
2636 AND b.kind = 1 2636 AND b.kind = 1
2637 AND b.sobek IS NULL 2637 AND b.sobek IS NULL
2638 AND b.sectie is NULL 2638 AND b.sectie is NULL
2639 </dc:statement> 2639 </dc:statement>
2640 <dc:for-each> 2640 <dc:for-each>
2641 <boundary name="{$name}" factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$name}" /> 2641 <boundary name="{$name}" factory="wmshydrboundariespolyfactory" target_out="{$out}" ids="{$river_id};{$name}"/>
2642 </dc:for-each> 2642 </dc:for-each>
2643 </dc:context> 2643 </dc:context>
2644 </areas> 2644 </areas>
2645 </dc:macro> 2645 </dc:macro>
2646 2646
2666 WHERE river_id = ${river_id} AND kind = 111 2666 WHERE river_id = ${river_id} AND kind = 111
2667 </dc:statement> 2667 </dc:statement>
2668 <dc:if test="dc:has-result()"> 2668 <dc:if test="dc:has-result()">
2669 <bfg> 2669 <bfg>
2670 <dc:for-each> 2670 <dc:for-each>
2671 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}" /> 2671 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}"/>
2672 </dc:for-each> 2672 </dc:for-each>
2673 </bfg> 2673 </bfg>
2674 </dc:if> 2674 </dc:if>
2675 </dc:context> 2675 </dc:context>
2676 <dc:context> 2676 <dc:context>
2680 WHERE river_id = ${river_id} AND kind = 112 2680 WHERE river_id = ${river_id} AND kind = 112
2681 </dc:statement> 2681 </dc:statement>
2682 <dc:if test="dc:has-result()"> 2682 <dc:if test="dc:has-result()">
2683 <federal> 2683 <federal>
2684 <dc:for-each> 2684 <dc:for-each>
2685 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}" /> 2685 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}"/>
2686 </dc:for-each> 2686 </dc:for-each>
2687 </federal> 2687 </federal>
2688 </dc:if> 2688 </dc:if>
2689 </dc:context> 2689 </dc:context>
2690 </current> 2690 </current>
2704 WHERE river_id = ${river_id} AND kind = 121 2704 WHERE river_id = ${river_id} AND kind = 121
2705 </dc:statement> 2705 </dc:statement>
2706 <dc:if test="dc:has-result()"> 2706 <dc:if test="dc:has-result()">
2707 <bfg> 2707 <bfg>
2708 <dc:for-each> 2708 <dc:for-each>
2709 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}" /> 2709 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}"/>
2710 </dc:for-each> 2710 </dc:for-each>
2711 </bfg> 2711 </bfg>
2712 </dc:if> 2712 </dc:if>
2713 </dc:context> 2713 </dc:context>
2714 <dc:context> 2714 <dc:context>
2719 WHERE river_id = ${river_id} AND kind = 122 2719 WHERE river_id = ${river_id} AND kind = 122
2720 </dc:statement> 2720 </dc:statement>
2721 <dc:if test="dc:has-result()"> 2721 <dc:if test="dc:has-result()">
2722 <federal> 2722 <federal>
2723 <dc:for-each> 2723 <dc:for-each>
2724 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}" /> 2724 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}"/>
2725 </dc:for-each> 2725 </dc:for-each>
2726 </federal> 2726 </federal>
2727 </dc:if> 2727 </dc:if>
2728 </dc:context> 2728 </dc:context>
2729 </potential> 2729 </potential>
2748 FROM floodmaps 2748 FROM floodmaps
2749 WHERE river_id = ${river_id} AND kind = 200 AND source = 2749 WHERE river_id = ${river_id} AND kind = 200 AND source =
2750 ${source} 2750 ${source}
2751 </dc:statement> 2751 </dc:statement>
2752 <dc:for-each> 2752 <dc:for-each>
2753 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}" /> 2753 <floodmaps factory="wmsfloodmapsfactory" target_out="{$out}" ids="{$river_id};{$name}" name="{$name}"/>
2754 </dc:for-each> 2754 </dc:for-each>
2755 </dc:context> 2755 </dc:context>
2756 </year> 2756 </year>
2757 </dc:for-each> 2757 </dc:for-each>
2758 </measurements> 2758 </measurements>
2775 </dc:statement> 2775 </dc:statement>
2776 <dc:if test="dc:has-result()"> 2776 <dc:if test="dc:has-result()">
2777 <floodplain> 2777 <floodplain>
2778 <dc:filter expr="$kind_id=1"> 2778 <dc:filter expr="$kind_id=1">
2779 <dc:for-each> 2779 <dc:for-each>
2780 <floody factory="wmsfloodplainfactory" target_out="{$out}" description="{$kind_name}" ids="{$river_id};{$kind_name};{$kind_id}" /> 2780 <floody factory="wmsfloodplainfactory" target_out="{$out}" description="{$kind_name}" ids="{$river_id};{$kind_name};{$kind_id}"/>
2781 </dc:for-each> 2781 </dc:for-each>
2782 </dc:filter> 2782 </dc:filter>
2783 <dc:filter expr="$kind_id != 1"> 2783 <dc:filter expr="$kind_id != 1">
2784 <dc:if test="dc:has-result()"> 2784 <dc:if test="dc:has-result()">
2785 <other> 2785 <other>
2786 <dc:for-each> 2786 <dc:for-each>
2787 <floody factory="wmsfloodplainfactory" target_out="{$out}" description="{$layer_name}" ids="{$river_id};{$layer_name};{$kind_id}" /> 2787 <floody factory="wmsfloodplainfactory" target_out="{$out}" description="{$layer_name}" ids="{$river_id};{$layer_name};{$kind_id}"/>
2788 </dc:for-each> 2788 </dc:for-each>
2789 </other> 2789 </other>
2790 </dc:if> 2790 </dc:if>
2791 </dc:filter> 2791 </dc:filter>
2792 </floodplain> 2792 </floodplain>
2800 availble 2800 availble
2801 </dc:comment> 2801 </dc:comment>
2802 2802
2803 <dc:macro name="hwspoints_by_kind_factory"> 2803 <dc:macro name="hwspoints_by_kind_factory">
2804 <dc:for-each> 2804 <dc:for-each>
2805 <hws factory="wmshwspointsfactory" target_out="{$out}" ids="{$river_id};{$hws_name}" name="{$hws_name}" /> 2805 <hws factory="wmshwspointsfactory" target_out="{$out}" ids="{$river_id};{$hws_name}" name="{$hws_name}"/>
2806 </dc:for-each> 2806 </dc:for-each>
2807 </dc:macro> 2807 </dc:macro>
2808 2808
2809 <dc:filter expr="$hws_kind=1"> 2809 <dc:filter expr="$hws_kind=1">
2810 <dc:if test="dc:has-result()"> 2810 <dc:if test="dc:has-result()">
2811 <Durchlass> 2811 <Durchlass>
2812 <dc:call-macro name="hwspoints_by_kind_factory" /> 2812 <dc:call-macro name="hwspoints_by_kind_factory"/>
2813 </Durchlass> 2813 </Durchlass>
2814 </dc:if> 2814 </dc:if>
2815 </dc:filter> 2815 </dc:filter>
2816 2816
2817 <dc:filter expr="$hws_kind=2"> 2817 <dc:filter expr="$hws_kind=2">
2818 <dc:if test="dc:has-result()"> 2818 <dc:if test="dc:has-result()">
2819 <Damm> 2819 <Damm>
2820 <dc:call-macro name="hwspoints_by_kind_factory" /> 2820 <dc:call-macro name="hwspoints_by_kind_factory"/>
2821 </Damm> 2821 </Damm>
2822 </dc:if> 2822 </dc:if>
2823 </dc:filter> 2823 </dc:filter>
2824 2824
2825 <dc:filter expr="$hws_kind=3"> 2825 <dc:filter expr="$hws_kind=3">
2826 <dc:if test="dc:has-result()"> 2826 <dc:if test="dc:has-result()">
2827 <Graben> 2827 <Graben>
2828 <dc:call-macro name="hwspoints_by_kind_factory" /> 2828 <dc:call-macro name="hwspoints_by_kind_factory"/>
2829 </Graben> 2829 </Graben>
2830 </dc:if> 2830 </dc:if>
2831 </dc:filter> 2831 </dc:filter>
2832 </dc:macro> 2832 </dc:macro>
2833 2833
2854 WHERE river_id = ${river_id} 2854 WHERE river_id = ${river_id}
2855 AND official=1 2855 AND official=1
2856 AND fed_state_id = ${fed_id} ORDER BY name 2856 AND fed_state_id = ${fed_id} ORDER BY name
2857 </dc:statement> 2857 </dc:statement>
2858 <fedstate description="{$fed_name}"> 2858 <fedstate description="{$fed_name}">
2859 <dc:call-macro name="hwspoints_by_kind" /> 2859 <dc:call-macro name="hwspoints_by_kind"/>
2860 </fedstate> 2860 </fedstate>
2861 </dc:context> 2861 </dc:context>
2862 </dc:for-each> 2862 </dc:for-each>
2863 </dc:context> 2863 </dc:context>
2864 <dc:context> 2864 <dc:context>
2871 AND official=1 2871 AND official=1
2872 AND fed_state_id IS NULL 2872 AND fed_state_id IS NULL
2873 ORDER BY name 2873 ORDER BY name
2874 </dc:statement> 2874 </dc:statement>
2875 <hws_fed_unknown> 2875 <hws_fed_unknown>
2876 <dc:call-macro name="hwspoints_by_kind" /> 2876 <dc:call-macro name="hwspoints_by_kind"/>
2877 </hws_fed_unknown> 2877 </hws_fed_unknown>
2878 </dc:context> 2878 </dc:context>
2879 </official> 2879 </official>
2880 <inofficial> 2880 <inofficial>
2881 <dc:context> 2881 <dc:context>
2898 WHERE river_id = ${river_id} 2898 WHERE river_id = ${river_id}
2899 AND official=0 2899 AND official=0
2900 AND fed_state_id = ${fed_id} ORDER BY name 2900 AND fed_state_id = ${fed_id} ORDER BY name
2901 </dc:statement> 2901 </dc:statement>
2902 <fedstate description="{$fed_name}"> 2902 <fedstate description="{$fed_name}">
2903 <dc:call-macro name="hwspoints_by_kind" /> 2903 <dc:call-macro name="hwspoints_by_kind"/>
2904 </fedstate> 2904 </fedstate>
2905 </dc:context> 2905 </dc:context>
2906 </dc:for-each> 2906 </dc:for-each>
2907 </dc:context> 2907 </dc:context>
2908 <dc:context> 2908 <dc:context>
2914 WHERE river_id = ${river_id} 2914 WHERE river_id = ${river_id}
2915 AND official=0 2915 AND official=0
2916 AND fed_state_id IS NULL ORDER BY name 2916 AND fed_state_id IS NULL ORDER BY name
2917 </dc:statement> 2917 </dc:statement>
2918 <hws_fed_unknown> 2918 <hws_fed_unknown>
2919 <dc:call-macro name="hwspoints_by_kind" /> 2919 <dc:call-macro name="hwspoints_by_kind"/>
2920 </hws_fed_unknown> 2920 </hws_fed_unknown>
2921 </dc:context> 2921 </dc:context>
2922 </inofficial> 2922 </inofficial>
2923 </hws_points> 2923 </hws_points>
2924 </dc:macro> 2924 </dc:macro>
2929 availble 2929 availble
2930 </dc:comment> 2930 </dc:comment>
2931 2931
2932 <dc:macro name="hwslines_by_kind_factory"> 2932 <dc:macro name="hwslines_by_kind_factory">
2933 <dc:for-each> 2933 <dc:for-each>
2934 <hws factory="wmshwslinesfactory" target_out="{$out}" ids="{$river_id};{$hws_name}" name="{$hws_name}" /> 2934 <hws factory="wmshwslinesfactory" target_out="{$out}" ids="{$river_id};{$hws_name}" name="{$hws_name}"/>
2935 </dc:for-each> 2935 </dc:for-each>
2936 </dc:macro> 2936 </dc:macro>
2937 2937
2938 <dc:filter expr="$hws_kind=1"> 2938 <dc:filter expr="$hws_kind=1">
2939 <dc:if test="dc:has-result()"> 2939 <dc:if test="dc:has-result()">
2940 <Durchlass> 2940 <Durchlass>
2941 <dc:call-macro name="hwslines_by_kind_factory" /> 2941 <dc:call-macro name="hwslines_by_kind_factory"/>
2942 </Durchlass> 2942 </Durchlass>
2943 </dc:if> 2943 </dc:if>
2944 </dc:filter> 2944 </dc:filter>
2945 2945
2946 <dc:filter expr="$hws_kind=2"> 2946 <dc:filter expr="$hws_kind=2">
2947 <dc:if test="dc:has-result()"> 2947 <dc:if test="dc:has-result()">
2948 <Damm> 2948 <Damm>
2949 <dc:call-macro name="hwslines_by_kind_factory" /> 2949 <dc:call-macro name="hwslines_by_kind_factory"/>
2950 </Damm> 2950 </Damm>
2951 </dc:if> 2951 </dc:if>
2952 </dc:filter> 2952 </dc:filter>
2953 2953
2954 <dc:filter expr="$hws_kind=3"> 2954 <dc:filter expr="$hws_kind=3">
2955 <dc:if test="dc:has-result()"> 2955 <dc:if test="dc:has-result()">
2956 <Graben> 2956 <Graben>
2957 <dc:call-macro name="hwslines_by_kind_factory" /> 2957 <dc:call-macro name="hwslines_by_kind_factory"/>
2958 </Graben> 2958 </Graben>
2959 </dc:if> 2959 </dc:if>
2960 </dc:filter> 2960 </dc:filter>
2961 </dc:macro> 2961 </dc:macro>
2962 2962
2983 WHERE river_id = ${river_id} 2983 WHERE river_id = ${river_id}
2984 AND official=1 2984 AND official=1
2985 AND fed_state_id = ${fed_id} ORDER BY name 2985 AND fed_state_id = ${fed_id} ORDER BY name
2986 </dc:statement> 2986 </dc:statement>
2987 <fedstate description="{$fed_name}"> 2987 <fedstate description="{$fed_name}">
2988 <dc:call-macro name="hwslines_by_kind" /> 2988 <dc:call-macro name="hwslines_by_kind"/>
2989 </fedstate> 2989 </fedstate>
2990 </dc:context> 2990 </dc:context>
2991 </dc:for-each> 2991 </dc:for-each>
2992 </dc:context> 2992 </dc:context>
2993 <dc:context> 2993 <dc:context>
3000 AND official=1 3000 AND official=1
3001 AND fed_state_id IS NULL 3001 AND fed_state_id IS NULL
3002 ORDER BY name 3002 ORDER BY name
3003 </dc:statement> 3003 </dc:statement>
3004 <hws_fed_unknown> 3004 <hws_fed_unknown>
3005 <dc:call-macro name="hwslines_by_kind" /> 3005 <dc:call-macro name="hwslines_by_kind"/>
3006 </hws_fed_unknown> 3006 </hws_fed_unknown>
3007 </dc:context> 3007 </dc:context>
3008 </official> 3008 </official>
3009 <inofficial> 3009 <inofficial>
3010 <dc:context> 3010 <dc:context>
3027 WHERE river_id = ${river_id} 3027 WHERE river_id = ${river_id}
3028 AND official=0 3028 AND official=0
3029 AND fed_state_id = ${fed_id} ORDER BY name 3029 AND fed_state_id = ${fed_id} ORDER BY name
3030 </dc:statement> 3030 </dc:statement>
3031 <fedstate description="{$fed_name}"> 3031 <fedstate description="{$fed_name}">
3032 <dc:call-macro name="hwslines_by_kind" /> 3032 <dc:call-macro name="hwslines_by_kind"/>
3033 </fedstate> 3033 </fedstate>
3034 </dc:context> 3034 </dc:context>
3035 </dc:for-each> 3035 </dc:for-each>
3036 </dc:context> 3036 </dc:context>
3037 <dc:context> 3037 <dc:context>
3043 WHERE river_id = ${river_id} 3043 WHERE river_id = ${river_id}
3044 AND official=0 3044 AND official=0
3045 AND fed_state_id IS NULL ORDER BY name 3045 AND fed_state_id IS NULL ORDER BY name
3046 </dc:statement> 3046 </dc:statement>
3047 <hws_fed_unknown> 3047 <hws_fed_unknown>
3048 <dc:call-macro name="hwslines_by_kind" /> 3048 <dc:call-macro name="hwslines_by_kind"/>
3049 </hws_fed_unknown> 3049 </hws_fed_unknown>
3050 </dc:context> 3050 </dc:context>
3051 </inofficial> 3051 </inofficial>
3052 </hws_lines> 3052 </hws_lines>
3053 </dc:macro> 3053 </dc:macro>
3061 WHERE river_id = ${river_id} 3061 WHERE river_id = ${river_id}
3062 </dc:statement> 3062 </dc:statement>
3063 <dc:if test="dc:has-result()"> 3063 <dc:if test="dc:has-result()">
3064 <floodmarks> 3064 <floodmarks>
3065 <dc:for-each> 3065 <dc:for-each>
3066 <floodmark name="{$year}" factory="wmsfloodmarkfactory" target_out="{$out}" ids="{$river_id};{$year};{$year}" /> 3066 <floodmark name="{$year}" factory="wmsfloodmarkfactory" target_out="{$out}" ids="{$river_id};{$year};{$year}"/>
3067 </dc:for-each> 3067 </dc:for-each>
3068 </floodmarks> 3068 </floodmarks>
3069 </dc:if> 3069 </dc:if>
3070 </dc:context> 3070 </dc:context>
3071 </dc:macro> 3071 </dc:macro>
3072 3072
3073 <dc:macro name="flood-map-gaugelocations"> 3073 <dc:macro name="flood-map-gaugelocations">
3074 <gaugelocations> 3074 <gaugelocations>
3075 <gauge_points factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;Pegelpunkte;Pegelpunkte (WSV)" target_out="{$out}" /> 3075 <gauge_points factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;Pegelpunkte;Pegelpunkte (WSV)" target_out="{$out}"/>
3076 <gauge_names factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;Pegelnamen;Pegelnamen (WSV)" target_out="{$out}" /> 3076 <gauge_names factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;Pegelnamen;Pegelnamen (WSV)" target_out="{$out}"/>
3077 <gauge_level factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;Pegelwasserstand;Aktueller Wasserstand (WSV)" target_out="{$out}" /> 3077 <gauge_level factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;Pegelwasserstand;Aktueller Wasserstand (WSV)" target_out="{$out}"/>
3078 <gauge_tendency factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;TendenzWasserstand;Tendenz des Wasserstands (WSV)" target_out="{$out}" /> 3078 <gauge_tendency factory="externalwmsfactory" ids="http://www.pegelonline.wsv.de/webservices/gis/wms;TendenzWasserstand;Tendenz des Wasserstands (WSV)" target_out="{$out}"/>
3079 </gaugelocations> 3079 </gaugelocations>
3080 </dc:macro> 3080 </dc:macro>
3081 3081
3082 <dc:macro name="flood-map-riveraxis"> 3082 <dc:macro name="flood-map-riveraxis">
3083 <dc:context> 3083 <dc:context>
3092 </dc:statement> 3092 </dc:statement>
3093 <dc:if test="dc:has-result()"> 3093 <dc:if test="dc:has-result()">
3094 <axis> 3094 <axis>
3095 <dc:filter expr="$kind_id=1"> 3095 <dc:filter expr="$kind_id=1">
3096 <dc:for-each> 3096 <dc:for-each>
3097 <actual description="{$kind_name}" ids="{$river_id};{$kind_name};{$kind_id}" factory="riveraxis" target_out="{$out}" /> 3097 <actual description="{$kind_name}" ids="{$river_id};{$kind_name};{$kind_id}" factory="riveraxis" target_out="{$out}"/>
3098 </dc:for-each> 3098 </dc:for-each>
3099 </dc:filter> 3099 </dc:filter>
3100 <dc:filter expr="$kind_id!=1"> 3100 <dc:filter expr="$kind_id!=1">
3101 <other> 3101 <other>
3102 <dc:for-each> 3102 <dc:for-each>
3103 <misc-axis description="{$layer_name}" ids="{$river_id};{$layer_name};{$kind_id}" factory="riveraxis" target_out="{$out}" /> 3103 <misc-axis description="{$layer_name}" ids="{$river_id};{$layer_name};{$kind_id}" factory="riveraxis" target_out="{$out}"/>
3104 </dc:for-each> 3104 </dc:for-each>
3105 </other> 3105 </other>
3106 </dc:filter> 3106 </dc:filter>
3107 </axis> 3107 </axis>
3108 </dc:if> 3108 </dc:if>
3113 <dc:context> 3113 <dc:context>
3114 <dc:statement> 3114 <dc:statement>
3115 SELECT DISTINCT 1 FROM river_axes_km WHERE river_id = ${river_id} 3115 SELECT DISTINCT 1 FROM river_axes_km WHERE river_id = ${river_id}
3116 </dc:statement> 3116 </dc:statement>
3117 <dc:for-each> 3117 <dc:for-each>
3118 <kilometrage factory="wmskmfactory" ids="{$river_id}" target_out="{$out}" /> 3118 <kilometrage factory="wmskmfactory" ids="{$river_id}" target_out="{$out}"/>
3119 </dc:for-each> 3119 </dc:for-each>
3120 </dc:context> 3120 </dc:context>
3121 </dc:macro> 3121 </dc:macro>
3122 3122
3123 <dc:macro name="flood-map-fixpoints"> 3123 <dc:macro name="flood-map-fixpoints">
3127 FROM fixpoints 3127 FROM fixpoints
3128 WHERE river_id = ${river_id} 3128 WHERE river_id = ${river_id}
3129 GROUP BY name 3129 GROUP BY name
3130 </dc:statement> 3130 </dc:statement>
3131 <dc:for-each> 3131 <dc:for-each>
3132 <fixpoints factory="wmsfixpointsfactory" target_out="{$out}" ids="{$river_id};{$name}" /> 3132 <fixpoints factory="wmsfixpointsfactory" target_out="{$out}" ids="{$river_id};{$name}"/>
3133 </dc:for-each> 3133 </dc:for-each>
3134 </dc:context> 3134 </dc:context>
3135 </dc:macro> 3135 </dc:macro>
3136 3136
3137 <dc:macro name="flood-map-qps"> 3137 <dc:macro name="flood-map-qps">
3147 </dc:statement> 3147 </dc:statement>
3148 <dc:if test="dc:has-result()"> 3148 <dc:if test="dc:has-result()">
3149 <qps> 3149 <qps>
3150 <dc:filter expr="$kind_id=1"> 3150 <dc:filter expr="$kind_id=1">
3151 <dc:for-each> 3151 <dc:for-each>
3152 <actual description="{$kind_name}" factory="wmsqpsfactory" target_out="{$out}" ids="{$river_id};{$kind_name};{$kind_id}" /> 3152 <actual description="{$kind_name}" factory="wmsqpsfactory" target_out="{$out}" ids="{$river_id};{$kind_name};{$kind_id}"/>
3153 </dc:for-each> 3153 </dc:for-each>
3154 </dc:filter> 3154 </dc:filter>
3155 <dc:filter expr="$kind_id = 0"> 3155 <dc:filter expr="$kind_id = 0">
3156 <dc:if test="dc:has-result()"> 3156 <dc:if test="dc:has-result()">
3157 <other> 3157 <other>
3158 <dc:for-each> 3158 <dc:for-each>
3159 <misc-qps description="{$layer_name}" factory="wmsqpsfactory" target_out="{$out}" ids="{$river_id};{$layer_name};{$kind_id}" /> 3159 <misc-qps description="{$layer_name}" factory="wmsqpsfactory" target_out="{$out}" ids="{$river_id};{$layer_name};{$kind_id}"/>
3160 </dc:for-each> 3160 </dc:for-each>
3161 </other> 3161 </other>
3162 </dc:if> 3162 </dc:if>
3163 </dc:filter> 3163 </dc:filter>
3164 </qps> 3164 </qps>
3179 WHERE river_id = ${river_id} 3179 WHERE river_id = ${river_id}
3180 </dc:statement> 3180 </dc:statement>
3181 <dc:if test="dc:has-result()"> 3181 <dc:if test="dc:has-result()">
3182 <dc:filter expr="$building_kind_id!=0"> 3182 <dc:filter expr="$building_kind_id!=0">
3183 <dc:for-each> 3183 <dc:for-each>
3184 <buildings description="{$building_kind}" factory="wmsbuildingsfactory" target_out="{$out}" ids="{$river_id};{$building_kind};{$building_kind_id}" /> 3184 <buildings description="{$building_kind}" factory="wmsbuildingsfactory" target_out="{$out}" ids="{$river_id};{$building_kind};{$building_kind_id}"/>
3185 </dc:for-each> 3185 </dc:for-each>
3186 </dc:filter> 3186 </dc:filter>
3187 <dc:filter expr="$building_kind_id=0"> 3187 <dc:filter expr="$building_kind_id=0">
3188 <other> 3188 <other>
3189 <dc:for-each> 3189 <dc:for-each>
3190 <buildings description="{$building_name}" factory="wmsbuildingsfactory" target_out="{$out}" ids="{$river_id};{$building_name}" /> 3190 <buildings description="{$building_name}" factory="wmsbuildingsfactory" target_out="{$out}" ids="{$river_id};{$building_name}"/>
3191 </dc:for-each> 3191 </dc:for-each>
3192 </other> 3192 </other>
3193 </dc:filter> 3193 </dc:filter>
3194 </dc:if> 3194 </dc:if>
3195 </dc:context> 3195 </dc:context>
3203 WHERE river_id = ${river_id} 3203 WHERE river_id = ${river_id}
3204 </dc:statement> 3204 </dc:statement>
3205 <dc:if test="dc:has-result()"> 3205 <dc:if test="dc:has-result()">
3206 <jetties> 3206 <jetties>
3207 <dc:for-each> 3207 <dc:for-each>
3208 <jetty description="{$jetty_kind}" factory="wmsjettiesfactory" target_out="{$out}" ids="{$river_id};{$jetty_kind};{$jetty_kind_id}" /> 3208 <jetty description="{$jetty_kind}" factory="wmsjettiesfactory" target_out="{$out}" ids="{$river_id};{$jetty_kind};{$jetty_kind_id}"/>
3209 </dc:for-each> 3209 </dc:for-each>
3210 </jetties> 3210 </jetties>
3211 </dc:if> 3211 </dc:if>
3212 </dc:context> 3212 </dc:context>
3213 </buildings> 3213 </buildings>
3215 3215
3216 <dc:macro name="officiallines_user"> 3216 <dc:macro name="officiallines_user">
3217 <dc:if test="dc:contains($parameters, 'official-lines')"> 3217 <dc:if test="dc:contains($parameters, 'official-lines')">
3218 <dc:container-context container="official-lines"> 3218 <dc:container-context container="official-lines">
3219 <dc:properties> 3219 <dc:properties>
3220 <dc:property name="name" alias="olname" /> 3220 <dc:property name="name" alias="olname"/>
3221 <dc:property name="wstId" alias="wstid" /> 3221 <dc:property name="wstId" alias="wstid"/>
3222 <dc:property name="columnPos" alias="wstcolpos" /> 3222 <dc:property name="columnPos" alias="wstcolpos"/>
3223 </dc:properties> 3223 </dc:properties>
3224 <dc:if test="dc:has-result()"> 3224 <dc:if test="dc:has-result()">
3225 <officiallines> 3225 <officiallines>
3226 <dc:for-each> 3226 <dc:for-each>
3227 <column name="{$olname}" ids="official-wstv-{$wstcolpos}-{$wstid}" factory="staticwqkms" target_out="{$out}" /> 3227 <column name="{$olname}" ids="official-wstv-{$wstcolpos}-{$wstid}" factory="staticwqkms" target_out="{$out}"/>
3228 </dc:for-each> 3228 </dc:for-each>
3229 </officiallines> 3229 </officiallines>
3230 </dc:if> 3230 </dc:if>
3231 </dc:container-context> 3231 </dc:container-context>
3232 </dc:if> 3232 </dc:if>
3233 </dc:macro> 3233 </dc:macro>
3234 3234
3235 <!-- sediment loads --> 3235 <!-- sediment loads -->
3236 <dc:macro name="sedimentload_off_epoch_filter"> 3236 <dc:macro name="sedimentload_off_epoch_filter">
3237 <dc:if test="dc:has-result()"> 3237 <dc:if test="dc:has-result()">
3238 <dc:variable name="sq_time_id" type="number" expr="number($sq_ti_id)" /> 3238 <dc:variable name="sq_time_id" type="number" expr="number($sq_ti_id)"/>
3239 <dc:if test="string-length(dc:get('epochs')) &gt; 0"> 3239 <dc:if test="string-length(dc:get('epochs')) &gt; 0">
3240 <dc:variable name="start" type="number" expr="dc:min-number(dc:find-all('\d{4}', $epochs))" /> 3240 <dc:variable name="start" type="number" expr="dc:min-number(dc:find-all('\d{4}', $epochs))"/>
3241 <dc:variable name="end" type="number" expr="dc:max-number(dc:find-all('\d{4}', $epochs))" /> 3241 <dc:variable name="end" type="number" expr="dc:max-number(dc:find-all('\d{4}', $epochs))"/>
3242 </dc:if> 3242 </dc:if>
3243 <dc:if test="string-length(dc:get('years')) &gt; 0"> 3243 <dc:if test="string-length(dc:get('years')) &gt; 0">
3244 <dc:variable name="start" type="number" expr="dc:min-number(dc:find-all('\d{4}', $years))" /> 3244 <dc:variable name="start" type="number" expr="dc:min-number(dc:find-all('\d{4}', $years))"/>
3245 <dc:variable name="end" type="number" expr="dc:max-number(dc:find-all('\d{4}', $years))" /> 3245 <dc:variable name="end" type="number" expr="dc:max-number(dc:find-all('\d{4}', $years))"/>
3246 </dc:if> 3246 </dc:if>
3247 <dc:filter expr="$kind = 'official' and 3247 <dc:filter expr="$kind = 'official' and
3248 $sqid = $sq_time_id and 3248 $sqid = $sq_time_id and
3249 not(number($end) &lt; 3249 not(number($end) &lt;
3250 number(dc:date-format('yyyy', $startyear)) 3250 number(dc:date-format('yyyy', $startyear))
3251 or number($start) &gt; 3251 or number($start) &gt;
3252 number(dc:date-format('yyyy', $endyear)))"> 3252 number(dc:date-format('yyyy', $endyear)))">
3253 <dc:macro-body /> 3253 <dc:macro-body/>
3254 </dc:filter> 3254 </dc:filter>
3255 </dc:if> 3255 </dc:if>
3256 </dc:macro> 3256 </dc:macro>
3257 3257
3258 <dc:macro name="sedimentload_off_epochs"> 3258 <dc:macro name="sedimentload_off_epochs">
3259 <dc:context> 3259 <dc:context>
3260 <dc:call-macro name="sedimentload_stations_statement" /> 3260 <dc:call-macro name="sedimentload_stations_statement"/>
3261 <dc:call-macro name="sedimentload_off_epoch_filter"> 3261 <dc:call-macro name="sedimentload_off_epoch_filter">
3262 <dc:call-macro name="loads"> 3262 <dc:call-macro name="loads">
3263 <dc:call-macro name="load" /> 3263 <dc:call-macro name="load"/>
3264 </dc:call-macro> 3264 </dc:call-macro>
3265 </dc:call-macro> 3265 </dc:call-macro>
3266 </dc:context> 3266 </dc:context>
3267 <dc:context> 3267 <dc:context>
3268 <dc:call-macro name="sedimentload_ls_statement" /> 3268 <dc:call-macro name="sedimentload_ls_statement"/>
3269 <dc:call-macro name="sedimentload_off_epoch_filter"> 3269 <dc:call-macro name="sedimentload_off_epoch_filter">
3270 <dc:call-macro name="loads"> 3270 <dc:call-macro name="loads">
3271 <dc:call-macro name="load_ls" /> 3271 <dc:call-macro name="load_ls"/>
3272 </dc:call-macro> 3272 </dc:call-macro>
3273 </dc:call-macro> 3273 </dc:call-macro>
3274 </dc:context> 3274 </dc:context>
3275 </dc:macro> 3275 </dc:macro>
3276 3276
3294 FROM wst_columns wc 3294 FROM wst_columns wc
3295 JOIN wsts w ON wc.wst_id = w.id 3295 JOIN wsts w ON wc.wst_id = w.id
3296 JOIN wst_ranges wr ON wc.id = 3296 JOIN wst_ranges wr ON wc.id =
3297 wr.wst_column_id 3297 wr.wst_column_id
3298 LEFT JOIN time_intervals ti ON wc.time_interval_id = ti.id 3298 LEFT JOIN time_intervals ti ON wc.time_interval_id = ti.id
3299 WHERE w.river_id = ${river_id} AND 3299 WHERE w.river_id = ${river_id}
3300 AND
3300 NOT((${tokm} &lt; wr.a) or (${fromkm} &gt; wr.b)) 3301 NOT((${tokm} &lt; wr.a) or (${fromkm} &gt; wr.b))
3301 ORDER BY wst_column_position 3302 ORDER BY wst_column_position
3302 </dc:statement> 3303 </dc:statement>
3303 <dc:macro-body /> 3304 <dc:macro-body/>
3304 </dc:context> 3305 </dc:context>
3305 </dc:macro> 3306 </dc:macro>
3306 3307
3307 <dc:macro name="all-user-artifacts"> 3308 <dc:macro name="all-user-artifacts">
3308 <dc:context connection="user"> 3309 <dc:context connection="user">
3346 AND k = 'river' 3347 AND k = 'river'
3347 AND v = ${river}) 3348 AND v = ${river})
3348 </dc:statement> 3349 </dc:statement>
3349 <dc:virtual-column name="deffrom" type="number" expr="dc:fromValue($ld_m, $ld_l, $ld_f)"> 3350 <dc:virtual-column name="deffrom" type="number" expr="dc:fromValue($ld_m, $ld_l, $ld_f)">
3350 <dc:virtual-column name="defto" type="number" expr="dc:toValue($ld_m, $ld_l, $ld_t)"> 3351 <dc:virtual-column name="defto" type="number" expr="dc:toValue($ld_m, $ld_l, $ld_t)">
3351 <dc:macro-body /> 3352 <dc:macro-body/>
3352 </dc:virtual-column> 3353 </dc:virtual-column>
3353 </dc:virtual-column> 3354 </dc:virtual-column>
3354 </dc:context> 3355 </dc:context>
3355 </dc:macro> 3356 </dc:macro>
3356 3357
3359 Apply KM Filtering but pass 3360 Apply KM Filtering but pass
3360 sq_ facets with no regard about their location. 3361 sq_ facets with no regard about their location.
3361 </dc:comment> 3362 </dc:comment>
3362 <dc:filter expr="not($deffrom &gt; $tokm or $defto &lt; $fromkm) or 3363 <dc:filter expr="not($deffrom &gt; $tokm or $defto &lt; $fromkm) or
3363 starts-with($facet_name, 'sq_')"> 3364 starts-with($facet_name, 'sq_')">
3364 <dc:macro-body /> 3365 <dc:macro-body/>
3365 </dc:filter> 3366 </dc:filter>
3366 </dc:macro> 3367 </dc:macro>
3367 3368
3368 <dc:macro name="artifact-range"> 3369 <dc:macro name="artifact-range">
3369 <dc:choose> 3370 <dc:choose>
3370 <dc:when test="dc:coalesce(dc:get('ld_locations'), ' ') != ' '"> 3371 <dc:when test="dc:coalesce(dc:get('ld_locations'), ' ') != ' '">
3371 <dc:variable name="fromkm" type="number" expr="dc:min-number(dc:find-all('\d*\.?\d*', 3372 <dc:variable name="fromkm" type="number" expr="dc:min-number(dc:find-all('\d*\.?\d*',
3372 dc:get('ld_locations')))" /> 3373 dc:get('ld_locations')))"/>
3373 <dc:variable name="tokm" type="number" expr="dc:max-number(dc:find-all('\d*\.?\d*', 3374 <dc:variable name="tokm" type="number" expr="dc:max-number(dc:find-all('\d*\.?\d*',
3374 dc:get('ld_locations')))" /> 3375 dc:get('ld_locations')))"/>
3375 </dc:when> 3376 </dc:when>
3376 <dc:otherwise> 3377 <dc:otherwise>
3377 <dc:variable name="fromkm" type="number" expr="dc:fromValue(dc:get('ld_mode'), 3378 <dc:variable name="fromkm" type="number" expr="dc:fromValue(dc:get('ld_mode'),
3378 dc:get('ld_locations'), dc:get('ld_from'))" /> 3379 dc:get('ld_locations'), dc:get('ld_from'))"/>
3379 <dc:variable name="tokm" type="number" expr="dc:toValue(dc:get('ld_mode'), 3380 <dc:variable name="tokm" type="number" expr="dc:toValue(dc:get('ld_mode'),
3380 dc:get('ld_locations'), dc:get('ld_to'))" /> 3381 dc:get('ld_locations'), dc:get('ld_to'))"/>
3381 <dc:if test="$fromkm > $tokm"> 3382 <dc:if test="$fromkm > $tokm">
3382 <dc:message>Inverting KM filter.</dc:message> 3383 <dc:message>Inverting KM filter.</dc:message>
3383 <dc:variable name="fromkm" type="number" expr="dc:toValue(dc:get('ld_mode'), 3384 <dc:variable name="fromkm" type="number" expr="dc:toValue(dc:get('ld_mode'),
3384 dc:get('ld_locations'), dc:get('ld_to'))" /> 3385 dc:get('ld_locations'), dc:get('ld_to'))"/>
3385 <dc:variable name="tokm" type="number" expr="dc:fromValue(dc:get('ld_mode'), 3386 <dc:variable name="tokm" type="number" expr="dc:fromValue(dc:get('ld_mode'),
3386 dc:get('ld_locations'), dc:get('ld_from'))" /> 3387 dc:get('ld_locations'), dc:get('ld_from'))"/>
3387 </dc:if> 3388 </dc:if>
3388 </dc:otherwise> 3389 </dc:otherwise>
3389 </dc:choose> 3390 </dc:choose>
3390 <dc:macro-body /> 3391 <dc:macro-body/>
3391 </dc:macro> 3392 </dc:macro>
3392 3393
3393 <!-- S-INFO --> 3394 <!-- S-INFO -->
3394 <dc:macro name="sinfo_flowdepths"> 3395 <dc:macro name="sinfo_flowdepths">
3395 <dc:filter expr="$a_state = 'state.sinfo.flow_depth' and 3396 <dc:filter expr="$a_state = 'state.sinfo.flow_depth' and
3400 <sinfo_flow_depths> 3401 <sinfo_flow_depths>
3401 <dc:call-macro name="collection-group"> 3402 <dc:call-macro name="collection-group">
3402 <sinfo_flow_depth description="{dc:group-key()}"> 3403 <sinfo_flow_depth description="{dc:group-key()}">
3403 <dc:for-each> 3404 <dc:for-each>
3404 <dc:element name="${facet_name}"> 3405 <dc:element name="${facet_name}">
3405 <dc:attribute name="factory" value="sinfo" /> 3406 <dc:attribute name="factory" value="sinfo"/>
3406 <dc:attribute name="target_out" value="${out}" /> 3407 <dc:attribute name="target_out" value="${out}"/>
3407 <dc:attribute name="description" value="${facet_description}" /> 3408 <dc:attribute name="description" value="${facet_description}"/>
3408 <dc:attribute name="ids" value="${facet_num}" /> 3409 <dc:attribute name="ids" value="${facet_num}"/>
3409 <dc:attribute name="artifact-id" value="${a_gid}" /> 3410 <dc:attribute name="artifact-id" value="${a_gid}"/>
3410 <dc:attribute name="out" value="${out_name}" /> 3411 <dc:attribute name="out" value="${out_name}"/>
3411 </dc:element> 3412 </dc:element>
3412 </dc:for-each> 3413 </dc:for-each>
3413 </sinfo_flow_depth> 3414 </sinfo_flow_depth>
3414 </dc:call-macro> 3415 </dc:call-macro>
3415 </sinfo_flow_depths> 3416 </sinfo_flow_depths>
3425 <sinfo_flow_depths_minmax> 3426 <sinfo_flow_depths_minmax>
3426 <dc:call-macro name="collection-group"> 3427 <dc:call-macro name="collection-group">
3427 <sinfo_flow_depth_minmax description="{dc:group-key()}"> 3428 <sinfo_flow_depth_minmax description="{dc:group-key()}">
3428 <dc:for-each> 3429 <dc:for-each>
3429 <dc:element name="${facet_name}"> 3430 <dc:element name="${facet_name}">
3430 <dc:attribute name="factory" value="sinfo" /> 3431 <dc:attribute name="factory" value="sinfo"/>
3431 <dc:attribute name="target_out" value="${out}" /> 3432 <dc:attribute name="target_out" value="${out}"/>
3432 <dc:attribute name="description" value="${facet_description}" /> 3433 <dc:attribute name="description" value="${facet_description}"/>
3433 <dc:attribute name="ids" value="${facet_num}" /> 3434 <dc:attribute name="ids" value="${facet_num}"/>
3434 <dc:attribute name="artifact-id" value="${a_gid}" /> 3435 <dc:attribute name="artifact-id" value="${a_gid}"/>
3435 <dc:attribute name="out" value="${out_name}" /> 3436 <dc:attribute name="out" value="${out_name}"/>
3436 </dc:element> 3437 </dc:element>
3437 </dc:for-each> 3438 </dc:for-each>
3438 </sinfo_flow_depth_minmax> 3439 </sinfo_flow_depth_minmax>
3439 </dc:call-macro> 3440 </dc:call-macro>
3440 </sinfo_flow_depths_minmax> 3441 </sinfo_flow_depths_minmax>
3455 <sinfo_flow_depth_developments> 3456 <sinfo_flow_depth_developments>
3456 <dc:call-macro name="collection-group"> 3457 <dc:call-macro name="collection-group">
3457 <sinfo_flow_depth_development description="{dc:group-key()}"> 3458 <sinfo_flow_depth_development description="{dc:group-key()}">
3458 <dc:for-each> 3459 <dc:for-each>
3459 <dc:element name="${facet_name}"> 3460 <dc:element name="${facet_name}">
3460 <dc:attribute name="factory" value="sinfo" /> 3461 <dc:attribute name="factory" value="sinfo"/>
3461 <dc:attribute name="target_out" value="${out}" /> 3462 <dc:attribute name="target_out" value="${out}"/>
3462 <dc:attribute name="description" value="${facet_description}" /> 3463 <dc:attribute name="description" value="${facet_description}"/>
3463 <dc:attribute name="ids" value="${facet_num}" /> 3464 <dc:attribute name="ids" value="${facet_num}"/>
3464 <dc:attribute name="artifact-id" value="${a_gid}" /> 3465 <dc:attribute name="artifact-id" value="${a_gid}"/>
3465 <dc:attribute name="out" value="${out_name}" /> 3466 <dc:attribute name="out" value="${out_name}"/>
3466 </dc:element> 3467 </dc:element>
3467 </dc:for-each> 3468 </dc:for-each>
3468 </sinfo_flow_depth_development> 3469 </sinfo_flow_depth_development>
3469 </dc:call-macro> 3470 </dc:call-macro>
3470 </sinfo_flow_depth_developments> 3471 </sinfo_flow_depth_developments>
3484 <sinfo_tkhs> 3485 <sinfo_tkhs>
3485 <dc:call-macro name="collection-group"> 3486 <dc:call-macro name="collection-group">
3486 <sinfo_tkh description="{dc:group-key()}"> 3487 <sinfo_tkh description="{dc:group-key()}">
3487 <dc:for-each> 3488 <dc:for-each>
3488 <dc:element name="${facet_name}"> 3489 <dc:element name="${facet_name}">
3489 <dc:attribute name="factory" value="sinfo" /> 3490 <dc:attribute name="factory" value="sinfo"/>
3490 <dc:attribute name="target_out" value="${out}" /> 3491 <dc:attribute name="target_out" value="${out}"/>
3491 <dc:attribute name="description" value="${facet_description}" /> 3492 <dc:attribute name="description" value="${facet_description}"/>
3492 <dc:attribute name="ids" value="${facet_num}" /> 3493 <dc:attribute name="ids" value="${facet_num}"/>
3493 <dc:attribute name="artifact-id" value="${a_gid}" /> 3494 <dc:attribute name="artifact-id" value="${a_gid}"/>
3494 <dc:attribute name="out" value="${out_name}" /> 3495 <dc:attribute name="out" value="${out_name}"/>
3495 </dc:element> 3496 </dc:element>
3496 </dc:for-each> 3497 </dc:for-each>
3497 </sinfo_tkh> 3498 </sinfo_tkh>
3498 </dc:call-macro> 3499 </dc:call-macro>
3499 </sinfo_tkhs> 3500 </sinfo_tkhs>
3508 <sinfo_collisions> 3509 <sinfo_collisions>
3509 <dc:call-macro name="collection-group"> 3510 <dc:call-macro name="collection-group">
3510 <sinfo_collision description="{dc:group-key()}"> 3511 <sinfo_collision description="{dc:group-key()}">
3511 <dc:for-each> 3512 <dc:for-each>
3512 <dc:element name="${facet_name}"> 3513 <dc:element name="${facet_name}">
3513 <dc:attribute name="factory" value="sinfo" /> 3514 <dc:attribute name="factory" value="sinfo"/>
3514 <dc:attribute name="target_out" value="${out}" /> 3515 <dc:attribute name="target_out" value="${out}"/>
3515 <dc:attribute name="description" value="${facet_description}" /> 3516 <dc:attribute name="description" value="${facet_description}"/>
3516 <dc:attribute name="ids" value="${facet_num}" /> 3517 <dc:attribute name="ids" value="${facet_num}"/>
3517 <dc:attribute name="artifact-id" value="${a_gid}" /> 3518 <dc:attribute name="artifact-id" value="${a_gid}"/>
3518 <dc:attribute name="out" value="${out_name}" /> 3519 <dc:attribute name="out" value="${out_name}"/>
3519 </dc:element> 3520 </dc:element>
3520 </dc:for-each> 3521 </dc:for-each>
3521 </sinfo_collision> 3522 </sinfo_collision>
3522 </dc:call-macro> 3523 </dc:call-macro>
3523 </sinfo_collisions> 3524 </sinfo_collisions>
3534 <sinfo_flood_durations> 3535 <sinfo_flood_durations>
3535 <dc:call-macro name="collection-group"> 3536 <dc:call-macro name="collection-group">
3536 <sinfo_flood_duration description="{dc:group-key()}"> 3537 <sinfo_flood_duration description="{dc:group-key()}">
3537 <dc:for-each> 3538 <dc:for-each>
3538 <dc:element name="${facet_name}"> 3539 <dc:element name="${facet_name}">
3539 <dc:attribute name="factory" value="sinfo" /> 3540 <dc:attribute name="factory" value="sinfo"/>
3540 <dc:attribute name="target_out" value="${out}" /> 3541 <dc:attribute name="target_out" value="${out}"/>
3541 <dc:attribute name="description" value="${facet_description}" /> 3542 <dc:attribute name="description" value="${facet_description}"/>
3542 <dc:attribute name="ids" value="${facet_num}" /> 3543 <dc:attribute name="ids" value="${facet_num}"/>
3543 <dc:attribute name="artifact-id" value="${a_gid}" /> 3544 <dc:attribute name="artifact-id" value="${a_gid}"/>
3544 <dc:attribute name="out" value="${out_name}" /> 3545 <dc:attribute name="out" value="${out_name}"/>
3545 </dc:element> 3546 </dc:element>
3546 </dc:for-each> 3547 </dc:for-each>
3547 </sinfo_flood_duration> 3548 </sinfo_flood_duration>
3548 </dc:call-macro> 3549 </dc:call-macro>
3549 </sinfo_flood_durations> 3550 </sinfo_flood_durations>
3567 GROUP BY s.id 3568 GROUP BY s.id
3568 ORDER BY MIN(s.year_to) DESC 3569 ORDER BY MIN(s.year_to) DESC
3569 </dc:statement> 3570 </dc:statement>
3570 <dc:if test="dc:has-result()"> 3571 <dc:if test="dc:has-result()">
3571 <dc:for-each> 3572 <dc:for-each>
3572 <channelseries name="{$seriesname}" description="{$seriesname}" ids="channelx-{$id}-{$seriesname}" factory="channelf" target_out="{$out}" info="{$info}" /> 3573 <channelseries name="{$seriesname}" description="{$seriesname}" ids="channelx-{$id}-{$seriesname}" factory="channelf" target_out="{$out}" info="{$info}"/>
3573 </dc:for-each> 3574 </dc:for-each>
3574 </dc:if> 3575 </dc:if>
3575 </dc:context> 3576 </dc:context>
3576 </dc:macro> 3577 </dc:macro>
3577 3578
3578 <!-- tkh imported from CSV-files for S-INFO --> 3579 <!-- tkh imported from CSV-files for S-INFO -->
3579 <dc:macro name="sinfo_predefined_tkh-berechnung"> 3580 <dc:macro name="sinfo_predefined_tkh-berechnung">
3580 <predefined_tkh_berechnung> 3581 <predefined_tkh_berechnung>
3581 <dc:variable name="tkh_groupname" expr="'berechnung'" /> 3582 <dc:variable name="tkh_groupname" expr="'berechnung'"/>
3582 <dc:call-macro name="sinfo_predefined_tkh" /> 3583 <dc:call-macro name="sinfo_predefined_tkh"/>
3583 </predefined_tkh_berechnung> 3584 </predefined_tkh_berechnung>
3584 </dc:macro> 3585 </dc:macro>
3585 3586
3586 <dc:macro name="sinfo_predefined_tkh-messung"> 3587 <dc:macro name="sinfo_predefined_tkh-messung">
3587 <predefined_tkh_messung> 3588 <predefined_tkh_messung>
3588 <dc:variable name="tkh_groupname" expr="'messung'" /> 3589 <dc:variable name="tkh_groupname" expr="'messung'"/>
3589 <dc:call-macro name="sinfo_predefined_tkh" /> 3590 <dc:call-macro name="sinfo_predefined_tkh"/>
3590 </predefined_tkh_messung> 3591 </predefined_tkh_messung>
3591 </dc:macro> 3592 </dc:macro>
3592 3593
3593 <dc:macro name="sinfo_predefined_tkh"> 3594 <dc:macro name="sinfo_predefined_tkh">
3594 <dc:context> 3595 <dc:context>
3603 INNER JOIN tkh s ON sc.tkh_id=s.id 3604 INNER JOIN tkh s ON sc.tkh_id=s.id
3604 INNER JOIN tkh_values 3605 INNER JOIN tkh_values
3605 v ON sc.id=v.tkh_column_id 3606 v ON sc.id=v.tkh_column_id
3606 WHERE (s.river_id=${river_id}) 3607 WHERE (s.river_id=${river_id})
3607 AND (lower(s.groupname)=${tkh_groupname}) 3608 AND (lower(s.groupname)=${tkh_groupname})
3608 AND (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001) 3609 AND
3610 (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001)
3609 GROUP BY sc.tkh_id, sc.id 3611 GROUP BY sc.tkh_id, sc.id
3610 ORDER BY sc.id 3612 ORDER BY sc.id
3611 </dc:statement> 3613 </dc:statement>
3612 <dc:if test="dc:has-result()"> 3614 <dc:if test="dc:has-result()">
3613 <dc:group expr="$tkh_name"> 3615 <dc:group expr="$tkh_name">
3614 <tkhx name="{dc:group-key()}" description="{dc:group-key()}"> 3616 <tkhx name="{dc:group-key()}" description="{dc:group-key()}">
3615 <dc:for-each> 3617 <dc:for-each>
3616 <tkhcolumn name="{$tkh_col_name}" description="{$tkh_col_name}" ids="tkhx-{$tkh_col_id}-{$tkh_id}" factory="tkhxf" target_out="{$out}" info="{$info}" /> 3618 <tkhcolumn name="{$tkh_col_name}" description="{$tkh_col_name}" ids="tkhx-{$tkh_col_id}-{$tkh_id}" factory="tkhxf" target_out="{$out}" info="{$info}"/>
3617 </dc:for-each> 3619 </dc:for-each>
3618 </tkhx> 3620 </tkhx>
3619 </dc:group> 3621 </dc:group>
3620 </dc:if> 3622 </dc:if>
3621 </dc:context> 3623 </dc:context>
3622 </dc:macro> 3624 </dc:macro>
3623 3625
3624 <!-- depth_evolution imported from CSV-files for S-INFO --> 3626 <!-- depth_evolution imported from CSV-files for S-INFO -->
3625 <dc:macro name="sinfo_predefined_depthevol-aktuell"> 3627 <dc:macro name="sinfo_predefined_depthevol-aktuell">
3626 <predefined_depthevol_aktuell> 3628 <predefined_depthevol_aktuell>
3627 <dc:variable name="depthevol_groupname" expr="'aktuell'" /> 3629 <dc:variable name="depthevol_groupname" expr="'aktuell'"/>
3628 <dc:call-macro name="sinfo_predefined_depthevol" /> 3630 <dc:call-macro name="sinfo_predefined_depthevol"/>
3629 </predefined_depthevol_aktuell> 3631 </predefined_depthevol_aktuell>
3630 </dc:macro> 3632 </dc:macro>
3631 3633
3632 <dc:macro name="sinfo_predefined_depthevol-etappe"> 3634 <dc:macro name="sinfo_predefined_depthevol-etappe">
3633 <predefined_depthevol_etappe> 3635 <predefined_depthevol_etappe>
3634 <dc:variable name="depthevol_groupname" expr="'etappe'" /> 3636 <dc:variable name="depthevol_groupname" expr="'etappe'"/>
3635 <dc:call-macro name="sinfo_predefined_depthevol" /> 3637 <dc:call-macro name="sinfo_predefined_depthevol"/>
3636 </predefined_depthevol_etappe> 3638 </predefined_depthevol_etappe>
3637 </dc:macro> 3639 </dc:macro>
3638 3640
3639 <dc:macro name="sinfo_predefined_depthevol"> 3641 <dc:macro name="sinfo_predefined_depthevol">
3640 <dc:context> 3642 <dc:context>
3646 || MIN(s.old_sounding) || ' - ' || MIN(s.curr_sounding) || '&lt;br /&gt;' 3648 || MIN(s.old_sounding) || ' - ' || MIN(s.curr_sounding) || '&lt;br /&gt;'
3647 || MIN(s.old_glw) || ' - ' || 3649 || MIN(s.old_glw) || ' - ' ||
3648 MIN(s.curr_glw) AS info 3650 MIN(s.curr_glw) AS info
3649 FROM depth_evolution s 3651 FROM depth_evolution s
3650 INNER JOIN depth_evolution_values v ON s.id=v.depth_evolution_id 3652 INNER JOIN depth_evolution_values v ON s.id=v.depth_evolution_id
3651 WHERE (s.river_id=${river_id}) 3653 WHERE
3654 (s.river_id=${river_id})
3652 AND (lower(s.groupname)=${depthevol_groupname}) 3655 AND (lower(s.groupname)=${depthevol_groupname})
3653 AND (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001) 3656 AND (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001)
3654 GROUP BY s.id 3657 GROUP BY s.id
3655 ORDER BY s.id 3658 ORDER BY s.id
3656 </dc:statement> 3659 </dc:statement>
3657 <dc:for-each> 3660 <dc:for-each>
3658 <depth_evol name="{$depthevol_name}" description="{$depthevol_name}" ids="depthevolx-{$depthevol_id}-{$depthevol_name}" factory="depthevolxf" target_out="{$out}" info="{$info}" /> 3661 <depth_evol name="{$depthevol_name}" description="{$depthevol_name}" ids="depthevolx-{$depthevol_id}-{$depthevol_name}" factory="depthevolxf" target_out="{$out}" info="{$info}"/>
3659 </dc:for-each> 3662 </dc:for-each>
3660 </dc:context> 3663 </dc:context>
3661 </dc:macro> 3664 </dc:macro>
3662 3665
3663 <!-- flow depth imported from CSV-files for S-INFO --> 3666 <!-- flow depth imported from CSV-files for S-INFO -->
3664 <dc:macro name="sinfo_predefined_flowdepth-m"> 3667 <dc:macro name="sinfo_predefined_flowdepth-m">
3665 <dc:call-macro name="sinfo_predefined_flowdepth-m1" /> 3668 <dc:call-macro name="sinfo_predefined_flowdepth-m1"/>
3666 </dc:macro> 3669 </dc:macro>
3667 3670
3668 <dc:macro name="sinfo_predefined_flowdepth-m1"> 3671 <dc:macro name="sinfo_predefined_flowdepth-m1">
3669 <dc:context> 3672 <dc:context>
3670 <dc:statement> 3673 <dc:statement>
3676 || MIN(s.evaluation_by) AS info 3679 || MIN(s.evaluation_by) AS info
3677 FROM flow_depth_column sc 3680 FROM flow_depth_column sc
3678 INNER JOIN 3681 INNER JOIN
3679 flow_depth s ON sc.flow_depth_id=s.id 3682 flow_depth s ON sc.flow_depth_id=s.id
3680 INNER JOIN flow_depth_values v ON sc.id=v.flow_depth_column_id 3683 INNER JOIN flow_depth_values v ON sc.id=v.flow_depth_column_id
3681 WHERE (s.river_id=${river_id}) 3684 WHERE
3685 (s.river_id=${river_id})
3682 AND (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001) 3686 AND (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001)
3683 GROUP BY sc.flow_depth_id, sc.id 3687 GROUP BY sc.flow_depth_id, sc.id
3684 ORDER BY sc.id 3688 ORDER BY sc.id
3685 </dc:statement> 3689 </dc:statement>
3686 <dc:if test="dc:has-result()"> 3690 <dc:if test="dc:has-result()">
3687 <dc:group expr="$flowdepth_name"> 3691 <dc:group expr="$flowdepth_name">
3688 <sinfo_predefined_flowdepth> 3692 <sinfo_predefined_flowdepth>
3689 <dc:for-each> 3693 <dc:for-each>
3690 <flowdepthcolumn name="{$flowdepth_col_name}" description="{$flowdepth_col_name}" ids="flowdepthx-{$flowdepth_col_id}-{$flowdepth_id}" factory="flowdepthxf" target_out="{$out}" info="{$info}" /> 3694 <flowdepthcolumn name="{$flowdepth_col_name}" description="{$flowdepth_col_name}" ids="flowdepthx-{$flowdepth_col_id}-{$flowdepth_id}" factory="flowdepthxf" target_out="{$out}" info="{$info}"/>
3691 </dc:for-each> 3695 </dc:for-each>
3692 </sinfo_predefined_flowdepth> 3696 </sinfo_predefined_flowdepth>
3693 </dc:group> 3697 </dc:group>
3694 </dc:if> 3698 </dc:if>
3695 </dc:context> 3699 </dc:context>
3708 INNER JOIN infrastructure_values v ON s.id=v.infrastructure_id 3712 INNER JOIN infrastructure_values v ON s.id=v.infrastructure_id
3709 INNER JOIN annotation_types x ON 3713 INNER JOIN annotation_types x ON
3710 s.annotation_type_id=x.id 3714 s.annotation_type_id=x.id
3711 WHERE (s.river_id=${river_id}) 3715 WHERE (s.river_id=${river_id})
3712 AND (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001) 3716 AND (v.station BETWEEN ${fromkm}-0.0001 AND ${tokm}+0.0001)
3713 GROUP BY s.id 3717 GROUP BY
3718 s.id
3714 ORDER BY MIN(s.filename) DESC 3719 ORDER BY MIN(s.filename) DESC
3715 </dc:statement> 3720 </dc:statement>
3716 <dc:if test="dc:has-result()"> 3721 <dc:if test="dc:has-result()">
3717 <dc:for-each> 3722 <dc:for-each>
3718 <infrastructureseries name="{$seriesname}" description="{$seriesname}" ids="infrastructurex-{$id}-{$seriesname}" factory="infrastructuref" target_out="{$out}" info="{$info}" /> 3723 <infrastructureseries name="{$seriesname}" description="{$seriesname}" ids="infrastructurex-{$id}-{$seriesname}" factory="infrastructuref" target_out="{$out}" info="{$info}"/>
3719 </dc:for-each> 3724 </dc:for-each>
3720 </dc:if> 3725 </dc:if>
3721 </dc:context> 3726 </dc:context>
3722 </dc:macro> 3727 </dc:macro>
3723 3728
3737 GROUP BY s.id 3742 GROUP BY s.id
3738 ORDER BY MIN(s.year) 3743 ORDER BY MIN(s.year)
3739 </dc:statement> 3744 </dc:statement>
3740 <dc:if test="dc:has-result()"> 3745 <dc:if test="dc:has-result()">
3741 <dc:for-each> 3746 <dc:for-each>
3742 <collisionseries name="{$seriesname}" description="{$seriesname}" ids="collisionx-{$id}-{$year}-{$seriesname}" factory="collisionf" target_out="{$out}" info="{$info}" /> 3747 <collisionseries name="{$seriesname}" description="{$seriesname}" ids="collisionx-{$id}-{$year}-{$seriesname}" factory="collisionf" target_out="{$out}" info="{$info}"/>
3743 </dc:for-each> 3748 </dc:for-each>
3744 </dc:if> 3749 </dc:if>
3745 </dc:context> 3750 </dc:context>
3746 </dc:macro> 3751 </dc:macro>
3747 3752
3755 <uinfo_salix_lines> 3760 <uinfo_salix_lines>
3756 <dc:call-macro name="collection-group"> 3761 <dc:call-macro name="collection-group">
3757 <uinfo_salix_line description="{dc:group-key()}"> 3762 <uinfo_salix_line description="{dc:group-key()}">
3758 <dc:for-each> 3763 <dc:for-each>
3759 <dc:element name="${facet_name}"> 3764 <dc:element name="${facet_name}">
3760 <dc:attribute name="factory" value="uinfo" /> 3765 <dc:attribute name="factory" value="uinfo"/>
3761 <dc:attribute name="target_out" value="${out}" /> 3766 <dc:attribute name="target_out" value="${out}"/>
3762 <dc:attribute name="description" value="${facet_description}" /> 3767 <dc:attribute name="description" value="${facet_description}"/>
3763 <dc:attribute name="ids" value="${facet_num}" /> 3768 <dc:attribute name="ids" value="${facet_num}"/>
3764 <dc:attribute name="artifact-id" value="${a_gid}" /> 3769 <dc:attribute name="artifact-id" value="${a_gid}"/>
3765 <dc:attribute name="out" value="${out_name}" /> 3770 <dc:attribute name="out" value="${out_name}"/>
3766 </dc:element> 3771 </dc:element>
3767 </dc:for-each> 3772 </dc:for-each>
3768 </uinfo_salix_line> 3773 </uinfo_salix_line>
3769 </dc:call-macro> 3774 </dc:call-macro>
3770 </uinfo_salix_lines> 3775 </uinfo_salix_lines>
3772 </dc:filter> 3777 </dc:filter>
3773 </dc:macro> 3778 </dc:macro>
3774 3779
3775 <!-- Vegetation zones, edited by the user --> 3780 <!-- Vegetation zones, edited by the user -->
3776 <dc:macro name="vegetationzones"> 3781 <dc:macro name="vegetationzones">
3777 <dc:filter expr="$a_state = 'state.uinfo.vegetation_zones' and $facet_name = 'uinfo_facet_vegetation_zones_cross_section'"> <!--'uinfo_facet_vegetation_zones_cross_section'" > and $facet_name = 'csv'"> we misuse the csv-facet --> 3782 <dc:filter expr="$a_state = 'state.uinfo.vegetation_zones' and $facet_name = 'uinfo_facet_vegetation_zones_cross_section'">
3778 <dc:if test="dc:has-result()"> 3783 <dc:if test="dc:has-result()">
3779 <vegetation_zones> 3784 <vegetation_zones>
3780 <dc:for-each> 3785 <dc:for-each>
3781 <dc:variable name="vegzonedata" expr="dc:data_from_artifact($a_gid,'vegzones')" /> 3786 <dc:variable name="vegzonedata" expr="dc:data_from_artifact($a_gid,'vegzones')"/>
3782 <dc:variable name="label_temp" type="string" expr="concat(dc:get('ld_f'), ' km - ', dc:get('ld_t'), ' km')" /> 3787 <dc:variable name="label_temp" type="string" expr="concat(dc:get('ld_f'), ' km - ', dc:get('ld_t'), ' km')"/>
3783 3788
3784 <dc:element name="${facet_name}"> 3789 <dc:element name="${facet_name}">
3785 <dc:attribute name="factory" value="uinfo" /> 3790 <dc:attribute name="factory" value="uinfo"/>
3786 <dc:attribute name="target_out" value="${out}" /> 3791 <dc:attribute name="target_out" value="${out}"/>
3787 <dc:attribute name="description" value="${label_temp}" /> 3792 <dc:attribute name="description" value="${label_temp}"/>
3788 <dc:attribute name="artifact-id" value="${a_gid}" /> 3793 <dc:attribute name="artifact-id" value="${a_gid}"/>
3789 <dc:attribute name="out" value="${out_name}" /> 3794 <dc:attribute name="out" value="${out_name}"/>
3790 <dc:attribute name="ids" value="${facet_num}" /> 3795 <dc:attribute name="ids" value="${facet_num}"/>
3791 <!-- veg zones string as attribute --> 3796 <!-- veg zones string as attribute -->
3792 <dc:attribute name="data" value="${vegzonedata}" /> 3797 <dc:attribute name="data" value="${vegzonedata}"/>
3793 </dc:element> 3798 </dc:element>
3794 </dc:for-each> 3799 </dc:for-each>
3795 </vegetation_zones> 3800 </vegetation_zones>
3796 </dc:if> 3801 </dc:if>
3797 </dc:filter> 3802 </dc:filter>
3832 or $facet_name = 'bundu_facet_depth_08.filtered' 3837 or $facet_name = 'bundu_facet_depth_08.filtered'
3833 or $facet_name = 'bundu_facet_depth_09.filtered' 3838 or $facet_name = 'bundu_facet_depth_09.filtered'
3834 or $facet_name = 'bundu_facet_depth_10.filtered' 3839 or $facet_name = 'bundu_facet_depth_10.filtered'
3835 or $facet_name = 'longitudinal_section.area' 3840 or $facet_name = 'longitudinal_section.area'
3836 or $facet_name = 'longitudinal_section.manualpoints' 3841 or $facet_name = 'longitudinal_section.manualpoints'
3837 )" > 3842 )">
3838 3843
3839 <dc:if test="dc:has-result()"> 3844 <dc:if test="dc:has-result()">
3840 <bundu_bezugswsts> 3845 <bundu_bezugswsts>
3841 <dc:call-macro name="collection-group"> 3846 <dc:call-macro name="collection-group">
3842 <bundu_bezugswst description="{dc:group-key()}"> 3847 <bundu_bezugswst description="{dc:group-key()}">
3843 <dc:for-each> 3848 <dc:for-each>
3844 <dc:element name="${facet_name}"> 3849 <dc:element name="${facet_name}">
3845 <dc:attribute name="factory" value="bundu" /> 3850 <dc:attribute name="factory" value="bundu"/>
3846 <dc:attribute name="target_out" value="${out}" /> 3851 <dc:attribute name="target_out" value="${out}"/>
3847 <dc:attribute name="description" value="${facet_description}" /> 3852 <dc:attribute name="description" value="${facet_description}"/>
3848 <dc:attribute name="ids" value="${facet_num}" /> 3853 <dc:attribute name="ids" value="${facet_num}"/>
3849 <dc:attribute name="artifact-id" value="${a_gid}" /> 3854 <dc:attribute name="artifact-id" value="${a_gid}"/>
3850 <dc:attribute name="out" value="${out_name}" /> 3855 <dc:attribute name="out" value="${out_name}"/>
3851 </dc:element> 3856 </dc:element>
3852 </dc:for-each> 3857 </dc:for-each>
3853 </bundu_bezugswst> 3858 </bundu_bezugswst>
3854 </dc:call-macro> 3859 </dc:call-macro>
3855 </bundu_bezugswsts> 3860 </bundu_bezugswsts>

http://dive4elements.wald.intevation.org