2016-04-08 25 views
1

Böyle bir belge içeriğim var ve "anahtar" öğesi üzerinde bir aralık dizilim var. yönleriyle oluştururkenAralıklı kısıtlamalarda hesaplanmış-kova için kullanıcı tanımlı bağlantı kullanabilir miyiz?

<root> 
    <key>NAM</key> 
    <key>NA</key> 
    <key>North America</key> 
</root> 

, ben bir gruba onlardan yerine her biri içine "NAM" ve "NA" hesaplamak istiyorum.

Yani bu örnekte olduğu gibi, az ya da çok bilgisayarlı-kova kullanmaya çalıştı:

<constraint name="date"> 
    <range type="xs:dateTime" facet="true"> 
    <element ns="http://example.com" name="entry"/> 
    <attribute ns="" name="date"/> 

    <computed-bucket lt="-P1Y" anchor="start-of-year" name="older">Older</computed-bucket> 
    <computed-bucket lt="P1Y" ge="P0Y" anchor="start-of-year" name="year">This Year</computed-bucket> 
    <computed-bucket lt="P1M" ge="P0M" anchor="start-of-month" name="month">This Month</computed-bucket> 
    <computed-bucket lt="P1D" ge="P0D" anchor="start-of-day" name="today">Today</computed-bucket> 
    <computed-bucket ge="P0D" anchor="now" name="future">Future</computed-bucket> 

    <facet-option>descending</facet-option> 
    </range> 
</constraint> 

Ama çapa genellikle MarkLogic tarafından önceden tanımlanmış olduğunu fark ettim soruyorum: Ben kullanabilirsiniz Kendi tanımlanmış anchor, aşağıdaki bir işlev gibi mi?

<computed-bucket ge="P0D" anchor="myAnchor.xqy" name="future">Future</computed-bucket> 
+0

Ne yapmak istediğiniz hakkında biraz daha ayrıntılı bilgi verebilir misiniz? Xml snippet'iniz tarih içermiyor, bu yüzden benimAnchor.xqy ne yapmalı? – grtjn

+0

BenimAnchor.xqy, "Asya" ve "NAM" ı bir tek gruba yerleştirmek gibi kendi gruplama stratejimi tanımlamaktır. –

cevap

4
Sen tanımlamak aralığı için kova yerine bilgisayarlı-kova kullanabilirsiniz

:

http://docs.marklogic.com/guide/search-dev/appendixa#id_80046

gibi bir şey olacaktır: yardımcı olur umuduyla

<bucket name="N" lt="O" ge="N">Terms that start with N</bucket> 

,

+0

Bu şekilde bir şekilde zor kodlama olabilir. Bir gün "Asya" ve "NAM" ı bir yön grubuna koymak istersek ne olur? Bilgisayarlı kepçeyi kullanmayı seçmemin nedeni daha fazla esneklik sağlamaktır. –

+0

Endişeyi anladığımdan emin değilim. Kovaları istediğiniz zaman değiştirebilirsiniz. – ehennum

İlgili konular