metanorma-m3aawg 2.0.7 → 2.0.8
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/lib/isodoc/m3aawg/m3aawg.policy.xsl +73 -13
- data/lib/isodoc/m3aawg/m3aawg.report.xsl +73 -13
- data/lib/metanorma/m3aawg/biblio.rng +25 -2
- data/lib/metanorma/m3aawg/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: ab571fcc185f4f59622b758016645413ef06fafe87a6beac7990d2707333add6
         | 
| 4 | 
            +
              data.tar.gz: 597e1602e52d5de7db9270ddfa9b82e7fb6f06f4b79de8db79bb4883546c596e
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 5cf15c4a5ca74898b4177ecabfef36c757faf536ec1a2f333db7dfd4e985f0cd15af4ebd7ab60c7b34eb91c67dd409d5fb9b7f4d9ab4eaf2229838ae59aec291
         | 
| 7 | 
            +
              data.tar.gz: 2c087061e15cea1777e70a0b00208176437d051e9e26dec31cfe4bb71ea03ffc49cbc038b45316f7a2fc074fd009130917dc847d2596850013d02499d99ad051
         | 
| @@ -28,7 +28,13 @@ | |
| 28 28 |  | 
| 29 29 | 
             
            	<xsl:template match="/">
         | 
| 30 30 | 
             
            		<xsl:call-template name="namespaceCheck"/>
         | 
| 31 | 
            -
            		<fo:root  | 
| 31 | 
            +
            		<fo:root xml:lang="{$lang}">
         | 
| 32 | 
            +
            			<xsl:variable name="root-style">
         | 
| 33 | 
            +
            				<root-style xsl:use-attribute-sets="root-style"/>
         | 
| 34 | 
            +
            			</xsl:variable>
         | 
| 35 | 
            +
            			<xsl:call-template name="insertRootStyle">
         | 
| 36 | 
            +
            				<xsl:with-param name="root-style" select="$root-style"/>
         | 
| 37 | 
            +
            			</xsl:call-template>
         | 
| 32 38 | 
             
            			<fo:layout-master-set>
         | 
| 33 39 |  | 
| 34 40 | 
             
            				<!-- cover page -->
         | 
| @@ -812,7 +818,30 @@ | |
| 812 818 |  | 
| 813 819 |  | 
| 814 820 |  | 
| 815 | 
            -
            	</xsl:attribute-set><xsl: | 
| 821 | 
            +
            	</xsl:attribute-set><xsl:template name="insertRootStyle">
         | 
| 822 | 
            +
            		<xsl:param name="root-style"/>
         | 
| 823 | 
            +
            		<xsl:variable name="root-style_" select="xalan:nodeset($root-style)"/>
         | 
| 824 | 
            +
            		
         | 
| 825 | 
            +
            		<xsl:variable name="additional_fonts_">
         | 
| 826 | 
            +
            			<xsl:for-each select="//*[local-name() = 'misc-container'][1]/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = 'fonts']/*[local-name() = 'value']">
         | 
| 827 | 
            +
            				<xsl:value-of select="."/><xsl:if test="position() != last()">, </xsl:if>
         | 
| 828 | 
            +
            			</xsl:for-each>
         | 
| 829 | 
            +
            		</xsl:variable>
         | 
| 830 | 
            +
            		<xsl:variable name="additional_fonts" select="normalize-space($additional_fonts_)"/>
         | 
| 831 | 
            +
            		
         | 
| 832 | 
            +
            		<xsl:for-each select="$root-style_/root-style/@*">
         | 
| 833 | 
            +
            			<xsl:choose>
         | 
| 834 | 
            +
            				<xsl:when test="local-name() = 'font-family' and $additional_fonts != ''">
         | 
| 835 | 
            +
            					<xsl:attribute name="{local-name()}">
         | 
| 836 | 
            +
            						<xsl:value-of select="."/>, <xsl:value-of select="$additional_fonts"/>
         | 
| 837 | 
            +
            					</xsl:attribute>
         | 
| 838 | 
            +
            				</xsl:when>
         | 
| 839 | 
            +
            				<xsl:otherwise>
         | 
| 840 | 
            +
            					<xsl:copy-of select="."/>
         | 
| 841 | 
            +
            				</xsl:otherwise>
         | 
| 842 | 
            +
            			</xsl:choose>
         | 
| 843 | 
            +
            		</xsl:for-each>
         | 
| 844 | 
            +
            	</xsl:template><xsl:attribute-set name="copyright-statement-style">
         | 
| 816 845 |  | 
| 817 846 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="copyright-statement-title-style">
         | 
| 818 847 |  | 
| @@ -1321,7 +1350,7 @@ | |
| 1321 1350 |  | 
| 1322 1351 |  | 
| 1323 1352 |  | 
| 1324 | 
            -
            	</xsl:attribute-set><xsl:attribute-set name="termnote-name-style"> | 
| 1353 | 
            +
            	</xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
         | 
| 1325 1354 |  | 
| 1326 1355 |  | 
| 1327 1356 |  | 
| @@ -3692,24 +3721,28 @@ | |
| 3692 3721 | 
             
            	</xsl:template><xsl:template name="add-zero-spaces-equal">
         | 
| 3693 3722 | 
             
            		<xsl:param name="text" select="."/>
         | 
| 3694 3723 | 
             
            		<xsl:variable name="zero-space-after-equals">==========</xsl:variable>
         | 
| 3724 | 
            +
            		<xsl:variable name="regex_zero-space-after-equals">(==========)</xsl:variable>
         | 
| 3695 3725 | 
             
            		<xsl:variable name="zero-space-after-equal">=</xsl:variable>
         | 
| 3726 | 
            +
            		<xsl:variable name="regex_zero-space-after-equal">(=)</xsl:variable>
         | 
| 3696 3727 | 
             
            		<xsl:variable name="zero-space"></xsl:variable>
         | 
| 3697 3728 | 
             
            		<xsl:choose>
         | 
| 3698 3729 | 
             
            			<xsl:when test="contains($text, $zero-space-after-equals)">
         | 
| 3699 | 
            -
            				<xsl:value-of select="substring-before($text, $zero-space-after-equals)"/>
         | 
| 3730 | 
            +
            				<!-- <xsl:value-of select="substring-before($text, $zero-space-after-equals)"/>
         | 
| 3700 3731 | 
             
            				<xsl:value-of select="$zero-space-after-equals"/>
         | 
| 3701 3732 | 
             
            				<xsl:value-of select="$zero-space"/>
         | 
| 3702 3733 | 
             
            				<xsl:call-template name="add-zero-spaces-equal">
         | 
| 3703 3734 | 
             
            					<xsl:with-param name="text" select="substring-after($text, $zero-space-after-equals)"/>
         | 
| 3704 | 
            -
            				</xsl:call-template>
         | 
| 3735 | 
            +
            				</xsl:call-template> -->
         | 
| 3736 | 
            +
            				<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),$regex_zero-space-after-equals,concat('$1',$zero_width_space))"/>
         | 
| 3705 3737 | 
             
            			</xsl:when>
         | 
| 3706 3738 | 
             
            			<xsl:when test="contains($text, $zero-space-after-equal)">
         | 
| 3707 | 
            -
            				<xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
         | 
| 3739 | 
            +
            				<!-- <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
         | 
| 3708 3740 | 
             
            				<xsl:value-of select="$zero-space-after-equal"/>
         | 
| 3709 3741 | 
             
            				<xsl:value-of select="$zero-space"/>
         | 
| 3710 3742 | 
             
            				<xsl:call-template name="add-zero-spaces-equal">
         | 
| 3711 3743 | 
             
            					<xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
         | 
| 3712 | 
            -
            				</xsl:call-template>
         | 
| 3744 | 
            +
            				</xsl:call-template> -->
         | 
| 3745 | 
            +
            				<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),$regex_zero-space-after-equal,concat('$1',$zero_width_space))"/>
         | 
| 3713 3746 | 
             
            			</xsl:when>
         | 
| 3714 3747 | 
             
            			<xsl:otherwise>
         | 
| 3715 3748 | 
             
            				<xsl:value-of select="$text"/>
         | 
| @@ -4185,7 +4218,12 @@ | |
| 4185 4218 |  | 
| 4186 4219 | 
             
            			<fo:inline xsl:use-attribute-sets="termnote-name-style">
         | 
| 4187 4220 |  | 
| 4221 | 
            +
            				<xsl:if test="not(*[local-name() = 'name']/following-sibling::node()[1][self::text()][normalize-space()=''])">
         | 
| 4222 | 
            +
            					<xsl:attribute name="padding-right">1mm</xsl:attribute>
         | 
| 4223 | 
            +
            				</xsl:if>
         | 
| 4224 | 
            +
            			
         | 
| 4188 4225 |  | 
| 4226 | 
            +
             | 
| 4189 4227 |  | 
| 4190 4228 | 
             
            				<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
         | 
| 4191 4229 | 
             
            				<!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
         | 
| @@ -5169,17 +5207,15 @@ | |
| 5169 5207 |  | 
| 5170 5208 | 
             
            		<!-- split text by zero-width space -->
         | 
| 5171 5209 | 
             
            		<xsl:variable name="text_step4">
         | 
| 5172 | 
            -
            			<xsl:call-template name=" | 
| 5210 | 
            +
            			<xsl:call-template name="split_for_interspers">
         | 
| 5173 5211 | 
             
            				<xsl:with-param name="pText" select="$text_step3"/>
         | 
| 5174 5212 | 
             
            				<xsl:with-param name="sep" select="$zero_width_space"/>
         | 
| 5175 | 
            -
            				<xsl:with-param name="normalize-space">false</xsl:with-param>
         | 
| 5176 | 
            -
            				<xsl:with-param name="keep_sep">true</xsl:with-param>
         | 
| 5177 5213 | 
             
            			</xsl:call-template>
         | 
| 5178 5214 | 
             
            		</xsl:variable>
         | 
| 5179 5215 |  | 
| 5180 | 
            -
            		<xsl:for-each select="xalan:nodeset($text_step4)/ | 
| 5216 | 
            +
            		<xsl:for-each select="xalan:nodeset($text_step4)/node()">
         | 
| 5181 5217 | 
             
            			<xsl:choose>
         | 
| 5182 | 
            -
            				<xsl:when test=" | 
| 5218 | 
            +
            				<xsl:when test="local-name() = 'interspers'"> <!-- word with length more than 30 will be interspersed with zero-width space -->
         | 
| 5183 5219 | 
             
            					<xsl:call-template name="interspers">
         | 
| 5184 5220 | 
             
            						<xsl:with-param name="str" select="."/>
         | 
| 5185 5221 | 
             
            					</xsl:call-template>
         | 
| @@ -5190,6 +5226,30 @@ | |
| 5190 5226 | 
             
            			</xsl:choose>
         | 
| 5191 5227 | 
             
            		</xsl:for-each>
         | 
| 5192 5228 |  | 
| 5229 | 
            +
            	</xsl:template><xsl:variable name="interspers_tag_open">###interspers123###</xsl:variable><xsl:variable name="interspers_tag_close">###/interspers123###</xsl:variable><xsl:template name="split_for_interspers">
         | 
| 5230 | 
            +
            		<xsl:param name="pText" select="."/>
         | 
| 5231 | 
            +
            		<xsl:param name="sep" select="','"/>
         | 
| 5232 | 
            +
            		<!-- word with length more than 30 will be interspersed with zero-width space -->
         | 
| 5233 | 
            +
            		<xsl:variable name="regex" select="concat('([^', $zero_width_space, ']{31,})')"/> <!-- sequence of characters (more 31), that doesn't contains zero-width space -->
         | 
| 5234 | 
            +
            		<xsl:variable name="text" select="java:replaceAll(java:java.lang.String.new($pText),$regex,concat($interspers_tag_open,'$1',$interspers_tag_close))"/>
         | 
| 5235 | 
            +
            		<xsl:call-template name="replace_tag_interspers">
         | 
| 5236 | 
            +
            			<xsl:with-param name="text" select="$text"/>
         | 
| 5237 | 
            +
            		</xsl:call-template>
         | 
| 5238 | 
            +
            	</xsl:template><xsl:template name="replace_tag_interspers">
         | 
| 5239 | 
            +
            		<xsl:param name="text"/>
         | 
| 5240 | 
            +
            		<xsl:choose>
         | 
| 5241 | 
            +
            			<xsl:when test="contains($text, $interspers_tag_open)">
         | 
| 5242 | 
            +
            				<xsl:value-of select="substring-before($text, $interspers_tag_open)"/>
         | 
| 5243 | 
            +
            				<xsl:variable name="text_after" select="substring-after($text, $interspers_tag_open)"/>
         | 
| 5244 | 
            +
            				<interspers>
         | 
| 5245 | 
            +
            					<xsl:value-of select="substring-before($text_after, $interspers_tag_close)"/>
         | 
| 5246 | 
            +
            				</interspers>
         | 
| 5247 | 
            +
            				<xsl:call-template name="replace_tag_interspers">
         | 
| 5248 | 
            +
            					<xsl:with-param name="text" select="substring-after($text_after, $interspers_tag_close)"/>
         | 
| 5249 | 
            +
            				</xsl:call-template>
         | 
| 5250 | 
            +
            			</xsl:when>
         | 
| 5251 | 
            +
            			<xsl:otherwise><xsl:value-of select="$text"/></xsl:otherwise>
         | 
| 5252 | 
            +
            		</xsl:choose>
         | 
| 5193 5253 | 
             
            	</xsl:template><xsl:template name="interspers">
         | 
| 5194 5254 | 
             
            		<xsl:param name="str"/>
         | 
| 5195 5255 | 
             
            		<xsl:param name="char" select="$zero_width_space"/>
         | 
| @@ -5637,7 +5697,7 @@ | |
| 5637 5697 | 
             
            				</xsl:otherwise>
         | 
| 5638 5698 | 
             
            			</xsl:choose> -->
         | 
| 5639 5699 | 
             
            		</fo:block>
         | 
| 5640 | 
            -
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()[starts-with(., '[SOURCE: Adapted from: ')]" priority="2">
         | 
| 5700 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()[starts-with(., '[SOURCE: Adapted from: ') or     starts-with(., '[SOURCE: Quoted from: ') or     starts-with(., '[SOURCE: Modified from: ')]" priority="2">
         | 
| 5641 5701 | 
             
            		<xsl:text>[</xsl:text><xsl:value-of select="substring-after(., '[SOURCE: ')"/>
         | 
| 5642 5702 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()">
         | 
| 5643 5703 | 
             
            		<xsl:if test="normalize-space() != ''">
         | 
| @@ -28,7 +28,13 @@ | |
| 28 28 |  | 
| 29 29 | 
             
            	<xsl:template match="/">
         | 
| 30 30 | 
             
            		<xsl:call-template name="namespaceCheck"/>
         | 
| 31 | 
            -
            		<fo:root  | 
| 31 | 
            +
            		<fo:root xml:lang="{$lang}">
         | 
| 32 | 
            +
            			<xsl:variable name="root-style">
         | 
| 33 | 
            +
            				<root-style xsl:use-attribute-sets="root-style"/>
         | 
| 34 | 
            +
            			</xsl:variable>
         | 
| 35 | 
            +
            			<xsl:call-template name="insertRootStyle">
         | 
| 36 | 
            +
            				<xsl:with-param name="root-style" select="$root-style"/>
         | 
| 37 | 
            +
            			</xsl:call-template>
         | 
| 32 38 | 
             
            			<fo:layout-master-set>
         | 
| 33 39 |  | 
| 34 40 | 
             
            				<!-- cover page -->
         | 
| @@ -812,7 +818,30 @@ | |
| 812 818 |  | 
| 813 819 |  | 
| 814 820 |  | 
| 815 | 
            -
            	</xsl:attribute-set><xsl: | 
| 821 | 
            +
            	</xsl:attribute-set><xsl:template name="insertRootStyle">
         | 
| 822 | 
            +
            		<xsl:param name="root-style"/>
         | 
| 823 | 
            +
            		<xsl:variable name="root-style_" select="xalan:nodeset($root-style)"/>
         | 
| 824 | 
            +
            		
         | 
| 825 | 
            +
            		<xsl:variable name="additional_fonts_">
         | 
| 826 | 
            +
            			<xsl:for-each select="//*[local-name() = 'misc-container'][1]/*[local-name() = 'presentation-metadata'][*[local-name() = 'name'] = 'fonts']/*[local-name() = 'value']">
         | 
| 827 | 
            +
            				<xsl:value-of select="."/><xsl:if test="position() != last()">, </xsl:if>
         | 
| 828 | 
            +
            			</xsl:for-each>
         | 
| 829 | 
            +
            		</xsl:variable>
         | 
| 830 | 
            +
            		<xsl:variable name="additional_fonts" select="normalize-space($additional_fonts_)"/>
         | 
| 831 | 
            +
            		
         | 
| 832 | 
            +
            		<xsl:for-each select="$root-style_/root-style/@*">
         | 
| 833 | 
            +
            			<xsl:choose>
         | 
| 834 | 
            +
            				<xsl:when test="local-name() = 'font-family' and $additional_fonts != ''">
         | 
| 835 | 
            +
            					<xsl:attribute name="{local-name()}">
         | 
| 836 | 
            +
            						<xsl:value-of select="."/>, <xsl:value-of select="$additional_fonts"/>
         | 
| 837 | 
            +
            					</xsl:attribute>
         | 
| 838 | 
            +
            				</xsl:when>
         | 
| 839 | 
            +
            				<xsl:otherwise>
         | 
| 840 | 
            +
            					<xsl:copy-of select="."/>
         | 
| 841 | 
            +
            				</xsl:otherwise>
         | 
| 842 | 
            +
            			</xsl:choose>
         | 
| 843 | 
            +
            		</xsl:for-each>
         | 
| 844 | 
            +
            	</xsl:template><xsl:attribute-set name="copyright-statement-style">
         | 
| 816 845 |  | 
| 817 846 | 
             
            	</xsl:attribute-set><xsl:attribute-set name="copyright-statement-title-style">
         | 
| 818 847 |  | 
| @@ -1321,7 +1350,7 @@ | |
| 1321 1350 |  | 
| 1322 1351 |  | 
| 1323 1352 |  | 
| 1324 | 
            -
            	</xsl:attribute-set><xsl:attribute-set name="termnote-name-style"> | 
| 1353 | 
            +
            	</xsl:attribute-set><xsl:attribute-set name="termnote-name-style">
         | 
| 1325 1354 |  | 
| 1326 1355 |  | 
| 1327 1356 |  | 
| @@ -3692,24 +3721,28 @@ | |
| 3692 3721 | 
             
            	</xsl:template><xsl:template name="add-zero-spaces-equal">
         | 
| 3693 3722 | 
             
            		<xsl:param name="text" select="."/>
         | 
| 3694 3723 | 
             
            		<xsl:variable name="zero-space-after-equals">==========</xsl:variable>
         | 
| 3724 | 
            +
            		<xsl:variable name="regex_zero-space-after-equals">(==========)</xsl:variable>
         | 
| 3695 3725 | 
             
            		<xsl:variable name="zero-space-after-equal">=</xsl:variable>
         | 
| 3726 | 
            +
            		<xsl:variable name="regex_zero-space-after-equal">(=)</xsl:variable>
         | 
| 3696 3727 | 
             
            		<xsl:variable name="zero-space"></xsl:variable>
         | 
| 3697 3728 | 
             
            		<xsl:choose>
         | 
| 3698 3729 | 
             
            			<xsl:when test="contains($text, $zero-space-after-equals)">
         | 
| 3699 | 
            -
            				<xsl:value-of select="substring-before($text, $zero-space-after-equals)"/>
         | 
| 3730 | 
            +
            				<!-- <xsl:value-of select="substring-before($text, $zero-space-after-equals)"/>
         | 
| 3700 3731 | 
             
            				<xsl:value-of select="$zero-space-after-equals"/>
         | 
| 3701 3732 | 
             
            				<xsl:value-of select="$zero-space"/>
         | 
| 3702 3733 | 
             
            				<xsl:call-template name="add-zero-spaces-equal">
         | 
| 3703 3734 | 
             
            					<xsl:with-param name="text" select="substring-after($text, $zero-space-after-equals)"/>
         | 
| 3704 | 
            -
            				</xsl:call-template>
         | 
| 3735 | 
            +
            				</xsl:call-template> -->
         | 
| 3736 | 
            +
            				<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),$regex_zero-space-after-equals,concat('$1',$zero_width_space))"/>
         | 
| 3705 3737 | 
             
            			</xsl:when>
         | 
| 3706 3738 | 
             
            			<xsl:when test="contains($text, $zero-space-after-equal)">
         | 
| 3707 | 
            -
            				<xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
         | 
| 3739 | 
            +
            				<!-- <xsl:value-of select="substring-before($text, $zero-space-after-equal)"/>
         | 
| 3708 3740 | 
             
            				<xsl:value-of select="$zero-space-after-equal"/>
         | 
| 3709 3741 | 
             
            				<xsl:value-of select="$zero-space"/>
         | 
| 3710 3742 | 
             
            				<xsl:call-template name="add-zero-spaces-equal">
         | 
| 3711 3743 | 
             
            					<xsl:with-param name="text" select="substring-after($text, $zero-space-after-equal)"/>
         | 
| 3712 | 
            -
            				</xsl:call-template>
         | 
| 3744 | 
            +
            				</xsl:call-template> -->
         | 
| 3745 | 
            +
            				<xsl:value-of select="java:replaceAll(java:java.lang.String.new(.),$regex_zero-space-after-equal,concat('$1',$zero_width_space))"/>
         | 
| 3713 3746 | 
             
            			</xsl:when>
         | 
| 3714 3747 | 
             
            			<xsl:otherwise>
         | 
| 3715 3748 | 
             
            				<xsl:value-of select="$text"/>
         | 
| @@ -4185,7 +4218,12 @@ | |
| 4185 4218 |  | 
| 4186 4219 | 
             
            			<fo:inline xsl:use-attribute-sets="termnote-name-style">
         | 
| 4187 4220 |  | 
| 4221 | 
            +
            				<xsl:if test="not(*[local-name() = 'name']/following-sibling::node()[1][self::text()][normalize-space()=''])">
         | 
| 4222 | 
            +
            					<xsl:attribute name="padding-right">1mm</xsl:attribute>
         | 
| 4223 | 
            +
            				</xsl:if>
         | 
| 4224 | 
            +
            			
         | 
| 4188 4225 |  | 
| 4226 | 
            +
             | 
| 4189 4227 |  | 
| 4190 4228 | 
             
            				<!-- if 'p' contains all text in 'add' first and last elements in first p are 'add' -->
         | 
| 4191 4229 | 
             
            				<!-- <xsl:if test="*[not(local-name()='name')][1][node()[normalize-space() != ''][1][local-name() = 'add'] and node()[normalize-space() != ''][last()][local-name() = 'add']]"> -->
         | 
| @@ -5169,17 +5207,15 @@ | |
| 5169 5207 |  | 
| 5170 5208 | 
             
            		<!-- split text by zero-width space -->
         | 
| 5171 5209 | 
             
            		<xsl:variable name="text_step4">
         | 
| 5172 | 
            -
            			<xsl:call-template name=" | 
| 5210 | 
            +
            			<xsl:call-template name="split_for_interspers">
         | 
| 5173 5211 | 
             
            				<xsl:with-param name="pText" select="$text_step3"/>
         | 
| 5174 5212 | 
             
            				<xsl:with-param name="sep" select="$zero_width_space"/>
         | 
| 5175 | 
            -
            				<xsl:with-param name="normalize-space">false</xsl:with-param>
         | 
| 5176 | 
            -
            				<xsl:with-param name="keep_sep">true</xsl:with-param>
         | 
| 5177 5213 | 
             
            			</xsl:call-template>
         | 
| 5178 5214 | 
             
            		</xsl:variable>
         | 
| 5179 5215 |  | 
| 5180 | 
            -
            		<xsl:for-each select="xalan:nodeset($text_step4)/ | 
| 5216 | 
            +
            		<xsl:for-each select="xalan:nodeset($text_step4)/node()">
         | 
| 5181 5217 | 
             
            			<xsl:choose>
         | 
| 5182 | 
            -
            				<xsl:when test=" | 
| 5218 | 
            +
            				<xsl:when test="local-name() = 'interspers'"> <!-- word with length more than 30 will be interspersed with zero-width space -->
         | 
| 5183 5219 | 
             
            					<xsl:call-template name="interspers">
         | 
| 5184 5220 | 
             
            						<xsl:with-param name="str" select="."/>
         | 
| 5185 5221 | 
             
            					</xsl:call-template>
         | 
| @@ -5190,6 +5226,30 @@ | |
| 5190 5226 | 
             
            			</xsl:choose>
         | 
| 5191 5227 | 
             
            		</xsl:for-each>
         | 
| 5192 5228 |  | 
| 5229 | 
            +
            	</xsl:template><xsl:variable name="interspers_tag_open">###interspers123###</xsl:variable><xsl:variable name="interspers_tag_close">###/interspers123###</xsl:variable><xsl:template name="split_for_interspers">
         | 
| 5230 | 
            +
            		<xsl:param name="pText" select="."/>
         | 
| 5231 | 
            +
            		<xsl:param name="sep" select="','"/>
         | 
| 5232 | 
            +
            		<!-- word with length more than 30 will be interspersed with zero-width space -->
         | 
| 5233 | 
            +
            		<xsl:variable name="regex" select="concat('([^', $zero_width_space, ']{31,})')"/> <!-- sequence of characters (more 31), that doesn't contains zero-width space -->
         | 
| 5234 | 
            +
            		<xsl:variable name="text" select="java:replaceAll(java:java.lang.String.new($pText),$regex,concat($interspers_tag_open,'$1',$interspers_tag_close))"/>
         | 
| 5235 | 
            +
            		<xsl:call-template name="replace_tag_interspers">
         | 
| 5236 | 
            +
            			<xsl:with-param name="text" select="$text"/>
         | 
| 5237 | 
            +
            		</xsl:call-template>
         | 
| 5238 | 
            +
            	</xsl:template><xsl:template name="replace_tag_interspers">
         | 
| 5239 | 
            +
            		<xsl:param name="text"/>
         | 
| 5240 | 
            +
            		<xsl:choose>
         | 
| 5241 | 
            +
            			<xsl:when test="contains($text, $interspers_tag_open)">
         | 
| 5242 | 
            +
            				<xsl:value-of select="substring-before($text, $interspers_tag_open)"/>
         | 
| 5243 | 
            +
            				<xsl:variable name="text_after" select="substring-after($text, $interspers_tag_open)"/>
         | 
| 5244 | 
            +
            				<interspers>
         | 
| 5245 | 
            +
            					<xsl:value-of select="substring-before($text_after, $interspers_tag_close)"/>
         | 
| 5246 | 
            +
            				</interspers>
         | 
| 5247 | 
            +
            				<xsl:call-template name="replace_tag_interspers">
         | 
| 5248 | 
            +
            					<xsl:with-param name="text" select="substring-after($text_after, $interspers_tag_close)"/>
         | 
| 5249 | 
            +
            				</xsl:call-template>
         | 
| 5250 | 
            +
            			</xsl:when>
         | 
| 5251 | 
            +
            			<xsl:otherwise><xsl:value-of select="$text"/></xsl:otherwise>
         | 
| 5252 | 
            +
            		</xsl:choose>
         | 
| 5193 5253 | 
             
            	</xsl:template><xsl:template name="interspers">
         | 
| 5194 5254 | 
             
            		<xsl:param name="str"/>
         | 
| 5195 5255 | 
             
            		<xsl:param name="char" select="$zero_width_space"/>
         | 
| @@ -5637,7 +5697,7 @@ | |
| 5637 5697 | 
             
            				</xsl:otherwise>
         | 
| 5638 5698 | 
             
            			</xsl:choose> -->
         | 
| 5639 5699 | 
             
            		</fo:block>
         | 
| 5640 | 
            -
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()[starts-with(., '[SOURCE: Adapted from: ')]" priority="2">
         | 
| 5700 | 
            +
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()[starts-with(., '[SOURCE: Adapted from: ') or     starts-with(., '[SOURCE: Quoted from: ') or     starts-with(., '[SOURCE: Modified from: ')]" priority="2">
         | 
| 5641 5701 | 
             
            		<xsl:text>[</xsl:text><xsl:value-of select="substring-after(., '[SOURCE: ')"/>
         | 
| 5642 5702 | 
             
            	</xsl:template><xsl:template match="*[local-name() = 'termsource']/text()">
         | 
| 5643 5703 | 
             
            		<xsl:if test="normalize-space() != ''">
         | 
| @@ -527,7 +527,7 @@ | |
| 527 527 | 
             
              </define>
         | 
| 528 528 | 
             
              <define name="LocalityType">
         | 
| 529 529 | 
             
                <data type="string">
         | 
| 530 | 
            -
                  <param name="pattern">section|clause|part|paragraph|chapter|page|whole|table|annex|figure|note|list|example|volume|issue|time|anchor|locality:[a-zA-Z0-9_]+</param>
         | 
| 530 | 
            +
                  <param name="pattern">section|clause|part|paragraph|chapter|page|title|line|whole|table|annex|figure|note|list|example|volume|issue|time|anchor|locality:[a-zA-Z0-9_]+</param>
         | 
| 531 531 | 
             
                </data>
         | 
| 532 532 | 
             
              </define>
         | 
| 533 533 | 
             
              <define name="referenceFrom">
         | 
| @@ -677,6 +677,9 @@ | |
| 677 677 | 
             
                <zeroOrMore>
         | 
| 678 678 | 
             
                  <ref name="extent"/>
         | 
| 679 679 | 
             
                </zeroOrMore>
         | 
| 680 | 
            +
                <optional>
         | 
| 681 | 
            +
                  <ref name="bibliographic_size"/>
         | 
| 682 | 
            +
                </optional>
         | 
| 680 683 | 
             
                <zeroOrMore>
         | 
| 681 684 | 
             
                  <ref name="accesslocation"/>
         | 
| 682 685 | 
             
                </zeroOrMore>
         | 
| @@ -922,9 +925,29 @@ | |
| 922 925 | 
             
                  <text/>
         | 
| 923 926 | 
             
                </element>
         | 
| 924 927 | 
             
              </define>
         | 
| 928 | 
            +
              <define name="sizevalue">
         | 
| 929 | 
            +
                <element name="value">
         | 
| 930 | 
            +
                  <attribute name="type"/>
         | 
| 931 | 
            +
                  <text/>
         | 
| 932 | 
            +
                </element>
         | 
| 933 | 
            +
              </define>
         | 
| 934 | 
            +
              <define name="bibliographic_size">
         | 
| 935 | 
            +
                <element name="size">
         | 
| 936 | 
            +
                  <oneOrMore>
         | 
| 937 | 
            +
                    <ref name="sizevalue"/>
         | 
| 938 | 
            +
                  </oneOrMore>
         | 
| 939 | 
            +
                </element>
         | 
| 940 | 
            +
              </define>
         | 
| 925 941 | 
             
              <define name="extent">
         | 
| 926 942 | 
             
                <element name="extent">
         | 
| 927 | 
            -
                  < | 
| 943 | 
            +
                  <choice>
         | 
| 944 | 
            +
                    <zeroOrMore>
         | 
| 945 | 
            +
                      <ref name="locality"/>
         | 
| 946 | 
            +
                    </zeroOrMore>
         | 
| 947 | 
            +
                    <zeroOrMore>
         | 
| 948 | 
            +
                      <ref name="localityStack"/>
         | 
| 949 | 
            +
                    </zeroOrMore>
         | 
| 950 | 
            +
                  </choice>
         | 
| 928 951 | 
             
                </element>
         | 
| 929 952 | 
             
              </define>
         | 
| 930 953 | 
             
              <define name="series">
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: metanorma-m3aawg
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 2.0. | 
| 4 | 
            +
              version: 2.0.8
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ribose Inc.
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2022-04- | 
| 11 | 
            +
            date: 2022-04-18 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: htmlentities
         |