XPath HTML, XML, JSON
高度なポリシーインフラストラクチャでは、HTML、XML、およびJavaScriptオブジェクト記法(JSON)ファイルからデータを評価および取得するための式がサポートされています。これにより、HTML、XML、またはJSONドキュメント内の特定のノードを検索し,ファイルにノードが存在するかどうかを判断し,XMLコンテキスト内のノード(たとえば,特定の親を持つノード,または特定の値を持つ特定の属性を持つノード)を特定し,そのようなノードの内容を返すことができます。。
XPathの高度なポリシー式の実装は,HTMLまたはXMLテキストを指定する高度なポリシー式のプレフィックス(“HTTP.REQ.BODYなど)と,XPath式を引数として受け取るXPath演算子で構成されます。
HTML。XPATH_HTML演算子を使用すると,引数としてXPath式を受け取り,HTMLファイルを処理できます。。XPATH_JSON演算子を使用すると,引数としてXPath式を受け取り,JSONファイルを処理できます。
> <文本。XPATH (xpathex):
XML。
たとえば,次の式は,XMLファイルの最初の1000バイト内に“创造者”というノードが“书”ノードの下に存在する場合,ブール値真正を返します。
HTTP.REQ.BODY (1000) .XPATH (xp %布尔(/ /书/创造者)%)
パラメーター:
xpathex-XPath
> <文本。XPATH (xpathex):
XML。
たとえば,次の式は,文字列がXMLファイルの最初の1000バイトにある場合,文字列“36”(価格値)をデータ型“替身”の値に変換します。
HTTP.REQ.BODY (1000) .XPATH (xp % (/ Book / price) %)
パラメーター:
xpathex-XPath
例:
弥尔顿 失乐园
> <文本。XPATH (xpathex):
XML。ノードセットは,標準のXPath文字列変換ルーチンを使用して,対応する文字列に変換されます。
たとえば,次のエクスプレッションは,本体の最初の1000バイトで/ Book /创造者”(ノードセット)で囲まれているすべてのノードを選択します。
HTTP.REQ.BODY (1000) .XPATH (xp % / Book /创造者%)
パラメーター:
xpathex-XPath式
<文本> .XPATH_HTML (xpathex)
html。
たとえば,次の式はHTMLファイルに対して動作し,HTML标题要素が最初の1000バイトに見つかった場合,
<标题\ > < /标题\ >
。HTTP.REQ.BODY (1000) .XPATH_HTML标题(xp % / html /头/ %)
パラメーター:
xpahex - xpath
<文本> .XPATH_HTML_WITH_MARKUP (xpathex)
HTMLファイルを操作し,文書の選択された部分全体を含む文字列を返します。。
次の式はHTMLファイルに対して動作し<标题> \,マークアップを含むタグ内のすべてのコンテンツを選択します。
HTTP.REQ.BODY(1000)。XPATH_HTML_WITH_MARKUP标题(xp % / html /头/ %)
。
パラメーター:
xpathex-XPath式
<文本> .XPATH_JSON (xpathex)
。
。
{"书":{“创造者”:{"人":{“名称”:“<名称>”}},“标题”:“<标题>}}
次の式はJSONファイルを操作し,JSONファイルの最初の1000バイトに“创造者”という名前の親ノードが“书”である場合に,ブール値真正を返します。
HTTP.REQ.BODY (1000) .XPATH_JSON (xp %布尔(/书/创造者)%)
パラメーター:
xpathex-XPath
<文本> .XPATH_JSON (xpathex)
JSON,“双”,“双”。
。
{"本":{“クリエイター":{"人":{“名前”:<名称>”},“タイトル”:“<标题>”,“価格”:“36 "}}
次の式はJSONファイルを操作し,JSONファイルの最初の1000バイトに文字列が存在する場合,文字列“36”をデータ型“替身”の値に変換します。
HTTP.REQ.BODY (1000) .XPATH_JSON (xp % (/ Book / price) %)
パラメーター:
xpathex-XPath
<文本> .XPATH_JSON (xpathex)
Json:。ノードセットは,標準のXPath文字列変換ルーチンを使用して,対応する文字列に変換されます。
。
{"本":{“クリエイター":{"人":{“名前”:<名称>”},“タイトル”:“<标题>}}
次の式は、JSONファイルの本体の最初の1000バイトの“/书”(ノードセット)で囲まれたすべてのノードを選択し,対応する文字列値を返します。<名称> <标题>”:
HTTP.REQ.BODY (1000) .XPATH_JSON书(xp % / %)
パラメーター:
xpathex-XPath式
<文本> .XPATH_JSON_WITH_MARKUP (xpathex)
。。
。
{"本":{“クリエイター":{"人":{“名前”:<名称>”},“タイトル”:“<标题>}}
次の式はJSONファイルを操作し,本体の最初の1000バイトで/ Book /创造者”で囲まれているすべてのノードを選択します。“creator:{person:{name: '
'}}”。 HTTP.REQ.BODY (1000) .XPATH_JSON_WITH_MARKUP (xp % / Book /创造者%)
。
パラメーター:
xpathex-XPath式
<文本> .XPATH_WITH_MARKUP (xpathex):
。。
たとえば,次の式はXMLファイルに対して動作し,本文の最初の1000バイトの/ Book /创造者”で囲まれたノードをすべて選択します。
HTTP.REQ.BODY (1000) .XPATH_WITH_MARKUP (xp % / Book /创造者%)
。
パラメーター:
xpathex-XPath式