|
45 | 45 | </switch> |
46 | 46 | </var> |
47 | 47 |
|
48 | | - <var name="vLangTagLabel" xpath="self::node()/bflc:marcKey[ |
49 | | - contains(translate(@xml:lang,$upper,$lower),translate($pCatScript,$upper,$lower)) or |
50 | | - string-length(@xml:lang)='2' or |
51 | | - string-length(@xml:lang)='3' |
52 | | - ][1]/@xml:lang" /> |
53 | | - <var name="vLangTagScript" xpath="self::node()/bflc:marcKey[@xml:lang and contains(@xml:lang, '-') and not(contains(translate(@xml:lang,$upper,$lower),translate($pCatScript,$upper,$lower)))][1]/@xml:lang" /> |
| 48 | + <var name="vLangTagLabel"> |
| 49 | + <transform> |
| 50 | + <xsl:call-template name="tGetBCP47RegField"> |
| 51 | + <xsl:with-param name="x" select="self::node()/bflc:marcKey" /> |
| 52 | + </xsl:call-template> |
| 53 | + </transform> |
| 54 | + </var> |
| 55 | + <var name="vLangTagScript"> |
| 56 | + <transform> |
| 57 | + <xsl:call-template name="tGetBCP47for880"> |
| 58 | + <xsl:with-param name="x" select="self::node()/bflc:marcKey" /> |
| 59 | + <xsl:with-param name="bcp47forRegField" select="$vLangTagLabel" /> |
| 60 | + </xsl:call-template> |
| 61 | + </transform> |
| 62 | + </var> |
54 | 63 | <var name="v880Script"> |
55 | 64 | <switch> |
56 | 65 | <case test="$vLangTagScript!=''"> |
|
274 | 283 | </marc:subfield> |
275 | 284 | </xsl:for-each> |
276 | 285 | <xsl:copy-of select="$vShared" /> |
277 | | - <!--<xsl:if test="$vLangTagLabel!=''"> |
| 286 | + <xsl:if test="$vLangTagLabel!=''"> |
278 | 287 | <marc:subfield code="7"> |
279 | | - <xsl:value-of select="concat('(bcp47)', $vLangTagLabel)"/> |
| 288 | + <xsl:variable name="bcp47code"> |
| 289 | + <xsl:call-template name="tOutputBCP47"> |
| 290 | + <xsl:with-param name="bcp47orig" select="$vLangTagLabel" /> |
| 291 | + </xsl:call-template> |
| 292 | + </xsl:variable> |
| 293 | + <xsl:value-of select="concat('(bcp47)', $bcp47code)" /> |
280 | 294 | </marc:subfield> |
281 | | - </xsl:if>--> |
| 295 | + </xsl:if> |
282 | 296 | </transform> |
283 | 297 | </df> |
284 | 298 |
|
|
310 | 324 | </xsl:for-each> |
311 | 325 | <xsl:copy-of select="$vShared" /> |
312 | 326 | </transform> |
313 | | - <!--<sf code="7"><transform><xsl:value-of select="concat('(bcp47)', $vLangTagScript)" /></transform></sf>--> |
| 327 | + <sf code="7"> |
| 328 | + <transform> |
| 329 | + <xsl:variable name="bcp47code"> |
| 330 | + <xsl:call-template name="tOutputBCP47"> |
| 331 | + <xsl:with-param name="bcp47orig" select="$vLangTagScript" /> |
| 332 | + </xsl:call-template> |
| 333 | + </xsl:variable> |
| 334 | + <xsl:value-of select="concat('(bcp47)', $bcp47code)" /> |
| 335 | + </transform> |
| 336 | + </sf> |
314 | 337 | </df> |
315 | 338 | </case> |
316 | 339 | </switch> |
|
628 | 651 | </var> |
629 | 652 | <var name="vTitleResource" xpath="exsl:node-set($vTitleResourcePreNS)" /> |
630 | 653 |
|
631 | | - <var name="vLangTagLabel" xpath="self::node()/bflc:marcKey[ |
632 | | - contains(translate(@xml:lang,$upper,$lower),translate($pCatScript,$upper,$lower)) or |
633 | | - string-length(@xml:lang)='2' or |
634 | | - string-length(@xml:lang)='3' |
635 | | - ][1]/@xml:lang" /> |
636 | | - <var name="vLangTagScript" xpath="self::node()/bflc:marcKey[@xml:lang and not(contains(translate(@xml:lang,$upper,$lower),translate($pCatScript,$upper,$lower)))][1]/@xml:lang" /> |
| 654 | + <var name="vLangTagLabel"> |
| 655 | + <transform> |
| 656 | + <xsl:call-template name="tGetBCP47RegField"> |
| 657 | + <xsl:with-param name="x" select="self::node()/bflc:marcKey" /> |
| 658 | + </xsl:call-template> |
| 659 | + </transform> |
| 660 | + </var> |
| 661 | + <var name="vLangTagScript"> |
| 662 | + <transform> |
| 663 | + <xsl:call-template name="tGetBCP47for880"> |
| 664 | + <xsl:with-param name="x" select="self::node()/bflc:marcKey" /> |
| 665 | + <xsl:with-param name="bcp47forRegField" select="$vLangTagLabel" /> |
| 666 | + </xsl:call-template> |
| 667 | + </transform> |
| 668 | + </var> |
637 | 669 |
|
638 | 670 | <var name="v880Script"> |
639 | 671 | <switch> |
|
742 | 774 | </select> |
743 | 775 | </sf> |
744 | 776 | <sf code="2"><select xpath="bf:source/bf:Source/bf:code"/></sf> |
745 | | - <!--<sf code="7" chopPunct="true" repeatable="false"> |
746 | | - <switch> |
747 | | - <case test="$vLangTagLabel!=''"> |
748 | | - <transform><xsl:value-of select="concat('(bcp47)', $vLangTagLabel)"/></transform> |
749 | | - </case> |
750 | | - </switch> |
751 | | - </sf>--> |
| 777 | + <xsl:if test="$vLangTagLabel!=''"> |
| 778 | + <marc:subfield code="7"> |
| 779 | + <xsl:variable name="bcp47code"> |
| 780 | + <xsl:call-template name="tOutputBCP47"> |
| 781 | + <xsl:with-param name="bcp47orig" select="$vLangTagLabel" /> |
| 782 | + </xsl:call-template> |
| 783 | + </xsl:variable> |
| 784 | + <xsl:value-of select="concat('(bcp47)', $bcp47code)" /> |
| 785 | + </marc:subfield> |
| 786 | + </xsl:if> |
752 | 787 | </df> |
753 | 788 |
|
754 | 789 | <switch> |
|
794 | 829 | </select> |
795 | 830 | </sf> |
796 | 831 | <sf code="2"><select xpath="bf:source/bf:Source/bf:code"/></sf> |
797 | | - <!--<sf code="7"><transform><xsl:value-of select="concat('(bcp47)', $vLangTagScript)" /></transform></sf>--> |
| 832 | + <sf code="7"> |
| 833 | + <transform> |
| 834 | + <xsl:variable name="bcp47code"> |
| 835 | + <xsl:call-template name="tOutputBCP47"> |
| 836 | + <xsl:with-param name="bcp47orig" select="$vLangTagScript" /> |
| 837 | + </xsl:call-template> |
| 838 | + </xsl:variable> |
| 839 | + <xsl:value-of select="concat('(bcp47)', $bcp47code)" /> |
| 840 | + </transform> |
| 841 | + </sf> |
798 | 842 | </df> |
799 | 843 | </case> |
800 | 844 | </switch> |
|
0 commit comments