2017-07-21 8 views
0

ファセットやその他のタイプのフィルタを使用する必要がある場合は、アドバイスをお願いします。私はMarklogicで名前の記事を持っているMarklogicが選択したアルファベットのファセットを返す

、私はアルファベットのボタン(AからZ)に

をクリックすることにより、これらの名前をフィルタリングする必要があります。 EGもし私がFボタンをクリックすると、 は文字Fで始まる記事を返し、またAはの他のアルファベット文字をA ... ZIが使用していますが、 をクリックするとGのように他の文字は表示されませんGと 他の文字は表示されません。

<constraint name="acronyms_alphabetic_order"> 
    <range type="xs:string" facet="true" collation="http://marklogic.com/collation/codepoint"> 
     <element ns="http://marklogic.com/solutions/obi/source" name="alphabeticOrder"/> 
     <facet-option>limit=26</facet-option> 
    </range> 
</constraint> 

FYI私が追加した範囲要素インデックス

答えて

0

ファセットが実際に正常に機能しているようですね。ファセットは、常に検索結果と一致する値を表します。

ファセット自体を変更するのではなく、ファセットをプルアップする方法を変更する必要があると思います。

たとえば/v1/valuesまたはsearch:valuesのコールを使用して、acronyms_alphabetic_orderのフィルタを省略した検索クエリを通過するファセットの値をプルアップします。

HTH!

+0

ありがとうございます。 検索エンジンを作成していて、追加の電話をかけてもパフォーマンスが向上し、株主からは受け入れられません。 アルファベット文字を他の方法で入手する方法はありますか? – user1524615

+0

パフォーマンスが低下することはあまりありません。この余分な呼び出しは、例えば並列に実行することができる。しかし、往復を1回に限定することを希望する場合は、カスタムファセットの作成を参照できます。http://docs.marklogic.com/guide/search-dev/search-api#id_49750しかし、それは高速ではないことが保証されていません。 – grtjn

関連する問題