매개 변수가 설정되지 않지만, & 캡쳐 시도가 작동하지 않는 상황이 있습니다. - 어느 작업XSLT : 설정되어 있는지를 알기위한 테스트 매개 변수
<xsl:template match="xs:complexType">
<xsl:param name="prefix" />
<xsl:variable name="prefix-no-core">
<xsl:choose>
<!-- if no value, default to 'AcRec' -->
<xsl:when test="not($prefix)">
<xsl:value-of select="'AcRec'" />
</xsl:when>
<!-- if 'core', leave as empty string -->
<xsl:when test="$prefix = 'core'">
</xsl:when>
<!-- if 'AcRec', set the value -->
<xsl:when test="$prefix = 'AcRec'">
<xsl:value-of select="$prefix" />
</xsl:when>
</xsl:choose>
</xsl:variable>
<xs:complexType name="{concat($prefix-no-core, @name)}">
...
</xsl:template>
나는 또한 첫 번째 테스트에서 ''= $ 접두사를 시도했다 :
나는 다음과 같은 사용하고 있습니다. 하지만 내가 사용하는 경우 :
<xsl:value-of select="not($prefix)" />
... 값이 true로 출력됩니다. 하지만 내 xsl : choose를 사용하면 출력이 생성되지 않습니다.
다른 접두사의 가능성을 지원해야합니다. –
시도해 보았습니다. xsl : 그렇지 않으면 거짓 긍정을 제공하여 접두사를 적용해서는 안되는 접두어를 적용합니다. –
언제 접두사를 적용하고 싶지 않으십니까? 다시 말하지만 완전한 유스 케이스를 제공하십시오. prefix = core 인 경우, 접두사는 필요 없습니다. 접두어가 설정되어 있지 않으면 AcDec를 접두어로 사용합니다. 다른 경우는 무엇입니까? 제공된 접두어를 사용 하시겠습니까? 아니면 각 "허용 된"접두어에 대/소문자를 수동으로 추가해야합니까? 그렇다면 발신자가 인식하지 못하는 접두어를 어떻게 제공합니까? –