searchAssetsByMetadata searchassetsbymetadata
Recherche le référentiel d’index de métadonnées pour les termes de recherche donnés. Renvoie des données de ressources telles que la méthode searchAssets.
Alors que searchAssetsByMetadata
vous permet de rechercher 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, 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 le fieldHandles
des ressources renvoyées par la recherche pour exécuter getAssets
(voir aussi getAssets). Cette méthode récupère les valeurs des 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
Entrée (searchAssetsByMetadataParam)
Filtres permettant de définir des critères de recherche.
Voir SearchFilter.
Sortie (searchAssetsByMetadataReturn)
xsd:int
types:AssetArray
metadataConditionArray Details section-1af4a4a22f82451eabdf6dfe13d9f27d
Structure d’élément
La structure de metadataConditionArray
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 la forme : vendredi 25 juillet 2014 22:13:45 GMT-0500 (CDT)) -
created_by
Opérateurs autorisés
operator définit comment comparer la valeur et inclure :
Equals
NotEquals
Contains
NotContains
StartsWith
EndsWith
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 :
-
Le champ
name
contient1000801
. -
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>