1

および/またはタグを含むいくつかのxmlファイルを使用しています。それらをhtmlに変換したい。私の XSL では、2 つのテンプレートを使用しています

<xsl:template match="and">
    (
    <xsl:apply-templates select="./*[1]" />
    <xsl:text> </xsl:text>
    <xsl:value-of select="name(.)" />
    <xsl:text> </xsl:text>
    <xsl:apply-templates select="./*[2]" />
    )
</xsl:template>
<xsl:template match="or">
    (
    <xsl:apply-templates select="./*[1]" />
    <xsl:text> </xsl:text>
    <xsl:value-of select="name(.)" />
    <xsl:text> </xsl:text>
    <xsl:apply-templates select="./*[2]" />
    )
</xsl:template>

Xalan をプロセッサーとして使用している場合は機能しますが、JAXPSAXProcessor を使用している場合はエラーが発生します: ERROR [main] JAXPSAXProcessorInvoker - Syntax error in 'or'. ERROR [main] JAXPSAXProcessorInvoker - 「and」の構文エラー。

JaxPSaxProcessor は Xpath の演算子に変換および/または変換すると思います。 jaxb プロセッサは多くの場所で使用されているため変更できません。問題を解決するための他の提案はありますか?

4

1 に答える 1

1

XSLT プロセッサバグがある場合は、次のようなさまざまな手法を使用してごまかすことができます。

<xsl:template match="*[name()=concat('a', 'nd')">

また

<xsl:template match="*[name()=substring('land',2)">

幸運を。

于 2011-01-25T14:11:50.327 に答える