searchAssetsByMetadata searchassetsbymetadata
Recherche les termes de recherche dans le référentiel d’index de métadonnées. Renvoie des données de ressource comme la méthode searchAssets.
Bien que searchAssetsByMetadata
vous permette d’effectuer une recherche par rapport aux champs de métadonnées définis par l’utilisateur, ces champs ne sont pas renvoyés s’ils sont spécifiés dans le responseMetadataArray
. Pour illustrer ce point, utilisez l’exemple de code suivant :
<ns:responseMetadataArray>
<ns:items>custom_attributes.x</ns:items>
</ns:responseMetadataArray>
renvoie une valeur null :
<items>
<name>custom_attributes.x</name>
<value>null</value>
</items>
Pour contourner ce problème, vous pouvez utiliser les fieldHandles
des ressources renvoyées par la recherche pour exécuter getAssets
(voir également getAssets). Cette méthode récupère les valeurs de champs définis par l’utilisateur pour les ressources en question. Utilisez l’exemple de syntaxe suivant pour effectuer une recherche par rapport aux champs de métadonnées définis par l’utilisateur :
<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>
Types d’utilisateurs autorisés section-9f85dd55ab574104b5fdc0f95aa0a0e2
IpsUser
IpsAdmin
IpsCompanyAdmin
ImagePortalAdmin
ImagePortalUser
ImagePortalContrib
ImagePortalContribUser
Paramètres section-5f1edb9c5b914160ab361f4364b8aa8d
Input (searchAssetsByMetadataParam)
Filtres qui vous aident à définir des critères de recherche.
Voir SearchFilter.
Output (searchAssetsByMetadataReturn)
xsd:int
types:AssetArray
metadataConditionArray Details section-1af4a4a22f82451eabdf6dfe13d9f27d
Structure de l’élément
metadataConditionArray
structure est la suivante :
<ns1:items>
<ns:fieldHandle>field_handle</ns:fieldHandle>
<ns:op>operator</ns:op>
<ns:value>comparison_value</ns:value>
</ms1:items>
Valeurs
field_handle
est la clé de recherche de métadonnées. Il peut contenir une notation par points. Les valeurs possibles sont les suivantes :
-
asset_id
(sans préfixe) -
name
-
folder_path
-
type
-
file_name
-
description
-
comment
-
user_data
-
sku
-
modified_at
-
modified_by
-
created_at
(identique àmodified_at
(Date sous le formulaire : Fri Jul 25 2014 22:13:45 GMT-0500 (CDT)) -
created_by
Opérateurs autorisés
La operator définit comment comparer la valeur et inclure les éléments suivants :
Equals
NotEquals
Contains
NotContains
StartsWith
EndsWith
Le comparison_value
est le terme à rechercher.
Exemples section-53a12b9c023e4e629eddf5719c955ad4
Cet exemple de code effectue une recherche avec les critères de métadonnées suivants :
-
name
champ contient des1000801
. -
dc.rights
champ est égal àPer Jessen Schmidt
.
Requête
<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>
Réponse
<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>