메타데이터 인덱스 저장소에서 지정된 검색어를 검색합니다. 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)
이름 | 유형 | 필수 | 설명 |
---|---|---|---|
company핸들 |
xsd:string |
예 |
회사 손잡이. |
필터 |
type:SearchFilter |
아니요 |
검색 기준을 정의하는 데 도움이 되는 필터. 다음을 참조하십시오 SearchFilter. |
metadataConditionArray |
type:MetadataConditionArray |
아니요 |
검색 기준을 정의하는 조건입니다. 자세한 내용은 아래를 참조하십시오. |
responseMetaArray |
type:StringArray |
아니요 |
에셋 요약의 응답에 채울 추가 필드입니다. 필드는 정규화된 형식으로 지정해야 합니다. |
recordsPerPage |
xsd:int |
아니요 |
응답에서 반환된 에셋 수. 기본값은 1000입니다. |
resultsPage |
xsd:int |
아니요 |
다음을 기준으로 반환할 결과 페이지 지정 recordsPerPage 페이지 크기. |
정렬 기준 |
xsd:string |
아니요 |
선택한 에셋 필드별로 정렬합니다. |
sortDirection |
xsd:string |
아니요 |
정렬 방향 선택. 오름차순은 기본값입니다. |
출력(searchAssetsByMetadataReturn)
이름 | 유형 | 필수 | 설명 |
---|---|---|---|
합계 행 수 | 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>