面对marklogic中的单词数组

时间:2012-06-16 06:49:03

标签: facet marklogic

我是marklogic的新手,我开始使用Corona APi进行探索。我使用商店API存储了一些文档。现在我想对一系列单词进行分面。我已经索引了一个类似于

的json文档

... “aothor”: “名字”, “published_date”: “20-10-2011” “名词”: “N1”, “N2”], .... 在将其作为范围索引字段后,我能够在作者字段上进行分面。我不确定如何计算这个“名词”字段中的所有单词。

请建议我如何通过此方式或任何其他方式进行分区以获得这些单词的频率。

3 个答案:

答案 0 :(得分:2)

目前,对阵列对象的分面没有原生支持。他们计划将此包含在下一个Marklogic版本中。 解决方法解决方案建议https://github.com/marklogic/Corona/issues/86

答案 1 :(得分:0)

我不确定Corona如何存储JSON。但是如果每个名词都存储在自己的元素中,则可以创建另一个范围索引。频率数据来自范围索引。

如果您尚未对其进行审核,https://github.com/marklogic/Corona/wiki/Facet-Querieshttps://github.com/marklogic/Corona/wiki/Range-Management可能有所帮助。

答案 2 :(得分:0)

为了获得作者提交的方面,您需要通过汤UI或Curl工具在author元素上创建第一个范围索引。如果您尝试通过数据库中的MarkLogic管理屏幕创建范围索引,则需要在MarkLogic中进行一些配置。请按照以下步骤操作:

  1. 在数据库中创建范围索引,exaple:for" author"元素

  2. 转到,配置 - > Gropus-> Deafult-> Namespcaes->并点击添加标签

  3. 在前缀字段中输入值:" corona-index-author"

  4. 在命名空间uri中输入值:http://xqdev.com/prop/xml/<index+type%3d"range"+name%3d"author"><structure>xmlelement</structure><element>author</element><type>string</type><collation/></index>

  5. 单击“确定”。

  6. 重新启动MarkLogic服务器(如果需要)。
  7. 现在点击你的特定网址来获取作者的方面,如下所示:

    http://localhost or ip":"corona-port-no"/facet/author?StructuredQuery={"and":[{"element":"author","equals":"Shakespear"},{"element":"published_date","equals":"20-10-2011"}]}&outputFormat=xml