|
77 | 77 | </bf:Scale> |
78 | 78 | </bf:scale> |
79 | 79 | </xsl:for-each> |
80 | | - <bf:cartographicAttributes> |
81 | | - <bf:Cartographic> |
82 | | - <xsl:for-each select="marc:subfield[@code='b']"> |
83 | | - <bf:projection> |
84 | | - <bf:Projection> |
85 | | - <rdfs:label> |
86 | | - <xsl:if test="$vXmlLang != ''"> |
87 | | - <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
88 | | - </xsl:if> |
89 | | - <!-- leave trailing period for abbreviations --> |
90 | | - <xsl:call-template name="chopPunctuation"> |
91 | | - <xsl:with-param name="chopString" select="."/> |
92 | | - <xsl:with-param name="punctuation"><xsl:text>:,;/ </xsl:text></xsl:with-param> |
93 | | - </xsl:call-template> |
94 | | - </rdfs:label> |
95 | | - </bf:Projection> |
96 | | - </bf:projection> |
97 | | - </xsl:for-each> |
98 | | - <xsl:if test="$vCoordinates != ''"> |
99 | | - <bf:coordinates> |
100 | | - <xsl:if test="$vXmlLang != ''"> |
101 | | - <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
102 | | - </xsl:if> |
103 | | - <xsl:value-of select="$vCoordinates"/> |
104 | | - </bf:coordinates> |
105 | | - </xsl:if> |
106 | | - <xsl:if test="$vZone != ''"> |
107 | | - <bf:ascensionAndDeclination> |
108 | | - <xsl:if test="$vXmlLang != ''"> |
109 | | - <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
110 | | - </xsl:if> |
111 | | - <xsl:value-of select="$vZone"/> |
112 | | - </bf:ascensionAndDeclination> |
113 | | - </xsl:if> |
114 | | - <xsl:if test="$vEquinox != ''"> |
115 | | - <bf:equinox> |
116 | | - <xsl:if test="$vXmlLang != ''"> |
117 | | - <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
118 | | - </xsl:if> |
119 | | - <xsl:value-of select="$vEquinox"/> |
120 | | - </bf:equinox> |
121 | | - </xsl:if> |
122 | | - <xsl:for-each select="marc:subfield[@code='f']"> |
123 | | - <bf:outerGRing> |
124 | | - <xsl:if test="$vXmlLang != ''"> |
125 | | - <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
126 | | - </xsl:if> |
127 | | - <xsl:call-template name="chopPunctuation"> |
128 | | - <xsl:with-param name="chopString" select="."/> |
129 | | - </xsl:call-template> |
130 | | - </bf:outerGRing> |
131 | | - </xsl:for-each> |
132 | | - <xsl:for-each select="marc:subfield[@code='g']"> |
133 | | - <bf:exclusionGRing> |
134 | | - <xsl:if test="$vXmlLang != ''"> |
135 | | - <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
136 | | - </xsl:if> |
137 | | - <xsl:call-template name="chopPunctuation"> |
138 | | - <xsl:with-param name="chopString" select="."/> |
139 | | - </xsl:call-template> |
140 | | - </bf:exclusionGRing> |
141 | | - </xsl:for-each> |
142 | | - </bf:Cartographic> |
143 | | - </bf:cartographicAttributes> |
| 80 | + <xsl:if test="marc:subfield[@code='b' or @code='c' or @code='d' or @code='f' or @code='g']"> |
| 81 | + <bf:cartographicAttributes> |
| 82 | + <bf:Cartographic> |
| 83 | + <xsl:for-each select="marc:subfield[@code='b']"> |
| 84 | + <bf:projection> |
| 85 | + <bf:Projection> |
| 86 | + <rdfs:label> |
| 87 | + <xsl:if test="$vXmlLang != ''"> |
| 88 | + <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
| 89 | + </xsl:if> |
| 90 | + <!-- leave trailing period for abbreviations --> |
| 91 | + <xsl:call-template name="chopPunctuation"> |
| 92 | + <xsl:with-param name="chopString" select="."/> |
| 93 | + <xsl:with-param name="punctuation"><xsl:text>:,;/ </xsl:text></xsl:with-param> |
| 94 | + </xsl:call-template> |
| 95 | + </rdfs:label> |
| 96 | + </bf:Projection> |
| 97 | + </bf:projection> |
| 98 | + </xsl:for-each> |
| 99 | + <xsl:if test="$vCoordinates != ''"> |
| 100 | + <bf:coordinates> |
| 101 | + <xsl:if test="$vXmlLang != ''"> |
| 102 | + <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
| 103 | + </xsl:if> |
| 104 | + <xsl:value-of select="$vCoordinates"/> |
| 105 | + </bf:coordinates> |
| 106 | + </xsl:if> |
| 107 | + <xsl:if test="$vZone != ''"> |
| 108 | + <bf:ascensionAndDeclination> |
| 109 | + <xsl:if test="$vXmlLang != ''"> |
| 110 | + <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
| 111 | + </xsl:if> |
| 112 | + <xsl:value-of select="$vZone"/> |
| 113 | + </bf:ascensionAndDeclination> |
| 114 | + </xsl:if> |
| 115 | + <xsl:if test="$vEquinox != ''"> |
| 116 | + <bf:equinox> |
| 117 | + <xsl:if test="$vXmlLang != ''"> |
| 118 | + <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
| 119 | + </xsl:if> |
| 120 | + <xsl:value-of select="$vEquinox"/> |
| 121 | + </bf:equinox> |
| 122 | + </xsl:if> |
| 123 | + <xsl:for-each select="marc:subfield[@code='f']"> |
| 124 | + <bf:outerGRing> |
| 125 | + <xsl:if test="$vXmlLang != ''"> |
| 126 | + <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
| 127 | + </xsl:if> |
| 128 | + <xsl:call-template name="chopPunctuation"> |
| 129 | + <xsl:with-param name="chopString" select="."/> |
| 130 | + </xsl:call-template> |
| 131 | + </bf:outerGRing> |
| 132 | + </xsl:for-each> |
| 133 | + <xsl:for-each select="marc:subfield[@code='g']"> |
| 134 | + <bf:exclusionGRing> |
| 135 | + <xsl:if test="$vXmlLang != ''"> |
| 136 | + <xsl:attribute name="xml:lang"><xsl:value-of select="$vXmlLang"/></xsl:attribute> |
| 137 | + </xsl:if> |
| 138 | + <xsl:call-template name="chopPunctuation"> |
| 139 | + <xsl:with-param name="chopString" select="."/> |
| 140 | + </xsl:call-template> |
| 141 | + </bf:exclusionGRing> |
| 142 | + </xsl:for-each> |
| 143 | + </bf:Cartographic> |
| 144 | + </bf:cartographicAttributes> |
| 145 | + </xsl:if> |
144 | 146 | </xsl:when> |
145 | 147 | </xsl:choose> |
146 | 148 | </xsl:template> |
|
0 commit comments