指定した検索語句のメタデータインデックスリポジトリを検索します。 searchAssets メソッドと同様にアセットデータを返します。
While searchAssetsByMetadata
を使用すると、ユーザー定義のメタデータフィールドに対して検索を実行できます。 responseMetadataArray
. この点を説明するために、次のコード例を示します。
<ns:responseMetadataArray>
<ns:items>custom_attributes.x</ns:items>
</ns:responseMetadataArray>
null 値を戻します。
<items>
<name>custom_attributes.x</name>
<value>null</value>
</items>
この問題を回避するには、 fieldHandles
検索から返されたアセットの getAssets
( getAssets) をクリックします。 このメソッドは、該当するアセットのユーザー定義フィールド値を取得します。 次の構文例を使用して、ユーザー定義のメタデータフィールドに対して検索を行います。
<ns:metadataConditionArray>
<ns:items>
<ns:fieldHandle>custom_attributes.[UDF Field Name]</ns:fieldHandle>
<ns:op>[Conditional]</ns:op>
<ns:value>[Value]</ns:value>
</ns:items>
</ns:metadataConditionArray>
IpsUser
IpsAdmin
IpsCompanyAdmin
ImagePortalAdmin
ImagePortalUser
ImagePortalContrib
ImagePortalContribUser
入力 (searchAssetsByMetadataParam)
名前 | 種類 | 必須 | 説明 |
---|---|---|---|
companyHandle |
xsd:string |
はい |
会社への取り扱い。 |
フィルター |
type:SearchFilter |
いいえ |
検索条件を定義するのに役立つフィルターです。 詳しくは、 SearchFilter. |
metadataConditionArray |
type:MetadataConditionArray |
いいえ |
検索条件を定義する条件。 詳しくは、以下を参照してください。 |
responseMetadataArray |
type:StringArray |
いいえ |
アセット概要の応答に入力する追加のフィールド。 フィールドは、正規化された形式で指定する必要があります。 |
recordsPerPage |
xsd:int |
いいえ |
応答で返されたアセットの数。 デフォルト値は 1000 です。 |
resultsPage |
xsd:int |
いいえ |
返す結果のページを、 recordsPerPage ページサイズ。 |
sortBy |
xsd:string |
いいえ |
選択したアセットフィールドで並べ替え。 |
sortDirection |
xsd:string |
いいえ |
並べ替え方向の選択。 デフォルトは「昇順」です。 |
出力 (searchAssetsByMetadataReturn)
名前 | 種類 | 必須 | 説明 |
---|---|---|---|
totalRows | xsd:int |
いいえ | 一致数。 |
assetArray | types:AssetArray |
いいえ | 検索で返されたアセットの配列。 |
項目構造
metadataConditionArray
構造は次のようになります。
<ns1:items>
<ns:fieldHandle>field_handle</ns:fieldHandle>
<ns:op>operator</ns:op>
<ns:value>comparison_value</ns:value>
</ms1:items>
値
field_handle
は、メタデータ検索キーです。 ドット表記を含めることができます。 次の値を指定できます。
asset_id
(プレフィックスなし)
name
folder_path
type
file_name
description
comment
user_data
sku
modified_at
modified_by
created_at
( modified_at
( フォーム内の日付:2014 年 7 月 25 日(金) 22:13:45 GMT-0500 (CDT)
created_by
許可された演算子
この operator 値を比較し、次の値を含める方法を定義します。
Equals
NotEquals
Contains
NotContains
StartsWith
EndsWith
この comparison_value
は、を検索する用語です。
このコードサンプルは、次のメタデータ条件を持つ検索を実行します。
name
フィールドに次を含む 1000801
.
dc.rights
フィールド等しい Per Jessen Schmidt
.
リクエスト
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.scene7.com/IpsApi/xsd"
xmlns:ns="http://www.scene7.com/IpsApi/xsd/2010-01-31">
<soapenv:Header>
<xsd:authHeader>
<xsd:user>user@adobe.com</xsd:user>
<xsd:password>topSecret</xsd:password>
</xsd:authHeader>
</soapenv:Header>
<soapenv:Body>
<ns:searchAssetsByMetadataParam>
<ns:companyHandle>c|656</ns:companyHandle>
<ns:metadataConditionArray>
<ns:items>
<ns:fieldHandle>name</ns:fieldHandle>
<ns:op>Contains</ns:op>
<ns:value>1000801</ns:value>
</ns:items>
<ns:items>
<ns:fieldHandle>dc.rights</ns:fieldHandle>
<ns:op>Equals</ns:op>
<ns:value>Per Jessen Schmidt</ns:value>
</ns:items>
</ns:metadataConditionArray>
<ns:responseMetadataArray>
<ns:items>dc.subject</ns:items>
<ns:items>xmp.CreatorTool</ns:items>
</ns:responseMetadataArray>
</ns:searchAssetsByMetadataParam>
</soapenv:Body>
</soapenv:Envelope>
応答
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<searchAssetsByMetadataReturn xmlns="http://www.scene7.com/IpsApi/xsd/2010-01-31">
<totalRows>1</totalRows>
<assetSummaryArray>
<items>
<assetHandle>a|885289</assetHandle>
<type>Image</type>
<name>test9-1000801</name>
<folder>Extroscope/Test subfolders/</folder>
<filename>test9-1000801.jpg</filename>
<created>2009-11-19T07:21:24.252-08:00</created>
<createUser>pschmidt@adobe.com</createUser>
<lastModified>2009-11-19T07:21:25.487-08:00</lastModified>
<lastModifyUser>pschmidt@adobe.com</lastModifyUser>
<metadataArray>
<items>
<name>dc.subject</name>
<value>[San Fransico, USA</value>
</items>
<items>
<name>xmp.CreatorTool</name>
<value>Ver.1.0</value>
</items>
</metadataArray>
</items>
</assetSummaryArray>
</searchAssetsByMetadataReturn>
</soapenv:Body>
</soapenv:Envelope>