問題タブ [libxslt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
131 参照

xslt - XSL: すべての子孫のテキストと要素をラップしますか?

次の XML ドキュメントがあるとします。

speech内にまだないすべてのものをキャプチャlineして でラップしたいと思いますがline、他の要素を一緒にキャプチャする必要があります(例:emphasis上記の例)。

私が達成したい結果は次のとおりです。

私は and を使用libxsltしてlibxmlいるので、XSLT 1.0 にこだわっています。

0 投票する
1 に答える
155 参照

xslt - xsltproc からの予期しない結果 - libXML

この問題に遭遇したとき、私は別のユーザーを助けていました。

私は、2 つのキーを作成しようとする XSLT のこの部分を持っています。1 つは、子孫の特定の値を含む要素の最初の出現 (同じ親) であり、2 番目のキーは、子孫の同じ値の他のすべての出現です。 . (下手な英語でごめんなさい)

これは最初のキーであり、その目的は、generate-id() 値によってインデックス付けされた特定のレコード/ID に対して、「兄弟の最初」でセットを作成することです。

2 番目のキーでは、同じレコード/ID を持つ「最初の兄弟」の generate-id() によってインデックス付けされた、指定されたレコード/ID について、「最初の兄弟ではない」すべての DapaPage 要素を取得しようとします。 :

そして、テンプレート

この XML を使用して XSLT をテストしました。

Xalan で変換すると、予想どおり、次の結果が得られます。

ただし、libXML xsltproc を使用すると、次のような結果しか得られません。

Key2 の構造の何が問題なのですか、それとも xslproc のバグですか?

0 投票する
0 に答える
173 参照

python - 変換された結果からの Python libxml2/ libxslt unlinkNode でメモリ リークが発生する

libxslt を使用して XML を変換し、変換された結果からノードをリンク解除しようとしましたが、メモリ例外が発生しました。(xslt 変換された結果を文字列に変換し、それを再びドキュメントに解析できることはわかっていますが、結果を直接処理する必要があります -> パフォーマンスの問題。)

私のコード:

0 投票する
1 に答える
117 参照

php - PHP で LibXslt をセットアップして、一重引用符でいくつかの属性をレンダリングする方法

これは、一重引用符で属性値を割り当てる必要がある xsltに続きます。

問題:' double の代わりに一重引用符で属性値を囲みます"

ユースケース:プラグインなどの設定として渡される JSON を属性に格納します。例:

G. ケン ホルマンは次のように答えました。

XSLT プロセッサのベンダーがこれを要求するための拡張機能を提供しない限り、それはあなたの手の届かないところにあります。このようなシリアル化の選択はプロセッサによって行われ、標準化されたメカニズムを使用して XSLT スタイルシートで指定することはできません。プロセッサはこれを提供するかもしれませんが、私はそれを見たことがありません (私が探しに行ったわけではありません... XML の観点からは、選択された属性区切り文字に関係なく、結果の情報セットは変更されません)。

Q1: PHP の LibXslt でシングル クォーテーションを出力することはできますか?

Q2: Q1がYesの場合、属性ごとに出力することは可能ですか? (例: 一部の属性のみを一重引用符で囲んで表示したい)。

お時間をいただきありがとうございます。

0 投票する
1 に答える
206 参照

perl - XML::LibXSLT が断続的にスタイルシートのコンパイル エラーをスローする

以前は問題なく動作していた一連の XSLT スタイルシートがあります。最近、仲間の開発者が Perl を新しいバージョンにアップグレードしました。その時以来、EXSLT 関数が定義されている場所で断続的なスタイルシート コンパイル エラーが発生しています。

エラーの例を次に示します。

要素のパラメーターは、テンプレート、変数、またはパラメーター内でのみ許可されます

変数は EXSLT 関数内で定義されます。エラーが受信されると、Apache (mod_perl と組み合わせて使用​​) を再起動するまで、Web ページにアクセスしようとするたびにエラーが表示されます。再起動後、XML::LibXSLT と EXSLT 関数を呼び出す Web ページを一度は正しく表示できますが、ページをリロードすると再びエラーが発生します。

XML::LibXSLT のドキュメントを読んだ後、HAVE_EXSLT() 関数が値 1 を返すことを確認しました。XML::LibXSLT の現在のバージョンは 1.79 です。私の LibXSLT DLL は 1.1.28 です。私の perl バージョンは 5.14.3 です。動作していた以前のバージョンは、それぞれ 5.8.8、1.66、および 1.1.22 でした。

以前は表示されなかったエラーが表示されるようになったのはなぜですか? 以下は、コンパイル エラーをスローしているスタイルシートの最初のスニペットです。提供すると役立つ追加情報があればお知らせください。

追加の調査結果:

この質問を最初に投稿した後、mod_perl の代わりに単純な古い CGI を使用すると、エラーをまったく再現できないことがわかりました。さらに、Apache httpd.conf で次の行を見つけました。コメントアウトすると、エラーが完全になくなるわけではありませんが、エラーの発生頻度が劇的に低下することがわかりました。