基本操作 > Windchill のサーチ機能 > サーチの参照 > XML ドキュメントのサーチ
  
XML ドキュメントのサーチ
* 
このトピックが適用されるのは、wt.index.enableXMLTagSearch プロパティが true に設定されている場合のみです。デフォルトでは、このプロパティは false に設定されます。
Windchill Index Search がインストールされ有効になっている場合、XML ファイルがデフォルトでインデックシングされます。XML コンテンツ (XML タグで囲まれている値) に対する一般的なキーワードサーチを使用して、XML ドキュメントをサーチできます。
ただし、wt.index.enableXMLTagSearch プロパティが true に設定されている場合、Windchill では、XML のコンテンツ、タグ、および属性がインデックシングされます。結果として、XML ドキュメントのすべてのタグ名およびコンテンツがインデックシングされ、「キーワード」フィールドを使用してサーチ可能になります。
たとえば、次のものを含む XML ドキュメントをアップロードします。
<title>部品カタログ</title>
"カタログ" または "タイトル" のいずれかのキーワードサーチで、XML ドキュメントが返されます。
XML ドキュメントでのキーワードサーチを制限する場合、xml: に続けて特殊な照会文字列を入力します。
* 
XML サーチは英語のみで実行できます。XML を対象としたインデックシングの実行では、言語処理は行われません。
無効な XML が存在する場合、Windchill は XML ドキュメントのコンテンツをインデックシングできません。その場合、XML ドキュメントはその「名前」または「番号」属性によってのみサーチできます。
特殊な xml: サーチの実行時には、キーワード規則が適用されます。たとえば、ワイルドカードを使用でき、ステミングが使用されます。詳細については、キーワードサーチの規則を参照してください。
特殊な xml: サーチを実行するには、「サーチモード」プリファレンスが「単純」に設定され、wt.index.enableXMLTagSearch プロパティが true に設定されている必要があります。
XML タグのサーチ
次のフォーマットで、タグ名やタグのコンテンツに対するサーチが可能です。
xml:tag
xml:tag(content)
これらの文字列を組み合わせて、複数レベルの XML 階層をサーチすることもできます。階層でサーチする場合、次の規則が適用されます。
任意の数のレベルをサーチできます。
階層レベルの区切りにはコロン文字 (":") を使用します。
xml:tag(content):tag(content)
(content) 内の文字列が OR 演算子によって結合されます。
階層内のすべてのレベルのタグを指定する必要はありません。
階層内に中間タグがある場合でも、コンテンツをサーチできます。
コンテンツがタグ内でコンテンツがネストされている限り、改装内のどこからでも文字列を含めることができます。
階層構造に従う必要があります。
たとえば、次の XML ファイルをアップロードします。
次のいずれかのキーワードサーチを使用すると、ファイルが返されます。
xml:catalog
xml:cat*
xml:page
xml:spring(gloves)
xml:spring(outdoor):page(soil gloves)
xml:catalog:spring
xml:catalog:spring:title(sales)
xml:catalog(garden tools soil winter)
catalog garden tools soil winter
ただし、次のサーチは失敗します。
キーワード
失敗の理由
xml:garden
コンテンツだけではサーチできません。タグ名に続けて、コンテンツを括弧で囲む必要があります。
サーチにタグを使用しない場合、xml: 修飾子を除去し、基本キーワードサーチを実行します。
次善策:
xml:spring(garden) xml:spring:title(garden) garden
xml:catalog(garden)item(gloves)
階層レベル間にはコロンを使用する必要があります。
次善策:
xml:catalog(garden):item(gloves)
xml:caption(winter):catalog(sales)
xml:caption(sales)
階層サーチは上位レベルで開始された後、ネストされたレベルに続く必要があります。ネストされたタグの後に上位レベルのタグがある状態で開始することはできません。
キャプションタグがカタログ内にネストされています。
"Sales" のタグ階層はキャプションより上位です。
<CATALOG>
<SPRING>
<TITLE>Garden Sales</TITLE>
<PAGE>
<CAPTION>Goodbye, Winter!</ITEM>
次善策:
xml:catalog(sales):caption(winter) xml:catalog(sales winter) xml:catalog(sales winter):caption xml:catalog:caption(winter)
xml:title(potting soil)
タグ名と直接タグ内にないコンテンツをペアにする場合、指定したタグ内でコンテンツをネストする必要があります。
XML の例では、"potting soil" は、ネストされたアイテムタグのコンテンツです。階層内ではタイトルタグが上位レベルです。ただし、タイトルはアイテムのタグ階層に含まれません。
アイテムのタグ階層は、カタログ > ばね > ページ > アイテムの順です。
<CATALOG>
<SPRING>
<TITLE>Garden Sales</TITLE>
<PAGE>
<ITEM>Potting Soil</ITEM>
次善策:
xml:page(potting soil) xml:catalog(potting soil) xml:catalog:page(potting soil) xml:catalog:spring:page:item(potting soil)
xml:caption(winter):item(soil)
同じ階層レベルにある 2 つのタグをサーチすることはできません。
<PAGE>
<CAPTION>Goodbye, Winter!</CAPTION>
<ITEM>Potting Soil</ITEM>
次善策:
xml:page(winter):item(soil) xml:page(winter soil) xml:caption(winter) xml:item(soil)
XML 属性のサーチ
次のフォーマットを使用して、属性名と属性値をサーチできます。
xml:@attribute
xml:@attribute(value)
* 
異なる属性名と値を組み合わせることはできません。値がその属性に属している必要があります。
これらの文字列を組み合わせて、複数レベルの XML 階層をサーチすることもできます。階層でサーチする場合、次の規則が適用されます。
任意の数のレベルをサーチできます。
階層レベルの区切りにはコロン文字 (":") を使用します。
xml:@attribute(value):@attribute(value)
(value) 内の文字列が OR 演算子によって結合されます。
階層内のすべてのレベルの属性を指定する必要はありません。
階層構造に従う必要があります。
たとえば、次の XML ファイルをアップロードします。
次のいずれかのキーワードサーチを使用すると、ファイルが返されます。
xml:@month
xml:@month(ma*)
xml:@color(pink)
xml:@number:@color
xml:@status(released):@number:@id(98821c56)
march color pink 98821c56
ただし、次のサーチは失敗します。
xml:pink
値のみではサーチできません。属性に続けて、値を括弧で囲む必要があります。
サーチに属性を使用しない場合、xml: 修飾子を除去し、基本キーワードサーチを実行します。
次善策:
xml:@color(pink) xml:@month:@color(pink) pink
xml:@month(march april)@color(pink)
階層レベル間にはコロンを使用する必要があります。
次善策:
xml:@month(march april):@color(pink)
xml:@status(98821c56)
タグとコンテンツのペアとは異なり、ネストされた値はサーチできません。
つまり、属性名とネストされた属性値を組み合わせて照合することはできません。
<CATALOG status="Released">
<SPRING month="March, April, May">
<PAGE number="12">
<ITEM id="98821c56">Potting Soil</ITEM>
次善策:
xml:@status:@id(98821c56) xml:@id(98821c56)
xml:@number(12):@status(released)
階層サーチは上位レベルで開始された後、ネストされたレベルに続く必要があります。ネストされた属性をサーチした後、階層内で上位の属性または値をサーチすることはできません。
<CATALOG status="Released">
<SPRING month="March, April, May">
<PAGE number="12">
次善策:
xml:@status(released):@number(12) xml:@status(released):@number xml:@status:@number(12)
xml:@alias(garden):@number(12)
同じ階層レベルで異なるタグ内の 2 つの属性をサーチすることはできません。
<CATALOG status="Released">
<SPRING month="March, April, May">
<TITLE alias="Spring Garden Catalog">Garden Sales</TITLE>
<LINE>Outdoor_Tools</LINE>
<PAGE number="12">
次善策:
xml:@alias(garden) xml:@number(12)
タグサーチと属性サーチの組み合わせ
XML タグ、コンテンツ、属性、および属性値によるサーチに、前述のサーチを組み合わせることができます。
次のいずれかのフォーマットを使用できます。
xml:tag(content)@attribute(value)
xml:tag@attribute
xml:tag(content)@attribute
xml:tag@attribute(value)
コロン (:) を使用して、XML 階層を移動できます。階層サーチでは、前述の規則に従う必要があります。
たとえば、次の XML ファイルをアップロードします。
次のいずれかのキーワードサーチを使用すると、ファイルが返されます。
xml:spring@month(april)
xml:catalog(garden soil gloves)@status(released)
xml:page@number(12):item@id(98821c56)
xml:catalog:@month(april):caption(goodbye)
xml:catalog(gloves soil):page@number(12):caption(goodbye)
xml:spring(garden tools):@alias
catalog march spring pink 98821c56
ただし、次のサーチは失敗します。
xml:item(pink)
タグ名と属性値をペアにすることはできません。
次善策:
xml:item@color(pink) item pink
xml:@id(potting soil)
属性名とタグのコンテンツをペアにすることはできません。
次善策:
xml:item(potting soil)@id id potting soil
xml:spring@color(pink)
タグ名と、別のタグで指定されている属性をペアにすることはできません。
次善策:
xml:item@color(pink) xml:spring:@color(pink)
xml:spring:@status(released)
階層サーチは上位レベルで開始された後、ネストされたレベルに続く必要があります。ネストされた属性またはタグを指定した後、階層の上位エレメントを指定することはできません。
次善策:
xml:@status(released):spring