geo_combine 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +7 -0
- data/lib/geo_combine/fgdc.rb +9 -2
- data/lib/geo_combine/iso19139.rb +9 -2
- data/lib/geo_combine/version.rb +1 -1
- data/lib/geo_combine.rb +10 -2
- data/lib/xslt/fgdc2html.xsl +1034 -0
- data/lib/xslt/iso2html.xsl +1745 -0
- data/lib/xslt/utils/convert-enumerations.xsl +97 -0
- data/lib/xslt/utils/convert-latlong.xsl +73 -0
- data/lib/xslt/utils/decode-uri/base.css +408 -0
- data/lib/xslt/utils/decode-uri/index.html +29 -0
- data/lib/xslt/utils/elements-fgdc.xml +824 -0
- data/lib/xslt/utils/elements-iso.xml +636 -0
- data/lib/xslt/utils/printFormatted.xsl +267 -0
- data/lib/xslt/utils/printTextLines.xsl +192 -0
- data/lib/xslt/utils/replace-newlines.xsl +97 -0
- data/lib/xslt/utils/replace-string.xsl +80 -0
- data/lib/xslt/utils/strip-digits.xsl +60 -0
- data/lib/xslt/utils/url-decode.xsl +87 -0
- data/lib/xslt/utils/wrap-text.xsl +174 -0
- data/spec/lib/geo_combine/fgdc_spec.rb +12 -2
- data/spec/lib/geo_combine/iso19139_spec.rb +12 -2
- data/spec/lib/geo_combine_spec.rb +2 -1
- metadata +17 -2
@@ -0,0 +1,1745 @@
|
|
1
|
+
<!--
|
2
|
+
From : https://raw.githubusercontent.com/geoblacklight/geoblacklight-schema/master/tools/iso2html/iso-html.xsl
|
3
|
+
Modified by Darren Hardy, Stanford University Libraries, 2014
|
4
|
+
|
5
|
+
pacioos-iso-html.xsl
|
6
|
+
|
7
|
+
Author: John Maurer (jmaurer@hawaii.edu)
|
8
|
+
Date: November 1, 2011
|
9
|
+
|
10
|
+
This Extensible Stylesheet Language for Transformations (XSLT) document takes
|
11
|
+
metadata in Extensible Markup Language (XML) for the ISO 19115
|
12
|
+
with Remote Sensing Extensions (RSE) and converts it into an HTML page. This
|
13
|
+
format is used to show the full metadata record on PacIOOS's website.
|
14
|
+
|
15
|
+
For more information on XSLT see:
|
16
|
+
|
17
|
+
http://en.wikipedia.org/wiki/XSLT
|
18
|
+
http://www.w3.org/TR/xslt
|
19
|
+
|
20
|
+
-->
|
21
|
+
|
22
|
+
<xsl:stylesheet
|
23
|
+
version="1.0"
|
24
|
+
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
25
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
26
|
+
xmlns:gco="http://www.isotc211.org/2005/gco"
|
27
|
+
xmlns:gmd="http://www.isotc211.org/2005/gmd"
|
28
|
+
xmlns:gmi="http://www.isotc211.org/2005/gmi"
|
29
|
+
xmlns:gmx="http://www.isotc211.org/2005/gmx"
|
30
|
+
xmlns:gsr="http://www.isotc211.org/2005/gsr"
|
31
|
+
xmlns:gss="http://www.isotc211.org/2005/gss"
|
32
|
+
xmlns:gts="http://www.isotc211.org/2005/gts"
|
33
|
+
xmlns:srv="http://www.isotc211.org/2005/srv"
|
34
|
+
xmlns:gml="http://www.opengis.net/gml"
|
35
|
+
xmlns:xlink="http://www.w3.org/1999/xlink"
|
36
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
37
|
+
|
38
|
+
<!-- Import another XSLT file for replacing newlines with HTML <br/>'s: -->
|
39
|
+
|
40
|
+
<xsl:import href="./lib/xslt/utils/replace-newlines.xsl"/>
|
41
|
+
|
42
|
+
<!-- Import another XSLT file for doing other string substitutions: -->
|
43
|
+
|
44
|
+
<xsl:import href="./lib/xslt/utils/replace-string.xsl"/>
|
45
|
+
|
46
|
+
<!-- Import another XSLT file for limiting the number of decimal places: -->
|
47
|
+
|
48
|
+
<xsl:import href="./lib/xslt/utils/strip-digits.xsl"/>
|
49
|
+
|
50
|
+
<!--
|
51
|
+
|
52
|
+
This HTML output method conforms to the following DOCTYPE statement:
|
53
|
+
|
54
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
55
|
+
"http://www.w3.org/TR/html4/loose.dtd">
|
56
|
+
-->
|
57
|
+
|
58
|
+
<xsl:output
|
59
|
+
method="html"
|
60
|
+
doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"
|
61
|
+
doctype-system="http://www.w3.org/TR/html4/loose.dtd"
|
62
|
+
encoding="ISO-8859-1"
|
63
|
+
indent="yes"/>
|
64
|
+
|
65
|
+
<!-- VARIABLES: ***********************************************************-->
|
66
|
+
|
67
|
+
<!-- The separator separates short names from long names. For example:
|
68
|
+
DMSP > Defense Meteorological Satellite Program -->
|
69
|
+
|
70
|
+
<xsl:variable name="separator">
|
71
|
+
<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>
|
72
|
+
</xsl:variable>
|
73
|
+
|
74
|
+
<!-- Define a variable for creating a newline: -->
|
75
|
+
|
76
|
+
<xsl:variable name="newline">
|
77
|
+
<xsl:text>
|
78
|
+
</xsl:text>
|
79
|
+
</xsl:variable>
|
80
|
+
|
81
|
+
<!-- This variable is used to link to the other metadata views.
|
82
|
+
NOTE: TDS FMRC ID's appear like "wrf_hi/WRF_Hawaii_Regional_Atmospheric_Model_best.ncd";
|
83
|
+
to simplify the ID's, strip everything after "/":
|
84
|
+
-->
|
85
|
+
|
86
|
+
<xsl:variable name="datasetIdentifier">
|
87
|
+
<xsl:variable name="datasetIdentifierOriginal" select="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier/gmd:code/gco:CharacterString"/>
|
88
|
+
<xsl:choose>
|
89
|
+
<xsl:when test="contains( $datasetIdentifierOriginal, '/' )">
|
90
|
+
<xsl:value-of select="substring-before( $datasetIdentifierOriginal, '/' )"/>
|
91
|
+
</xsl:when>
|
92
|
+
<xsl:otherwise>
|
93
|
+
<xsl:value-of select="$datasetIdentifierOriginal"/>
|
94
|
+
</xsl:otherwise>
|
95
|
+
</xsl:choose>
|
96
|
+
</xsl:variable>
|
97
|
+
|
98
|
+
<!-- Define a variable which creates a JavaScript array of the bounding box
|
99
|
+
of the Spatial_Domain/Bounding element in the ISO for use in the Google
|
100
|
+
Maps API, which is controlled by the loadGoogleMap function inside
|
101
|
+
the google_maps.ssi include file. NOTE: This function expects the
|
102
|
+
bounding box to be provided in a specific order: north, south, east,
|
103
|
+
west: -->
|
104
|
+
|
105
|
+
<xsl:variable name="bbox">
|
106
|
+
<xsl:if test="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/gco:Decimal">
|
107
|
+
<xsl:text> [ </xsl:text>
|
108
|
+
<xsl:value-of select="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/gco:Decimal"/><xsl:text>, </xsl:text>
|
109
|
+
<xsl:value-of select="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/gco:Decimal"/><xsl:text>, </xsl:text>
|
110
|
+
<xsl:value-of select="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/gco:Decimal"/><xsl:text>, </xsl:text>
|
111
|
+
<xsl:value-of select="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/gco:Decimal"/>
|
112
|
+
<xsl:text> ] </xsl:text>
|
113
|
+
</xsl:if>
|
114
|
+
</xsl:variable>
|
115
|
+
|
116
|
+
<!-- TOP-LEVEL: HTML ******************************************************-->
|
117
|
+
|
118
|
+
<!-- The top-level template; Define various features for the entire page and then
|
119
|
+
call the "gmd:MD_Metadata" template to fill in the remaining HTML: -->
|
120
|
+
|
121
|
+
<xsl:template match="/">
|
122
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml"><xsl:value-of select="$newline"/>
|
123
|
+
<head><xsl:value-of select="$newline"/>
|
124
|
+
<title><xsl:value-of select="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString"/></title><xsl:value-of select="$newline"/>
|
125
|
+
<xsl:comment>
|
126
|
+
If you want to show polylines on a Google Map (like the rectangle used to
|
127
|
+
outline the data set geographic coverage), you need to include the VML
|
128
|
+
namespace in the html tag and the following CSS code in an XHTML compliant
|
129
|
+
doctype to make everything work properly in IE:
|
130
|
+
</xsl:comment><xsl:value-of select="$newline"/>
|
131
|
+
<style type="text/css">
|
132
|
+
|
133
|
+
v\:* {
|
134
|
+
behavior:url(#default#VML);
|
135
|
+
}
|
136
|
+
|
137
|
+
.wrapline {
|
138
|
+
/* http://perishablepress.com/press/2010/06/01/wrapping-content/ */
|
139
|
+
white-space: pre; /* CSS 2.0 */
|
140
|
+
white-space: pre-wrap; /* CSS 2.1 */
|
141
|
+
white-space: pre-line; /* CSS 3.0 */
|
142
|
+
white-space: -pre-wrap; /* Opera 4-6 */
|
143
|
+
white-space: -o-pre-wrap; /* Opera 7 */
|
144
|
+
white-space: -moz-pre-wrap; /* Mozilla */
|
145
|
+
white-space: -hp-pre-wrap; /* HP Printers */
|
146
|
+
word-wrap: break-word;
|
147
|
+
width: 550px;
|
148
|
+
}
|
149
|
+
|
150
|
+
</style><xsl:value-of select="$newline"/>
|
151
|
+
</head><xsl:value-of select="$newline"/>
|
152
|
+
<body><xsl:value-of select="$newline"/>
|
153
|
+
<table width="99%" border="0" cellspacing="2" cellpadding="0">
|
154
|
+
<tr>
|
155
|
+
<td valign="top">
|
156
|
+
<table width="98%" border="0" align="center" cellpadding="2" cellspacing="8" style="margin-top: -20px;">
|
157
|
+
<tr>
|
158
|
+
<td valign="top" >
|
159
|
+
<!--<p style="color: darkred; background-color: lightyellow; border: 1px dashed lightgray; padding: 2px;"><b>NOTE: ISO metadata output is under construction. Please check back later...</b></p>-->
|
160
|
+
<h2 style="margin-right: 185px; text-transform: none;"><xsl:value-of select="gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString"/></h2>
|
161
|
+
<ul>
|
162
|
+
<li><a href="#Identification_Information">Identification Information</a></li>
|
163
|
+
<xsl:if test="string-length( gmd:MD_Metadata/gmd:dataQualityInfo )">
|
164
|
+
<li><a href="#Data_Quality_Information">Data Quality Information</a></li>
|
165
|
+
</xsl:if>
|
166
|
+
<xsl:if test="string-length( gmd:MD_Metadata/gmd:spatialRepresentationInfo )">
|
167
|
+
<li><a href="#Spatial_Representation_Information">Spatial Representation Information</a></li>
|
168
|
+
</xsl:if>
|
169
|
+
<xsl:if test="string-length( gmd:MD_Metadata/gmd:contentInfo )">
|
170
|
+
<li><a href="#Content_Information">Content Information</a></li>
|
171
|
+
</xsl:if>
|
172
|
+
<xsl:if test="string-length( gmd:MD_Metadata/gmd:distributionInfo )">
|
173
|
+
<li><a href="#Distribution_Information">Distribution Information</a></li>
|
174
|
+
</xsl:if>
|
175
|
+
<xsl:if test="string-length( gmd:MD_Metadata/gmd:acquisitionInformation )">
|
176
|
+
<li><a href="#Acquisition_Information">Acquisition Information</a></li>
|
177
|
+
</xsl:if>
|
178
|
+
<li><a href="#Metadata_Reference_Information">Metadata Reference Information</a></li>
|
179
|
+
</ul>
|
180
|
+
<xsl:apply-templates select="gmd:MD_Metadata"/>
|
181
|
+
</td>
|
182
|
+
</tr>
|
183
|
+
</table>
|
184
|
+
</td>
|
185
|
+
</tr>
|
186
|
+
</table>
|
187
|
+
<xsl:comment> END MAIN CONTENT </xsl:comment><xsl:value-of select="$newline"/>
|
188
|
+
</body><xsl:value-of select="$newline"/>
|
189
|
+
</html>
|
190
|
+
</xsl:template>
|
191
|
+
|
192
|
+
<!-- The second-level template: match all the main elements of the ISO and
|
193
|
+
process them separately. The order of these elements is maintained in
|
194
|
+
the resulting document: -->
|
195
|
+
|
196
|
+
<!-- ROOT: ****************************************************************-->
|
197
|
+
|
198
|
+
<xsl:template match="gmd:MD_Metadata">
|
199
|
+
<xsl:apply-templates select="gmd:identificationInfo/gmd:MD_DataIdentification"/>
|
200
|
+
<xsl:if test="string-length( gmd:identificationInfo/srv:SV_ServiceIdentification )">
|
201
|
+
<h4>Services:</h4>
|
202
|
+
</xsl:if>
|
203
|
+
<xsl:apply-templates select="gmd:identificationInfo/srv:SV_ServiceIdentification"/>
|
204
|
+
<p><a href="javascript:void(0)" onClick="window.scrollTo( 0, 0 ); this.blur(); return false;">Back to Top</a></p>
|
205
|
+
<xsl:apply-templates select="gmd:dataQualityInfo/gmd:DQ_DataQuality"/>
|
206
|
+
<xsl:apply-templates select="gmd:spatialRepresentationInfo/gmd:MD_GridSpatialRepresentation"/>
|
207
|
+
<xsl:apply-templates select="gmd:contentInfo"/>
|
208
|
+
<xsl:apply-templates select="gmd:distributionInfo/gmd:MD_Distribution"/>
|
209
|
+
<xsl:apply-templates select="gmd:acquisitionInformation/gmd:MI_AcquisitionInformation"/>
|
210
|
+
<xsl:call-template name="metadataReferenceInfo"/>
|
211
|
+
</xsl:template>
|
212
|
+
|
213
|
+
<!-- METADATA_REFERENCE_INFORMATION: *****************************************
|
214
|
+
|
215
|
+
NOTE: I have combined the following sections under this heading:
|
216
|
+
|
217
|
+
1. METADATA_ENTITY_SET_INFORMATION (miscellaneous stuff under root doc)
|
218
|
+
2. METADATA_MAINTENANCE_INFORMATION (I stuck this within the above)
|
219
|
+
3. METADATA_EXTENSION_INFORMATION (ditto)
|
220
|
+
-->
|
221
|
+
|
222
|
+
<xsl:template name="metadataReferenceInfo">
|
223
|
+
<hr/>
|
224
|
+
<h3><a name="Metadata_Reference_Information"></a>Metadata Reference Information:</h3>
|
225
|
+
<xsl:call-template name="metadataEntitySetInfo"/>
|
226
|
+
<p><a href="javascript:void(0)" onClick="window.scrollTo( 0, 0 ); this.blur(); return false;">Back to Top</a></p>
|
227
|
+
</xsl:template>
|
228
|
+
|
229
|
+
<!-- METADATA_ENTITY_SET_INFORMATION: ************************************-->
|
230
|
+
|
231
|
+
<xsl:template name="metadataEntitySetInfo">
|
232
|
+
<xsl:apply-templates select="gmd:fileIdentifier"/>
|
233
|
+
<xsl:apply-templates select="gmd:language"/>
|
234
|
+
<xsl:apply-templates select="gmd:characterSet"/>
|
235
|
+
<xsl:apply-templates select="gmd:parentIdentifier"/>
|
236
|
+
<xsl:apply-templates select="gmd:hierarchyLevel"/>
|
237
|
+
<xsl:apply-templates select="gmd:hierarchyLevelName"/>
|
238
|
+
<xsl:apply-templates select="gmd:contact"/>
|
239
|
+
<xsl:apply-templates select="gmd:dateStamp"/>
|
240
|
+
<xsl:apply-templates select="gmd:metadataMaintenance/gmd:MD_MaintenanceInformation"/>
|
241
|
+
<xsl:apply-templates select="gmd:metadataExtensionInfo/gmd:MD_MetadataExtensionInformation"/>
|
242
|
+
<xsl:apply-templates select="gmd:metadataStandardName"/>
|
243
|
+
<xsl:apply-templates select="gmd:metadataStandardVersion"/>
|
244
|
+
<xsl:apply-templates select="gmd:dataSetURI"/>
|
245
|
+
</xsl:template>
|
246
|
+
|
247
|
+
<xsl:template match="gmd:fileIdentifier">
|
248
|
+
<h4 style="display: inline">File Identifier: </h4>
|
249
|
+
<xsl:variable name="fileURL">
|
250
|
+
<xsl:value-of select="gco:CharacterString"/>
|
251
|
+
</xsl:variable>
|
252
|
+
<xsl:value-of select="$fileURL"/>
|
253
|
+
<!-- <p style="display: inline"><a href="{$fileURL}"><xsl:value-of select="$fileURL"/></a></p> -->
|
254
|
+
<p></p>
|
255
|
+
</xsl:template>
|
256
|
+
|
257
|
+
<xsl:template match="gmd:language">
|
258
|
+
<h4 style="display: inline">Language:</h4>
|
259
|
+
<p style="display: inline"><xsl:value-of select="."/></p>
|
260
|
+
<p></p>
|
261
|
+
</xsl:template>
|
262
|
+
|
263
|
+
<xsl:template match="gmd:parentIdentifier">
|
264
|
+
<h4 style="display: inline">Parent Identifier:</h4>
|
265
|
+
<xsl:variable name="parentURL">
|
266
|
+
<xsl:value-of select="gco:CharacterString"/>
|
267
|
+
</xsl:variable>
|
268
|
+
<p style="display: inline"><a href="{$parentURL}"><xsl:value-of select="."/></a></p>
|
269
|
+
<p></p>
|
270
|
+
</xsl:template>
|
271
|
+
|
272
|
+
<xsl:template match="gmd:characterSet">
|
273
|
+
<h4 style="display: inline">Character Set:</h4>
|
274
|
+
<p style="display: inline"><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_CharacterSetCode" target="_blank">MD_CharacterSetCode</a>)</p>
|
275
|
+
<p></p>
|
276
|
+
</xsl:template>
|
277
|
+
|
278
|
+
<xsl:template match="gmd:hierarchyLevel">
|
279
|
+
<h4 style="display: inline">Hierarchy Level:</h4>
|
280
|
+
<p style="display: inline"><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_ScopeCode" target="_blank">MD_ScopeCode</a>)</p>
|
281
|
+
<p></p>
|
282
|
+
</xsl:template>
|
283
|
+
|
284
|
+
<xsl:template match="gmd:hierarchyLevelName">
|
285
|
+
<h4 style="display: inline">Hierarchy Level Name:</h4>
|
286
|
+
<p style="display: inline"><xsl:value-of select="."/></p>
|
287
|
+
<p></p>
|
288
|
+
</xsl:template>
|
289
|
+
|
290
|
+
<xsl:template match="gmd:contact">
|
291
|
+
<h4>Contact:</h4>
|
292
|
+
<xsl:call-template name="CI_ResponsibleParty">
|
293
|
+
<xsl:with-param name="element" select="gmd:CI_ResponsibleParty"/>
|
294
|
+
<xsl:with-param name="italicize-heading" select="true()"/>
|
295
|
+
</xsl:call-template>
|
296
|
+
</xsl:template>
|
297
|
+
|
298
|
+
<xsl:template match="gmd:dateStamp">
|
299
|
+
<h4 style="display: inline">Date Stamp:</h4>
|
300
|
+
<p style="display: inline">
|
301
|
+
<xsl:call-template name="date">
|
302
|
+
<xsl:with-param name="element" select="./gco:Date"/>
|
303
|
+
</xsl:call-template>
|
304
|
+
</p>
|
305
|
+
<p></p>
|
306
|
+
</xsl:template>
|
307
|
+
|
308
|
+
<xsl:template match="gmd:metadataStandardName">
|
309
|
+
<h4>Metadata Standard Name:</h4>
|
310
|
+
<p><xsl:value-of select="."/></p>
|
311
|
+
</xsl:template>
|
312
|
+
|
313
|
+
<xsl:template match="gmd:metadataStandardVersion">
|
314
|
+
<h4>Metadata Standard Version:</h4>
|
315
|
+
<p><xsl:value-of select="."/></p>
|
316
|
+
</xsl:template>
|
317
|
+
|
318
|
+
<xsl:template match="gmd:dataSetURI">
|
319
|
+
<h4>Dataset URI:</h4>
|
320
|
+
<p><a href="{.}"><xsl:value-of select="."/></a></p>
|
321
|
+
</xsl:template>
|
322
|
+
|
323
|
+
<!-- METADATA_MAINTENANCE_INFORMATION: ************************************-->
|
324
|
+
|
325
|
+
<xsl:template match="gmd:metadataMaintenance/gmd:MD_MaintenanceInformation">
|
326
|
+
<h4>Metadata Maintenance Information:</h4>
|
327
|
+
<xsl:apply-templates select="gmd:maintenanceAndUpdateFrequency"/>
|
328
|
+
<xsl:apply-templates select="gmd:maintenanceNote"/>
|
329
|
+
<!--
|
330
|
+
Duplicates gmd:contact above so ignore here...
|
331
|
+
<xsl:apply-templates select="gmd:contact"/>
|
332
|
+
-->
|
333
|
+
</xsl:template>
|
334
|
+
|
335
|
+
<xsl:template match="gmd:maintenanceAndUpdateFrequency">
|
336
|
+
<p>
|
337
|
+
<b><i>Maintenance And Update Frequency: </i></b>
|
338
|
+
<xsl:choose>
|
339
|
+
<xsl:when test="string-length( . )">
|
340
|
+
<xsl:value-of select="."/>
|
341
|
+
</xsl:when>
|
342
|
+
<xsl:otherwise>
|
343
|
+
<xsl:value-of select="@gco:nilReason"/>
|
344
|
+
</xsl:otherwise>
|
345
|
+
</xsl:choose>
|
346
|
+
</p>
|
347
|
+
</xsl:template>
|
348
|
+
|
349
|
+
<xsl:template match="gmd:maintenanceNote">
|
350
|
+
<xsl:if test="string-length( . )">
|
351
|
+
<p><b><i>Maintenance Note:</i></b></p>
|
352
|
+
<p><xsl:value-of select="."/></p>
|
353
|
+
</xsl:if>
|
354
|
+
</xsl:template>
|
355
|
+
|
356
|
+
<!-- METADATA_EXTENSION_INFORMATION: **************************************-->
|
357
|
+
|
358
|
+
<xsl:template match="gmd:metadataExtensionInfo/gmd:MD_MetadataExtensionInformation">
|
359
|
+
<h4>Metadata Extension Information:</h4>
|
360
|
+
<xsl:for-each select="gmd:extendedElementInformation/gmd:MD_ExtendedElementInformation">
|
361
|
+
<p><b><i>Extended Element Information:</i></b></p>
|
362
|
+
<font>
|
363
|
+
<blockquote>
|
364
|
+
<xsl:for-each select="gmd:name">
|
365
|
+
<xsl:if test="string-length( . )">
|
366
|
+
<b>Name: </b> <xsl:value-of select="."/><br/>
|
367
|
+
</xsl:if>
|
368
|
+
</xsl:for-each>
|
369
|
+
<xsl:for-each select="gmd:shortName">
|
370
|
+
<xsl:if test="string-length( . )">
|
371
|
+
<b>Short Name: </b> <xsl:value-of select="."/><br/>
|
372
|
+
</xsl:if>
|
373
|
+
</xsl:for-each>
|
374
|
+
<xsl:for-each select="gmd:obligation">
|
375
|
+
<xsl:if test="string-length( gmd:MD_ObligationCode )">
|
376
|
+
<b>Obligation: </b><xsl:value-of select="gmd:MD_ObligationCode"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_ObligationCode">MD_ObligationCode</a>)<br/>
|
377
|
+
</xsl:if>
|
378
|
+
</xsl:for-each>
|
379
|
+
<xsl:for-each select="gmd:dataType">
|
380
|
+
<xsl:if test="string-length( gmd:MD_DatatypeCode )">
|
381
|
+
<b>Data Type: </b><xsl:value-of select="gmd:MD_DatatypeCode"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_DatatypeCode">MD_DatatypeCode</a>)<br/>
|
382
|
+
</xsl:if>
|
383
|
+
</xsl:for-each>
|
384
|
+
<xsl:for-each select="gmd:maximumOccurrence">
|
385
|
+
<xsl:if test="string-length( . )">
|
386
|
+
<b>Maximum Occurrence: </b> <xsl:value-of select="."/><br/>
|
387
|
+
</xsl:if>
|
388
|
+
</xsl:for-each>
|
389
|
+
<xsl:for-each select="gmd:parentEntity">
|
390
|
+
<xsl:if test="string-length( . )">
|
391
|
+
<b>Parent Entity: </b> <xsl:value-of select="."/><br/>
|
392
|
+
</xsl:if>
|
393
|
+
</xsl:for-each>
|
394
|
+
<xsl:for-each select="gmd:rule">
|
395
|
+
<xsl:if test="string-length( . )">
|
396
|
+
<b>Rule: </b><br/>
|
397
|
+
<p><xsl:value-of select="."/></p>
|
398
|
+
</xsl:if>
|
399
|
+
</xsl:for-each>
|
400
|
+
<xsl:for-each select="gmd:definition">
|
401
|
+
<xsl:if test="string-length( . )">
|
402
|
+
<p><b>Definition:</b></p>
|
403
|
+
<p><xsl:value-of select="."/></p>
|
404
|
+
</xsl:if>
|
405
|
+
</xsl:for-each>
|
406
|
+
<xsl:for-each select="gmd:rationale">
|
407
|
+
<xsl:if test="string-length( . )">
|
408
|
+
<p><b>Rationale:</b></p>
|
409
|
+
<p><xsl:value-of select="."/></p>
|
410
|
+
</xsl:if>
|
411
|
+
</xsl:for-each>
|
412
|
+
<xsl:for-each select="gmd:source">
|
413
|
+
<xsl:if test="string-length( . )">
|
414
|
+
<p><b>Source:</b></p>
|
415
|
+
<blockquote>
|
416
|
+
<xsl:call-template name="CI_ResponsibleParty">
|
417
|
+
<xsl:with-param name="element" select="gmd:CI_ResponsibleParty"/>
|
418
|
+
</xsl:call-template>
|
419
|
+
</blockquote>
|
420
|
+
</xsl:if>
|
421
|
+
</xsl:for-each>
|
422
|
+
</blockquote>
|
423
|
+
</font>
|
424
|
+
</xsl:for-each>
|
425
|
+
</xsl:template>
|
426
|
+
|
427
|
+
<!-- IDENTIFICATION_INFORMATION: ******************************************-->
|
428
|
+
|
429
|
+
<xsl:template match="gmd:identificationInfo/gmd:MD_DataIdentification">
|
430
|
+
<hr/>
|
431
|
+
<h3><a name="Identification_Information"></a> Identification Information:</h3>
|
432
|
+
<xsl:apply-templates select="gmd:citation"/>
|
433
|
+
<xsl:apply-templates select="gmd:abstract"/>
|
434
|
+
<xsl:apply-templates select="gmd:purpose"/>
|
435
|
+
<xsl:apply-templates select="gmd:credit"/>
|
436
|
+
<xsl:apply-templates select="gmd:status"/>
|
437
|
+
<xsl:apply-templates select="gmd:pointOfContact"/>
|
438
|
+
<xsl:apply-templates select="gmd:resourceMaintenance"/>
|
439
|
+
<xsl:apply-templates select="gmd:graphicOverview"/>
|
440
|
+
<xsl:if test="gmd:descriptiveKeywords">
|
441
|
+
<h4>Descriptive Keywords:</h4>
|
442
|
+
<xsl:apply-templates select="gmd:descriptiveKeywords"/>
|
443
|
+
</xsl:if>
|
444
|
+
<xsl:apply-templates select="gmd:taxonomy"/>
|
445
|
+
<xsl:apply-templates select="gmd:aggregationInfo"/>
|
446
|
+
<xsl:apply-templates select="gmd:resourceConstraints"/>
|
447
|
+
<xsl:apply-templates select="gmd:language"/>
|
448
|
+
<xsl:apply-templates select="gmd:characterSet"/>
|
449
|
+
<xsl:if test="gmd:topicCategory">
|
450
|
+
<h4>Topic Categories (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_TopicCategoryCode">MD_TopicCategoryCode</a>):</h4>
|
451
|
+
<blockquote>
|
452
|
+
<font>
|
453
|
+
<xsl:for-each select="gmd:topicCategory">
|
454
|
+
<xsl:sort select="."/>
|
455
|
+
<b>Topic Category: </b><xsl:value-of select="."/><br/>
|
456
|
+
</xsl:for-each>
|
457
|
+
</font>
|
458
|
+
</blockquote>
|
459
|
+
</xsl:if>
|
460
|
+
<xsl:apply-templates select="gmd:extent"/>
|
461
|
+
<xsl:apply-templates select="gmd:supplementalInformation"/>
|
462
|
+
</xsl:template>
|
463
|
+
|
464
|
+
<xsl:template match="gmd:citation">
|
465
|
+
<h4>Citation:</h4>
|
466
|
+
<font>
|
467
|
+
<xsl:call-template name="CI_Citation">
|
468
|
+
<xsl:with-param name="element" select="gmd:CI_Citation"/>
|
469
|
+
<xsl:with-param name="italicize-heading" select="true()"/>
|
470
|
+
<xsl:with-param name="wrap-text" select="true()"/>
|
471
|
+
</xsl:call-template>
|
472
|
+
</font>
|
473
|
+
</xsl:template>
|
474
|
+
|
475
|
+
<xsl:template match="gmd:abstract">
|
476
|
+
<h4>Abstract:</h4>
|
477
|
+
<p>
|
478
|
+
<xsl:call-template name="replace-newlines">
|
479
|
+
<xsl:with-param name="element" select="gco:CharacterString"/>
|
480
|
+
</xsl:call-template>
|
481
|
+
</p>
|
482
|
+
</xsl:template>
|
483
|
+
|
484
|
+
<xsl:template match="gmd:purpose">
|
485
|
+
<h4>Purpose:</h4>
|
486
|
+
<p><xsl:value-of select="."/></p>
|
487
|
+
</xsl:template>
|
488
|
+
|
489
|
+
<xsl:template match="gmd:credit">
|
490
|
+
<h4>Credit:</h4>
|
491
|
+
<p><xsl:value-of select="."/></p>
|
492
|
+
</xsl:template>
|
493
|
+
|
494
|
+
<xsl:template match="gmd:status">
|
495
|
+
<h4 style="display: inline">Status:</h4>
|
496
|
+
<p style="display: inline"><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_ProgressCode" target="_blank">MD_ProgressCode</a>)</p>
|
497
|
+
<p></p>
|
498
|
+
</xsl:template>
|
499
|
+
|
500
|
+
<xsl:template match="gmd:pointOfContact">
|
501
|
+
<h4>Point of Contact:</h4>
|
502
|
+
<xsl:for-each select="gmd:CI_ResponsibleParty">
|
503
|
+
<xsl:call-template name="CI_ResponsibleParty">
|
504
|
+
<xsl:with-param name="element" select="."/>
|
505
|
+
<xsl:with-param name="italicize-heading" select="true()"/>
|
506
|
+
</xsl:call-template>
|
507
|
+
</xsl:for-each>
|
508
|
+
</xsl:template>
|
509
|
+
|
510
|
+
<xsl:template match="gmd:resourceMaintenance">
|
511
|
+
<h4>Maintenance Information:</h4>
|
512
|
+
<xsl:for-each select="gmd:MD_MaintenanceInformation">
|
513
|
+
<xsl:for-each select="gmd:maintenanceAndUpdateFrequency">
|
514
|
+
<p><b><i>Maintenance and Update Frequency: </i></b> <xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_MaintenanceFrequencyCode">MD_MaintenanceFrequencyCode</a>)</p>
|
515
|
+
</xsl:for-each>
|
516
|
+
<xsl:for-each select="gmd:updateScope">
|
517
|
+
<p><b><i>Update Scope:</i></b> <xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_ScopeCode">MD_ScopeCode</a>)</p>
|
518
|
+
</xsl:for-each>
|
519
|
+
<xsl:for-each select="gmd:contact">
|
520
|
+
<p><b><i>Contact:</i></b></p>
|
521
|
+
<xsl:call-template name="CI_ResponsibleParty">
|
522
|
+
<xsl:with-param name="element" select="gmd:CI_ResponsibleParty"/>
|
523
|
+
<xsl:with-param name="italicize-heading" select="false()"/>
|
524
|
+
</xsl:call-template>
|
525
|
+
</xsl:for-each>
|
526
|
+
</xsl:for-each>
|
527
|
+
</xsl:template>
|
528
|
+
|
529
|
+
<xsl:template match="gmd:graphicOverview">
|
530
|
+
<h4>Browse Graphic:</h4>
|
531
|
+
<xsl:for-each select="gmd:MD_BrowseGraphic">
|
532
|
+
<xsl:for-each select="gmd:fileName">
|
533
|
+
<p>
|
534
|
+
<!--<a href="{.}" target="_blank"><img src="{.}" height="260" border="0"/></a><br/>-->
|
535
|
+
<a href="{.}" class="browse fancybox fancybox.image"><img src="{.}" height="400" border="0"/></a><br/>
|
536
|
+
<a href="{.}" class="browse fancybox fancybox.image">View full image</a>
|
537
|
+
</p>
|
538
|
+
<p><b><i>Image File: </i></b><a href="{.}"><xsl:value-of select="."/></a></p>
|
539
|
+
</xsl:for-each>
|
540
|
+
<xsl:for-each select="gmd:fileDescription">
|
541
|
+
<p><b><i>File Description:</i></b></p>
|
542
|
+
<p><xsl:value-of select="."/></p>
|
543
|
+
</xsl:for-each>
|
544
|
+
<xsl:for-each select="gmd:fileType">
|
545
|
+
<p><b><i>File Type: </i></b><xsl:value-of select="."/></p>
|
546
|
+
</xsl:for-each>
|
547
|
+
</xsl:for-each>
|
548
|
+
</xsl:template>
|
549
|
+
|
550
|
+
<!--Create keywords indices (keys) so that we can do a unique sort below: -->
|
551
|
+
|
552
|
+
<xsl:key name="values_by_id" match="gmd:keyword" use="gco:CharacterString"/>
|
553
|
+
|
554
|
+
<xsl:template match="gmd:descriptiveKeywords">
|
555
|
+
<font>
|
556
|
+
<xsl:for-each select="gmd:MD_Keywords">
|
557
|
+
<p><b><i>Keywords:</i></b></p>
|
558
|
+
<blockquote>
|
559
|
+
<xsl:for-each select="gmd:type">
|
560
|
+
<p><b>Keyword Type: </b><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_KeywordTypeCode">MD_KeywordTypeCode</a>)</p>
|
561
|
+
</xsl:for-each>
|
562
|
+
<!--
|
563
|
+
Do unique sort method below instead to remove duplicates...
|
564
|
+
<xsl:for-each select="gmd:keyword">
|
565
|
+
<xsl:sort select="."/>
|
566
|
+
<b>Keyword: </b><xsl:value-of select="."/><br/>
|
567
|
+
</xsl:for-each>
|
568
|
+
-->
|
569
|
+
<!--
|
570
|
+
But this sort is excluding keywords from different groups that match;
|
571
|
+
e.g. when Project and Data Center are both the same...
|
572
|
+
<xsl:for-each select="gmd:keyword[ count( . | key( 'values_by_id', translate( normalize-space( gco:CharacterString ), ',', '' ) )[ 1 ]) = 1 ]">
|
573
|
+
-->
|
574
|
+
<xsl:for-each select="gmd:keyword">
|
575
|
+
<xsl:sort select="gco:CharacterString"/>
|
576
|
+
<xsl:if test="gco:CharacterString != '>'">
|
577
|
+
<xsl:variable name="keyword">
|
578
|
+
<xsl:call-template name="replace-string">
|
579
|
+
<xsl:with-param name="element" select="gco:CharacterString"/>
|
580
|
+
<xsl:with-param name="old-string">></xsl:with-param>
|
581
|
+
<xsl:with-param name="new-string"><xsl:value-of select="$separator"/></xsl:with-param>
|
582
|
+
</xsl:call-template>
|
583
|
+
</xsl:variable>
|
584
|
+
<xsl:variable name="keyword2">
|
585
|
+
<xsl:call-template name="replace-string">
|
586
|
+
<xsl:with-param name="element" select="$keyword"/>
|
587
|
+
<xsl:with-param name="old-string">&gt;</xsl:with-param>
|
588
|
+
<xsl:with-param name="new-string"><xsl:value-of select="$separator"/></xsl:with-param>
|
589
|
+
</xsl:call-template>
|
590
|
+
</xsl:variable>
|
591
|
+
<b>Keyword: </b><xsl:value-of select="$keyword2" disable-output-escaping="yes"/><br/>
|
592
|
+
</xsl:if>
|
593
|
+
</xsl:for-each>
|
594
|
+
<xsl:for-each select="gmd:thesaurusName">
|
595
|
+
<xsl:choose>
|
596
|
+
<xsl:when test="string-length( . )">
|
597
|
+
<p><b>Keyword Thesaurus:</b></p>
|
598
|
+
<blockquote>
|
599
|
+
<xsl:for-each select="gmd:CI_Citation">
|
600
|
+
<xsl:call-template name="CI_Citation">
|
601
|
+
<xsl:with-param name="element" select="."/>
|
602
|
+
<xsl:with-param name="italicize-heading" select="false()"/>
|
603
|
+
</xsl:call-template>
|
604
|
+
</xsl:for-each>
|
605
|
+
</blockquote>
|
606
|
+
</xsl:when>
|
607
|
+
<xsl:otherwise>
|
608
|
+
<p><b>Keyword Thesaurus: </b><xsl:value-of select="@gco:nilReason"/></p>
|
609
|
+
</xsl:otherwise>
|
610
|
+
</xsl:choose>
|
611
|
+
</xsl:for-each>
|
612
|
+
</blockquote>
|
613
|
+
</xsl:for-each>
|
614
|
+
</font>
|
615
|
+
</xsl:template>
|
616
|
+
|
617
|
+
<xsl:template match="gmd:taxonomy">
|
618
|
+
<h4>Taxonomy:</h4>
|
619
|
+
<font>
|
620
|
+
<xsl:for-each select="gmd:MD_TaxonSys">
|
621
|
+
<p><b><i>Taxonomic System:</i></b></p>
|
622
|
+
<blockquote>
|
623
|
+
<xsl:for-each select="gmd:classSys">
|
624
|
+
<xsl:call-template name="CI_Citation">
|
625
|
+
<xsl:with-param name="element" select="gmd:CI_Citation"/>
|
626
|
+
</xsl:call-template>
|
627
|
+
</xsl:for-each>
|
628
|
+
<xsl:for-each select="gmd:idref">
|
629
|
+
<xsl:for-each select="gmd:RS_Identifier">
|
630
|
+
<p><b>Identification Reference:</b></p>
|
631
|
+
<xsl:for-each select="gmd:authority">
|
632
|
+
<blockquote>
|
633
|
+
<xsl:call-template name="CI_Citation">
|
634
|
+
<xsl:with-param name="element" select="gmd:CI_Citation"/>
|
635
|
+
</xsl:call-template>
|
636
|
+
</blockquote>
|
637
|
+
</xsl:for-each>
|
638
|
+
</xsl:for-each>
|
639
|
+
</xsl:for-each>
|
640
|
+
<xsl:for-each select="gmd:obs">
|
641
|
+
<p><b>Observer:</b></p>
|
642
|
+
<blockquote>
|
643
|
+
<xsl:call-template name="CI_ResponsibleParty">
|
644
|
+
<xsl:with-param name="element" select="gmd:CI_ResponsibleParty"/>
|
645
|
+
</xsl:call-template>
|
646
|
+
</blockquote>
|
647
|
+
</xsl:for-each>
|
648
|
+
<xsl:for-each select="gmd:taxonpro">
|
649
|
+
<p><b>Taxonomic Procedures:</b></p>
|
650
|
+
<p><xsl:value-of select="."/></p>
|
651
|
+
</xsl:for-each>
|
652
|
+
<xsl:for-each select="gmd:taxoncom">
|
653
|
+
<p><b>Taxonomic Completeness:</b></p>
|
654
|
+
<p><xsl:value-of select="."/></p>
|
655
|
+
</xsl:for-each>
|
656
|
+
<xsl:for-each select="gmd:taxonCl">
|
657
|
+
<p><b>Taxonomic Classification:</b></p>
|
658
|
+
<xsl:apply-templates select="./gmd:MD_TaxonCl" />
|
659
|
+
</xsl:for-each>
|
660
|
+
</blockquote>
|
661
|
+
</xsl:for-each>
|
662
|
+
</font>
|
663
|
+
</xsl:template>
|
664
|
+
|
665
|
+
<xsl:template match="gmd:aggregationInfo">
|
666
|
+
<h4>Aggregation Information:</h4>
|
667
|
+
<xsl:for-each select="gmd:MD_AggregateInformation/gmd:aggregateDataSetName">
|
668
|
+
<p><b><i>Aggregate Dataset Name:</i></b></p>
|
669
|
+
<font>
|
670
|
+
<blockquote>
|
671
|
+
<xsl:call-template name="CI_Citation">
|
672
|
+
<xsl:with-param name="element" select="gmd:CI_Citation"/>
|
673
|
+
</xsl:call-template>
|
674
|
+
</blockquote>
|
675
|
+
</font>
|
676
|
+
</xsl:for-each>
|
677
|
+
<xsl:for-each select="gmd:MD_AggregateInformation/gmd:aggregateDataSetIdentifier">
|
678
|
+
<p><b><i>Aggregate Dataset Identifier:</i></b></p>
|
679
|
+
<font>
|
680
|
+
<blockquote>
|
681
|
+
<xsl:if test="gmd:MD_Identifier/gmd:code">
|
682
|
+
<b>Code: </b><xsl:value-of select="gmd:MD_Identifier/gmd:code"/><br/>
|
683
|
+
</xsl:if>
|
684
|
+
<xsl:if test="gmd:MD_Identifier/gmd:authority">
|
685
|
+
<b>Authority: </b><xsl:value-of select="gmd:MD_Identifier/gmd:authority/gmd:CI_Citation/gmd:title"/><br/>
|
686
|
+
</xsl:if>
|
687
|
+
</blockquote>
|
688
|
+
</font>
|
689
|
+
</xsl:for-each>
|
690
|
+
<xsl:for-each select="gmd:MD_AggregateInformation/gmd:associationType">
|
691
|
+
<p><b><i>Association Type: </i></b> <xsl:value-of select="gmd:DS_AssociationTypeCode"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#DS_AssociationTypeCode">DS_AssociationTypeCode</a>)</p>
|
692
|
+
</xsl:for-each>
|
693
|
+
<xsl:for-each select="gmd:MD_AggregateInformation/gmd:initiativeType">
|
694
|
+
<p><b><i>Initiative Type: </i></b> <xsl:value-of select="gmd:DS_InitiativeTypeCode"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#DS_InitiativeTypeCode">DS_InitiativeTypeCode</a>)</p>
|
695
|
+
</xsl:for-each>
|
696
|
+
</xsl:template>
|
697
|
+
|
698
|
+
<xsl:template match="gmd:resourceConstraints">
|
699
|
+
<h4>Resource Constraints:</h4>
|
700
|
+
<xsl:for-each select="gmd:MD_LegalConstraints">
|
701
|
+
<p><b><i>Legal Constraints:</i></b></p>
|
702
|
+
<blockquote>
|
703
|
+
<xsl:for-each select="gmd:accessConstraints">
|
704
|
+
<p><b>Access Constraints: </b><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_RestrictionCode">MD_RestrictionCode</a>)</p>
|
705
|
+
</xsl:for-each>
|
706
|
+
<xsl:for-each select="gmd:useConstraints">
|
707
|
+
<p><b>Use Constraints: </b><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_RestrictionCode">MD_RestrictionCode</a>)</p>
|
708
|
+
</xsl:for-each>
|
709
|
+
<xsl:for-each select="gmd:otherConstraints">
|
710
|
+
<p><b>Other Constraints:</b></p>
|
711
|
+
<p><xsl:value-of select="."/></p>
|
712
|
+
</xsl:for-each>
|
713
|
+
<xsl:for-each select="gmd:useLimitation">
|
714
|
+
<p><b>Use Limitation:</b></p>
|
715
|
+
<p><xsl:value-of select="."/></p>
|
716
|
+
</xsl:for-each>
|
717
|
+
</blockquote>
|
718
|
+
</xsl:for-each>
|
719
|
+
</xsl:template>
|
720
|
+
|
721
|
+
<xsl:template match="gmd:extent">
|
722
|
+
<h4>Extent Information:</h4>
|
723
|
+
<font>
|
724
|
+
<xsl:for-each select="gmd:EX_Extent">
|
725
|
+
<p><b><i>Spatial Temporal Extent:</i></b></p>
|
726
|
+
<blockquote>
|
727
|
+
<xsl:for-each select="gmd:geographicElement">
|
728
|
+
<p><b>Geographic Element:</b></p>
|
729
|
+
<blockquote>
|
730
|
+
<p><b>Bounding Coordinates:</b></p>
|
731
|
+
<blockquote>
|
732
|
+
<xsl:comment> Area to display current cursor lat/lon location: </xsl:comment>
|
733
|
+
<div id="message" class="SmallTextGray"> </div>
|
734
|
+
<b>Westbound Longitude: </b>
|
735
|
+
<xsl:call-template name="strip-digits">
|
736
|
+
<xsl:with-param name="element" select="gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/gco:Decimal"/>
|
737
|
+
<xsl:with-param name="num-digits" select="5"/>
|
738
|
+
</xsl:call-template>°<br/>
|
739
|
+
<b>Eastbound Longitude: </b>
|
740
|
+
<xsl:call-template name="strip-digits">
|
741
|
+
<xsl:with-param name="element" select="gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/gco:Decimal"/>
|
742
|
+
<xsl:with-param name="num-digits" select="5"/>
|
743
|
+
</xsl:call-template>°<br/>
|
744
|
+
<b>Southbound Latitude: </b>
|
745
|
+
<xsl:call-template name="strip-digits">
|
746
|
+
<xsl:with-param name="element" select="gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/gco:Decimal"/>
|
747
|
+
<xsl:with-param name="num-digits" select="5"/>
|
748
|
+
</xsl:call-template>°<br/>
|
749
|
+
<b>Northbound Latitude: </b>
|
750
|
+
<xsl:call-template name="strip-digits">
|
751
|
+
<xsl:with-param name="element" select="gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/gco:Decimal"/>
|
752
|
+
<xsl:with-param name="num-digits" select="5"/>
|
753
|
+
</xsl:call-template>°<br/>
|
754
|
+
</blockquote>
|
755
|
+
</blockquote>
|
756
|
+
</xsl:for-each>
|
757
|
+
<xsl:for-each select="gmd:temporalElement">
|
758
|
+
<p><b>Temporal Element:</b></p>
|
759
|
+
<blockquote>
|
760
|
+
<p><b>Time Period:</b></p>
|
761
|
+
<blockquote>
|
762
|
+
<xsl:for-each select="//gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:description">
|
763
|
+
<b>Description: </b><xsl:value-of select="."/><br/>
|
764
|
+
</xsl:for-each>
|
765
|
+
<xsl:choose>
|
766
|
+
<xsl:when test="gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:beginPosition">
|
767
|
+
<xsl:for-each select="gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:beginPosition">
|
768
|
+
<b>Begin Position: </b>
|
769
|
+
<xsl:call-template name="date">
|
770
|
+
<xsl:with-param name="element" select="."/>
|
771
|
+
</xsl:call-template>
|
772
|
+
<br/>
|
773
|
+
</xsl:for-each>
|
774
|
+
<xsl:for-each select="gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:endPosition">
|
775
|
+
<b>End Position: </b>
|
776
|
+
<xsl:call-template name="date">
|
777
|
+
<xsl:with-param name="element" select="."/>
|
778
|
+
</xsl:call-template>
|
779
|
+
<br/>
|
780
|
+
</xsl:for-each>
|
781
|
+
</xsl:when>
|
782
|
+
<xsl:when test="gmd:EX_TemporalExtent/gmd:extent/gml:TimeInstant/gml:timePosition">
|
783
|
+
<xsl:for-each select="gmd:EX_TemporalExtent/gmd:extent/gml:TimeInstant/gml:timePosition">
|
784
|
+
<b>Time Instant: </b>
|
785
|
+
<xsl:call-template name="date">
|
786
|
+
<xsl:with-param name="element" select="."/>
|
787
|
+
</xsl:call-template>
|
788
|
+
<br/>
|
789
|
+
</xsl:for-each>
|
790
|
+
</xsl:when>
|
791
|
+
</xsl:choose>
|
792
|
+
</blockquote>
|
793
|
+
</blockquote>
|
794
|
+
</xsl:for-each>
|
795
|
+
<xsl:for-each select="gmd:verticalElement">
|
796
|
+
<xsl:if test="gmd:EX_VerticalExtent/gmd:minimumValue != 0 or gmd:EX_VerticalExtent/gmd:maximumValue != 0">
|
797
|
+
<p><b>Vertical Element:</b></p>
|
798
|
+
<blockquote>
|
799
|
+
<b>Minimum Value: </b>
|
800
|
+
<xsl:call-template name="strip-digits">
|
801
|
+
<xsl:with-param name="element" select="gmd:EX_VerticalExtent/gmd:minimumValue"/>
|
802
|
+
<xsl:with-param name="num-digits" select="5"/>
|
803
|
+
</xsl:call-template><br/>
|
804
|
+
<b>Maximum Value: </b>
|
805
|
+
<xsl:call-template name="strip-digits">
|
806
|
+
<xsl:with-param name="element" select="gmd:EX_VerticalExtent/gmd:maximumValue"/>
|
807
|
+
<xsl:with-param name="num-digits" select="5"/>
|
808
|
+
</xsl:call-template><br/>
|
809
|
+
<xsl:choose>
|
810
|
+
<xsl:when test="string-length( gmd:EX_VerticalExtent/gmd:verticalCRS )">
|
811
|
+
<b>Coordinate Reference System (CRS): </b><xsl:value-of select="gmd:EX_VerticalExtent/gmd:verticalCRS"/><br/>
|
812
|
+
</xsl:when>
|
813
|
+
<xsl:otherwise>
|
814
|
+
<b>Coordinate Reference System (CRS): </b><xsl:value-of select="gmd:EX_VerticalExtent/gmd:verticalCRS/@gco:nilReason"/><br/>
|
815
|
+
</xsl:otherwise>
|
816
|
+
</xsl:choose>
|
817
|
+
</blockquote>
|
818
|
+
</xsl:if>
|
819
|
+
</xsl:for-each>
|
820
|
+
</blockquote>
|
821
|
+
</xsl:for-each>
|
822
|
+
</font>
|
823
|
+
</xsl:template>
|
824
|
+
|
825
|
+
<xsl:template match="gmd:supplementalInformation">
|
826
|
+
<h4>Supplemental Information:</h4>
|
827
|
+
<p><xsl:value-of select="."/></p>
|
828
|
+
</xsl:template>
|
829
|
+
|
830
|
+
<xsl:template match="gmd:identificationInfo/srv:SV_ServiceIdentification">
|
831
|
+
<p><b><i>Service Identification:</i></b></p>
|
832
|
+
<font>
|
833
|
+
<blockquote>
|
834
|
+
<p><b>Identifier: </b><xsl:value-of select="@id"/></p>
|
835
|
+
<p><b>Service Type: </b><xsl:value-of select="srv:serviceType"/></p>
|
836
|
+
<xsl:for-each select="srv:containsOperations/srv:SV_OperationMetadata">
|
837
|
+
<p><b>Contains Operation:</b></p>
|
838
|
+
<blockquote>
|
839
|
+
<p><b>Operation Name: </b><xsl:value-of select="srv:operationName"/></p>
|
840
|
+
<xsl:call-template name="CI_OnlineResource">
|
841
|
+
<xsl:with-param name="element" select="srv:connectPoint/gmd:CI_OnlineResource"/>
|
842
|
+
</xsl:call-template>
|
843
|
+
</blockquote>
|
844
|
+
</xsl:for-each>
|
845
|
+
</blockquote>
|
846
|
+
</font>
|
847
|
+
</xsl:template>
|
848
|
+
|
849
|
+
<!-- DATA_QUALITY_INFORMATION: ********************************************-->
|
850
|
+
|
851
|
+
<xsl:template match="gmd:dataQualityInfo/gmd:DQ_DataQuality">
|
852
|
+
<hr/>
|
853
|
+
<h3><a name="Data_Quality_Information"></a>Data Quality Information:</h3>
|
854
|
+
<xsl:apply-templates select="gmd:scope"/>
|
855
|
+
<xsl:if test="string-length( gmd:report )">
|
856
|
+
<h4>Reports:</h4>
|
857
|
+
<xsl:apply-templates select="gmd:report"/>
|
858
|
+
</xsl:if>
|
859
|
+
<xsl:apply-templates select="gmd:lineage"/>
|
860
|
+
<p><a href="javascript:void(0)" onClick="window.scrollTo( 0, 0 ); this.blur(); return false;">Back to Top</a></p>
|
861
|
+
</xsl:template>
|
862
|
+
|
863
|
+
<xsl:template match="gmd:scope">
|
864
|
+
<xsl:if test="string-length( . )">
|
865
|
+
<h4>Scope:</h4>
|
866
|
+
<p><xsl:value-of select="."/></p>
|
867
|
+
</xsl:if>
|
868
|
+
</xsl:template>
|
869
|
+
|
870
|
+
<xsl:template match="gmd:report">
|
871
|
+
<xsl:for-each select="gmd:DQ_CompletenessCommission">
|
872
|
+
<p><b><i>Completeness Commission:</i></b></p>
|
873
|
+
<blockquote>
|
874
|
+
<p><b>Evaluation Method Description:</b></p>
|
875
|
+
<p><xsl:value-of select="gmd:evaluationMethodDescription"/></p>
|
876
|
+
<xsl:if test="string-length( gmd:result )">
|
877
|
+
<p><b>Result:</b></p>
|
878
|
+
<p><xsl:value-of select="gmd:result"/></p>
|
879
|
+
</xsl:if>
|
880
|
+
</blockquote>
|
881
|
+
</xsl:for-each>
|
882
|
+
<xsl:for-each select="gmd:DQ_CompletenessOmission">
|
883
|
+
<p><b><i>Completeness Omission:</i></b></p>
|
884
|
+
<blockquote>
|
885
|
+
<p><b>Evaluation Method Description:</b></p>
|
886
|
+
<p><xsl:value-of select="gmd:evaluationMethodDescription"/></p>
|
887
|
+
<xsl:if test="string-length( gmd:result )">
|
888
|
+
<p><b>Result:</b></p>
|
889
|
+
<p><xsl:value-of select="gmd:result"/></p>
|
890
|
+
</xsl:if>
|
891
|
+
</blockquote>
|
892
|
+
</xsl:for-each>
|
893
|
+
<xsl:for-each select="gmd:DQ_ConceptualConsistency">
|
894
|
+
<p><b><i>Conceptual Consistency:</i></b></p>
|
895
|
+
<blockquote>
|
896
|
+
<p><b>Measure Description:</b></p>
|
897
|
+
<p><xsl:value-of select="gmd:measureDescription"/></p>
|
898
|
+
<xsl:if test="string-length( gmd:result )">
|
899
|
+
<p><b>Result:</b></p>
|
900
|
+
<p><xsl:value-of select="gmd:result"/></p>
|
901
|
+
</xsl:if>
|
902
|
+
</blockquote>
|
903
|
+
</xsl:for-each>
|
904
|
+
</xsl:template>
|
905
|
+
|
906
|
+
<xsl:template match="gmd:lineage">
|
907
|
+
<xsl:for-each select="gmd:LI_Lineage">
|
908
|
+
<h4>Lineage:</h4>
|
909
|
+
<xsl:for-each select="gmd:processStep/gmd:LI_ProcessStep">
|
910
|
+
<p><b><i>Process Step:</i></b></p>
|
911
|
+
<p><xsl:value-of select="gmd:description"/></p>
|
912
|
+
<blockquote>
|
913
|
+
<xsl:for-each select="gmd:dateTime">
|
914
|
+
<xsl:if test="string-length( . )">
|
915
|
+
<p><b>Date And Time: </b><xsl:value-of select="."/></p>
|
916
|
+
</xsl:if>
|
917
|
+
</xsl:for-each>
|
918
|
+
<xsl:for-each select="gmd:rationale">
|
919
|
+
<xsl:if test="string-length( . )">
|
920
|
+
<p><b>Rationale:</b></p>
|
921
|
+
<p><xsl:value-of select="."/></p>
|
922
|
+
</xsl:if>
|
923
|
+
</xsl:for-each>
|
924
|
+
</blockquote>
|
925
|
+
</xsl:for-each>
|
926
|
+
<xsl:for-each select="gmd:statement">
|
927
|
+
<p><b><i>Statement:</i></b></p>
|
928
|
+
<p><xsl:value-of select="."/></p>
|
929
|
+
</xsl:for-each>
|
930
|
+
</xsl:for-each>
|
931
|
+
</xsl:template>
|
932
|
+
|
933
|
+
<!-- SPATIAL_REPRESENTATION_INFORMATION: **********************************-->
|
934
|
+
|
935
|
+
<xsl:template match="gmd:spatialRepresentationInfo/gmd:MD_GridSpatialRepresentation">
|
936
|
+
<hr/>
|
937
|
+
<h3><a name="Spatial_Representation_Information"></a>Spatial Representation Information:</h3>
|
938
|
+
<xsl:apply-templates select="gmd:numberOfDimensions"/>
|
939
|
+
<xsl:if test="string-length( gmd:axisDimensionProperties )">
|
940
|
+
<h4>Axis Dimension Properties:</h4>
|
941
|
+
<xsl:apply-templates select="gmd:axisDimensionProperties"/>
|
942
|
+
</xsl:if>
|
943
|
+
<xsl:apply-templates select="gmd:cellGeometry"/>
|
944
|
+
<!-- Fill these in later when I have actual examples:
|
945
|
+
<xsl:apply-templates select="gmd:transformationParameterAvailability"/>
|
946
|
+
-->
|
947
|
+
<p><a href="javascript:void(0)" onClick="window.scrollTo( 0, 0 ); this.blur(); return false;">Back to Top</a></p>
|
948
|
+
</xsl:template>
|
949
|
+
|
950
|
+
<xsl:template match="gmd:numberOfDimensions">
|
951
|
+
<h4 style="display: inline">Number Of Dimensions:</h4>
|
952
|
+
<p style="display: inline"><xsl:value-of select="."/></p>
|
953
|
+
<p></p>
|
954
|
+
</xsl:template>
|
955
|
+
|
956
|
+
<xsl:template match="gmd:axisDimensionProperties">
|
957
|
+
<xsl:for-each select="gmd:MD_Dimension">
|
958
|
+
<p><b><i>Dimension:</i></b></p>
|
959
|
+
<font>
|
960
|
+
<blockquote>
|
961
|
+
<xsl:for-each select="gmd:dimensionName">
|
962
|
+
<xsl:if test="string-length( . )">
|
963
|
+
<b>Dimension Name: </b><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_DimensionNameTypeCode">MD_DimensionNameTypeCode</a>)<br/>
|
964
|
+
</xsl:if>
|
965
|
+
</xsl:for-each>
|
966
|
+
<xsl:for-each select="gmd:dimensionSize">
|
967
|
+
<xsl:if test="string-length( . )">
|
968
|
+
<b>Dimension Size: </b><xsl:value-of select="."/><br/>
|
969
|
+
</xsl:if>
|
970
|
+
</xsl:for-each>
|
971
|
+
<xsl:for-each select="gmd:resolution">
|
972
|
+
<xsl:if test="string-length( gco:Scale )">
|
973
|
+
<b>Resolution: </b>
|
974
|
+
<xsl:call-template name="strip-digits">
|
975
|
+
<xsl:with-param name="element" select="gco:Scale"/>
|
976
|
+
<xsl:with-param name="num-digits" select="5"/>
|
977
|
+
</xsl:call-template>
|
978
|
+
<xsl:choose>
|
979
|
+
<xsl:when test="gco:Scale/@uom = 'decimalDegrees'">
|
980
|
+
<xsl:text>°</xsl:text>
|
981
|
+
</xsl:when>
|
982
|
+
<xsl:otherwise>
|
983
|
+
<xsl:text> </xsl:text><xsl:value-of select="gco:Scale/@uom"/>
|
984
|
+
</xsl:otherwise>
|
985
|
+
</xsl:choose>
|
986
|
+
<br/>
|
987
|
+
</xsl:if>
|
988
|
+
<xsl:if test="string-length( gco:Measure )">
|
989
|
+
<xsl:variable name="measure">
|
990
|
+
<xsl:call-template name="strip-digits">
|
991
|
+
<xsl:with-param name="element" select="gco:Measure"/>
|
992
|
+
<xsl:with-param name="num-digits" select="5"/>
|
993
|
+
</xsl:call-template>
|
994
|
+
</xsl:variable>
|
995
|
+
<xsl:choose>
|
996
|
+
<xsl:when test="gco:Measure/@uom = '1'">
|
997
|
+
<b>Resolution: </b><xsl:value-of select="$measure"/>
|
998
|
+
</xsl:when>
|
999
|
+
<xsl:otherwise>
|
1000
|
+
<b>Resolution: </b><xsl:value-of select="$measure"/><xsl:text> </xsl:text><xsl:value-of select="gco:Measure/@uom"/><br/>
|
1001
|
+
</xsl:otherwise>
|
1002
|
+
</xsl:choose>
|
1003
|
+
</xsl:if>
|
1004
|
+
</xsl:for-each>
|
1005
|
+
</blockquote>
|
1006
|
+
</font>
|
1007
|
+
</xsl:for-each>
|
1008
|
+
</xsl:template>
|
1009
|
+
|
1010
|
+
<xsl:template match="gmd:cellGeometry">
|
1011
|
+
<h4 style="display: inline">Cell Geometry:</h4>
|
1012
|
+
<p style="display: inline"><xsl:value-of select="gmd:MD_CellGeometryCode"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_CellGeometryCode">MD_CellGeometryCode</a>)</p>
|
1013
|
+
<p></p>
|
1014
|
+
</xsl:template>
|
1015
|
+
|
1016
|
+
<xsl:template match="gmd:transformationParameterAvailability">
|
1017
|
+
<h4>Transformation Parameter Availability:</h4>
|
1018
|
+
</xsl:template>
|
1019
|
+
|
1020
|
+
<!-- CONTENT_INFORMATION: *************************************************-->
|
1021
|
+
|
1022
|
+
<xsl:template match="gmd:contentInfo">
|
1023
|
+
<hr/>
|
1024
|
+
<h3><a name="Content_Information"></a>Content Information:</h3>
|
1025
|
+
<xsl:apply-templates select="gmd:MI_CoverageDescription"/>
|
1026
|
+
<xsl:apply-templates select="gmd:MD_FeatureCatalogueDescription"/>
|
1027
|
+
<p><a href="javascript:void(0)" onClick="window.scrollTo( 0, 0 ); this.blur(); return false;">Back to Top</a></p>
|
1028
|
+
</xsl:template>
|
1029
|
+
|
1030
|
+
<xsl:template match="gmd:MI_CoverageDescription">
|
1031
|
+
<h4>Coverage Description:</h4>
|
1032
|
+
<xsl:apply-templates select="gmd:attributeDescription"/>
|
1033
|
+
<xsl:apply-templates select="gmd:contentType"/>
|
1034
|
+
<xsl:if test="string-length( gmd:dimension )">
|
1035
|
+
<p><b><i>Dimensions:</i></b></p>
|
1036
|
+
<ul>
|
1037
|
+
<xsl:for-each select="gmd:dimension">
|
1038
|
+
<xsl:sort select="gmd:MD_Band/gmd:sequenceIdentifier/gco:MemberName/gco:aName"/>
|
1039
|
+
<li><a href="#{gmd:MD_Band/gmd:sequenceIdentifier/gco:MemberName/gco:aName/gco:CharacterString}"><xsl:value-of select="gmd:MD_Band/gmd:sequenceIdentifier/gco:MemberName/gco:aName"/></a></li>
|
1040
|
+
</xsl:for-each>
|
1041
|
+
</ul>
|
1042
|
+
</xsl:if>
|
1043
|
+
<xsl:apply-templates select="gmd:dimension"/>
|
1044
|
+
<xsl:apply-templates select="gmd:rangeElementDescription"/>
|
1045
|
+
</xsl:template>
|
1046
|
+
|
1047
|
+
<xsl:template match="gmd:attributeDescription">
|
1048
|
+
<xsl:if test="string-length( . )">
|
1049
|
+
<p><b><i>Attribute Description:</i></b></p>
|
1050
|
+
<p><xsl:value-of select="."/></p>
|
1051
|
+
</xsl:if>
|
1052
|
+
</xsl:template>
|
1053
|
+
|
1054
|
+
<xsl:template match="gmd:contentType">
|
1055
|
+
<xsl:if test="string-length( . )">
|
1056
|
+
<p><b><i>Content Type: </i></b><xsl:value-of select="gmd:MD_CoverageContentTypeCode"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_CoverageContentTypeCode">MD_CoverageContentTypeCode</a>)</p>
|
1057
|
+
</xsl:if>
|
1058
|
+
</xsl:template>
|
1059
|
+
|
1060
|
+
<xsl:template match="gmd:dimension">
|
1061
|
+
<xsl:if test="string-length( . )">
|
1062
|
+
<p><a name="{gmd:MD_Band/gmd:sequenceIdentifier/gco:MemberName/gco:aName/gco:CharacterString}"></a><b><i>Dimension: </i></b></p>
|
1063
|
+
<blockquote>
|
1064
|
+
<font>
|
1065
|
+
<xsl:apply-templates select="gmd:MD_Band"/>
|
1066
|
+
</font>
|
1067
|
+
</blockquote>
|
1068
|
+
</xsl:if>
|
1069
|
+
</xsl:template>
|
1070
|
+
|
1071
|
+
<xsl:template match="gmd:MD_Band">
|
1072
|
+
<xsl:if test="string-length( . )">
|
1073
|
+
<xsl:apply-templates select="gmd:sequenceIdentifier"/>
|
1074
|
+
<xsl:apply-templates select="gmd:units"/>
|
1075
|
+
<xsl:if test="string-length( gmd:descriptor )">
|
1076
|
+
<b>Descriptor:</b><br/>
|
1077
|
+
<p><xsl:value-of select="gmd:descriptor"/></p>
|
1078
|
+
</xsl:if>
|
1079
|
+
</xsl:if>
|
1080
|
+
</xsl:template>
|
1081
|
+
|
1082
|
+
<xsl:template match="gmd:sequenceIdentifier">
|
1083
|
+
<xsl:apply-templates select="gco:MemberName"/>
|
1084
|
+
</xsl:template>
|
1085
|
+
|
1086
|
+
<xsl:template match="gco:MemberName">
|
1087
|
+
<xsl:if test="string-length( gco:aName )">
|
1088
|
+
<b>Attribute Name: </b><xsl:value-of select="gco:aName"/><br/>
|
1089
|
+
</xsl:if>
|
1090
|
+
<xsl:apply-templates select="gco:attributeType"/>
|
1091
|
+
</xsl:template>
|
1092
|
+
|
1093
|
+
<xsl:template match="gco:attributeType">
|
1094
|
+
<xsl:if test="string-length( gco:TypeName/gco:aName )">
|
1095
|
+
<b>Attribute Type: </b><xsl:value-of select="gco:TypeName/gco:aName"/><br/>
|
1096
|
+
</xsl:if>
|
1097
|
+
</xsl:template>
|
1098
|
+
|
1099
|
+
<xsl:template match="gmd:units">
|
1100
|
+
<xsl:choose>
|
1101
|
+
<xsl:when test="string-length( . )">
|
1102
|
+
<b>Units: </b><xsl:value-of select="."/><br/>
|
1103
|
+
</xsl:when>
|
1104
|
+
<xsl:otherwise>
|
1105
|
+
<xsl:variable name="unitsUrl">
|
1106
|
+
<xsl:choose>
|
1107
|
+
<xsl:when test="contains( @xlink:href, 'someUnitsDictionary')">
|
1108
|
+
<xsl:value-of select="substring-after( @xlink:href, '#' )"/>
|
1109
|
+
</xsl:when>
|
1110
|
+
<xsl:otherwise>
|
1111
|
+
<xsl:value-of select="@xlink:href"/>
|
1112
|
+
</xsl:otherwise>
|
1113
|
+
</xsl:choose>
|
1114
|
+
</xsl:variable>
|
1115
|
+
<xsl:choose>
|
1116
|
+
<xsl:when test="contains( $unitsUrl, 'http' )">
|
1117
|
+
<b>Units: </b><a href="{$unitsUrl}"><xsl:value-of select="$unitsUrl"/></a><br/>
|
1118
|
+
</xsl:when>
|
1119
|
+
<xsl:otherwise>
|
1120
|
+
<b>Units: </b><!--<xsl:value-of select="$unitsUrl"/><br/>-->
|
1121
|
+
<!-- Replace URL encodings with text equivalents: -->
|
1122
|
+
<xsl:variable name="unitsUrlDecoded">
|
1123
|
+
<xsl:call-template name="replace-string">
|
1124
|
+
<xsl:with-param name="element" select="$unitsUrl"/>
|
1125
|
+
<xsl:with-param name="old-string">%20</xsl:with-param>
|
1126
|
+
<xsl:with-param name="new-string"> </xsl:with-param>
|
1127
|
+
</xsl:call-template>
|
1128
|
+
</xsl:variable>
|
1129
|
+
<xsl:variable name="unitsUrlDecoded2">
|
1130
|
+
<xsl:call-template name="replace-string">
|
1131
|
+
<xsl:with-param name="element" select="$unitsUrlDecoded"/>
|
1132
|
+
<xsl:with-param name="old-string">%3A</xsl:with-param>
|
1133
|
+
<xsl:with-param name="new-string">-</xsl:with-param>
|
1134
|
+
</xsl:call-template>
|
1135
|
+
</xsl:variable>
|
1136
|
+
<xsl:value-of select="$unitsUrlDecoded2"/>
|
1137
|
+
<br/>
|
1138
|
+
</xsl:otherwise>
|
1139
|
+
</xsl:choose>
|
1140
|
+
</xsl:otherwise>
|
1141
|
+
</xsl:choose>
|
1142
|
+
</xsl:template>
|
1143
|
+
|
1144
|
+
<xsl:template match="gmd:rangeElementDescription">
|
1145
|
+
<xsl:if test="string-length( . )">
|
1146
|
+
</xsl:if>
|
1147
|
+
</xsl:template>
|
1148
|
+
|
1149
|
+
<xsl:template match="gmd:MD_FeatureCatalogueDescription">
|
1150
|
+
<h4>Feature Catalogue Description:</h4>
|
1151
|
+
<xsl:for-each select="gmd:includedWithDataset">
|
1152
|
+
<p>
|
1153
|
+
<b><i>Included With Dataset?: </i></b>
|
1154
|
+
<xsl:choose>
|
1155
|
+
<xsl:when test=".">
|
1156
|
+
<xsl:text>Yes</xsl:text>
|
1157
|
+
</xsl:when>
|
1158
|
+
<xsl:otherwise>
|
1159
|
+
<xsl:text>No</xsl:text>
|
1160
|
+
</xsl:otherwise>
|
1161
|
+
</xsl:choose>
|
1162
|
+
</p>
|
1163
|
+
</xsl:for-each>
|
1164
|
+
<xsl:for-each select="gmd:featureTypes">
|
1165
|
+
<p><b><i>Feature Types: </i></b><xsl:value-of select="gco:LocalName/@codeSpace"/></p>
|
1166
|
+
</xsl:for-each>
|
1167
|
+
<xsl:for-each select="gmd:featureCatalogueCitation">
|
1168
|
+
<p>
|
1169
|
+
<b><i>Feature Catalogue Citation: </i></b>
|
1170
|
+
<xsl:choose>
|
1171
|
+
<xsl:when test="string-length( gmd:CI_Citation )">
|
1172
|
+
<xsl:call-template name="CI_Citation">
|
1173
|
+
<xsl:with-param name="element" select="gmd:CI_Citation"/>
|
1174
|
+
</xsl:call-template>
|
1175
|
+
</xsl:when>
|
1176
|
+
<xsl:otherwise>
|
1177
|
+
<xsl:value-of select="@gco:nilReason"/>
|
1178
|
+
</xsl:otherwise>
|
1179
|
+
</xsl:choose>
|
1180
|
+
</p>
|
1181
|
+
</xsl:for-each>
|
1182
|
+
</xsl:template>
|
1183
|
+
|
1184
|
+
<!-- DISTRIBUTION_INFORMATION: ********************************************-->
|
1185
|
+
|
1186
|
+
<xsl:template match="gmd:distributionInfo/gmd:MD_Distribution">
|
1187
|
+
<hr/>
|
1188
|
+
<h3><a name="Distribution_Information"></a>Distribution Information:</h3>
|
1189
|
+
<xsl:apply-templates select="gmd:distributor"/>
|
1190
|
+
<xsl:apply-templates select="gmd:distributionFormat"/>
|
1191
|
+
<xsl:apply-templates select="gmd:transferOptions"/>
|
1192
|
+
<p><a href="javascript:void(0)" onClick="window.scrollTo( 0, 0 ); this.blur(); return false;">Back to Top</a></p>
|
1193
|
+
</xsl:template>
|
1194
|
+
|
1195
|
+
<xsl:template match="gmd:distributor">
|
1196
|
+
<h4>Distributor:</h4>
|
1197
|
+
<font>
|
1198
|
+
<xsl:for-each select="gmd:MD_Distributor/gmd:distributorContact">
|
1199
|
+
<p><b><i>Distributor Contact:</i></b></p>
|
1200
|
+
<blockquote>
|
1201
|
+
<xsl:call-template name="CI_ResponsibleParty">
|
1202
|
+
<xsl:with-param name="element" select="gmd:CI_ResponsibleParty"/>
|
1203
|
+
<xsl:with-param name="italicize-heading" select="false()"/>
|
1204
|
+
</xsl:call-template>
|
1205
|
+
</blockquote>
|
1206
|
+
</xsl:for-each>
|
1207
|
+
<xsl:for-each select="gmd:MD_Distributor/gmd:distributionOrderProcess">
|
1208
|
+
<p><b><i>Distribution Order Process:</i></b></p>
|
1209
|
+
<blockquote>
|
1210
|
+
<xsl:for-each select="gmd:MD_StandardOrderProcess">
|
1211
|
+
<p><b>Standard Order Process:</b></p>
|
1212
|
+
<blockquote>
|
1213
|
+
<xsl:for-each select="gmd:fees">
|
1214
|
+
<p><b>Fees: </b><xsl:value-of select="."/></p>
|
1215
|
+
</xsl:for-each>
|
1216
|
+
</blockquote>
|
1217
|
+
</xsl:for-each>
|
1218
|
+
</blockquote>
|
1219
|
+
</xsl:for-each>
|
1220
|
+
<xsl:if test="string-length( gmd:MD_Distributor/gmd:distributorFormat )">
|
1221
|
+
<p><b><i>Distributor Formats:</i></b></p>
|
1222
|
+
<blockquote>
|
1223
|
+
<xsl:apply-templates select="gmd:MD_Distributor/gmd:distributorFormat"/>
|
1224
|
+
</blockquote>
|
1225
|
+
</xsl:if>
|
1226
|
+
<xsl:if test="string-length( gmd:MD_Distributor/gmd:distributorTransferOptions )">
|
1227
|
+
<p><b><i>Distributor Transfer Options:</i></b></p>
|
1228
|
+
<xsl:apply-templates select="gmd:MD_Distributor/gmd:distributorTransferOptions"/>
|
1229
|
+
</xsl:if>
|
1230
|
+
</font>
|
1231
|
+
</xsl:template>
|
1232
|
+
|
1233
|
+
<xsl:template match="gmd:distributorFormat">
|
1234
|
+
<b>Name: </b><xsl:value-of select="gmd:MD_Format/gmd:name"/><br/>
|
1235
|
+
<xsl:choose>
|
1236
|
+
<xsl:when test="string-length( gmd:MD_Format/gmd:version )">
|
1237
|
+
<b>Version: </b><xsl:value-of select="gmd:MD_Format/gmd:version"/><br/>
|
1238
|
+
</xsl:when>
|
1239
|
+
<xsl:otherwise>
|
1240
|
+
<b>Version: </b><xsl:value-of select="gmd:MD_Format/gmd:version/@gco:nilReason"/><br/>
|
1241
|
+
</xsl:otherwise>
|
1242
|
+
</xsl:choose>
|
1243
|
+
</xsl:template>
|
1244
|
+
|
1245
|
+
<xsl:template match="gmd:distributorTransferOptions">
|
1246
|
+
<xsl:call-template name="CI_OnlineResource">
|
1247
|
+
<xsl:with-param name="element" select="gmd:MD_DigitalTransferOptions/gmd:onLine/gmd:CI_OnlineResource"/>
|
1248
|
+
</xsl:call-template>
|
1249
|
+
</xsl:template>
|
1250
|
+
|
1251
|
+
<xsl:template match="gmd:distributionFormat">
|
1252
|
+
<h4>Distribution Format:</h4>
|
1253
|
+
<font>
|
1254
|
+
<xsl:for-each select="gmd:MD_Format">
|
1255
|
+
<p><b><i>Data File Format:</i></b></p>
|
1256
|
+
<blockquote>
|
1257
|
+
<xsl:if test="string-length( gmd:name )">
|
1258
|
+
<b>Name: </b><xsl:value-of select="gmd:name"/><br/>
|
1259
|
+
</xsl:if>
|
1260
|
+
<xsl:if test="string-length( gmd:version )">
|
1261
|
+
<b>Version: </b><xsl:value-of select="gmd:version"/><br/>
|
1262
|
+
</xsl:if>
|
1263
|
+
<xsl:if test="string-length( gmd:specification )">
|
1264
|
+
<b>Specification: </b><xsl:value-of select="gmd:specification"/><br/>
|
1265
|
+
</xsl:if>
|
1266
|
+
</blockquote>
|
1267
|
+
</xsl:for-each>
|
1268
|
+
</font>
|
1269
|
+
</xsl:template>
|
1270
|
+
|
1271
|
+
<xsl:template match="gmd:transferOptions">
|
1272
|
+
<h4>Digital Transfer Options:</h4>
|
1273
|
+
<xsl:for-each select="gmd:MD_DigitalTransferOptions">
|
1274
|
+
<xsl:for-each select="gmd:transferSize">
|
1275
|
+
<p><b><i>Transfer Size:</i></b> <xsl:value-of select="."/> MB</p>
|
1276
|
+
</xsl:for-each>
|
1277
|
+
<xsl:if test="gmd:onLine">
|
1278
|
+
<p><b><i>Online Transfer Options:</i></b></p>
|
1279
|
+
</xsl:if>
|
1280
|
+
<xsl:for-each select="gmd:onLine">
|
1281
|
+
<blockquote>
|
1282
|
+
<p><b>Online Resource:</b></p>
|
1283
|
+
<blockquote>
|
1284
|
+
<xsl:for-each select="gmd:CI_OnlineResource">
|
1285
|
+
<xsl:call-template name="CI_OnlineResource">
|
1286
|
+
<xsl:with-param name="element" select="."/>
|
1287
|
+
</xsl:call-template>
|
1288
|
+
</xsl:for-each>
|
1289
|
+
</blockquote>
|
1290
|
+
</blockquote>
|
1291
|
+
</xsl:for-each>
|
1292
|
+
<xsl:if test="gmd:offLine">
|
1293
|
+
<p><b><i>Offline Transfer Options:</i></b></p>
|
1294
|
+
</xsl:if>
|
1295
|
+
<xsl:for-each select="gmd:offLine">
|
1296
|
+
<blockquote>
|
1297
|
+
<p><b>Offline Resource:</b></p>
|
1298
|
+
<blockquote>
|
1299
|
+
<xsl:for-each select="gmd:MD_Medium">
|
1300
|
+
<p>
|
1301
|
+
<xsl:if test="string-length( gmd:name )">
|
1302
|
+
<b>Name: </b><xsl:value-of select="gmd:name"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_MediumNameCode">MD_MediumNameCode</a>)<br/>
|
1303
|
+
</xsl:if>
|
1304
|
+
<xsl:apply-templates select="name"/>
|
1305
|
+
<xsl:if test="string-length( gmd:density )">
|
1306
|
+
<b>Density: </b><xsl:value-of select="gmd:density"/><br/>
|
1307
|
+
</xsl:if>
|
1308
|
+
<xsl:if test="string-length( gmd:densityUnits )">
|
1309
|
+
<b>Density Units: </b><xsl:value-of select="gmd:densityUnits"/><br/>
|
1310
|
+
</xsl:if>
|
1311
|
+
<xsl:if test="string-length( gmd:mediumName )">
|
1312
|
+
<b>Medium Name: </b><xsl:value-of select="gmd:mediumName"/><br/>
|
1313
|
+
</xsl:if>
|
1314
|
+
<xsl:if test="string-length( gmd:mediumFormat )">
|
1315
|
+
<b>Medium Format: </b><xsl:value-of select="gmd:mediumFormat"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#MD_MediumFormatCode">MD_MediumFormatCode</a>)<br/>
|
1316
|
+
</xsl:if>
|
1317
|
+
</p>
|
1318
|
+
</xsl:for-each>
|
1319
|
+
</blockquote>
|
1320
|
+
</blockquote>
|
1321
|
+
</xsl:for-each>
|
1322
|
+
</xsl:for-each>
|
1323
|
+
</xsl:template>
|
1324
|
+
|
1325
|
+
<!-- ACQUISITION_INFORMATION: *********************************************-->
|
1326
|
+
|
1327
|
+
<xsl:template match="gmd:acquisitionInformation/gmd:MI_AcquisitionInformation">
|
1328
|
+
<hr/>
|
1329
|
+
<h3><a name="Acquisition_Information"></a>Acquisition Information:</h3>
|
1330
|
+
<xsl:apply-templates select="gmd:instrument"/>
|
1331
|
+
<xsl:apply-templates select="gmd:platform"/>
|
1332
|
+
<p><a href="javascript:void(0)" onClick="window.scrollTo( 0, 0 ); this.blur(); return false;">Back to Top</a></p>
|
1333
|
+
</xsl:template>
|
1334
|
+
|
1335
|
+
<xsl:template match="gmd:instrument">
|
1336
|
+
<h4>Instrument Information:</h4>
|
1337
|
+
<font>
|
1338
|
+
<xsl:for-each select="gmd:MI_Instrument">
|
1339
|
+
<p><b><i>Instrument:</i></b></p>
|
1340
|
+
<blockquote>
|
1341
|
+
<xsl:for-each select="gmd:identifier">
|
1342
|
+
<b>Identifier: </b><xsl:value-of select="."/><br/>
|
1343
|
+
</xsl:for-each>
|
1344
|
+
<xsl:for-each select="gmd:type">
|
1345
|
+
<b>Type: </b><xsl:value-of select="."/><br/>
|
1346
|
+
</xsl:for-each>
|
1347
|
+
</blockquote>
|
1348
|
+
</xsl:for-each>
|
1349
|
+
</font>
|
1350
|
+
</xsl:template>
|
1351
|
+
|
1352
|
+
<xsl:template match="gmd:platform">
|
1353
|
+
<h4>Platform Information:</h4>
|
1354
|
+
<font>
|
1355
|
+
<xsl:for-each select="gmd:MI_Platform">
|
1356
|
+
<p><b><i>Platform:</i></b></p>
|
1357
|
+
<blockquote>
|
1358
|
+
<xsl:for-each select="gmd:identifier">
|
1359
|
+
<b>Identifier: </b><xsl:value-of select="."/><br/>
|
1360
|
+
</xsl:for-each>
|
1361
|
+
<xsl:for-each select="gmd:description">
|
1362
|
+
<b>Description: </b><xsl:value-of select="."/><br/>
|
1363
|
+
</xsl:for-each>
|
1364
|
+
<xsl:for-each select="gmd:instrument">
|
1365
|
+
<b>Instrument: </b><xsl:value-of select="."/><br/>
|
1366
|
+
</xsl:for-each>
|
1367
|
+
</blockquote>
|
1368
|
+
</xsl:for-each>
|
1369
|
+
</font>
|
1370
|
+
</xsl:template>
|
1371
|
+
|
1372
|
+
<!-- NAMED TEMPLATES: *****************************************************-->
|
1373
|
+
|
1374
|
+
<!-- template: CI_Citation ************************************************-->
|
1375
|
+
|
1376
|
+
<xsl:template name="CI_Citation">
|
1377
|
+
<xsl:param name="element"/>
|
1378
|
+
<xsl:param name="italicize-heading"/>
|
1379
|
+
<xsl:param name="wrap-text"/>
|
1380
|
+
<xsl:choose>
|
1381
|
+
<xsl:when test="$italicize-heading">
|
1382
|
+
<p><b><i>Citation Information:</i></b></p>
|
1383
|
+
</xsl:when>
|
1384
|
+
<xsl:otherwise>
|
1385
|
+
<p><b>Citation Information:</b></p>
|
1386
|
+
</xsl:otherwise>
|
1387
|
+
</xsl:choose>
|
1388
|
+
<blockquote>
|
1389
|
+
<xsl:for-each select="$element/gmd:title">
|
1390
|
+
<xsl:choose>
|
1391
|
+
<xsl:when test="$wrap-text">
|
1392
|
+
<div style="margin-right: 185px;"><b>Title: </b><xsl:value-of select="."/></div>
|
1393
|
+
</xsl:when>
|
1394
|
+
<xsl:otherwise>
|
1395
|
+
<b>Title: </b><xsl:value-of select="."/><br/>
|
1396
|
+
</xsl:otherwise>
|
1397
|
+
</xsl:choose>
|
1398
|
+
</xsl:for-each>
|
1399
|
+
<xsl:for-each select="$element/gmd:alternateTitle">
|
1400
|
+
<b>Alternate Title: </b><xsl:value-of select="."/><br/>
|
1401
|
+
</xsl:for-each>
|
1402
|
+
<xsl:for-each select="$element/gmd:date">
|
1403
|
+
<xsl:call-template name="CI_Date">
|
1404
|
+
<xsl:with-param name="element" select="./gmd:CI_Date"/>
|
1405
|
+
</xsl:call-template>
|
1406
|
+
</xsl:for-each>
|
1407
|
+
<xsl:for-each select="$element/gmd:edition">
|
1408
|
+
<b>Edition: </b><xsl:value-of select="."/><br/>
|
1409
|
+
</xsl:for-each>
|
1410
|
+
<xsl:for-each select="$element/gmd:editionDate">
|
1411
|
+
<b>Edition Date: </b>
|
1412
|
+
<xsl:call-template name="date">
|
1413
|
+
<xsl:with-param name="element" select="."/>
|
1414
|
+
</xsl:call-template>
|
1415
|
+
<br/>
|
1416
|
+
</xsl:for-each>
|
1417
|
+
<xsl:for-each select="$element/gmd:identifier">
|
1418
|
+
<b>Identifier:</b><br/>
|
1419
|
+
<blockquote>
|
1420
|
+
<xsl:if test="gmd:MD_Identifier/gmd:code">
|
1421
|
+
<b>Code: </b><xsl:value-of select="gmd:MD_Identifier/gmd:code"/><br/>
|
1422
|
+
</xsl:if>
|
1423
|
+
<xsl:if test="gmd:MD_Identifier/gmd:authority">
|
1424
|
+
<b>Authority: </b><xsl:value-of select="gmd:MD_Identifier/gmd:authority"/><br/>
|
1425
|
+
</xsl:if>
|
1426
|
+
</blockquote>
|
1427
|
+
</xsl:for-each>
|
1428
|
+
<xsl:for-each select="$element/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty">
|
1429
|
+
<xsl:call-template name="CI_ResponsibleParty">
|
1430
|
+
<xsl:with-param name="element" select="."/>
|
1431
|
+
<xsl:with-param name="italicize-heading" select="false()"/>
|
1432
|
+
</xsl:call-template>
|
1433
|
+
</xsl:for-each>
|
1434
|
+
<xsl:for-each select="$element/gmd:presentationForm">
|
1435
|
+
<b>Presentation Form: </b> <xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#CI_PresentationFormCode" target="_blank">CI_PresentationFormCode</a>)<br/>
|
1436
|
+
</xsl:for-each>
|
1437
|
+
<xsl:for-each select="$element/gmd:series">
|
1438
|
+
<b>Series: </b><xsl:value-of select="."/><br/>
|
1439
|
+
</xsl:for-each>
|
1440
|
+
<xsl:for-each select="$element/gmd:otherCitationDetails">
|
1441
|
+
<b>Other Citation Details: </b><xsl:value-of select="."/><br/>
|
1442
|
+
</xsl:for-each>
|
1443
|
+
</blockquote>
|
1444
|
+
</xsl:template>
|
1445
|
+
|
1446
|
+
<!-- template: CI_Date ****************************************************-->
|
1447
|
+
|
1448
|
+
<xsl:template name="CI_Date">
|
1449
|
+
<xsl:param name="element"/>
|
1450
|
+
<xsl:if test="string-length( $element/gmd:date ) and $element/gmd:dateType/gmd:CI_DateTypeCode != 'issued' and $element/gmd:dateType/gmd:CI_DateTypeCode != 'revision'">
|
1451
|
+
<p><b>Date:</b></p>
|
1452
|
+
<blockquote>
|
1453
|
+
<b>Date: </b>
|
1454
|
+
<xsl:call-template name="date">
|
1455
|
+
<xsl:with-param name="element" select="$element/gmd:date/gco:Date"/>
|
1456
|
+
</xsl:call-template>
|
1457
|
+
<br/>
|
1458
|
+
<xsl:if test="string-length( $element/gmd:dateType/gmd:CI_DateTypeCode )">
|
1459
|
+
<b>Date Type: </b><xsl:value-of select="$element/gmd:dateType"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#CI_DateTypeCode">CI_DateTypeCode</a>)<br/>
|
1460
|
+
</xsl:if>
|
1461
|
+
</blockquote>
|
1462
|
+
</xsl:if>
|
1463
|
+
</xsl:template>
|
1464
|
+
|
1465
|
+
<!-- template: CI_ResponsibleParty ****************************************-->
|
1466
|
+
|
1467
|
+
<xsl:template name="CI_ResponsibleParty">
|
1468
|
+
<xsl:param name="element"/>
|
1469
|
+
<xsl:param name="italicize-heading"/>
|
1470
|
+
<xsl:choose>
|
1471
|
+
<xsl:when test="$italicize-heading">
|
1472
|
+
<p><b><i>Responsible Party:</i></b></p>
|
1473
|
+
</xsl:when>
|
1474
|
+
<xsl:otherwise>
|
1475
|
+
<p><b>Responsible Party:</b></p>
|
1476
|
+
</xsl:otherwise>
|
1477
|
+
</xsl:choose>
|
1478
|
+
<blockquote>
|
1479
|
+
<div>
|
1480
|
+
<xsl:for-each select="$element/gmd:individualName">
|
1481
|
+
<b>Individual Name: </b><xsl:value-of select="."/><br/>
|
1482
|
+
</xsl:for-each>
|
1483
|
+
<xsl:for-each select="$element/gmd:organisationName">
|
1484
|
+
<xsl:if test="string-length( . )">
|
1485
|
+
<b>Organization Name: </b><xsl:value-of select="$element/gmd:organisationName"/><br/>
|
1486
|
+
</xsl:if>
|
1487
|
+
</xsl:for-each>
|
1488
|
+
<xsl:for-each select="$element/gmd:positionName">
|
1489
|
+
<xsl:if test=". != 'none'">
|
1490
|
+
<b>Position Name: </b><xsl:value-of select="."/><br/>
|
1491
|
+
</xsl:if>
|
1492
|
+
</xsl:for-each>
|
1493
|
+
<xsl:for-each select="$element/gmd:contactInfo/gmd:CI_Contact">
|
1494
|
+
<xsl:if test="string-length( . )">
|
1495
|
+
<xsl:call-template name="CI_Contact">
|
1496
|
+
<xsl:with-param name="element" select="."/>
|
1497
|
+
</xsl:call-template>
|
1498
|
+
</xsl:if>
|
1499
|
+
</xsl:for-each>
|
1500
|
+
<xsl:for-each select="$element/gmd:role">
|
1501
|
+
<xsl:if test="string-length( ./gmd:CI_RoleCode )">
|
1502
|
+
<b>Contact Role: </b><xsl:value-of select="."/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#CI_RoleCode" target="_blank">CI_RoleCode</a>)<br/>
|
1503
|
+
</xsl:if>
|
1504
|
+
</xsl:for-each>
|
1505
|
+
</div>
|
1506
|
+
</blockquote>
|
1507
|
+
</xsl:template>
|
1508
|
+
|
1509
|
+
<!-- template: CI_Contact *************************************************-->
|
1510
|
+
|
1511
|
+
<xsl:template name="CI_Contact">
|
1512
|
+
<xsl:param name="element"/>
|
1513
|
+
<b>Contact: </b>
|
1514
|
+
<xsl:for-each select="$element/gmd:phone/gmd:CI_Telephone">
|
1515
|
+
<xsl:call-template name="CI_Telephone">
|
1516
|
+
<xsl:with-param name="element" select="."/>
|
1517
|
+
</xsl:call-template>
|
1518
|
+
</xsl:for-each>
|
1519
|
+
<xsl:for-each select="$element/gmd:address/gmd:CI_Address">
|
1520
|
+
<xsl:call-template name="CI_Address">
|
1521
|
+
<xsl:with-param name="element" select="."/>
|
1522
|
+
</xsl:call-template>
|
1523
|
+
</xsl:for-each>
|
1524
|
+
<xsl:for-each select="$element/gmd:onlineResource/gmd:CI_OnlineResource">
|
1525
|
+
<xsl:call-template name="CI_OnlineResource">
|
1526
|
+
<xsl:with-param name="element" select="."/>
|
1527
|
+
</xsl:call-template>
|
1528
|
+
</xsl:for-each>
|
1529
|
+
</xsl:template>
|
1530
|
+
|
1531
|
+
<!-- template: CI_Telephone ***********************************************-->
|
1532
|
+
|
1533
|
+
<xsl:template name="CI_Telephone">
|
1534
|
+
<xsl:param name="element"/>
|
1535
|
+
<blockquote>
|
1536
|
+
<p><b>Contact Phone: </b></p>
|
1537
|
+
<blockquote>
|
1538
|
+
<xsl:for-each select="$element/gmd:voice">
|
1539
|
+
<xsl:if test="string-length( . )">
|
1540
|
+
<b>Contact Voice Telephone: </b><xsl:value-of select="."/><br/>
|
1541
|
+
</xsl:if>
|
1542
|
+
</xsl:for-each>
|
1543
|
+
<xsl:for-each select="$element/gmd:facsimile">
|
1544
|
+
<xsl:if test="string-length( . )">
|
1545
|
+
<b>Contact Facsimile Telephone: </b><xsl:value-of select="."/><br/>
|
1546
|
+
</xsl:if>
|
1547
|
+
</xsl:for-each>
|
1548
|
+
</blockquote>
|
1549
|
+
</blockquote>
|
1550
|
+
</xsl:template>
|
1551
|
+
|
1552
|
+
<!-- template: CI_Address *************************************************-->
|
1553
|
+
|
1554
|
+
<xsl:template name="CI_Address">
|
1555
|
+
<xsl:param name="element"/>
|
1556
|
+
<blockquote>
|
1557
|
+
<p><b>Contact Address: </b></p>
|
1558
|
+
<blockquote>
|
1559
|
+
<xsl:if test="string-length( $element/gmd:deliveryPoint )">
|
1560
|
+
<b>Delivery Point: </b><xsl:value-of select="$element/gmd:deliveryPoint"/><br/>
|
1561
|
+
</xsl:if>
|
1562
|
+
<xsl:if test="string-length( $element/gmd:city )">
|
1563
|
+
<b>City: </b><xsl:value-of select="$element/gmd:city"/><br/>
|
1564
|
+
</xsl:if>
|
1565
|
+
<xsl:if test="string-length( $element/gmd:administrativeArea )">
|
1566
|
+
<b>Administrative Area: </b><xsl:value-of select="$element/gmd:administrativeArea"/><br/>
|
1567
|
+
</xsl:if>
|
1568
|
+
<xsl:if test="string-length( $element/gmd:postalCode )">
|
1569
|
+
<b>Postal Code: </b><xsl:value-of select="$element/gmd:postalCode"/><br/>
|
1570
|
+
</xsl:if>
|
1571
|
+
<xsl:if test="string-length( $element/gmd:country )">
|
1572
|
+
<b>Country: </b><xsl:value-of select="$element/gmd:country"/><br/>
|
1573
|
+
</xsl:if>
|
1574
|
+
<xsl:if test="string-length( $element/gmd:electronicMailAddress )">
|
1575
|
+
<b>Email: </b><a href="mailto:{$element/gmd:electronicMailAddress/gco:CharacterString}"><xsl:value-of select="$element/gmd:electronicMailAddress"/></a><br/>
|
1576
|
+
</xsl:if>
|
1577
|
+
</blockquote>
|
1578
|
+
</blockquote>
|
1579
|
+
</xsl:template>
|
1580
|
+
|
1581
|
+
<!-- template: CI_OnlineResource ******************************************-->
|
1582
|
+
|
1583
|
+
<xsl:template name="CI_OnlineResource">
|
1584
|
+
<xsl:param name="element"/>
|
1585
|
+
<xsl:if test="string-length( $element/gmd:linkage )">
|
1586
|
+
<blockquote>
|
1587
|
+
<p><b>Online Resource:</b></p>
|
1588
|
+
<blockquote>
|
1589
|
+
<xsl:choose>
|
1590
|
+
<xsl:when test="$element/gmd:linkage != 'Unknown'">
|
1591
|
+
<xsl:variable name="url">
|
1592
|
+
<!-- Replace PacIOOS internal URL with external proxy: -->
|
1593
|
+
<xsl:call-template name="replace-string">
|
1594
|
+
<xsl:with-param name="element" select="$element/gmd:linkage/gmd:URL"/>
|
1595
|
+
<xsl:with-param name="old-string">lawelawe.soest.hawaii.edu:8080</xsl:with-param>
|
1596
|
+
<xsl:with-param name="new-string">oos.soest.hawaii.edu</xsl:with-param>
|
1597
|
+
</xsl:call-template>
|
1598
|
+
</xsl:variable>
|
1599
|
+
<span style="float: left; margin-right: 4px;"><b>Linkage: </b></span><a href="{$url}"><div class="wrapline"><xsl:value-of select="$url"/></div></a>
|
1600
|
+
</xsl:when>
|
1601
|
+
<xsl:otherwise>
|
1602
|
+
<b>Linkage: </b><xsl:value-of select="$element/gmd:linkage"/><br/>
|
1603
|
+
</xsl:otherwise>
|
1604
|
+
</xsl:choose>
|
1605
|
+
<xsl:if test="string-length( $element/gmd:name/gco:CharacterString )">
|
1606
|
+
<b>Name: </b><xsl:value-of select="$element/gmd:name"/><br/>
|
1607
|
+
</xsl:if>
|
1608
|
+
<xsl:if test="string-length( $element/gmd:description/gco:CharacterString )">
|
1609
|
+
<b>Description: </b><xsl:value-of select="$element/gmd:description"/><br/>
|
1610
|
+
</xsl:if>
|
1611
|
+
<xsl:if test="string-length( $element/gmd:function )">
|
1612
|
+
<xsl:variable name="codeList" select="substring-after( $element/gmd:function/gmd:CI_OnLineFunctionCode/@codeList, '#' )"/>
|
1613
|
+
<xsl:variable name="codeListShortName">
|
1614
|
+
<xsl:choose>
|
1615
|
+
<xsl:when test="contains( $codeList, ':' )">
|
1616
|
+
<xsl:value-of select="substring-after( $codeList, ':' )"/>
|
1617
|
+
</xsl:when>
|
1618
|
+
<xsl:otherwise>
|
1619
|
+
<xsl:value-of select="$codeList"/>
|
1620
|
+
</xsl:otherwise>
|
1621
|
+
</xsl:choose>
|
1622
|
+
</xsl:variable>
|
1623
|
+
<b>Function: </b><xsl:value-of select="$element/gmd:function"/> (<a href="http://pacioos.org/metadata/gmxCodelists.html#{$codeListShortName}"><xsl:value-of select="$codeListShortName"/></a>)<br/>
|
1624
|
+
</xsl:if>
|
1625
|
+
</blockquote>
|
1626
|
+
</blockquote>
|
1627
|
+
</xsl:if>
|
1628
|
+
</xsl:template>
|
1629
|
+
|
1630
|
+
<!-- template: MD_TaxonCl (recursive) *************************************-->
|
1631
|
+
|
1632
|
+
<xsl:template match="gmd:taxonCl/gmd:MD_TaxonCl">
|
1633
|
+
<div style="margin-left: 15px;">
|
1634
|
+
<xsl:choose>
|
1635
|
+
<xsl:when test="string-length( gmd:taxonrv )">
|
1636
|
+
<b><xsl:value-of select="gmd:taxonrn/gco:CharacterString"/>: </b><xsl:value-of select="gmd:taxonrv"/>
|
1637
|
+
</xsl:when>
|
1638
|
+
<xsl:otherwise>
|
1639
|
+
<b><xsl:value-of select="gmd:taxonrn/gco:CharacterString"/>: </b><xsl:value-of select="gmd:taxonrv/@gco:nilReason"/>
|
1640
|
+
</xsl:otherwise>
|
1641
|
+
</xsl:choose>
|
1642
|
+
<xsl:for-each select="gmd:common">
|
1643
|
+
<div style="margin-left: 15px;"><b>Common Name: </b><xsl:value-of select="." /></div>
|
1644
|
+
</xsl:for-each>
|
1645
|
+
<xsl:apply-templates select="gmd:taxonCl/gmd:MD_TaxonCl" />
|
1646
|
+
</div>
|
1647
|
+
</xsl:template>
|
1648
|
+
|
1649
|
+
<!-- template: date *******************************************************-->
|
1650
|
+
|
1651
|
+
<xsl:template name="date">
|
1652
|
+
<xsl:param name="element"/>
|
1653
|
+
<xsl:choose>
|
1654
|
+
<xsl:when test="contains( $element, 'known' )">
|
1655
|
+
<xsl:value-of select="$element"/>
|
1656
|
+
</xsl:when>
|
1657
|
+
<xsl:otherwise>
|
1658
|
+
<xsl:variable name="year" select="substring($element, 1, 4)"/>
|
1659
|
+
<xsl:variable name="month" select="substring($element, 6, 2)"/>
|
1660
|
+
<xsl:variable name="day" select="substring($element, 9, 2)"/>
|
1661
|
+
<xsl:if test="$month = '01'">
|
1662
|
+
<xsl:text>January </xsl:text>
|
1663
|
+
</xsl:if>
|
1664
|
+
<xsl:if test="$month = '02'">
|
1665
|
+
<xsl:text>February </xsl:text>
|
1666
|
+
</xsl:if>
|
1667
|
+
<xsl:if test="$month = '03'">
|
1668
|
+
<xsl:text>March </xsl:text>
|
1669
|
+
</xsl:if>
|
1670
|
+
<xsl:if test="$month = '04'">
|
1671
|
+
<xsl:text>April </xsl:text>
|
1672
|
+
</xsl:if>
|
1673
|
+
<xsl:if test="$month = '05'">
|
1674
|
+
<xsl:text>May </xsl:text>
|
1675
|
+
</xsl:if>
|
1676
|
+
<xsl:if test="$month = '06'">
|
1677
|
+
<xsl:text>June </xsl:text>
|
1678
|
+
</xsl:if>
|
1679
|
+
<xsl:if test="$month = '07'">
|
1680
|
+
<xsl:text>July </xsl:text>
|
1681
|
+
</xsl:if>
|
1682
|
+
<xsl:if test="$month = '08'">
|
1683
|
+
<xsl:text>August </xsl:text>
|
1684
|
+
</xsl:if>
|
1685
|
+
<xsl:if test="$month = '09'">
|
1686
|
+
<xsl:text>September </xsl:text>
|
1687
|
+
</xsl:if>
|
1688
|
+
<xsl:if test="$month = '10'">
|
1689
|
+
<xsl:text>October </xsl:text>
|
1690
|
+
</xsl:if>
|
1691
|
+
<xsl:if test="$month = '11'">
|
1692
|
+
<xsl:text>November </xsl:text>
|
1693
|
+
</xsl:if>
|
1694
|
+
<xsl:if test="$month = '12'">
|
1695
|
+
<xsl:text>December </xsl:text>
|
1696
|
+
</xsl:if>
|
1697
|
+
<xsl:if test="string-length( $day )">
|
1698
|
+
<xsl:choose>
|
1699
|
+
<xsl:when test="$day = '01'">
|
1700
|
+
<xsl:variable name="daydisplay" select="'1'"/>
|
1701
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1702
|
+
</xsl:when>
|
1703
|
+
<xsl:when test="$day = '02'">
|
1704
|
+
<xsl:variable name="daydisplay" select="'2'"/>
|
1705
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1706
|
+
</xsl:when>
|
1707
|
+
<xsl:when test="$day = '03'">
|
1708
|
+
<xsl:variable name="daydisplay" select="'3'"/>
|
1709
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1710
|
+
</xsl:when>
|
1711
|
+
<xsl:when test="$day = '04'">
|
1712
|
+
<xsl:variable name="daydisplay" select="'4'"/>
|
1713
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1714
|
+
</xsl:when>
|
1715
|
+
<xsl:when test="$day = '05'">
|
1716
|
+
<xsl:variable name="daydisplay" select="'5'"/>
|
1717
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1718
|
+
</xsl:when>
|
1719
|
+
<xsl:when test="$day = '06'">
|
1720
|
+
<xsl:variable name="daydisplay" select="'6'"/>
|
1721
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1722
|
+
</xsl:when>
|
1723
|
+
<xsl:when test="$day = '07'">
|
1724
|
+
<xsl:variable name="daydisplay" select="'7'"/>
|
1725
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1726
|
+
</xsl:when>
|
1727
|
+
<xsl:when test="$day = '08'">
|
1728
|
+
<xsl:variable name="daydisplay" select="'8'"/>
|
1729
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1730
|
+
</xsl:when>
|
1731
|
+
<xsl:when test="$day = '09'">
|
1732
|
+
<xsl:variable name="daydisplay" select="'9'"/>
|
1733
|
+
<xsl:value-of select="$daydisplay"/><xsl:text>, </xsl:text>
|
1734
|
+
</xsl:when>
|
1735
|
+
<xsl:otherwise>
|
1736
|
+
<xsl:value-of select="$day"/><xsl:text>, </xsl:text>
|
1737
|
+
</xsl:otherwise>
|
1738
|
+
</xsl:choose>
|
1739
|
+
</xsl:if>
|
1740
|
+
<xsl:value-of select="$year"/>
|
1741
|
+
</xsl:otherwise>
|
1742
|
+
</xsl:choose>
|
1743
|
+
</xsl:template>
|
1744
|
+
|
1745
|
+
</xsl:stylesheet>
|