以下のような Xml ファイルがあります。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ea:Stories ea:WWVersion="2.0" xmlns:aic="http://ns.adobe.com/AdobeInCopy/2.0" xmlns:ea="urn:SmartConnection_v3">
<ea:Story ea:GUID="D8BEFD6C-AB31-4B0E-98BF-7348968795E1" pi0="style="50" type="snippet" readerVersion="6.0" featureSet="257" product="8.0(370)" " pi1="SnippetType="InCopyInterchange"">
<ea:StoryInfo>
<ea:SI_EL>headline</ea:SI_EL>
<ea:SI_Words>4</ea:SI_Words>
<ea:SI_Chars>20</ea:SI_Chars>
<ea:SI_Paras>1</ea:SI_Paras>
<ea:SI_Lines>1</ea:SI_Lines>
<ea:SI_Snippet>THIS IS THE HEADLINE</ea:SI_Snippet>
<ea:SI_Version>AB86A3CA-CEBC-49AA-A334-29641B95748D</ea:SI_Version>
</ea:StoryInfo>
</ea:Story>
</ea:Stories>
ご覧のとおり、すべての要素には名前空間プレフィックスである「ea:」があります。
「THIS IS THE HEADLINE」である SI_Snippet テキストを表示する XSLT ファイルを作成しています。
XSLT ファイルに xpath を記述する方法は? 名前空間を含める必要がありますか、それとも除外する必要がありますか?
//ea:Story[ea:SI_EL='headline']/ea:SI_Snippet or
//Story[SI_EL='headline']/SI_Snippet
実際、私が使用したオンライン ツールではどちらも失敗します: http://xslt.online-toolz.com/tools/xslt-transformation.php
では、別の方法があるはずですか?
後で、どの名前空間を調べるかをどのように知るのでしょうか? 実行時に名前空間を XslTransformer に渡す必要がありますか?