Может ли имя фазового имени Schematron быть связано с глобальной переменной или параметром? - PullRequest
0 голосов
/ 03 июня 2019

Я хотел бы изменить ключевой параметр в проекте Schematron + XSLT, который влияет на глубину проверки, и наиболее удобным способом было бы связать имя фазы Schematron с глобальной переменной (или внутри файла Schematron)

У меня есть обходной путь, где Schematron привязывается к соответствующему, который определяет конкретное, и это работает, но это означает, что каждая фаза должна изменить переменную уникального имени параметра, потому что это неразрешено включать в один файл несколько s (или s) для одного и того же параметра (переменной).

   <phase id="terse">
      <active pattern="core-tests"/>
      <active pattern="terse-true"/>
   </phase>
   <phase id="verbose">
      <active pattern="core-tests"/>
      <active pattern="verbose-true"/>
   </phase>
   <pattern id="terse-true">
      <xsl:param name="validation-is-terse" select="true()"/>
   </pattern>
   <pattern id="verbose-true">
      <xsl:param name="validation-is-verbose" select="true()"/>
   </pattern>

Я бы предпочел написать что-то вроде этого:

   <xsl:param name="validation-depth" select="{$phase}"/>
   <phase id="terse">
      <active pattern="core-tests"/>
   </phase>
   <phase id="verbose">
      <active pattern="core-tests"/>
   </phase>
...