2015年5月29日 (金)

SharePoint 2013 /SharePoint Online 検索 - 管理されたメタデータでの絞り込み

ライブラリやリストに管理されたメタデータ列を追加すると、自動的に owsTaxId<列名> という名前の管理プロパティが作成されます。このプロパティを使って絞り込み検索できます。

たとえば、SharePointCategory という名前の管理されたメタデータ列があるとします。

2015-05-29 14-36-31

次のように "サイト管理" となっているアイテムに絞り込み検索できます。

owsTaxIdSharePointCategory:サイト管理

 

2015-05-29 14-38-19

管理プロパティでの絞り込みでは ":" または "=" が使用できます。":" は Contains を表し、"プロパティに~の値を含む" という意味になります。一方の "=" は、プロパティ値が指定した値と厳密に値が一致することを表します。

さて、管理メタデータに対する絞り込み検索ですが、基本的に"=" は使用しないでください。管理メタデータは、内部的には次のような値を持っています (REST API でアクセスしたところ)。

2015-05-29 21-36-59

[owsTaxIDSharePointCategory の値]

GP0|#5e85831a-4ebf-4381-9cde-bc1acc2849e4;L0|#05e85831a-4ebf-4381-9cde-bc1acc2849e4|サイト管理;GTSet|#a1fd6dba-538b-45f7-a997-d1caeec3c63c

管理メタデータは、用語と用語ごとの ID を持っているため、これらの値が格納されているわけです。となると、'owsTaxIDSharePointCategory="サイト管理"' などと指定すると、厳密に値が一致しないため、検索結果がないと言われてしまいます。ですから、"指定した値を含む" という意味の ":" を指定して、検索結果を絞り込む必要があります。

 

Course-Banner-SearchShort
 

コメント