geo_combine 0.0.5 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,1034 +1,1926 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!-- From Mike Graves, MIT
3
- https://github.com/gravesm/kendallite/blob/master/kendallite/site/fgdc.xsl
4
- -->
1
+ <?xml version="1.0" encoding="UTF-8"?>
5
2
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
6
- <xsl:output omit-xml-declaration="yes" />
7
-
8
-
9
- <!-- Variables controlling the elements and attributes used to create html
10
- output -->
11
-
12
- <!-- Top level heading element -->
13
- <xsl:variable name="heading-1" select="'h3'" />
14
- <xsl:attribute-set name="heading-1-attr" />
15
-
16
- <!-- Second level heading element -->
17
- <xsl:variable name="heading-2" select="'h4'" />
18
- <xsl:attribute-set name="heading-2-attr" />
19
-
20
- <!-- Third level heading element -->
21
- <xsl:variable name="heading-3" select="'h5'" />
22
- <xsl:attribute-set name="heading-3-attr" />
23
-
24
- <!-- Element used to wrap one or more key/value pairs -->
25
- <xsl:variable name="list" select="'dl'" />
26
- <xsl:attribute-set name="list-attr">
27
- <xsl:attribute name="class">dl-horizontal</xsl:attribute>
28
- </xsl:attribute-set>
29
-
30
- <!-- Element used to wrap a key in a key/value pair -->
31
- <xsl:variable name="key" select="'dt'" />
32
- <xsl:attribute-set name="key-attr" />
33
-
34
- <!-- Element used to wrap a value in a key/value pair -->
35
- <xsl:variable name="value" select="'dd'" />
36
- <xsl:attribute-set name="value-attr" />
37
-
38
- <!-- Element used to wrap content of a top level section -->
39
- <xsl:variable name="section-1" select="'section'" />
40
- <xsl:attribute-set name="section-1-attr" />
41
-
42
- <!-- Element used to wrap an entity/attribute definition -->
43
- <xsl:variable name="section-2" select="'section'" />
44
- <xsl:attribute-set name="section-2-attr" />
45
-
46
-
47
- <xsl:template match="/">
48
- <xsl:apply-templates />
49
- </xsl:template>
50
-
51
-
52
- <!-- Identification Information -->
53
- <xsl:template match="metadata/idinfo">
54
- <xsl:element name="{$heading-1}" use-attribute-sets="heading-1-attr">
55
- <xsl:text>Identification Information</xsl:text>
56
- </xsl:element>
57
- <xsl:element name="{$section-1}" use-attribute-sets="section-1-attr">
58
- <xsl:apply-templates />
59
- </xsl:element>
60
- </xsl:template>
61
-
62
- <xsl:template match="citation">
63
- <xsl:element name="{$heading-2}" use-attribute-sets="heading-2-attr">
64
- <xsl:text>Citation Information</xsl:text>
65
- </xsl:element>
66
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
67
- <xsl:apply-templates select="citeinfo" />
68
- </xsl:element>
69
- </xsl:template>
70
-
71
- <xsl:template match="descript">
72
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
73
- <xsl:text>Description</xsl:text>
74
- </xsl:element>
75
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
76
- <xsl:apply-templates />
77
- </xsl:element>
78
- </xsl:template>
79
-
80
- <xsl:template match="abstract">
81
- <xsl:call-template name="description">
82
- <xsl:with-param name="term" select="'Abstract'" />
83
- </xsl:call-template>
84
- </xsl:template>
85
-
86
- <xsl:template match="purpose">
87
- <xsl:call-template name="description">
88
- <xsl:with-param name="term" select="'Purpose'" />
89
- </xsl:call-template>
90
- </xsl:template>
91
-
92
- <xsl:template match="supplinf">
93
- <xsl:call-template name="description">
94
- <xsl:with-param name="term" select="'Supplemental Information'" />
95
- </xsl:call-template>
96
- </xsl:template>
97
-
98
- <xsl:template match="timeperd">
99
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
100
- <xsl:text>Time Period of Content</xsl:text>
101
- </xsl:element>
102
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
103
- <xsl:apply-templates select="timeinfo|current" />
104
- </xsl:element>
105
- </xsl:template>
106
-
107
- <xsl:template match="current">
108
- <xsl:call-template name="description">
109
- <xsl:with-param name="term" select="'Currentness Reference'" />
110
- </xsl:call-template>
111
- </xsl:template>
112
-
113
- <xsl:template match="status">
114
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
115
- <xsl:text>Status</xsl:text>
116
- </xsl:element>
117
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
118
- <xsl:apply-templates />
119
- </xsl:element>
120
- </xsl:template>
121
-
122
- <xsl:template match="spdom">
123
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
124
- <xsl:text>Spatial Domain</xsl:text>
125
- </xsl:element>
126
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
127
- <xsl:apply-templates />
128
- </xsl:element>
129
- </xsl:template>
130
-
131
- <xsl:template match="keywords">
132
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
133
- <xsl:text>Keywords</xsl:text>
134
- </xsl:element>
135
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
136
- <xsl:apply-templates />
137
- </xsl:element>
138
- </xsl:template>
139
-
140
- <xsl:template match="accconst">
141
- <xsl:if test="normalize-space(.) != ''">
142
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
143
- <xsl:call-template name="description">
144
- <xsl:with-param name="term" select="'Access Constraints'" />
145
- </xsl:call-template>
146
- </xsl:element>
147
- </xsl:if>
148
- </xsl:template>
149
-
150
- <xsl:template match="useconst">
151
- <xsl:if test="normalize-space(.) != ''">
152
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
153
- <xsl:call-template name="description">
154
- <xsl:with-param name="term" select="'Use Constraints'" />
155
- </xsl:call-template>
156
- </xsl:element>
157
- </xsl:if>
158
- </xsl:template>
159
-
160
- <xsl:template match="temporal/tempkt">
161
- <xsl:call-template name="description">
162
- <xsl:with-param name="term" select="'Temporal Keyword Thesaurus'" />
163
- </xsl:call-template>
164
- </xsl:template>
165
-
166
- <xsl:template match="temporal/tempkey">
167
- <xsl:call-template name="description">
168
- <xsl:with-param name="term" select="'Temporal Keyword'" />
169
- </xsl:call-template>
170
- </xsl:template>
171
-
172
- <xsl:template match="stratum/stratkey">
173
- <xsl:call-template name="description">
174
- <xsl:with-param name="term" select="'Stratum Keyword'" />
175
- </xsl:call-template>
176
- </xsl:template>
177
-
178
- <xsl:template match="stratum/stratkt">
179
- <xsl:call-template name="description">
180
- <xsl:with-param name="term" select="'Stratum Keyword Thesaurus'" />
181
- </xsl:call-template>
182
- </xsl:template>
183
-
184
- <xsl:template match="theme">
185
- <xsl:element name="{$key}" use-attribute-sets="key-attr">
186
- <xsl:attribute name="title">Theme Keywords</xsl:attribute>
187
- <xsl:text>Theme Keywords</xsl:text>
188
- </xsl:element>
189
- <xsl:element name="{$value}" use-attribute-sets="value-attr">
190
- <xsl:for-each select="themekey">
3
+ <!--
4
+ fgdc2html.xsl - Transformation from CDSDGM/FGDC into HTML
5
+ Created by Kim Durante, Stanford University Libraries
6
+
7
+ -->
8
+ <xsl:template match="/">
9
+ <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text>
10
+ <html>
11
+ <head>
12
+ <title>
13
+ <xsl:value-of select="metadata/idinfo/citation/citeinfo/title" />
14
+ </title>
15
+ </head>
16
+ <body>
17
+ <h1>
18
+ <xsl:value-of select="metadata/idinfo/citation/citeinfo/title" />
19
+ </h1>
20
+ <ul>
21
+ <xsl:for-each select="metadata/idinfo">
22
+ <li>
23
+ <a href="#fgdc-identification-info">Identification Information</a>
24
+ </li>
25
+ </xsl:for-each>
26
+ <xsl:for-each select="metadata/dataqual">
27
+ <li>
28
+ <a href="#fgdc-data-quality-info">Data Quality Information</a>
29
+ </li>
30
+ </xsl:for-each>
31
+ <xsl:for-each select="metadata/spdoinfo">
32
+ <li>
33
+ <a href="#fgdc-spatialdataorganization-info">Spatial Data Organization Information</a>
34
+ </li>
35
+ </xsl:for-each>
36
+ <xsl:for-each select="metadata/spref">
37
+ <li>
38
+ <a href="#fgdc-spatialreference-info">Spatial Reference Information</a>
39
+ </li>
40
+ </xsl:for-each>
41
+ <xsl:for-each select="metadata/eainfo">
42
+ <li>
43
+ <a href="#fgdc-entityattribute-info">Entity and Attribute Information</a>
44
+ </li>
45
+ </xsl:for-each>
46
+ <xsl:for-each select="metadata/distinfo">
47
+ <li>
48
+ <a href="#fgdc-distribution-info">Distribution Information</a>
49
+ </li>
50
+ </xsl:for-each>
51
+ <xsl:for-each select="metadata/metainfo">
52
+ <li>
53
+ <a href="#fgdc-metadata-reference-info">Metadata Reference Information</a>
54
+ </li>
55
+ </xsl:for-each>
56
+ </ul>
57
+ <xsl:apply-templates select="metadata/idinfo" />
58
+ <xsl:apply-templates select="metadata/dataqual" />
59
+ <xsl:apply-templates select="metadata/spdoinfo" />
60
+ <xsl:apply-templates select="metadata/spref" />
61
+ <xsl:apply-templates select="metadata/eainfo" />
62
+ <xsl:apply-templates select="metadata/distinfo" />
63
+ <xsl:apply-templates select="metadata/metainfo" />
64
+ </body>
65
+ </html>
66
+ </xsl:template>
67
+ <!-- Identification -->
68
+ <xsl:template match="idinfo">
69
+ <div id="fgdc-identification-info">
70
+ <dl>
71
+ <dt>Identification Information</dt>
72
+ <dd>
73
+ <dl>
74
+ <xsl:for-each select="citation">
75
+ <dt>Citation</dt>
76
+ <dd>
77
+ <xsl:apply-templates select="citeinfo" />
78
+ </dd>
79
+ </xsl:for-each>
80
+ <xsl:for-each select="descript/abstract">
81
+ <dt>Abstract</dt>
82
+ <dd>
191
83
  <xsl:value-of select="." />
192
- <xsl:if test="position() != last()">
193
- <xsl:text>; </xsl:text>
194
- </xsl:if>
84
+ </dd>
195
85
  </xsl:for-each>
196
- </xsl:element>
197
- </xsl:template>
198
-
199
- <xsl:template match="place">
200
- <xsl:element name="{$key}" use-attribute-sets="key-attr">
201
- <xsl:attribute name="title">Place Keywords</xsl:attribute>
202
- <xsl:text>Place Keywords</xsl:text>
203
- </xsl:element>
204
- <xsl:element name="{$value}" use-attribute-sets="value-attr">
205
- <xsl:for-each select="placekey">
86
+ <xsl:for-each select="descript/purpose">
87
+ <dt>Purpose</dt>
88
+ <dd>
206
89
  <xsl:value-of select="." />
207
- <xsl:if test="position() != last()">
208
- <xsl:text>; </xsl:text>
209
- </xsl:if>
90
+ </dd>
210
91
  </xsl:for-each>
211
- </xsl:element>
212
- </xsl:template>
213
-
214
- <xsl:template match="westbc">
215
- <xsl:call-template name="description">
216
- <xsl:with-param name="term" select="'West Bounding Coordinate'" />
217
- </xsl:call-template>
218
- </xsl:template>
219
-
220
- <xsl:template match="eastbc">
221
- <xsl:call-template name="description">
222
- <xsl:with-param name="term" select="'East Bounding Coordinate'" />
223
- </xsl:call-template>
224
- </xsl:template>
225
-
226
- <xsl:template match="northbc">
227
- <xsl:call-template name="description">
228
- <xsl:with-param name="term" select="'North Bounding Coordinate'" />
229
- </xsl:call-template>
230
- </xsl:template>
231
-
232
- <xsl:template match="southbc">
233
- <xsl:call-template name="description">
234
- <xsl:with-param name="term" select="'South Bounding Coordinate'" />
235
- </xsl:call-template>
236
- </xsl:template>
237
-
238
- <xsl:template match="update">
239
- <xsl:call-template name="description">
240
- <xsl:with-param name="term" select="'Maintenance and Update Frequency'" />
241
- </xsl:call-template>
242
- </xsl:template>
243
-
244
- <xsl:template match="progress">
245
- <xsl:call-template name="description">
246
- <xsl:with-param name="term" select="'Progress'" />
247
- </xsl:call-template>
248
- </xsl:template>
249
-
250
- <xsl:template match="current">
251
- <xsl:call-template name="description">
252
- <xsl:with-param name="term" select="'Currentness Reference'" />
253
- </xsl:call-template>
254
- </xsl:template>
255
-
256
- <xsl:template match="ptcontac">
257
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
258
- <xsl:apply-templates select="cntinfo" />
259
- </xsl:element>
260
- </xsl:template>
261
- <!-- End Identification Information -->
262
-
263
-
264
- <!-- Data Quality Information -->
265
- <xsl:template match="metadata/dataqual">
266
- <xsl:element name="{$heading-1}" use-attribute-sets="heading-1-attr">
267
- <xsl:text>Data Quality Information</xsl:text>
268
- </xsl:element>
269
- <xsl:element name="{$section-1}" use-attribute-sets="section-1-attr">
270
- <xsl:apply-templates />
271
- </xsl:element>
272
- </xsl:template>
273
-
274
- <xsl:template match="attracc">
275
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
276
- <xsl:text>Attribute Accuracy</xsl:text>
277
- </xsl:element>
278
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
279
- <xsl:apply-templates />
280
- </xsl:element>
281
- </xsl:template>
282
-
283
- <xsl:template match="attraccr">
284
- <xsl:call-template name="description">
285
- <xsl:with-param name="term" select="'Attribute Accuracy Report'" />
286
- </xsl:call-template>
287
- </xsl:template>
288
-
289
- <xsl:template match="attraccv">
290
- <xsl:call-template name="description">
291
- <xsl:with-param name="term" select="'Attribute Accuracy Value'" />
292
- </xsl:call-template>
293
- </xsl:template>
294
-
295
- <xsl:template match="attracce">
296
- <xsl:call-template name="description">
297
- <xsl:with-param name="term" select="'Attribute Accuracy Explanation'" />
298
- </xsl:call-template>
299
- </xsl:template>
300
-
301
- <xsl:template match="logic">
302
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
303
- <xsl:call-template name="description">
304
- <xsl:with-param name="term" select="'Logical Consistency Report'" />
305
- </xsl:call-template>
306
- </xsl:element>
307
- </xsl:template>
308
-
309
- <xsl:template match="complete">
310
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
311
- <xsl:call-template name="description">
312
- <xsl:with-param name="term" select="'Completeness Report'" />
313
- </xsl:call-template>
314
- </xsl:element>
315
- </xsl:template>
316
-
317
- <xsl:template match="posacc/horizpa">
318
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
319
- <xsl:text>Horizontal Positional Accuracy</xsl:text>
320
- </xsl:element>
321
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
322
- <xsl:apply-templates />
323
- </xsl:element>
324
- </xsl:template>
325
-
326
- <xsl:template match="posacc/vertacc">
327
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
328
- <xsl:text>Vertical Positional Accuracy</xsl:text>
329
- </xsl:element>
330
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
331
- <xsl:apply-templates />
332
- </xsl:element>
333
- </xsl:template>
334
-
335
- <xsl:template match="horizpar">
336
- <xsl:call-template name="description">
337
- <xsl:with-param name="term" select="'Horizontal Positional Accuracy Report'" />
338
- </xsl:call-template>
339
- </xsl:template>
340
-
341
- <xsl:template match="qhorizpa">
342
- <xsl:apply-templates />
343
- </xsl:template>
344
-
345
- <xsl:template match="horizpav">
346
- <xsl:call-template name="description">
347
- <xsl:with-param name="term" select="'Horizontal Positional Accuracy Value'" />
348
- </xsl:call-template>
349
- </xsl:template>
350
-
351
- <xsl:template match="horizpae">
352
- <xsl:call-template name="description">
353
- <xsl:with-param name="term" select="'Horizontal Positional Accuracy Explanation'" />
354
- </xsl:call-template>
355
- </xsl:template>
356
-
357
- <xsl:template match="vertaccr">
358
- <xsl:call-template name="description">
359
- <xsl:with-param name="term" select="'Vertical Positional Accuracy Report'" />
360
- </xsl:call-template>
361
- </xsl:template>
362
-
363
- <xsl:template match="qvertpa">
364
- <xsl:apply-templates />
365
- </xsl:template>
366
-
367
- <xsl:template match="vertaccv">
368
- <xsl:call-template name="description">
369
- <xsl:with-param name="term" select="'Vertical Positional Accuracy Value'" />
370
- </xsl:call-template>
371
- </xsl:template>
372
-
373
- <xsl:template match="vertacce">
374
- <xsl:call-template name="description">
375
- <xsl:with-param name="term" select="'Vertical Positional Accuracy Explanation'" />
376
- </xsl:call-template>
377
- </xsl:template>
378
-
379
- <xsl:template match="lineage/srcinfo">
380
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
381
- <xsl:text>Lineage Source Information</xsl:text>
382
- </xsl:element>
383
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
384
- <xsl:apply-templates />
385
- </xsl:element>
386
- </xsl:template>
387
-
388
- <xsl:template match="srccite/citeinfo">
389
- <xsl:apply-templates />
390
- </xsl:template>
391
-
392
- <xsl:template match="lineage/procstep">
393
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
394
- <xsl:text>Lineage Process Step</xsl:text>
395
- </xsl:element>
396
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
397
- <xsl:apply-templates />
398
- </xsl:element>
399
- </xsl:template>
400
-
401
- <xsl:template match="procdesc">
402
- <xsl:call-template name="description">
403
- <xsl:with-param name="term" select="'Process Description'" />
404
- </xsl:call-template>
405
- </xsl:template>
406
-
407
- <xsl:template match="srcused">
408
- <xsl:call-template name="description">
409
- <xsl:with-param name="term" select="'Source Used Citation Abbreviation'" />
410
- </xsl:call-template>
411
- </xsl:template>
412
-
413
- <xsl:template match="procdate">
414
- <xsl:call-template name="description">
415
- <xsl:with-param name="term" select="'Process Date'" />
416
- </xsl:call-template>
417
- </xsl:template>
418
-
419
- <xsl:template match="proctime">
420
- <xsl:call-template name="description">
421
- <xsl:with-param name="term" select="'Process Time'" />
422
- </xsl:call-template>
423
- </xsl:template>
424
-
425
- <xsl:template match="srcprod">
426
- <xsl:call-template name="description">
427
- <xsl:with-param name="term" select="'Source Produced Citation Abbreviation'" />
428
- </xsl:call-template>
429
- </xsl:template>
430
-
431
- <xsl:template match="proccont">
432
- </xsl:template>
433
-
434
- <xsl:template match="cloud">
435
- <xsl:call-template name="description">
436
- <xsl:with-param name="term" select="'Cloud Cover'" />
437
- </xsl:call-template>
438
- </xsl:template>
439
- <!-- End Data Quality Information -->
440
-
441
- <!-- Spatial Data Organization Information -->
442
- <xsl:template match="metadata/spdoinfo">
443
- <xsl:element name="{$heading-1}" use-attribute-sets="heading-1-attr">
444
- <xsl:text>Spatial Data Organization Information</xsl:text>
445
- </xsl:element>
446
- <xsl:element name="{$section-1}" use-attribute-sets="section-1-attr">
447
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
448
- <xsl:apply-templates />
449
- </xsl:element>
450
- </xsl:element>
451
- </xsl:template>
452
-
453
- <xsl:template match="indspref">
454
- <xsl:call-template name="description">
455
- <xsl:with-param name="term" select="'Indirect Spatial Reference'" />
456
- </xsl:call-template>
457
- </xsl:template>
458
-
459
- <xsl:template match="direct">
460
- <xsl:call-template name="description">
461
- <xsl:with-param name="term" select="'Direct Spatial Reference Method'" />
462
- </xsl:call-template>
463
- </xsl:template>
464
-
465
- <xsl:template match="sdtstype">
466
- <xsl:call-template name="description">
467
- <xsl:with-param name="term" select="'SDTS Point and Vector Object Type'" />
468
- </xsl:call-template>
469
- </xsl:template>
470
-
471
- <xsl:template match="ptvctcnt">
472
- <xsl:call-template name="description">
473
- <xsl:with-param name="term" select="'Point and Vector Object Count'" />
474
- </xsl:call-template>
475
- </xsl:template>
476
-
477
- <xsl:template match="vpflevel">
478
- <xsl:call-template name="description">
479
- <xsl:with-param name="term" select="'VPF Topology Level'" />
480
- </xsl:call-template>
481
- </xsl:template>
482
-
483
- <xsl:template match="vpftype">
484
- <xsl:call-template name="description">
485
- <xsl:with-param name="term" select="'VPF Point and Vector Object Type'" />
486
- </xsl:call-template>
487
- </xsl:template>
488
-
489
- <xsl:template match="rasttype">
490
- <xsl:call-template name="description">
491
- <xsl:with-param name="term" select="'Raster Object Type'" />
492
- </xsl:call-template>
493
- </xsl:template>
494
-
495
- <xsl:template match="rowcount">
496
- <xsl:call-template name="description">
497
- <xsl:with-param name="term" select="'Row Count'" />
498
- </xsl:call-template>
499
- </xsl:template>
500
-
501
- <xsl:template match="colcount">
502
- <xsl:call-template name="description">
503
- <xsl:with-param name="term" select="'Column Count'" />
504
- </xsl:call-template>
505
- </xsl:template>
506
-
507
- <xsl:template match="vrtcount">
508
- <xsl:call-template name="description">
509
- <xsl:with-param name="term" select="'Vertical Count'" />
510
- </xsl:call-template>
511
- </xsl:template>
512
- <!-- End Spatial Data Organization Information -->
513
-
514
-
515
- <!-- Spatial Reference Information -->
516
- <xsl:template match="metadata/spref">
517
- <xsl:element name="{$heading-1}" use-attribute-sets="heading-1-attr">
518
- <xsl:text>Spatial Reference Information</xsl:text>
519
- </xsl:element>
520
- <xsl:element name="{$section-1}" use-attribute-sets="section-1-attr">
521
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
522
- <xsl:apply-templates />
523
- </xsl:element>
524
- </xsl:element>
525
- </xsl:template>
526
-
527
- <xsl:template match="horizsys">
528
- <xsl:element name="{$heading-2}" use-attribute-sets="hdgn-2-attr">
529
- <xsl:text>Horizontal Coordinate System Definition</xsl:text>
530
- </xsl:element>
531
- <xsl:apply-templates />
532
- </xsl:template>
533
-
534
- <xsl:template match="geograph">
535
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
536
- <xsl:apply-templates />
537
- </xsl:element>
538
- </xsl:template>
539
-
540
- <xsl:template match="geodetic">
541
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
542
- <xsl:apply-templates />
543
- </xsl:element>
544
- </xsl:template>
545
-
546
- <xsl:template match="latres">
547
- <xsl:call-template name="description">
548
- <xsl:with-param name="term" select="'Latitude Resolution'" />
549
- </xsl:call-template>
550
- </xsl:template>
551
-
552
- <xsl:template match="longres">
553
- <xsl:call-template name="description">
554
- <xsl:with-param name="term" select="'Longitude Resolution'" />
555
- </xsl:call-template>
556
- </xsl:template>
557
-
558
- <xsl:template match="geogunit">
559
- <xsl:call-template name="description">
560
- <xsl:with-param name="term" select="'Geographic Coordinate Units'" />
561
- </xsl:call-template>
562
- </xsl:template>
563
-
564
- <xsl:template match="horizdn">
565
- <xsl:call-template name="description">
566
- <xsl:with-param name="term" select="'Horizontal Datum Name'" />
567
- </xsl:call-template>
568
- </xsl:template>
569
-
570
- <xsl:template match="ellips">
571
- <xsl:call-template name="description">
572
- <xsl:with-param name="term" select="'Ellipsoid Name'" />
573
- </xsl:call-template>
574
- </xsl:template>
575
-
576
- <xsl:template match="semiaxis">
577
- <xsl:call-template name="description">
578
- <xsl:with-param name="term" select="'Semi-major Axis'" />
579
- </xsl:call-template>
580
- </xsl:template>
581
-
582
- <xsl:template match="denflat">
583
- <xsl:call-template name="description">
584
- <xsl:with-param name="term" select="'Denominator of Flattening Ratio'" />
585
- </xsl:call-template>
586
- </xsl:template>
587
- <!-- End Spatial Reference Information -->
588
-
589
-
590
- <!-- Entity and Attribute Information -->
591
- <xsl:template match="metadata/eainfo">
592
- <xsl:element name="{$heading-1}" use-attribute-sets="heading-1-attr">
593
- <xsl:text>Entity and Attribute Information</xsl:text>
594
- </xsl:element>
595
- <xsl:element name="{$section-1}" use-attribute-sets="section-1">
596
- <xsl:apply-templates />
597
- </xsl:element>
598
- </xsl:template>
599
-
600
- <xsl:template match="detailed">
601
- <xsl:apply-templates />
602
- </xsl:template>
603
-
604
- <xsl:template match="overview">
605
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
606
- <xsl:apply-templates />
607
- </xsl:element>
608
- </xsl:template>
609
-
610
- <xsl:template match="enttyp">
611
- <xsl:element name="{$heading-2}" use-attribute-sets="heading-2-attr">
612
- <xsl:value-of select="enttypl" />
613
- </xsl:element>
614
- <xsl:apply-templates />
615
- </xsl:template>
616
-
617
- <xsl:template match="attr">
618
- <xsl:element name="{$section-2}" use-attribute-sets="section-2-attr">
619
- <xsl:element name="{$heading-3}" use-attribute-sets="heading-3-attr">
620
- <xsl:value-of select="attrlabl" />
621
- </xsl:element>
622
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
623
- <xsl:apply-templates />
624
- </xsl:element>
625
- </xsl:element>
626
- </xsl:template>
627
-
628
- <xsl:template match="attrdef">
629
- <xsl:call-template name="description">
630
- <xsl:with-param name="term" select="'Attribute Definition'" />
631
- </xsl:call-template>
632
- </xsl:template>
633
-
634
- <xsl:template match="attrdefs">
635
- <xsl:call-template name="description">
636
- <xsl:with-param name="term" select="'Attribute Definition Source'" />
637
- </xsl:call-template>
638
- </xsl:template>
639
-
640
- <xsl:template match="edom">
641
- <xsl:apply-templates />
642
- </xsl:template>
643
-
644
- <xsl:template match="edomv">
645
- <xsl:call-template name="description">
646
- <xsl:with-param name="term" select="'Enumerated Domain Value'" />
647
- </xsl:call-template>
648
- </xsl:template>
649
-
650
- <xsl:template match="edomvd">
651
- <xsl:call-template name="description">
652
- <xsl:with-param name="term" select="'Enumerated Domain Value Definition'" />
653
- </xsl:call-template>
654
- </xsl:template>
655
-
656
- <xsl:template match="edomvds">
657
- <xsl:call-template name="description">
658
- <xsl:with-param name="term" select="'Enumerated Domain Value Definition Source'" />
659
- </xsl:call-template>
660
- </xsl:template>
661
-
662
- <xsl:template match="eaover">
663
- <xsl:call-template name="description">
664
- <xsl:with-param name="term" select="'Entity and Attribute Overview'" />
665
- </xsl:call-template>
666
- </xsl:template>
667
-
668
- <xsl:template match="eadetcit">
669
- <xsl:call-template name="description">
670
- <xsl:with-param name="term" select="'Entity and Attribute Detail Citation'" />
671
- </xsl:call-template>
672
- </xsl:template>
673
- <!-- End Entity and Attribute Information -->
674
-
675
-
676
- <!-- Distribution Information -->
677
- <xsl:template match="metadata/distinfo">
678
- <xsl:element name="{$heading-1}" use-attribute-sets="heading-1-attr">
679
- <xsl:text>Distribution Information</xsl:text>
680
- </xsl:element>
681
- <xsl:element name="{$section-1}" use-attribute-sets="section-1-attr">
682
- <xsl:apply-templates />
683
- </xsl:element>
684
- </xsl:template>
685
-
686
- <xsl:template match="distrib">
687
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
688
- <xsl:apply-templates select="cntinfo" />
689
- </xsl:element>
690
- </xsl:template>
691
- <!-- End Distribution Information -->
692
-
693
-
694
- <!-- Metdata Reference Information -->
695
- <xsl:template match="metadata/metainfo">
696
- <xsl:element name="{$heading-1}" use-attribute-sets="heading-1-attr">
697
- <xsl:text>Metadata Reference Information</xsl:text>
698
- </xsl:element>
699
- <xsl:element name="{$section-1}" use-attribute-sets="section-1">
700
- <xsl:element name="{$list}" use-attribute-sets="list-attr">
701
- <xsl:apply-templates />
702
- </xsl:element>
703
- </xsl:element>
704
- </xsl:template>
705
-
706
- <xsl:template match="metd">
707
- <xsl:call-template name="description">
708
- <xsl:with-param name="term" select="'Metadata Date'" />
709
- </xsl:call-template>
710
- </xsl:template>
711
-
712
- <xsl:template match="metrd">
713
- <xsl:call-template name="description">
714
- <xsl:with-param name="term" select="'Metadata Review Date'" />
715
- </xsl:call-template>
716
- </xsl:template>
717
-
718
- <xsl:template match="metfrd">
719
- <xsl:call-template name="description">
720
- <xsl:with-param name="term" select="'Metadata Future Review Date'" />
721
- </xsl:call-template>
722
- </xsl:template>
723
-
724
- <xsl:template match="metc">
725
- <xsl:apply-templates select="cntinfo" />
726
- </xsl:template>
727
-
728
- <xsl:template match="metstdn">
729
- <xsl:call-template name="description">
730
- <xsl:with-param name="term" select="'Metadata Standard Name'" />
731
- </xsl:call-template>
732
- </xsl:template>
733
-
734
- <xsl:template match="metstdv">
735
- <xsl:call-template name="description">
736
- <xsl:with-param name="term" select="'Metadata Standard Version'" />
737
- </xsl:call-template>
738
- </xsl:template>
739
-
740
- <xsl:template match="mettc">
741
- <xsl:call-template name="description">
742
- <xsl:with-param name="term" select="'Metadata Time Convention'" />
743
- </xsl:call-template>
744
- </xsl:template>
745
-
746
- <xsl:template match="metac">
747
- <xsl:call-template name="description">
748
- <xsl:with-param name="term" select="'Metadata Access Constraints'" />
749
- </xsl:call-template>
750
- </xsl:template>
751
-
752
- <xsl:template match="metuc">
753
- <xsl:call-template name="description">
754
- <xsl:with-param name="term" select="'Metadata Use Constraints'" />
755
- </xsl:call-template>
756
- </xsl:template>
757
-
758
- <xsl:template match="metscs">
759
- <xsl:call-template name="description">
760
- <xsl:with-param name="term" select="'Metadata Security Classification System'" />
761
- </xsl:call-template>
762
- </xsl:template>
763
-
764
- <xsl:template match="metsc">
765
- <xsl:call-template name="description">
766
- <xsl:with-param name="term" select="'Metadata Security Classification'" />
767
- </xsl:call-template>
768
- </xsl:template>
769
-
770
- <xsl:template match="metshd">
771
- <xsl:call-template name="description">
772
- <xsl:with-param name="term" select="'Metadata Security Handling Description'" />
773
- </xsl:call-template>
774
- </xsl:template>
775
-
776
- <xsl:template match="metprof">
777
- <xsl:call-template name="description">
778
- <xsl:with-param name="term" select="'Profile Name'" />
779
- </xsl:call-template>
780
- </xsl:template>
781
- <!-- End Metadata Reference Information -->
782
-
783
-
784
- <!-- Time Period Information used by multiple sections -->
785
- <xsl:template match="timeinfo">
786
- <xsl:apply-templates />
787
- </xsl:template>
788
-
789
- <xsl:template match="sngdate/caldate">
790
- <xsl:call-template name="description">
791
- <xsl:with-param name="term" select="'Calendar Date'" />
792
- </xsl:call-template>
793
- </xsl:template>
794
-
795
- <xsl:template match="sngdate/time">
796
- <xsl:call-template name="description">
797
- <xsl:with-param name="term" select="'Time of Day'" />
798
- </xsl:call-template>
799
- </xsl:template>
800
- <!-- End Time Period Information -->
801
-
802
-
803
- <!-- Citation Information used by multiple sections -->
804
- <xsl:template match="citeinfo">
805
- <xsl:apply-templates />
806
- </xsl:template>
807
-
808
- <xsl:template match="origin">
809
- <xsl:call-template name="description">
810
- <xsl:with-param name="term" select="'Originator'" />
811
- </xsl:call-template>
812
- </xsl:template>
813
-
814
- <xsl:template match="pubdate">
815
- <xsl:call-template name="description">
816
- <xsl:with-param name="term" select="'Publication Date'" />
817
- </xsl:call-template>
818
- </xsl:template>
819
-
820
- <xsl:template match="pubtime">
821
- <xsl:call-template name="description">
822
- <xsl:with-param name="term" select="'Publication Time'" />
823
- </xsl:call-template>
824
- </xsl:template>
825
-
826
- <xsl:template match="title">
827
- <xsl:call-template name="description">
828
- <xsl:with-param name="term" select="'Title'" />
829
- </xsl:call-template>
830
- </xsl:template>
831
-
832
- <xsl:template match="edition">
833
- <xsl:call-template name="description">
834
- <xsl:with-param name="term" select="'Edition'" />
835
- </xsl:call-template>
836
- </xsl:template>
837
-
838
- <xsl:template match="geoform">
839
- <xsl:call-template name="description">
840
- <xsl:with-param name="term" select="'Geospatial Data Presentation Form'" />
841
- </xsl:call-template>
842
- </xsl:template>
843
-
844
- <xsl:template match="serinfo/sername">
845
- <xsl:call-template name="description">
846
- <xsl:with-param name="term" select="'Series Name'" />
847
- </xsl:call-template>
848
- </xsl:template>
849
-
850
- <xsl:template match="serinfo/issue">
851
- <xsl:call-template name="description">
852
- <xsl:with-param name="term" select="'Issue Identification'" />
853
- </xsl:call-template>
854
- </xsl:template>
855
-
856
- <xsl:template match="pubinfo/pubplace">
857
- <xsl:call-template name="description">
858
- <xsl:with-param name="term" select="'Publication Place'" />
859
- </xsl:call-template>
860
- </xsl:template>
861
-
862
- <xsl:template match="pubinfo/publish">
863
- <xsl:call-template name="description">
864
- <xsl:with-param name="term" select="'Publisher'" />
865
- </xsl:call-template>
866
- </xsl:template>
867
-
868
- <xsl:template match="othercit">
869
- <xsl:call-template name="description">
870
- <xsl:with-param name="term" select="'Other Citation Details'" />
871
- </xsl:call-template>
872
- </xsl:template>
873
-
874
- <xsl:template match="onlink">
875
- <xsl:call-template name="description-link">
876
- <xsl:with-param name="term" select="'Online Linkage'" />
877
- </xsl:call-template>
878
- </xsl:template>
879
- <!-- End Citation Information -->
880
-
881
-
882
- <!-- Contact Information used by multiple sections -->
883
- <xsl:template match="cntinfo">
884
- <xsl:apply-templates />
885
- </xsl:template>
886
-
887
- <xsl:template match="cntperp/cntper|cntorgp/cntper">
888
- <xsl:call-template name="description">
889
- <xsl:with-param name="term" select="'Person'" />
890
- </xsl:call-template>
891
- </xsl:template>
892
-
893
- <xsl:template match="cntperp/cntorg|cntorgp/cntorg">
894
- <xsl:call-template name="description">
895
- <xsl:with-param name="term" select="'Organization'" />
896
- </xsl:call-template>
897
- </xsl:template>
898
-
899
- <xsl:template match="cntpos">
900
- <xsl:call-template name="description">
901
- <xsl:with-param name="term" select="'Position'" />
902
- </xsl:call-template>
903
- </xsl:template>
904
-
905
- <xsl:template match="cntaddr">
906
- <xsl:element name="{$key}" use-attribute-sets="key-attr">
907
- <xsl:attribute name="title">Address Type</xsl:attribute>
908
- <xsl:text>Address Type</xsl:text>
909
- </xsl:element>
910
- <xsl:element name="{$value}" use-attribute-sets="value-attr">
911
- <xsl:value-of select="addrtype" />
912
- </xsl:element>
913
- <xsl:element name="{$key}" use-attribute-sets="key-attr">
914
- <xsl:attribute name="title">Address</xsl:attribute>
915
- </xsl:element>
916
- <xsl:element name="{$value}" use-attribute-sets="value-attr">
917
- <address>
918
- <xsl:value-of select="address" /><br />
919
- <xsl:value-of select="city" /><xsl:text>, </xsl:text>
920
- <xsl:value-of select="state" /><xsl:text> </xsl:text>
921
- <xsl:value-of select="postal" /><br />
922
- <xsl:value-of select="country" />
923
- </address>
924
- </xsl:element>
925
- </xsl:template>
926
-
927
- <xsl:template match="cntvoice">
928
- <xsl:call-template name="description">
929
- <xsl:with-param name="term" select="'Phone'" />
930
- </xsl:call-template>
931
- </xsl:template>
932
-
933
- <xsl:template match="cnttdd">
934
- <xsl:call-template name="description">
935
- <xsl:with-param name="term" select="'TDD/TTY'" />
936
- </xsl:call-template>
937
- </xsl:template>
938
-
939
- <xsl:template match="cntfax">
940
- <xsl:call-template name="description">
941
- <xsl:with-param name="term" select="'Fax'" />
942
- </xsl:call-template>
943
- </xsl:template>
944
-
945
- <xsl:template match="cntemail">
946
- <xsl:call-template name="description-email">
947
- <xsl:with-param name="term" select="'Email'" />
948
- </xsl:call-template>
949
- </xsl:template>
950
-
951
- <xsl:template match="hours">
952
- <xsl:call-template name="description">
953
- <xsl:with-param name="term" select="'Hours of Service'" />
954
- </xsl:call-template>
955
- </xsl:template>
956
-
957
- <xsl:template match="cntinst">
958
- <xsl:call-template name="description">
959
- <xsl:with-param name="term" select="'Contact Instructions'" />
960
- </xsl:call-template>
961
- </xsl:template>
962
- <!-- End Citation Information -->
963
-
964
-
965
- <!-- Named templates used throughout stylesheet to generate k/v pairs -->
966
- <xsl:template name="description">
967
- <xsl:param name="term" />
968
- <xsl:if test="normalize-space(.) != ''">
969
- <xsl:element name="{$key}" use-attribute-sets="key-attr">
970
- <xsl:attribute name="title">
971
- <xsl:value-of select="$term" />
972
- </xsl:attribute>
973
- <xsl:value-of select="$term" />
974
- </xsl:element>
975
- <xsl:element name="{$value}" use-attribute-sets="value-attr">
92
+ <xsl:for-each select="descrip/supplinf">
93
+ <dt>Supplemental Information</dt>
94
+ <dd>
976
95
  <xsl:value-of select="." />
977
- </xsl:element>
978
- </xsl:if>
979
- </xsl:template>
980
-
981
- <xsl:template name="description-link">
982
- <xsl:param name="term" />
983
- <xsl:if test="normalize-space(.) != ''">
984
- <xsl:choose>
985
- <xsl:when test="starts-with(normalize-space(.), 'http')">
986
- <xsl:element name="{$key}" use-attribute-sets="key-attr">
987
- <xsl:attribute name="title">
988
- <xsl:value-of select="$term" />
989
- </xsl:attribute>
990
- <xsl:value-of select="$term" />
991
- </xsl:element>
992
- <xsl:element name="{$value}" use-attribute-sets="value-attr">
993
- <xsl:element name="a">
994
- <xsl:attribute name="href">
995
- <xsl:value-of select="." />
996
- </xsl:attribute>
997
- <xsl:value-of select="." />
998
- </xsl:element>
999
- </xsl:element>
96
+ </dd>
97
+ </xsl:for-each>
98
+ <xsl:for-each select="timeperd">
99
+ <dt>Temporal Extent</dt>
100
+ <dd>
101
+ <dl>
102
+ <xsl:for-each select="current">
103
+ <dt>Currentness Reference</dt>
104
+ <dd>
105
+ <xsl:value-of select="." />
106
+ </dd>
107
+ </xsl:for-each>
108
+ <xsl:choose>
109
+ <xsl:when test="timeinfo/sngdate">
110
+ <dt>Time Instant</dt>
111
+ <dd>
112
+ <xsl:value-of select="timeinfo/sngdate/caldate" />
113
+ </dd>
114
+ </xsl:when>
115
+ <xsl:when test="timeinfo/rngdates">
116
+ <dt>Time Period</dt>
117
+ <dd>
118
+ <dl>
119
+ <dt>Beginning</dt>
120
+ <dd>
121
+ <xsl:value-of select="timeinfo/rngdates/begdate" />
122
+ </dd>
123
+ <dt>End</dt>
124
+ <dd>
125
+ <xsl:value-of select="timeinfo/rngdates/enddate" />
126
+ </dd>
127
+ </dl>
128
+ </dd>
129
+ </xsl:when>
130
+ </xsl:choose>
131
+ </dl>
132
+ </dd>
133
+ </xsl:for-each>
134
+ <xsl:for-each select="spdom/bounding">
135
+ <dt>Bounding Box</dt>
136
+ <dd>
137
+ <dl>
138
+ <dt>West</dt>
139
+ <dd>
140
+ <xsl:value-of select="westbc" />
141
+ </dd>
142
+ <dt>East</dt>
143
+ <dd>
144
+ <xsl:value-of select="eastbc" />
145
+ </dd>
146
+ <dt>North</dt>
147
+ <dd>
148
+ <xsl:value-of select="northbc" />
149
+ </dd>
150
+ <dt>South</dt>
151
+ <dd>
152
+ <xsl:value-of select="southbc" />
153
+ </dd>
154
+ </dl>
155
+ </dd>
156
+ </xsl:for-each>
157
+ <xsl:for-each select="keywords/theme">
158
+ <xsl:choose>
159
+ <xsl:when test="themekt/text()='ISO 19115 Topic Category'">
160
+ <dt>ISO Topic Category</dt>
161
+ <xsl:for-each select="themekey">
162
+ <dd>
163
+ <xsl:value-of select="." />
164
+ </dd>
165
+ </xsl:for-each>
1000
166
  </xsl:when>
1001
167
  <xsl:otherwise>
1002
- <xsl:call-template name="description">
1003
- <xsl:with-param name="term" select="$term" />
1004
- </xsl:call-template>
168
+ <dt>Theme Keyword</dt>
169
+ <xsl:for-each select="ancestor-or-self::*/themekey">
170
+ <dd>
171
+ <xsl:value-of select="." />
172
+ </dd>
173
+ <xsl:if test="position()=last()">
174
+ <dd>
175
+ <dl>
176
+ <dt>Theme Keyword Thesaurus</dt>
177
+ <dd>
178
+ <xsl:value-of select="ancestor-or-self::*/themekt" />
179
+ </dd>
180
+ </dl>
181
+ </dd>
182
+ </xsl:if>
183
+ </xsl:for-each>
1005
184
  </xsl:otherwise>
1006
- </xsl:choose>
1007
- </xsl:if>
1008
- </xsl:template>
1009
-
1010
- <xsl:template name="description-email">
1011
- <xsl:param name="term" />
1012
- <xsl:if test="normalize-space(.) != ''">
1013
- <xsl:element name="{$key}" use-attribute-sets="key-attr">
1014
- <xsl:attribute name="title">
1015
- <xsl:value-of select="$term" />
1016
- </xsl:attribute>
1017
- <xsl:value-of select="$term" />
1018
- </xsl:element>
1019
- <xsl:element name="{$value}" use-attribute-sets="value-attr">
1020
- <xsl:element name="a">
1021
- <xsl:attribute name="href">
1022
- <xsl:value-of select="concat('mailto:', .)" />
1023
- </xsl:attribute>
1024
- <xsl:value-of select="." />
1025
- </xsl:element>
1026
- </xsl:element>
1027
- </xsl:if>
1028
- </xsl:template>
1029
-
1030
-
1031
- <!-- Suppress unknown elements -->
1032
- <xsl:template match="text()"></xsl:template>
1033
-
1034
- </xsl:stylesheet>
185
+ </xsl:choose>
186
+ </xsl:for-each>
187
+ <dt>Place Keyword</dt>
188
+ <xsl:for-each select="keywords/place/placekey">
189
+ <dd>
190
+ <xsl:value-of select="." />
191
+ </dd>
192
+ <xsl:if test="position()=last()">
193
+ <dd>
194
+ <dl>
195
+ <dt>Place Keyword Thesaurus</dt>
196
+ <dd>
197
+ <xsl:value-of select="ancestor-or-self::*/placekt" />
198
+ </dd>
199
+ </dl>
200
+ </dd>
201
+ </xsl:if>
202
+ </xsl:for-each>
203
+ <xsl:for-each select="accconst">
204
+ <dt>Access Restrictions</dt>
205
+ <dd>
206
+ <xsl:value-of select="." />
207
+ </dd>
208
+ </xsl:for-each>
209
+ <xsl:for-each select="useconst">
210
+ <dt>Use Restrictions</dt>
211
+ <dd>
212
+ <xsl:value-of select="." />
213
+ </dd>
214
+ </xsl:for-each>
215
+ <xsl:for-each select="status/progress">
216
+ <dt>Status</dt>
217
+ <dd>
218
+ <xsl:value-of select="." />
219
+ </dd>
220
+ </xsl:for-each>
221
+ <xsl:for-each select="status/update">
222
+ <dt>Maintenance and Update Frequency</dt>
223
+ <dd>
224
+ <xsl:value-of select="." />
225
+ </dd>
226
+ </xsl:for-each>
227
+ <xsl:for-each select="ptcontac">
228
+ <dt>Point of Contact</dt>
229
+ <dd>
230
+ <dl>
231
+ <xsl:for-each select="cntinfo/cntperp/cntper">
232
+ <dt>Contact Person</dt>
233
+ </xsl:for-each>
234
+ <xsl:for-each select="cntinfo/cntorgp/cntorg">
235
+ <dt>Contact Organization</dt>
236
+ <dd>
237
+ <xsl:value-of select="." />
238
+ </dd>
239
+ </xsl:for-each>
240
+ <xsl:for-each select="cntpos">
241
+ <dt>Contact Position</dt>
242
+ <dd>
243
+ <xsl:value-of select="." />
244
+ </dd>
245
+ </xsl:for-each>
246
+ <xsl:for-each select="cntinfo/cntaddr/address">
247
+ <dt>Delivery Point</dt>
248
+ <dd>
249
+ <xsl:value-of select="." />
250
+ </dd>
251
+ </xsl:for-each>
252
+ <xsl:for-each select="cntinfo/cntaddr/city">
253
+ <dt>City</dt>
254
+ <dd>
255
+ <xsl:value-of select="." />
256
+ </dd>
257
+ </xsl:for-each>
258
+ <xsl:for-each select="cntinfo/cntaddr/state">
259
+ <dt>State</dt>
260
+ <dd>
261
+ <xsl:value-of select="." />
262
+ </dd>
263
+ </xsl:for-each>
264
+ <xsl:for-each select="cntinfo/cntaddr/postal">
265
+ <dt>Postal Code</dt>
266
+ <dd>
267
+ <xsl:value-of select="." />
268
+ </dd>
269
+ </xsl:for-each>
270
+ <xsl:for-each select="cntinfo/cntaddr/country">
271
+ <dt>Country</dt>
272
+ <dd>
273
+ <xsl:value-of select="." />
274
+ </dd>
275
+ </xsl:for-each>
276
+ <xsl:for-each select="cntvoice">
277
+ <dt>Contact Telephone</dt>
278
+ <dd>
279
+ <xsl:value-of select="." />
280
+ </dd>
281
+ </xsl:for-each>
282
+ <xsl:for-each select="cntfax">
283
+ <dt>Contact Facsimile Telephone</dt>
284
+ <dd>
285
+ <xsl:value-of select="." />
286
+ </dd>
287
+ </xsl:for-each>
288
+ <xsl:for-each select="cntemail">
289
+ <dt>Contact Electronic Mail Address</dt>
290
+ <dd>
291
+ <xsl:value-of select="." />
292
+ </dd>
293
+ </xsl:for-each>
294
+ <xsl:for-each select="hours">
295
+ <dt>Hours of Service</dt>
296
+ <dd>
297
+ <xsl:value-of select="." />
298
+ </dd>
299
+ </xsl:for-each>
300
+ <xsl:for-each select="cntinst">
301
+ <dt>Contact Instructions</dt>
302
+ <dd>
303
+ <xsl:value-of select="." />
304
+ </dd>
305
+ </xsl:for-each>
306
+ </dl>
307
+ </dd>
308
+ </xsl:for-each>
309
+ <xsl:for-each select="datacred">
310
+ <dt>Credit</dt>
311
+ <dd>
312
+ <xsl:value-of select="." />
313
+ </dd>
314
+ </xsl:for-each>
315
+ <xsl:for-each select="native">
316
+ <dt>Native Data Set Environment</dt>
317
+ <dd>
318
+ <xsl:value-of select="." />
319
+ </dd>
320
+ </xsl:for-each>
321
+ <xsl:for-each select="citation/citeinfo/lworkcit">
322
+ <dt>Collection</dt>
323
+ <dd>
324
+ <xsl:apply-templates select="citeinfo" />
325
+ </dd>
326
+ </xsl:for-each>
327
+ <xsl:for-each select="crossref">
328
+ <dt>Cross-Reference</dt>
329
+ <dd>
330
+ <xsl:apply-templates select="citeinfo" />
331
+ </dd>
332
+ </xsl:for-each>
333
+ </dl>
334
+ </dd>
335
+ </dl>
336
+ </div>
337
+ </xsl:template>
338
+ <!-- Data Quality -->
339
+ <xsl:template match="dataqual">
340
+ <div id="fgdc-data-quality-info">
341
+ <dl>
342
+ <dt>Data Quality Information</dt>
343
+ <dd>
344
+ <dl>
345
+ <xsl:for-each select="attracc/attraccr">
346
+ <dt>Attribute Accuracy Report</dt>
347
+ <dd>
348
+ <xsl:value-of select="." />
349
+ </dd>
350
+ </xsl:for-each>
351
+ <xsl:for-each select="attracc/qattracc">
352
+ <dt>Quantitative Attribute Accuracy Assessment</dt>
353
+ <dd>
354
+ <dl>
355
+ <xsl:for-each select="attracc/attraccv">
356
+ <dt>Attribute Accuracy Value</dt>
357
+ <dd>
358
+ <xsl:value-of select="." />
359
+ </dd>
360
+ </xsl:for-each>
361
+ <xsl:for-each select="attracc/attracce">
362
+ <dt>Attribute Accuracy Explanation</dt>
363
+ <dd>
364
+ <xsl:value-of select="." />
365
+ </dd>
366
+ </xsl:for-each>
367
+ </dl>
368
+ </dd>
369
+ </xsl:for-each>
370
+ <xsl:for-each select="logic">
371
+ <dt>Logical Consistency Report</dt>
372
+ <dd>
373
+ <xsl:value-of select="." />
374
+ </dd>
375
+ </xsl:for-each>
376
+ <xsl:for-each select="complete">
377
+ <dt>Completeness Report</dt>
378
+ <dd>
379
+ <xsl:value-of select="." />
380
+ </dd>
381
+ </xsl:for-each>
382
+ <xsl:for-each select="posacc/horizpa/horizpar">
383
+ <dt>Horizontal Positional Accuracy Report</dt>
384
+ <dd>
385
+ <xsl:value-of select="." />
386
+ </dd>
387
+ </xsl:for-each>
388
+ <xsl:for-each select="posacc/horizpa/qhorizpa">
389
+ <dt>Quantitative Horizontal Positional Accuracy Assessment</dt>
390
+ <dd>
391
+ <dl>
392
+ <xsl:for-each select="posacc/horizpa/horizpav">
393
+ <dt>Horizontal Positional Accuracy Value</dt>
394
+ <dd>
395
+ <xsl:value-of select="." />
396
+ </dd>
397
+ </xsl:for-each>
398
+ <xsl:for-each select="posacc/horizpa/horizpae">
399
+ <dt>Horizontal Positional Accuracy Explanation</dt>
400
+ <dd>
401
+ <xsl:value-of select="." />
402
+ </dd>
403
+ </xsl:for-each>
404
+ </dl>
405
+ </dd>
406
+ </xsl:for-each>
407
+ <xsl:for-each select="vertacc/vertaccr">
408
+ <dt>Vertical Positional Accuracy Report</dt>
409
+ <dd>
410
+ <xsl:value-of select="." />
411
+ </dd>
412
+ </xsl:for-each>
413
+ <xsl:for-each select="vertacc/qvertpa">
414
+ <dt>Quantitative Vertical Positional Accuracy Assessment</dt>
415
+ <dd>
416
+ <dl>
417
+ <xsl:for-each select="vertacc/vertaccv">
418
+ <dt>Vertical Positional Accuracy Value</dt>
419
+ <dd>
420
+ <xsl:value-of select="." />
421
+ </dd>
422
+ </xsl:for-each>
423
+ <xsl:for-each select="vertacc/vertacce">
424
+ <dt>Vertical Positional Accuracy Explanation</dt>
425
+ <dd>
426
+ <xsl:value-of select="." />
427
+ </dd>
428
+ </xsl:for-each>
429
+ </dl>
430
+ </dd>
431
+ </xsl:for-each>
432
+ <xsl:for-each select="lineage">
433
+ <dt>Lineage</dt>
434
+ <xsl:for-each select="srcinfo">
435
+ <dd>
436
+ <dl>
437
+ <xsl:for-each select="srccite">
438
+ <dt>Source</dt>
439
+ <dd>
440
+ <dl>
441
+ <xsl:apply-templates select="citeinfo" />
442
+ <xsl:for-each select="ancestor-or-self::*/srcscale">
443
+ <dt>Source Scale Denominator</dt>
444
+ <dd>
445
+ <xsl:value-of select="." />
446
+ </dd>
447
+ </xsl:for-each>
448
+ <xsl:for-each select="ancestor-or-self::*/typesrc">
449
+ <dt>Type of Source Media</dt>
450
+ <dd>
451
+ <xsl:value-of select="." />
452
+ </dd>
453
+ </xsl:for-each>
454
+ <xsl:for-each select="ancestor-or-self::*/srctime">
455
+ <dt>Source Temporal Extent</dt>
456
+ <dd>
457
+ <dl>
458
+ <dd>
459
+ <xsl:apply-templates select="timeinfo" />
460
+ </dd>
461
+ <xsl:for-each select="srccurr">
462
+ <dt>Source Currentness Reference</dt>
463
+ <dd>
464
+ <xsl:value-of select="." />
465
+ </dd>
466
+ </xsl:for-each>
467
+ </dl>
468
+ </dd>
469
+ </xsl:for-each>
470
+ </dl>
471
+ </dd>
472
+ </xsl:for-each>
473
+ </dl>
474
+ <xsl:for-each select="procstep">
475
+ <dt>Process Step</dt>
476
+ <dd>
477
+ <dl>
478
+ <xsl:for-each select="procdesc">
479
+ <dt>Description</dt>
480
+ <dd>
481
+ <xsl:value-of select="." />
482
+ </dd>
483
+ </xsl:for-each>
484
+ <xsl:for-each select="srcused">
485
+ <dt>Source Used Citation Abbreviation</dt>
486
+ <dd>
487
+ <xsl:value-of select="." />
488
+ </dd>
489
+ </xsl:for-each>
490
+ <xsl:for-each select="procdate">
491
+ <dt>Process Date</dt>
492
+ <dd>
493
+ <xsl:value-of select="." />
494
+ </dd>
495
+ </xsl:for-each>
496
+ <xsl:for-each select="proctime">
497
+ <dt>Process Time</dt>
498
+ <dd>
499
+ <xsl:value-of select="." />
500
+ </dd>
501
+ </xsl:for-each>
502
+ <xsl:for-each select="srcprod">
503
+ <dt>Source Produced Citation Abbreviation</dt>
504
+ <dd>
505
+ <xsl:value-of select="." />
506
+ </dd>
507
+ </xsl:for-each>
508
+ <xsl:for-each select="proccont">
509
+ <dt>Process Contact</dt>
510
+ <dd>
511
+ <dl>
512
+ <xsl:apply-templates select="cntinfo" />
513
+ </dl>
514
+ </dd>
515
+ </xsl:for-each>
516
+ </dl>
517
+ </dd>
518
+ </xsl:for-each>
519
+ </dd>
520
+ </xsl:for-each>
521
+ </xsl:for-each>
522
+ </dl>
523
+ </dd>
524
+ </dl>
525
+ </div>
526
+ </xsl:template>
527
+ <!-- Spatial Data Organization -->
528
+ <xsl:template match="spdoinfo">
529
+ <div id="fgdc-spatialdataorganization-info">
530
+ <dl>
531
+ <dt>Spatial Data Organization Information</dt>
532
+ <dd>
533
+ <dl>
534
+ <xsl:for-each select="indspref">
535
+ <dt>Indirect Spatial Reference Method</dt>
536
+ <dd>
537
+ <xsl:value-of select="." />
538
+ </dd>
539
+ </xsl:for-each>
540
+ <xsl:for-each select="direct">
541
+ <dt>Direct Spatial Reference Method</dt>
542
+ <dd>
543
+ <xsl:value-of select="." />
544
+ </dd>
545
+ </xsl:for-each>
546
+ <xsl:for-each select="ptvctinf">
547
+ <dt>Point and Vector Object Information</dt>
548
+ <dd>
549
+ <dl>
550
+ <xsl:for-each select="sdtsterm">
551
+ <dt>SDTS Terms Description</dt>
552
+ <dd>
553
+ <dl>
554
+ <xsl:for-each select="sdtstype">
555
+ <dt>SDTS Point and Vector Object Type</dt>
556
+ <dd>
557
+ <xsl:value-of select="." />
558
+ </dd>
559
+ </xsl:for-each>
560
+ <xsl:for-each select="ptvctcnt">
561
+ <dt>Point and Vector Object Count</dt>
562
+ <dd>
563
+ <xsl:value-of select="." />
564
+ </dd>
565
+ </xsl:for-each>
566
+ </dl>
567
+ </dd>
568
+ </xsl:for-each>
569
+ <xsl:for-each select="vpfterm">
570
+ <dt>VPF Terms Description</dt>
571
+ <dd>
572
+ <dl>
573
+ <xsl:for-each select="vpflevel">
574
+ <dt>VPF Topology Level</dt>
575
+ <dd>
576
+ <xsl:value-of select="." />
577
+ </dd>
578
+ </xsl:for-each>
579
+ <xsl:for-each select="vpfinfo">
580
+ <dt>VPF Point and Vector Object Information</dt>
581
+ <dd>
582
+ <dl>
583
+ <xsl:for-each select="vpftype">
584
+ <dt>VPF Point and Vector Object Type</dt>
585
+ <dd>
586
+ <xsl:value-of select="." />
587
+ </dd>
588
+ </xsl:for-each>
589
+ <xsl:for-each select="ptvctcnt">
590
+ <dt>Point and Vector Object Count</dt>
591
+ <dd>
592
+ <xsl:value-of select="." />
593
+ </dd>
594
+ </xsl:for-each>
595
+ </dl>
596
+ </dd>
597
+ </xsl:for-each>
598
+ </dl>
599
+ </dd>
600
+ </xsl:for-each>
601
+ </dl>
602
+ </dd>
603
+ </xsl:for-each>
604
+ <xsl:for-each select="rastinfo">
605
+ <dt>Raster Object Information</dt>
606
+ <dd>
607
+ <dl>
608
+ <xsl:for-each select="rasttype">
609
+ <dt>Raster Object Type</dt>
610
+ <dd>
611
+ <xsl:value-of select="." />
612
+ </dd>
613
+ </xsl:for-each>
614
+ <xsl:for-each select="rowcount">
615
+ <dt>Row Count</dt>
616
+ <dd>
617
+ <xsl:value-of select="." />
618
+ </dd>
619
+ </xsl:for-each>
620
+ <xsl:for-each select="colcount">
621
+ <dt>Column Count</dt>
622
+ <dd>
623
+ <xsl:value-of select="." />
624
+ </dd>
625
+ </xsl:for-each>
626
+ <xsl:for-each select="vrtcount">
627
+ <dt>Vertical Count</dt>
628
+ <dd>
629
+ <xsl:value-of select="." />
630
+ </dd>
631
+ </xsl:for-each>
632
+ </dl>
633
+ </dd>
634
+ </xsl:for-each>
635
+ </dl>
636
+ </dd>
637
+ </dl>
638
+ </div>
639
+ </xsl:template>
640
+ <!-- Spatial Reference -->
641
+ <xsl:template match="spref">
642
+ <div id="fgdc-spatialreference-info">
643
+ <dl>
644
+ <dt>Spatial Reference Information</dt>
645
+ <dd>
646
+ <dl>
647
+ <xsl:for-each select="horizsys">
648
+ <dt>Horizontal Coordinate System Definition</dt>
649
+ <dd>
650
+ <dl>
651
+ <xsl:for-each select="geograph">
652
+ <dt>Geographic</dt>
653
+ <dd>
654
+ <dl>
655
+ <xsl:for-each select="latres">
656
+ <dt>Latitude Resolution</dt>
657
+ <dd>
658
+ <xsl:value-of select="." />
659
+ </dd>
660
+ </xsl:for-each>
661
+ <xsl:for-each select="longres">
662
+ <dt>Longitude Resolution</dt>
663
+ <dd>
664
+ <xsl:value-of select="." />
665
+ </dd>
666
+ </xsl:for-each>
667
+ <xsl:for-each select="geogunit">
668
+ <dt>Geographic Coordinate Units</dt>
669
+ <dd>
670
+ <xsl:value-of select="." />
671
+ </dd>
672
+ </xsl:for-each>
673
+ </dl>
674
+ </dd>
675
+ </xsl:for-each>
676
+ <xsl:for-each select="planar">
677
+ <dt>Planar</dt>
678
+ <dd>
679
+ <dl>
680
+ <xsl:for-each select="mapproj">
681
+ <dt>Map Projection</dt>
682
+ <dd>
683
+ <dl>
684
+ <xsl:for-each select="mapprojn">
685
+ <dt>Map Projection Name</dt>
686
+ <dd>
687
+ <xsl:value-of select="." />
688
+ </dd>
689
+ </xsl:for-each>
690
+ <xsl:for-each select="albers">
691
+ <dt>Albers Conical Equal Area</dt>
692
+ <dd>
693
+ <xsl:apply-templates select="." />
694
+ </dd>
695
+ </xsl:for-each>
696
+ <xsl:for-each select="azimequi">
697
+ <dt>Azimuthal Equidistant</dt>
698
+ <dd>
699
+ <xsl:apply-templates select="." />
700
+ </dd>
701
+ </xsl:for-each>
702
+ <xsl:for-each select="equicon">
703
+ <dt>Equidistant Conic</dt>
704
+ <dd>
705
+ <xsl:apply-templates select="." />
706
+ </dd>
707
+ </xsl:for-each>
708
+ <xsl:for-each select="equirect">
709
+ <dt>Equirectangular</dt>
710
+ <dd>
711
+ <xsl:apply-templates select="." />
712
+ </dd>
713
+ </xsl:for-each>
714
+ <xsl:for-each select="gvnsp">
715
+ <dt>General Vertical Near-sided Perspective</dt>
716
+ <dd>
717
+ <xsl:apply-templates select="." />
718
+ </dd>
719
+ </xsl:for-each>
720
+ <xsl:for-each select="gnomonic">
721
+ <dt>Gnomonic</dt>
722
+ <dd>
723
+ <xsl:apply-templates select="." />
724
+ </dd>
725
+ </xsl:for-each>
726
+ <xsl:for-each select="lamberta">
727
+ <dt>Lambert Azimuthal Equal Area</dt>
728
+ <dd>
729
+ <xsl:apply-templates select="." />
730
+ </dd>
731
+ </xsl:for-each>
732
+ <xsl:for-each select="lambertc">
733
+ <dt>Lambert Conformal Conic</dt>
734
+ <dd>
735
+ <xsl:apply-templates select="." />
736
+ </dd>
737
+ </xsl:for-each>
738
+ <xsl:for-each select="mercator">
739
+ <dt>Mercator</dt>
740
+ <dd>
741
+ <xsl:apply-templates select="." />
742
+ </dd>
743
+ </xsl:for-each>
744
+ <xsl:for-each select="miller">
745
+ <dt>Miller Cylindrical</dt>
746
+ <dd>
747
+ <xsl:apply-templates select="." />
748
+ </dd>
749
+ </xsl:for-each>
750
+ <xsl:for-each select="obqmerc">
751
+ <dt>Oblique Mercator</dt>
752
+ <dd>
753
+ <xsl:apply-templates select="." />
754
+ </dd>
755
+ </xsl:for-each>
756
+ <xsl:for-each select="orthogr">
757
+ <dt>Orthographic</dt>
758
+ <dd>
759
+ <xsl:apply-templates select="." />
760
+ </dd>
761
+ </xsl:for-each>
762
+ <xsl:for-each select="polarst">
763
+ <dt>Polar Stereographic</dt>
764
+ <dd>
765
+ <xsl:apply-templates select="." />
766
+ </dd>
767
+ </xsl:for-each>
768
+ <xsl:for-each select="polycon">
769
+ <dt>Polyconic</dt>
770
+ <dd>
771
+ <xsl:apply-templates select="." />
772
+ </dd>
773
+ </xsl:for-each>
774
+ <xsl:for-each select="sinusoid">
775
+ <dt>Sinusoidal</dt>
776
+ <dd>
777
+ <xsl:apply-templates select="." />
778
+ </dd>
779
+ </xsl:for-each>
780
+ <xsl:for-each select="stereo">
781
+ <dt>Stereographic</dt>
782
+ <dd>
783
+ <xsl:apply-templates select="." />
784
+ </dd>
785
+ </xsl:for-each>
786
+ <xsl:for-each select="transmer">
787
+ <dt>Transverse Mercator</dt>
788
+ <dd>
789
+ <xsl:apply-templates select="." />
790
+ </dd>
791
+ </xsl:for-each>
792
+ <xsl:for-each select="vdgrin">
793
+ <dt>van der Grinten</dt>
794
+ <dd>
795
+ <xsl:apply-templates select="." />
796
+ </dd>
797
+ </xsl:for-each>
798
+ <xsl:for-each select="otherprj">
799
+ <dt>Other Projection's Definition</dt>
800
+ <dd>
801
+ <xsl:value-of select="." />
802
+ </dd>
803
+ </xsl:for-each>
804
+ </dl>
805
+ </dd>
806
+ </xsl:for-each>
807
+ <xsl:for-each select="gridsys">
808
+ <dt>Grid Coordinate System</dt>
809
+ <dd>
810
+ <dl>
811
+ <xsl:for-each select="gridsysn">
812
+ <dt>Grid Coordinate System Name</dt>
813
+ <dd>
814
+ <xsl:value-of select="." />
815
+ </dd>
816
+ </xsl:for-each>
817
+ <xsl:for-each select="utm">
818
+ <dt>Universal Transverse Mercator</dt>
819
+ <dd>
820
+ <dl>
821
+ <xsl:for-each select="utmzone">
822
+ <dt>UTM Zone Number</dt>
823
+ <dd>
824
+ <xsl:value-of select="." />
825
+ </dd>
826
+ </xsl:for-each>
827
+ <xsl:for-each select="transmer">
828
+ <dt>Transverse Mercator</dt>
829
+ </xsl:for-each>
830
+ <xsl:apply-templates select="transmer" />
831
+ </dl>
832
+ </dd>
833
+ </xsl:for-each>
834
+ <xsl:for-each select="ups">
835
+ <dt>Universal Polar Stereographic</dt>
836
+ <dd>
837
+ <dl>
838
+ <xsl:for-each select="upszone">
839
+ <dt>UPS Zone Identifier</dt>
840
+ <dd>
841
+ <xsl:value-of select="." />
842
+ </dd>
843
+ </xsl:for-each>
844
+ <xsl:for-each select="polarst">
845
+ <dt>Polar Stereographic</dt>
846
+ </xsl:for-each>
847
+ <xsl:apply-templates select="polarst" />
848
+ </dl>
849
+ </dd>
850
+ </xsl:for-each>
851
+ <xsl:for-each select="spcs">
852
+ <dt>State Plane Coordinate System</dt>
853
+ <dd>
854
+ <dl>
855
+ <xsl:for-each select="spcszone">
856
+ <dt>SPCS Zone Identifier</dt>
857
+ <dd>
858
+ <xsl:value-of select="." />
859
+ </dd>
860
+ </xsl:for-each>
861
+ <xsl:for-each select="lambertc">
862
+ <dt>Lambert Conformal Conic</dt>
863
+ <dd>
864
+ <xsl:apply-templates select="lambertc" />
865
+ </dd>
866
+ </xsl:for-each>
867
+ <xsl:for-each select="transmer">
868
+ <dt>Transverse Mercator</dt>
869
+ <dd>
870
+ <xsl:apply-templates select="transmer" />
871
+ </dd>
872
+ </xsl:for-each>
873
+ <xsl:for-each select="obqmerc">
874
+ <dt>Oblique Mercator</dt>
875
+ <dd>
876
+ <xsl:apply-templates select="obqmerc" />
877
+ </dd>
878
+ </xsl:for-each>
879
+ <xsl:for-each select="polycon">
880
+ <dt>Polyconic</dt>
881
+ <dd>
882
+ <xsl:apply-templates select="polycon" />
883
+ </dd>
884
+ </xsl:for-each>
885
+ </dl>
886
+ </dd>
887
+ </xsl:for-each>
888
+ <xsl:for-each select="arcsys">
889
+ <dt>ARC Coordinate System</dt>
890
+ <dd>
891
+ <dl>
892
+ <xsl:for-each select="arczone">
893
+ <dt>ARC System Zone Identifier</dt>
894
+ <dd>
895
+ <xsl:value-of select="." />
896
+ </dd>
897
+ </xsl:for-each>
898
+ <xsl:for-each select="equirect">
899
+ <dt>Equirectangular</dt>
900
+ </xsl:for-each>
901
+ <dd>
902
+ <xsl:apply-templates select="equirect" />
903
+ </dd>
904
+ <xsl:for-each select="azimequi">
905
+ <dt>Azimuthal Equidistant</dt>
906
+ <dd>
907
+ <xsl:apply-templates select="azimequi" />
908
+ </dd>
909
+ </xsl:for-each>
910
+ </dl>
911
+ </dd>
912
+ </xsl:for-each>
913
+ <xsl:for-each select="othergrd">
914
+ <dt>Other Grid System's Definition</dt>
915
+ <dd>
916
+ <xsl:value-of select="." />
917
+ </dd>
918
+ </xsl:for-each>
919
+ </dl>
920
+ </dd>
921
+ </xsl:for-each>
922
+ <xsl:for-each select="localp">
923
+ <dt>Local Planar</dt>
924
+ <dd>
925
+ <dl>
926
+ <xsl:for-each select="localpd">
927
+ <dt>Local Planar Description</dt>
928
+ <dd>
929
+ <xsl:value-of select="." />
930
+ </dd>
931
+ </xsl:for-each>
932
+ <xsl:for-each select="localpgi">
933
+ <dt>Local Planar Georeference Information</dt>
934
+ <dd>
935
+ <xsl:value-of select="." />
936
+ </dd>
937
+ </xsl:for-each>
938
+ </dl>
939
+ </dd>
940
+ </xsl:for-each>
941
+ <xsl:for-each select="planci">
942
+ <dt>Planar Coordinate Information</dt>
943
+ <dd>
944
+ <dl>
945
+ <xsl:for-each select="plance">
946
+ <dt>Planar Coordinate Encoding Method</dt>
947
+ <dd>
948
+ <xsl:value-of select="." />
949
+ </dd>
950
+ </xsl:for-each>
951
+ <xsl:for-each select="coordrep">
952
+ <dt>Coordinate Representation</dt>
953
+ <dd>
954
+ <dl>
955
+ <xsl:for-each select="absres">
956
+ <dt>Abscissa Resolution</dt>
957
+ <dd>
958
+ <xsl:value-of select="." />
959
+ </dd>
960
+ </xsl:for-each>
961
+ <xsl:for-each select="ordres">
962
+ <dt>Ordinate Resolution</dt>
963
+ <dd>
964
+ <xsl:value-of select="." />
965
+ </dd>
966
+ </xsl:for-each>
967
+ </dl>
968
+ </dd>
969
+ </xsl:for-each>
970
+ <xsl:for-each select="distbrep">
971
+ <dt>Distance and Bearing Representation</dt>
972
+ <dd>
973
+ <dl>
974
+ <xsl:for-each select="distres">
975
+ <dt>Distance Resolution</dt>
976
+ <dd>
977
+ <xsl:value-of select="." />
978
+ </dd>
979
+ </xsl:for-each>
980
+ <xsl:for-each select="bearres">
981
+ <dt>Bearing Resolution</dt>
982
+ <dd>
983
+ <xsl:value-of select="." />
984
+ </dd>
985
+ </xsl:for-each>
986
+ <xsl:for-each select="bearunit">
987
+ <dt>Bearing Units</dt>
988
+ <dd>
989
+ <xsl:value-of select="." />
990
+ </dd>
991
+ </xsl:for-each>
992
+ <xsl:for-each select="bearrefd">
993
+ <dt>Bearing Reference Direction</dt>
994
+ <dd>
995
+ <xsl:value-of select="." />
996
+ </dd>
997
+ </xsl:for-each>
998
+ <xsl:for-each select="bearrefm">
999
+ <dt>Bearing Reference Meridian</dt>
1000
+ <dd>
1001
+ <xsl:value-of select="." />
1002
+ </dd>
1003
+ </xsl:for-each>
1004
+ </dl>
1005
+ </dd>
1006
+ </xsl:for-each>
1007
+ <xsl:for-each select="plandu">
1008
+ <dt>Planar Distance Units</dt>
1009
+ <dd>
1010
+ <xsl:value-of select="." />
1011
+ </dd>
1012
+ </xsl:for-each>
1013
+ </dl>
1014
+ </dd>
1015
+ </xsl:for-each>
1016
+ </dl>
1017
+ </dd>
1018
+ </xsl:for-each>
1019
+ <xsl:for-each select="local">
1020
+ <dt>Local</dt>
1021
+ <dd>
1022
+ <dl>
1023
+ <xsl:for-each select="localdes">
1024
+ <dt>Local Description</dt>
1025
+ <dd>
1026
+ <xsl:value-of select="." />
1027
+ </dd>
1028
+ </xsl:for-each>
1029
+ <xsl:for-each select="localgeo">
1030
+ <dt>Local Georeference Information</dt>
1031
+ <dd>
1032
+ <xsl:value-of select="." />
1033
+ </dd>
1034
+ </xsl:for-each>
1035
+ </dl>
1036
+ </dd>
1037
+ </xsl:for-each>
1038
+ <xsl:for-each select="geodetic">
1039
+ <dt>Geodetic Model</dt>
1040
+ <dd>
1041
+ <dl>
1042
+ <xsl:for-each select="horizdn">
1043
+ <dt>Horizontal Datum Name</dt>
1044
+ <dd>
1045
+ <xsl:value-of select="." />
1046
+ </dd>
1047
+ </xsl:for-each>
1048
+ <xsl:for-each select="ellips">
1049
+ <dt>Ellipsoid Name</dt>
1050
+ <dd>
1051
+ <xsl:value-of select="." />
1052
+ </dd>
1053
+ </xsl:for-each>
1054
+ <xsl:for-each select="semiaxis">
1055
+ <dt>Semi-major Axis</dt>
1056
+ <dd>
1057
+ <xsl:value-of select="." />
1058
+ </dd>
1059
+ </xsl:for-each>
1060
+ <xsl:for-each select="denflat">
1061
+ <dt>Denominator of Flattening Ratio</dt>
1062
+ <dd>
1063
+ <xsl:value-of select="." />
1064
+ </dd>
1065
+ </xsl:for-each>
1066
+ </dl>
1067
+ </dd>
1068
+ </xsl:for-each>
1069
+ </dl>
1070
+ </dd>
1071
+ </xsl:for-each>
1072
+ <xsl:for-each select="vertdef">
1073
+ <dt>Vertical Coordinate System Definition</dt>
1074
+ <dd>
1075
+ <dl>
1076
+ <xsl:for-each select="altsys">
1077
+ <dt>Altitude System Definition</dt>
1078
+ <dd>
1079
+ <dl>
1080
+ <xsl:for-each select="altdatum">
1081
+ <dt>Altitude Datum Name</dt>
1082
+ <dd>
1083
+ <xsl:value-of select="." />
1084
+ </dd>
1085
+ </xsl:for-each>
1086
+ <xsl:for-each select="altres">
1087
+ <dt>Altitude Resolution</dt>
1088
+ <dd>
1089
+ <xsl:value-of select="." />
1090
+ </dd>
1091
+ </xsl:for-each>
1092
+ <xsl:for-each select="altunits">
1093
+ <dt>Altitude Distance Units</dt>
1094
+ <dd>
1095
+ <xsl:value-of select="." />
1096
+ </dd>
1097
+ </xsl:for-each>
1098
+ <xsl:for-each select="altenc">
1099
+ <dt>Altitude Encoding Method</dt>
1100
+ <dd>
1101
+ <xsl:value-of select="." />
1102
+ </dd>
1103
+ </xsl:for-each>
1104
+ </dl>
1105
+ </dd>
1106
+ </xsl:for-each>
1107
+ </dl>
1108
+ </dd>
1109
+ </xsl:for-each>
1110
+ </dl>
1111
+ </dd>
1112
+ </dl>
1113
+ </div>
1114
+ </xsl:template>
1115
+ <!-- Entity and Attribute -->
1116
+ <xsl:template match="eainfo">
1117
+ <div id="fgdc-entityattribute-info">
1118
+ <dl>
1119
+ <dt>Entity and Attribute Information</dt>
1120
+ <dd>
1121
+ <dl>
1122
+ <xsl:for-each select="detailed">
1123
+ <xsl:for-each select="enttyp">
1124
+ <dt>Entity Type</dt>
1125
+ <dd>
1126
+ <dl>
1127
+ <xsl:for-each select="enttypl">
1128
+ <dt>Entity Type Label</dt>
1129
+ <dd>
1130
+ <xsl:value-of select="." />
1131
+ </dd>
1132
+ </xsl:for-each>
1133
+ <xsl:for-each select="enttypd">
1134
+ <dt>Entity Type Definition</dt>
1135
+ <dd>
1136
+ <xsl:value-of select="." />
1137
+ </dd>
1138
+ </xsl:for-each>
1139
+ <xsl:for-each select="enttypds">
1140
+ <dt>Entity Type Definition Source</dt>
1141
+ <dd>
1142
+ <xsl:value-of select="." />
1143
+ </dd>
1144
+ </xsl:for-each>
1145
+ </dl>
1146
+ </dd>
1147
+ </xsl:for-each>
1148
+ <xsl:apply-templates select="attr" />
1149
+ </xsl:for-each>
1150
+ <xsl:for-each select="overview">
1151
+ <xsl:for-each select="eaover">
1152
+ <dt>Entity and Attribute Overview</dt>
1153
+ <dd>
1154
+ <xsl:value-of select="." />
1155
+ </dd>
1156
+ </xsl:for-each>
1157
+ <xsl:for-each select="eadetcit">
1158
+ <dt>Entity and Attribute Detail Citation</dt>
1159
+ <dd>
1160
+ <xsl:value-of select="." />
1161
+ </dd>
1162
+ </xsl:for-each>
1163
+ </xsl:for-each>
1164
+ </dl>
1165
+ </dd>
1166
+ </dl>
1167
+ </div>
1168
+ </xsl:template>
1169
+ <!-- Distribution -->
1170
+ <xsl:template match="distinfo">
1171
+ <div id="fgdc-distribution-info">
1172
+ <dl>
1173
+ <dt>Distribution Information</dt>
1174
+ <dd>
1175
+ <dl>
1176
+ <xsl:for-each select="stdorder/digform/digtinfo/formname">
1177
+ <dt>Format Name</dt>
1178
+ <dd>
1179
+ <xsl:value-of select="." />
1180
+ </dd>
1181
+ </xsl:for-each>
1182
+ <xsl:for-each select="distrib/cntinfo/cntorgp/cntorg">
1183
+ <dt>Distributor</dt>
1184
+ <dd>
1185
+ <xsl:value-of select="." />
1186
+ </dd>
1187
+ </xsl:for-each>
1188
+ <xsl:for-each select="stdorder/digform/digtopt/onlinopt/computer/networka/networkr">
1189
+ <dt>Online Access</dt>
1190
+ <dd>
1191
+ <xsl:value-of select="." />
1192
+ </dd>
1193
+ </xsl:for-each>
1194
+ <xsl:for-each select="//metadata/idinfo/citation/citeinfo/onlink">
1195
+ <dt>Name</dt>
1196
+ <dd>
1197
+ <xsl:value-of select="substring-after(.,'VCollName=')" />
1198
+ </dd>
1199
+ </xsl:for-each>
1200
+ </dl>
1201
+ </dd>
1202
+ </dl>
1203
+ </div>
1204
+ </xsl:template>
1205
+ <!-- Metadata -->
1206
+ <xsl:template match="metainfo">
1207
+ <div id="fgdc-metadata-reference-info">
1208
+ <dl>
1209
+ <dt>Metadata Reference Information</dt>
1210
+ <dd>
1211
+ <dl>
1212
+ <xsl:for-each select="metd">
1213
+ <dt>Metadata Date</dt>
1214
+ <dd>
1215
+ <xsl:value-of select="." />
1216
+ </dd>
1217
+ </xsl:for-each>
1218
+ <xsl:for-each select="metrd">
1219
+ <dt>Metadata Review Date</dt>
1220
+ <dd>
1221
+ <xsl:value-of select="." />
1222
+ </dd>
1223
+ </xsl:for-each>
1224
+ <xsl:for-each select="metc">
1225
+ <dt>Metadata Contact</dt>
1226
+ <dd>
1227
+ <dl>
1228
+ <xsl:apply-templates select="cntinfo" />
1229
+ </dl>
1230
+ </dd>
1231
+ </xsl:for-each>
1232
+ <xsl:for-each select="metstdn">
1233
+ <dt>Metadata Standard Name</dt>
1234
+ <dd>
1235
+ <xsl:value-of select="." />
1236
+ </dd>
1237
+ </xsl:for-each>
1238
+ <xsl:for-each select="metstdv">
1239
+ <dt>Metadata Standard Version</dt>
1240
+ <dd>
1241
+ <xsl:value-of select="." />
1242
+ </dd>
1243
+ </xsl:for-each>
1244
+ <xsl:for-each select="metextns">
1245
+ <dt>Metadata Extensions</dt>
1246
+ <dd>
1247
+ <dl>
1248
+ <xsl:for-each select="onlink">
1249
+ <dt>Online Linkage</dt>
1250
+ <dd>
1251
+ <xsl:value-of select="." />
1252
+ </dd>
1253
+ </xsl:for-each>
1254
+ <xsl:for-each select="metprof">
1255
+ <dt>Profile Name</dt>
1256
+ <dd>
1257
+ <xsl:value-of select="." />
1258
+ </dd>
1259
+ </xsl:for-each>
1260
+ </dl>
1261
+ </dd>
1262
+ </xsl:for-each>
1263
+ </dl>
1264
+ </dd>
1265
+ </dl>
1266
+ </div>
1267
+ </xsl:template>
1268
+ <!-- Citation -->
1269
+ <xsl:template match="citeinfo">
1270
+ <dl>
1271
+ <xsl:for-each select="origin">
1272
+ <dt>Originator</dt>
1273
+ <dd>
1274
+ <xsl:value-of select="." />
1275
+ </dd>
1276
+ </xsl:for-each>
1277
+ <xsl:for-each select="pubdate">
1278
+ <dt>Publication Date</dt>
1279
+ <dd>
1280
+ <xsl:value-of select="." />
1281
+ </dd>
1282
+ </xsl:for-each>
1283
+ <xsl:for-each select="pubtime">
1284
+ <dt>Publication Time</dt>
1285
+ <dd>
1286
+ <xsl:value-of select="." />
1287
+ </dd>
1288
+ </xsl:for-each>
1289
+ <xsl:for-each select="title">
1290
+ <dt>Title</dt>
1291
+ <dd>
1292
+ <xsl:value-of select="." />
1293
+ </dd>
1294
+ </xsl:for-each>
1295
+ <xsl:for-each select="edition">
1296
+ <dt>Edition</dt>
1297
+ <dd>
1298
+ <xsl:value-of select="." />
1299
+ </dd>
1300
+ </xsl:for-each>
1301
+ <xsl:for-each select="geoform">
1302
+ <dt>Geospatial Data Presentation Form</dt>
1303
+ <dd>
1304
+ <xsl:value-of select="." />
1305
+ </dd>
1306
+ </xsl:for-each>
1307
+ <xsl:for-each select="lworkcit/citeinfo/title">
1308
+ <dt>Collection Title</dt>
1309
+ <dd>
1310
+ <xsl:value-of select="." />
1311
+ </dd>
1312
+ </xsl:for-each>
1313
+ <xsl:for-each select="serinfo">
1314
+ <dt>Series Information</dt>
1315
+ <dd>
1316
+ <dl>
1317
+ <xsl:for-each select="sername">
1318
+ <dt>Series Name</dt>
1319
+ <dd>
1320
+ <xsl:value-of select="." />
1321
+ </dd>
1322
+ </xsl:for-each>
1323
+ <xsl:for-each select="issue">
1324
+ <dt>Issue Identification</dt>
1325
+ <dd>
1326
+ <xsl:value-of select="." />
1327
+ </dd>
1328
+ </xsl:for-each>
1329
+ </dl>
1330
+ </dd>
1331
+ </xsl:for-each>
1332
+ <xsl:for-each select="pubinfo">
1333
+ <dt>Publication Information</dt>
1334
+ <dd>
1335
+ <dl>
1336
+ <xsl:for-each select="pubplace">
1337
+ <dt>Publication Place</dt>
1338
+ <dd>
1339
+ <xsl:value-of select="." />
1340
+ </dd>
1341
+ </xsl:for-each>
1342
+ <xsl:for-each select="publish">
1343
+ <dt>Publisher</dt>
1344
+ <dd>
1345
+ <xsl:value-of select="." />
1346
+ </dd>
1347
+ </xsl:for-each>
1348
+ </dl>
1349
+ </dd>
1350
+ </xsl:for-each>
1351
+ <xsl:for-each select="othercit">
1352
+ <dt>Other Citation Details</dt>
1353
+ <dd>
1354
+ <xsl:value-of select="." />
1355
+ </dd>
1356
+ </xsl:for-each>
1357
+ <xsl:for-each select="onlink">
1358
+ <dt>Online Linkage</dt>
1359
+ <dd>
1360
+ <xsl:value-of select="." />
1361
+ </dd>
1362
+ </xsl:for-each>
1363
+ </dl>
1364
+ </xsl:template>
1365
+ <!-- Contact -->
1366
+ <xsl:template match="cntinfo">
1367
+ <dt>Contact Information</dt>
1368
+ <dd>
1369
+ <dl>
1370
+ <xsl:for-each select="cntperp">
1371
+ <dt>Contact Person Primary</dt>
1372
+ <dd>
1373
+ <dl>
1374
+ <xsl:for-each select="cntper">
1375
+ <dt>Contact Person</dt>
1376
+ </xsl:for-each>
1377
+ <xsl:for-each select="cntorg">
1378
+ <dt>Contact Organization</dt>
1379
+ <dd>
1380
+ <xsl:value-of select="." />
1381
+ </dd>
1382
+ </xsl:for-each>
1383
+ </dl>
1384
+ </dd>
1385
+ </xsl:for-each>
1386
+ <xsl:for-each select="cntorgp">
1387
+ <dt>Contact Organization Primary</dt>
1388
+ <dd>
1389
+ <dl>
1390
+ <xsl:for-each select="cntorg">
1391
+ <dt>Contact Organization</dt>
1392
+ <dd>
1393
+ <xsl:value-of select="." />
1394
+ </dd>
1395
+ </xsl:for-each>
1396
+ <xsl:for-each select="cntper">
1397
+ <dt>Contact Person</dt>
1398
+ <dd>
1399
+ <xsl:value-of select="." />
1400
+ </dd>
1401
+ </xsl:for-each>
1402
+ </dl>
1403
+ </dd>
1404
+ </xsl:for-each>
1405
+ <xsl:for-each select="cntpos">
1406
+ <dt>Contact Position</dt>
1407
+ <dd>
1408
+ <xsl:value-of select="." />
1409
+ </dd>
1410
+ </xsl:for-each>
1411
+ <xsl:for-each select="cntaddr">
1412
+ <dt>Contact Address</dt>
1413
+ <dd>
1414
+ <dl>
1415
+ <xsl:for-each select="address">
1416
+ <dt>Address</dt>
1417
+ <dd>
1418
+ <xsl:value-of select="." />
1419
+ </dd>
1420
+ </xsl:for-each>
1421
+ <xsl:for-each select="city">
1422
+ <dt>City</dt>
1423
+ <dd>
1424
+ <xsl:value-of select="." />
1425
+ </dd>
1426
+ </xsl:for-each>
1427
+ <xsl:for-each select="state">
1428
+ <dt>State or Province</dt>
1429
+ <dd>
1430
+ <xsl:value-of select="." />
1431
+ </dd>
1432
+ </xsl:for-each>
1433
+ <xsl:for-each select="postal">
1434
+ <dt>Postal Code</dt>
1435
+ <dd>
1436
+ <xsl:value-of select="." />
1437
+ </dd>
1438
+ </xsl:for-each>
1439
+ <xsl:for-each select="country">
1440
+ <dt>Country</dt>
1441
+ <dd>
1442
+ <xsl:value-of select="." />
1443
+ </dd>
1444
+ </xsl:for-each>
1445
+ </dl>
1446
+ </dd>
1447
+ </xsl:for-each>
1448
+ <xsl:for-each select="cntvoice">
1449
+ <dt>Contact Voice Telephone</dt>
1450
+ <dd>
1451
+ <xsl:value-of select="." />
1452
+ </dd>
1453
+ </xsl:for-each>
1454
+ <xsl:for-each select="cntfax">
1455
+ <dt>Contact Facsimile Telephone</dt>
1456
+ <dd>
1457
+ <xsl:value-of select="." />
1458
+ </dd>
1459
+ </xsl:for-each>
1460
+ <xsl:for-each select="cntemail">
1461
+ <dt>Contact Electronic Mail Address</dt>
1462
+ <dd>
1463
+ <xsl:value-of select="." />
1464
+ </dd>
1465
+ </xsl:for-each>
1466
+ <xsl:for-each select="hours">
1467
+ <dt>Hours of Service</dt>
1468
+ <dd>
1469
+ <xsl:value-of select="." />
1470
+ </dd>
1471
+ </xsl:for-each>
1472
+ <xsl:for-each select="cntinst">
1473
+ <dt>Contact Instructions</dt>
1474
+ <dd>
1475
+ <xsl:value-of select="." />
1476
+ </dd>
1477
+ </xsl:for-each>
1478
+ </dl>
1479
+ </dd>
1480
+ </xsl:template>
1481
+ <!-- Time Period Info -->
1482
+ <xsl:template match="timeinfo">
1483
+ <dt>Time Period Information</dt>
1484
+ <dd>
1485
+ <dl>
1486
+ <xsl:apply-templates select="sngdate" />
1487
+ <xsl:apply-templates select="mdattim" />
1488
+ <xsl:apply-templates select="rngdates" />
1489
+ </dl>
1490
+ </dd>
1491
+ </xsl:template>
1492
+ <!-- Single Date/Time -->
1493
+ <xsl:template match="sngdate">
1494
+ <dt>Single Date/Time</dt>
1495
+ <dd>
1496
+ <dl>
1497
+ <xsl:for-each select="caldate">
1498
+ <dt>Calendar Date</dt>
1499
+ <dd>
1500
+ <xsl:value-of select="." />
1501
+ </dd>
1502
+ </xsl:for-each>
1503
+ <xsl:for-each select="time">
1504
+ <dt>Time of Day</dt>
1505
+ <dd>
1506
+ <xsl:value-of select="." />
1507
+ </dd>
1508
+ </xsl:for-each>
1509
+ </dl>
1510
+ </dd>
1511
+ </xsl:template>
1512
+ <!-- Multiple Date/Time -->
1513
+ <xsl:template match="mdattim">
1514
+ <dt>Multiple Dates/Times</dt>
1515
+ <dd>
1516
+ <dl>
1517
+ <xsl:apply-templates select="sngdate" />
1518
+ </dl>
1519
+ </dd>
1520
+ </xsl:template>
1521
+ <!-- Range of Dates/Times -->
1522
+ <xsl:template match="rngdates">
1523
+ <dt>Range of Dates/Times</dt>
1524
+ <dd>
1525
+ <dl>
1526
+ <xsl:for-each select="begdate">
1527
+ <dt>Beginning Date</dt>
1528
+ <dd>
1529
+ <xsl:value-of select="." />
1530
+ </dd>
1531
+ </xsl:for-each>
1532
+ <xsl:for-each select="begtime">
1533
+ <dt>Beginning Time</dt>
1534
+ <dd>
1535
+ <xsl:value-of select="." />
1536
+ </dd>
1537
+ </xsl:for-each>
1538
+ <xsl:for-each select="enddate">
1539
+ <dt>Ending Date</dt>
1540
+ <dd>
1541
+ <xsl:value-of select="." />
1542
+ </dd>
1543
+ </xsl:for-each>
1544
+ <xsl:for-each select="endtime">
1545
+ <dt>Ending Time</dt>
1546
+ <dd>
1547
+ <xsl:value-of select="." />
1548
+ </dd>
1549
+ </xsl:for-each>
1550
+ </dl>
1551
+ </dd>
1552
+ </xsl:template>
1553
+ <!-- G-Ring -->
1554
+ <xsl:template match="grngpoin">
1555
+ <dt>G-Ring Point</dt>
1556
+ <dd>
1557
+ <dl>
1558
+ <xsl:for-each select="gringlat">
1559
+ <dt>G-Ring Latitude</dt>
1560
+ <dd>
1561
+ <xsl:value-of select="." />
1562
+ </dd>
1563
+ </xsl:for-each>
1564
+ <xsl:for-each select="gringlon">
1565
+ <dt>G-Ring Longitude</dt>
1566
+ <dd>
1567
+ <xsl:value-of select="." />
1568
+ </dd>
1569
+ </xsl:for-each>
1570
+ </dl>
1571
+ </dd>
1572
+ </xsl:template>
1573
+ <xsl:template match="gring">
1574
+ <dt>G-Ring</dt>
1575
+ <dd>
1576
+ <xsl:value-of select="." />
1577
+ </dd>
1578
+ </xsl:template>
1579
+ <!-- Map Projections -->
1580
+ <xsl:template match="albers | equicon | lambertc">
1581
+ <dd>
1582
+ <dl>
1583
+ <xsl:apply-templates select="stdparll" />
1584
+ <xsl:apply-templates select="longcm" />
1585
+ <xsl:apply-templates select="latprjo" />
1586
+ <xsl:apply-templates select="feast" />
1587
+ <xsl:apply-templates select="fnorth" />
1588
+ </dl>
1589
+ </dd>
1590
+ </xsl:template>
1591
+ <xsl:template match="gnomonic | lamberta | orthogr | stereo | gvnsp">
1592
+ <dd>
1593
+ <dl>
1594
+ <xsl:for-each select="../gvnsp">
1595
+ <xsl:apply-templates select="heightpt" />
1596
+ </xsl:for-each>
1597
+ <xsl:apply-templates select="longpc" />
1598
+ <xsl:apply-templates select="latprjc" />
1599
+ <xsl:apply-templates select="feast" />
1600
+ <xsl:apply-templates select="fnorth" />
1601
+ </dl>
1602
+ </dd>
1603
+ </xsl:template>
1604
+ <xsl:template match="miller | sinusoid | vdgrin | equirect | mercator">
1605
+ <dd>
1606
+ <dl>
1607
+ <xsl:for-each select="../equirect">
1608
+ <xsl:apply-templates select="stdparll" />
1609
+ </xsl:for-each>
1610
+ <xsl:for-each select="../mercator">
1611
+ <xsl:apply-templates select="stdparll" />
1612
+ <xsl:apply-templates select="sfequat" />
1613
+ </xsl:for-each>
1614
+ <xsl:apply-templates select="longcm" />
1615
+ <xsl:apply-templates select="feast" />
1616
+ <xsl:apply-templates select="fnorth" />
1617
+ </dl>
1618
+ </dd>
1619
+ </xsl:template>
1620
+ <xsl:template match="azimequi | polycon">
1621
+ <dd>
1622
+ <dl>
1623
+ <xsl:apply-templates select="longcm" />
1624
+ <xsl:apply-templates select="latprjo" />
1625
+ <xsl:apply-templates select="feast" />
1626
+ <xsl:apply-templates select="fnorth" />
1627
+ </dl>
1628
+ </dd>
1629
+ </xsl:template>
1630
+ <xsl:template match="transmer">
1631
+ <dd>
1632
+ <dl>
1633
+ <xsl:apply-templates select="sfctrmer" />
1634
+ <xsl:apply-templates select="longcm" />
1635
+ <xsl:apply-templates select="latprjo" />
1636
+ <xsl:apply-templates select="feast" />
1637
+ <xsl:apply-templates select="fnorth" />
1638
+ </dl>
1639
+ </dd>
1640
+ </xsl:template>
1641
+ <xsl:template match="polarst">
1642
+ <dd>
1643
+ <dl>
1644
+ <xsl:apply-templates select="svlong" />
1645
+ <xsl:apply-templates select="stdparll" />
1646
+ <xsl:apply-templates select="sfprjorg" />
1647
+ <xsl:apply-templates select="feast" />
1648
+ <xsl:apply-templates select="fnorth" />
1649
+ </dl>
1650
+ </dd>
1651
+ </xsl:template>
1652
+ <xsl:template match="obqmerc">
1653
+ <dd>
1654
+ <dl>
1655
+ <xsl:apply-templates select="sfctrlin" />
1656
+ <xsl:apply-templates select="obqlazim" />
1657
+ <xsl:apply-templates select="obqlpt" />
1658
+ <xsl:apply-templates select="latprjo" />
1659
+ <xsl:apply-templates select="feast" />
1660
+ <xsl:apply-templates select="fnorth" />
1661
+ </dl>
1662
+ </dd>
1663
+ </xsl:template>
1664
+ <!-- Map Projection Parameters -->
1665
+ <xsl:template match="stdparll">
1666
+ <dt>Standard Parallel</dt>
1667
+ <dd>
1668
+ <xsl:value-of select="." />
1669
+ </dd>
1670
+ </xsl:template>
1671
+ <xsl:template match="longcm">
1672
+ <dt>Longitude of Central Meridian</dt>
1673
+ <dd>
1674
+ <xsl:value-of select="." />
1675
+ </dd>
1676
+ </xsl:template>
1677
+ <xsl:template match="latprjo">
1678
+ <dt>Latitude of Projection Origin</dt>
1679
+ <dd>
1680
+ <xsl:value-of select="." />
1681
+ </dd>
1682
+ </xsl:template>
1683
+ <xsl:template match="feast">
1684
+ <dt>False Easting</dt>
1685
+ <dd>
1686
+ <xsl:value-of select="." />
1687
+ </dd>
1688
+ </xsl:template>
1689
+ <xsl:template match="fnorth">
1690
+ <dt>False Northing</dt>
1691
+ <dd>
1692
+ <xsl:value-of select="." />
1693
+ </dd>
1694
+ </xsl:template>
1695
+ <xsl:template match="sfequat">
1696
+ <dt>Scale Factor at Equator</dt>
1697
+ <dd>
1698
+ <xsl:value-of select="." />
1699
+ </dd>
1700
+ </xsl:template>
1701
+ <xsl:template match="heightpt">
1702
+ <dt>Height of Perspective Point Above Surface</dt>
1703
+ <dd>
1704
+ <xsl:value-of select="." />
1705
+ </dd>
1706
+ </xsl:template>
1707
+ <xsl:template match="longpc">
1708
+ <dt>Longitude of Projection Center</dt>
1709
+ <dd>
1710
+ <xsl:value-of select="." />
1711
+ </dd>
1712
+ </xsl:template>
1713
+ <xsl:template match="latprjc">
1714
+ <dt>Latitude of Projection Center</dt>
1715
+ <dd>
1716
+ <xsl:value-of select="." />
1717
+ </dd>
1718
+ </xsl:template>
1719
+ <xsl:template match="sfctrlin">
1720
+ <dt>Scale Factor at Center Line</dt>
1721
+ <dd>
1722
+ <xsl:value-of select="." />
1723
+ </dd>
1724
+ </xsl:template>
1725
+ <xsl:template match="obqlazim">
1726
+ <dt>Oblique Line Azimuth</dt>
1727
+ <dd>
1728
+ <dl>
1729
+ <xsl:for-each select="azimangl">
1730
+ <dt>Azimuthal Angle</dt>
1731
+ <dd>
1732
+ <xsl:value-of select="." />
1733
+ </dd>
1734
+ </xsl:for-each>
1735
+ <xsl:for-each select="azimptl">
1736
+ <dt>Azimuthal Measure Point Longitude</dt>
1737
+ <dd>
1738
+ <xsl:value-of select="." />
1739
+ </dd>
1740
+ </xsl:for-each>
1741
+ </dl>
1742
+ </dd>
1743
+ </xsl:template>
1744
+ <xsl:template match="svlong">
1745
+ <dt>Straight Vertical Longitude from Pole</dt>
1746
+ <dd>
1747
+ <xsl:value-of select="." />
1748
+ </dd>
1749
+ </xsl:template>
1750
+ <xsl:template match="sfprjorg">
1751
+ <dt>Scale Factor at Projection Origin</dt>
1752
+ <dd>
1753
+ <xsl:value-of select="." />
1754
+ </dd>
1755
+ </xsl:template>
1756
+ <xsl:template match="landsat">
1757
+ <dt>Landsat Number</dt>
1758
+ <dd>
1759
+ <xsl:value-of select="." />
1760
+ </dd>
1761
+ </xsl:template>
1762
+ <xsl:template match="pathnum">
1763
+ <dt>Path Number</dt>
1764
+ <dd>
1765
+ <xsl:value-of select="." />
1766
+ </dd>
1767
+ </xsl:template>
1768
+ <xsl:template match="sfctrmer">
1769
+ <dt>Scale Factor at Central Meridian</dt>
1770
+ <dd>
1771
+ <xsl:value-of select="." />
1772
+ </dd>
1773
+ </xsl:template>
1774
+ <xsl:template match="attr">
1775
+ <dt>Attribute</dt>
1776
+ <dd>
1777
+ <dl>
1778
+ <xsl:for-each select="attrlabl">
1779
+ <dt>Attribute Label</dt>
1780
+ <dd>
1781
+ <xsl:value-of select="." />
1782
+ </dd>
1783
+ </xsl:for-each>
1784
+ <xsl:for-each select="attrdef">
1785
+ <dt>Attribute Definition</dt>
1786
+ <dd>
1787
+ <xsl:value-of select="." />
1788
+ </dd>
1789
+ </xsl:for-each>
1790
+ <xsl:for-each select="attrdefs">
1791
+ <dt>Attribute Definition Source</dt>
1792
+ <dd>
1793
+ <xsl:value-of select="." />
1794
+ </dd>
1795
+ </xsl:for-each>
1796
+ <xsl:for-each select="attrdomv">
1797
+ <dt>Attribute Domain Values</dt>
1798
+ <dd>
1799
+ <dl>
1800
+ <xsl:for-each select="edom">
1801
+ <dt>Enumerated Domain</dt>
1802
+ <dd>
1803
+ <dl>
1804
+ <xsl:for-each select="edomv">
1805
+ <dt>Enumerated Domain Value</dt>
1806
+ <dd>
1807
+ <xsl:value-of select="." />
1808
+ </dd>
1809
+ </xsl:for-each>
1810
+ <xsl:for-each select="edomvd">
1811
+ <dt>Enumerated Domain Value Definition</dt>
1812
+ <dd>
1813
+ <xsl:value-of select="." />
1814
+ </dd>
1815
+ </xsl:for-each>
1816
+ <xsl:for-each select="edomvds">
1817
+ <dt>Enumerated Domain Value Definition Source</dt>
1818
+ <dd>
1819
+ <xsl:value-of select="." />
1820
+ </dd>
1821
+ </xsl:for-each>
1822
+ <xsl:apply-templates select="attr" />
1823
+ </dl>
1824
+ </dd>
1825
+ </xsl:for-each>
1826
+ <xsl:for-each select="rdom">
1827
+ <dt>Range Domain</dt>
1828
+ <dd>
1829
+ <dl>
1830
+ <xsl:for-each select="rdommin">
1831
+ <dt>Range Domain Minimum</dt>
1832
+ <dd>
1833
+ <xsl:value-of select="." />
1834
+ </dd>
1835
+ </xsl:for-each>
1836
+ <xsl:for-each select="rdommax">
1837
+ <dt>Range Domain Maximum</dt>
1838
+ <dd>
1839
+ <xsl:value-of select="." />
1840
+ </dd>
1841
+ </xsl:for-each>
1842
+ <xsl:for-each select="attrunit">
1843
+ <dt>Attribute Units of Measure</dt>
1844
+ <dd>
1845
+ <xsl:value-of select="." />
1846
+ </dd>
1847
+ </xsl:for-each>
1848
+ <xsl:for-each select="attrmres">
1849
+ <dt>Attribute Measurement Resolution</dt>
1850
+ <dd>
1851
+ <xsl:value-of select="." />
1852
+ </dd>
1853
+ </xsl:for-each>
1854
+ <xsl:apply-templates select="attr" />
1855
+ </dl>
1856
+ </dd>
1857
+ </xsl:for-each>
1858
+ <xsl:for-each select="codesetd">
1859
+ <dt>Codeset Domain</dt>
1860
+ <dd>
1861
+ <dl>
1862
+ <xsl:for-each select="codesetn">
1863
+ <dt>Codeset Name</dt>
1864
+ <dd>
1865
+ <xsl:value-of select="." />
1866
+ </dd>
1867
+ </xsl:for-each>
1868
+ <xsl:for-each select="codesets">
1869
+ <dt>Codeset Source</dt>
1870
+ <dd>
1871
+ <xsl:value-of select="." />
1872
+ </dd>
1873
+ </xsl:for-each>
1874
+ </dl>
1875
+ </dd>
1876
+ </xsl:for-each>
1877
+ <xsl:for-each select="udom">
1878
+ <dt>Unrepresentable Domain</dt>
1879
+ <dd>
1880
+ <xsl:value-of select="." />
1881
+ </dd>
1882
+ </xsl:for-each>
1883
+ </dl>
1884
+ </dd>
1885
+ </xsl:for-each>
1886
+ <xsl:for-each select="begdatea">
1887
+ <dt>Beginning Date of Attribute Values</dt>
1888
+ <dd>
1889
+ <xsl:value-of select="." />
1890
+ </dd>
1891
+ </xsl:for-each>
1892
+ <xsl:for-each select="enddatea">
1893
+ <dt>Ending Date of Attribute Values</dt>
1894
+ <dd>
1895
+ <xsl:value-of select="." />
1896
+ </dd>
1897
+ </xsl:for-each>
1898
+ <xsl:for-each select="attrvai">
1899
+ <dt>Attribute Value Accuracy Information</dt>
1900
+ <dd>
1901
+ <dl>
1902
+ <xsl:for-each select="attrva">
1903
+ <dt>Attribute Value Accuracy</dt>
1904
+ <dd>
1905
+ <xsl:value-of select="." />
1906
+ </dd>
1907
+ </xsl:for-each>
1908
+ <xsl:for-each select="attrvae">
1909
+ <dt>Attribute Value Accuracy Explanation</dt>
1910
+ <dd>
1911
+ <xsl:value-of select="." />
1912
+ </dd>
1913
+ </xsl:for-each>
1914
+ </dl>
1915
+ </dd>
1916
+ </xsl:for-each>
1917
+ <xsl:for-each select="attrmfrq">
1918
+ <dt>Attribute Measurement Frequency</dt>
1919
+ <dd>
1920
+ <xsl:value-of select="." />
1921
+ </dd>
1922
+ </xsl:for-each>
1923
+ </dl>
1924
+ </dd>
1925
+ </xsl:template>
1926
+ </xsl:stylesheet>