XPath 式

XPath 式を使用して、Adobe FrameMaker の XML 文書内のエレメント間を移動する方法について説明します。

このトピックの内容

概要

XML 文書はエレメントの階層で構成されています。 XPath 式を使用して、XML 文書内でエレメントと属性間を移動します。

XPath の例

次の XML ファイルを使用します。

<topic id="abc">
  <title>Using XPATH</title>
  <body>
    <p>Using XPATH is easy.</p>
    <fig>
      <image href="images/xpath.png"/>
    </fig>
    <section>
      <title>Examples</title>
      <p audience="novice">A simple example.</p>
      <p audience="expert">An advanced example.</p>
      <p audience="expert">Another advanced example.</p>
      <fig>
        <image href="images/xpath-axes.png">
          <alt>This screenshot shows the XPATH axes</alt>
        </image>
      </fig>
    </section>
    <p>The End.</p>
  </body>
</topic>

次の表には、上記の XML の例に対する XPath 式のリストが含まれています。

XPath クエリー

場所

/topic

<topic> ルート要素を返します。

//title

任意の<title>要素を返します。

//section/title

<section> 要素の子である <title> 要素のみを返します。

//p

任意の<p>要素を返します。

//p[@audience='expert']

@audience属性がexpertに設定されている<p>要素を返します。

//p[not(@audience)]

@audience属性が欠落している<p>要素を返します。

//p[not(@audience='admin')]

@audience属性の値がadminまたは欠落している<p>要素を返します。

//p[text()='To start this process']

テキスト文字列で始まる<p>要素を返しますこのプロセスを開始するには

//p[contains(.,'button')]

テキストのどこかにテキスト文字列buttonを含む<p>要素を返します。

//image[not(alt)]

<alt>子要素が欠落している<image>要素を返します。

XPath について詳しくは、http://www.w3.org/TR/xpath/ を参照してください

XPath ツールバー

  1. Xpath ツールバーを開くには、表示 > /ツールバー > /Xpath を選択します。

    Figure 1. XPath ツールバー
    FrameMaker の XPath ツールバー

  2. 「XPath」フィールドに XPath 式を入力し、「実行」ボタンをクリックします。

クエリーの結果が XPath ビルダーパネルに表示されます。

XPath ビルダーパネル

図 2. XPath ビルダーパネル
FrameMaker の XPath ビルダーパネル

クエリービルダーは、XPath 式の作成にも便利なインターフェイスです。クエリービルダーでは、XPath クエリーを作成(自動候補機能を使用)して実行できます。

検索の範囲を指定することもできます。

XPath 自動候補

自動候補機能は、クエリーを作成するときに XPath 式に追加できるコンポーネントの候補を提示します。

次の XML の場合:

<body> 
<p>The quick brown fox.</p> 
<p audience="admin">Jumped over the lazy dogs.</p> 
</body>
  1. 「クエリービルダー」フィールドで、最初にフォワードスラッシュ(/)を入力します。

    フォワードスラッシュを入力するとすぐに、以下の候補が表示されます。

    自動候補
    XPath ビルダーパネルの自動候補

  2. 上向き矢印キーと下向き矢印キーを使用してオプションを選択し、Enter キーを押してクエリーにコンポーネントを挿入します。

  3. 他のエレメントをクエリーに追加するには、フォーワードスラッシュを入力します。

    また、属性を追加するには、左角括弧([)を入力します。

自動候補リストには XPath クエリーの次のコンポーネントが含まれます。

エレメント(オレンジ色の表示)

現在の文書の現在の位置にあるエレメント。

属性(青色の表示)

現在の文書の現在の位置にある属性。

軸(緑色の表示)

現在のノードに関連するノード定義。 例えば、親、子、先祖など。

自動候補を有効にする」オプションの右側にあるドロップダウンリストをクリックして、「」オプションの選択を解除し、自動候補リストで利用可能な軸を非表示にします。

注意: クエリービルダーの自動候補機能を無効にできます。

保存アイコンをクリックして、XPath クエリーの現在の結果を保存します。