私はxsl:stylesheet
処理命令をXMLで使用しています。とにかくXPathを使ってこのPIを選択する必要はありますか?もしそうなら、どのように?Processing命令を選択するXPath式は何ですか?
答えて
processing-instruction()
ノードテストを使用してください。
一般に、processing-instruction()
ノードテストを使用して処理命令を選択できます。
より具体的には、所望のPIノードの名前(ターゲット)を引数として含めることができます。
使用:
/processing-instruction('xml-stylesheet')
これはグローバルレベル(最上位要素の兄弟である)で定義された名前xsl-stylesheet
有する任意の処理命令を選択します。
xsl:stylesheet
は、PIの無効なPIターゲットです。コロン':'
は、ローカル名からの名前空間接頭辞を区切るために使用されますが、処理指示ターゲットは名前空間に属しません。同様にあたりW3c XPath Specification:
「処理命令は展開名を持っている:ローカル部分は、処理命令の対象であり、名前空間はURIがnullです。」
また、W3Cの文書によると:"Associating Style Sheets with XML documents 1.0」、XML文書にスタイルシートを関連付けPIのターゲットがある必要があります。"xml-stylesheet"
- ない"xsl:stylesheet"
か"xsl-stylesheet"
ここでは完全な例であります:この変換は、次のXML文書に対して適用される
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select="/processing-instruction('xml-stylesheet')"/>
</xsl:template>
</xsl:stylesheet>
:
<?xml-stylesheet type="text/xsl" href="test"?>
<Books>
<Book name="MyBook" />
</Books>
XPath式は評価され、選択されたPIノードが出力ある:構文を有する2つの部分が標的
<?xml-stylesheet type="text/xsl" href="test"?>
あなたはまだあなたの古いトリックを見ています...ダウン投票を破棄する回答を削除して再投稿することはまっすぐな虐待です。あなたの回答を評価する方法はあなたのものではなく、自分の判断です。もう一度やり直してください。 – Shog9
'/ processing-instruction( 'xml-stylesheet')'は、 'xsl-stylesheet'という名前のものを選択しますか?それは魔法だろう! 'xml'と' xsl'をメモしてください。 –
@MicheldeRuiterはい、そうです。これは正式にここで定義されています(下から3番目の段落)。http://www.w3.org/TR/xpath/#node-tests –
処理命令ハットとデータ:
<?target data?>
あなたが使用する場合:
<xsl:value-of select="/processing-instruction('xml-stylesheet')" />
はそれだけDimitre Novatchevの例では、データの一部が返されます、それが返されます。
type="text/xsl" href="test"
だから処理命令の文字列値は、データ部分です。選択式<xsl:value-of
が評価され、結果オブジェクトはstring()
関数の暗黙的な呼び出しのように文字列に変換されます。
- 1. CPythonの中間命令の形式は何ですか?
- 2. JVM命令とは何ですか?
- 3. 降順のDateTime命令でN行を選択するQueryOver文
- 4. 命令言語でSQLを選択する
- 5. 正確に比較するアセンブリcmp命令は何ですか?
- 6. 子ノードを持つ親を選択するxpath式
- 7. rtはMIPS命令フォーマットで何を表していますか?
- 8. 選択する設定の保存形式は何ですか?
- 9. 次のアセンブリ命令は何ですか?-8(%rbp)、%xmm0?
- 10. アセンブリプログラミングの擬似命令とは何ですか?
- 11. インテル8080命令...「DAD」文字の意味は何ですか?
- 12. メソッド呼び出し前のlea命令とは何ですか?
- 13. XPath選択
- 14. syscallはx86_64の命令ですか?
- 15. `timescaleはプリプロセッサ命令ですか?
- 16. BEQ命令は正確に何をしますか?
- 17. アセンブリ命令 'db'は実際に何をしていますか?
- 18. このインテルjmpq命令は何をしますか?
- 19. 「mov rax、QWORD PTR fs:0x28」アセンブリ命令は何をしますか?
- 20. 私の命令は何か問題がありますか?
- 21. 0x0の命令に何を示しん
- 22. 命令レベルプロファイリング:命令ポインタの意味?
- 23. XPathの選択ノード
- 24. 選択するコレクションインターフェイスは何ですか?
- 25. アセンブラSTRB命令は
- 26. LLVM命令を挿入するには?
- 27. 機械命令からデコードした後、マイクロ命令を保存する場所はありますか?
- 28. Xpathでこれらの要素を選択する方法は?
- 29. XPathでブール値ノードを選択する方法は?
- 30. 自己、先行ノードおよび後続ノードを選択するXPath式
Kirill、この回答はあまりにも一般的です - あなたは、正確に目的のPIを選択する特定のXPath式を提供していません。 –