Spécification d'API REST de recherche
Ce document décrit l'appel d'API pour la recherche dans HCL Digital Experience Portal. You can search HCL to find content that contains a specific text string in its title or content, or is tagged with a specific tag.
Chemins de contexte
Chemin de contexte | Authentification |
---|---|
/PORTAL_CONTEXT/contenthandler/searchfeed/search | Aucun |
/PORTAL_CONTEXT/mycontenthandler/searchfeed/search | De base |
Paramètres
L'ordre d'apparition des paramètres dans la requête n'a pas d'importance. Les noms de paramètre sont sensibles à la casse et doivent être entrés dans le format documenté. Tout paramètre inconnu ou non pris en charge soumis dans le cadre d'une demande est ignoré.
- Dans le cas d'une demande GET, l'URL est formée de la combinaison du nom d'hôte, du port et du chemin du serveur de recherche, suivis d'une collection de paires nom-valeur (paramètres d'entrée) séparés par le caractère &. Toute valeur de paramètre doit être codée si elle figure dans une demande GET.
- Dans le cas d'une demande POST, l'URL est formée de la combinaison du nom d'hôte, du port et du chemin du serveur de recherche, et une collection de paires nom-valeur (paramètres d'entrée) est transmise dans la demande en tant que paramètres.
Nom | Description | Commentaires |
---|---|---|
locale |
|
Spécifie la langue à utiliser pour faire une analyse syntaxique de la demande de recherche. Voir ISO-639 et ISO-3166 pour connaître les valeurs valides, par exemple. en_US. Ce paramètre est facultatif. Lorsqu'il est spécifié, le dictionnaire approprié à la langue spécifiée est utilisé. Remarque : Le dictionnaire de la langue spécifiée doit être activé pour que ce paramètre fonctionne. |
query |
Les opérateurs suivants sont pris en charge :
Remarque : Les recherche génériques sont autorisées mais il n'est pas possible d'utiliser uniquement le caractère générique (*).
Pour plus d'informations sur les opérateurs pris en charge, accédez à la rubrique Recherche. |
|
queryLang | Langue de la chaîne de requête | Spécifie la langue à utiliser pour faire une analyse syntaxique du paramètre de requête. Voir ISO-639 et ISO-3166 pour connaître les valeurs valides, par exemple. en_US. Ce paramètre est facultatif. Lorsqu'il est spécifié, le dictionnaire approprié à la langue spécifiée est utilisé. Remarque : Le dictionnaire de la langue spécifiée doit être activé pour que ce paramètre fonctionne.
|
start | Décalage au premier résultat à renvoyer dans les résultats | Définit un décalage à partir du premier résultat dans l'ensemble. Ce paramètre est ignoré si un paramètre page est fourni. La valeur part de 0. La valeur par défaut est 0. Si la valeur spécifiée est négative, elle prend par défaut la valeur 0 ; si la valeur spécifiée est supérieure au nombre de résultats, aucun résultat n'est renvoyé. |
page | Numéro de page | Indique la page à renvoyer. La valeur par défaut est 1, qui renvoie la première page. |
pageSize | Nombre de résultats souhaités pour une demande unique | Indique le nombre d'entrées à renvoyer par page. La valeur minimale est 0 (par défaut, les valeurs négatives sont définies sur 0). La valeur par défaut est 10. La valeur maximale pouvant être spécifiée est 150. |
scope | Identificateur de la portée de la recherche ; la liste des portées valides est disponible à la rubrique API de portées. | Par défaut, la recherche s'effectue sur toutes les portées. |
sortKey | Clé qui contrôle l'ordre de tri des résultats de recherche. | Valeurs prises en charge : date et relevance. Une valeur valide pour ce paramètre est l'une de ces valeurs ou le nom de toute autre zone triable. |
sortOrder | Détermine l'ordre de tri des résultats : croissant ou décroissant. | Les seules valeurs valides sont asc ou desc. |
constraint | Autorise la contrainte des résultats de recherche en fonction des critères fournis. | Critères fournis. Pour plus d'informations, voir API de contraintes. |
facet | Indique les facettes renvoyées pour la requête en plus des résultats de recherche. | Ajout aux résultats de recherche. Pour plus d'informations, voir API de facettes. |
index | Indique quel index (collection) utiliser pour la recherche | Pour plus d'informations, voir API d'index. |
Exemples
/searchfeed/search?queryLang=en&locale=en&resultLang=en&query=development&scope=1345374377545&start=0&results=10 Requête de recherche avec texte de la requête = development.
Format de réponse
Section | Remarques |
---|---|
/feed | Elément conteneur des métadonnées et des données, associé au flux des résultats de la recherche. |
/feed/title | Titre descriptif du flux. |
/feed/link[@href] | Référence du flux à une ressource Web. Pour des informations, voir Pagination et archivage de flux. |
/feed/link[@rel= "next"|"previous"|"first"|"last"] | Les liens first, last, next et previous sont inclus pour la prise en charge. |
/feed/author/name | Description du générateur de flux. |
/feed/id | Identificateur unique universel permanent pour le flux. |
/feed/updated | Date et heure d'émission de la requête. La valeur est conforme à la production de date-heure dans RFC3339. |
/feed/openSearch:totalResults | Nombre total de résultats pour la requête soumise. |
/feed/openSearch:Query | Contient des informations sur la requête soumise par l'utilisateur. |
/feed/openSearch:Query[@role] | La valeur de l'attribut de rôle est request. |
/feed/openSearch:Query[@searchTerms] | Représente les termes de la requête soumise par l'utilisateur. |
/feed/openSearch:startIndex | Nombre initial de résultats pour les résultats de recherche renvoyés dans ce flux. |
/feed/openSearch:itemsPerPage | Nombre de résultats de recherche renvoyés dans ce flux. |
/feed/entry | Englobe les informations concernant un seul résultat de recherche. |
/feed/entry/category | Transporte les informations sur une catégorie (correspondant souvent à une facette) associée à une entrée. |
/feed/entry/category@term | Chaîne qui identifie la catégorie à laquelle l'entrée appartient. |
/feed/entry/category@scheme | IRI identifiant un schéma de catégorisation. |
/feed/entry/title | Construction de texte qui transmet un titre lisible pour une entrée. |
/feed/entry/title[@type] | Indique si le construction (syntaxe) du texte est text, html ou xhtml. La construction du texte est text si rien d'autre n'est spécifié. |
/feed/entry/link | Définit une référence à la ressource du résultat de recherche. |
/feed/entry/link[@rel] | Indique le type de relation de lien. Si n'est pas présent, le type est alternate . |
/feed/entry/link[@href] | Lien URI vers le document. |
/feed/entry/link[@type] | Le type de contenu du lien de document URI est un type de support de recommandation. |
/feed/entry/relevance:score | Indique une évaluation relative de pertinence pour un résultat de recherche particulier concernant la requête de recherche. |
/feed/entry/updated | Date de dernière modification du document. La valeur est conforme à la production de date-heure dans RFC3339. |
/feed/entry/id | Identificateur unique du document. |
/feed/entry/summary | Construction de texte qui transmet un bref récapitulatif, un résumé ou un extrait d'une entrée. |
/feed/entry/summary[@type] | Indique si le construction (syntaxe) du texte est text, html ou xhtml. La construction du texte est text si rien d'autre n'est spécifié. |
/feed/entry/author | Construction de personne qui indique l'auteur de l'entrée ou du flux. |
/feed/entry/author/name | Nom lisible pour la personne. |
/feed/entry/author/uri | Identificateur associé à la personne. |
/feed/entry/author/email | Adresse électronique de la personne. En fonction des paramètres de configuration d'HCL Connections, cette valeur peut ne pas être envoyée dans le flux. |
/feed/entry/wplc:field | Cette élément est utilisé pour représenter le nom et la valeur d'une zone d'un document. L'attribut id représente le nom de la zone. Le corps de l'élément représente la valeur de la zone. D'autres zones sont incluses dans la réponse des résultats de recherche si spécifié via le paramètre includeField. |
/feed/ibmsc:facets | Pour plus d'informations, voir Facettes. |
- Le namespace dans le tableau est http://www.w3.org/2005/Atom, sauf mention contraire.
- L'identificateur openSearch est utilisé pour faire référence à l'espace de nom http://a9.com/-/spec/opensearch/1.1.
- L'identificateur relevance est utilisé pour faire référence l'espace de nom http://a9.com/-/opensearch/extensions/relevance/1.0/.
- L'identificateur ibmsc est utilisé pour faire référence l'espace de nom http://www.ibm.com/search/content/2010.
- L'identificateur spelling est utilisé pour faire référence l'espace de nom http://a9.com/-/opensearch/extensions/spelling/1.0/.
Exemple
> GET /searchfeed/search?query=development&scope=com.ibm.lotus.search.ALL_SOURCES HTTP/1.1
<?xml version="1.0" encoding="UTF-8"?>
<atom:feed xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:wplc="http://www.ibm.com/wplc/atom/1.0"
xmlns:atom="http://www.w3.org/2005/Atom">
<atom:title>Search results for query "development" on scope "com.ibm.lotus.search.ALL_SOURCES"</atom:title>
<atom:link href="searchfeed:search" rel="self" type="application/atom+xml"/>
<atom:author>
<atom:name>Enterprise Search API Web Service.</atom:name>
</atom:author>
<atom:id>searchfeed:search</atom:id>
<atom:category term="com.ibm.lotus.search.ALL_SOURCES" label="com.ibm.lotus.search.ALL_SOURCES"/>
<atom:updated>2013-01-14T08:35:27.482Z</atom:updated>
<opensearch:totalResults exact="true">412</opensearch:totalResults>
<opensearch:Query role="request" searchTerms="development"/>
<opensearch:startIndex>0</opensearch:startIndex>
<opensearch:itemsPerPage>10</opensearch:itemsPerPage>
<atom:entry>
<atom:id>ResourceinjectionusingRationalApplicationDeveloperv7.5</atom:id>
<atom:title type="text/html">Resource injection using Rational Application Developer v7.5</atom:title>
<atom:author>
<atom:uri>Dan_Haim</atom:uri>
<atom:name>Dan Haim</atom:name>
</atom:author>
<atom:author>
<atom:uri>James_Chung</atom:uri>
<atom:name>James Chung</atom:name>
</atom:author>
<atom:link href="http://www.ibm.com/developerworks/rational/library/10/resourceinjectionwithrad7-5/index.html"/>
<atom:category term="ContentSourceType/default" scheme="com.ibm.wplc.taxonomy://feature_taxonomy" label="Document"/>
<opensearch:relevance>100.0</opensearch:relevance>
<atom:updated>2010-06-07T06:49:09.000Z</atom:updated>
<atom:summary type="html"><![CDATA[<Strong>Summary:</Strong> Java™ platf....]]></atom:summary>
<atom:link href="/wps/images/icons/Document.gif" rel="icon"/>
<wplc:field id="name">95c189804d4268bf8d49ede9170f1e3d</wplc:field>
<wplc:field id="contentSourceType">Seedlist</wplc:field>
<wplc:field id="defaultcontext">/poc</wplc:field>
<wplc:field id="effectivedate">1236246335000</wplc:field>
<wplc:field id="modifier">Replicator</wplc:field>
<wplc:field id="securecontext">/mypoc</wplc:field>
<wplc:field id="search_controllable_uuid">2c1e7b59-b465-49da-bc99-5aee3c00932b</wplc:field>
<wplc:field id="locale">en</wplc:field>
<wplc:field id="RatingAverage">4</wplc:field>
<wplc:field id="author_info">Dan_Haim<![CDATA[<Dan Haim<]]></wplc:field>
<wplc:field id="author_info">James_Chung<![CDATA[<James Chung<]]></wplc:field>
<wplc:field id="acls">public</wplc:field>
<wplc:field id="authoringtemplate">Blog Home</wplc:field>
<wplc:field id="popularity">7811</wplc:field>
<wplc:field id="security_ids">Z6QReDeIPO2JIT62BDIJM8CKHDAJMG6P1P2MM8C3BEIJMK61BPAMPCCG1CIJP8623</wplc:field>
<wplc:field id="difficulty">Advanced</wplc:field>
<wplc:field id="contentPath">/Blog Solo Template v70/Blog/Home/95c189804d4268bf8d49ede9170f1e3d</wplc:field>
<wplc:field id="category">Rational</wplc:field>
</atom:entry>
...
</atom:feed>