4

我是 marklogic 的新手,我开始使用 Corona APi 进行探索。我使用 store API 存储了一些文档。现在我想对一组单词进行分面。我已经索引了一个看起来像的 json 文档

... "aothor":"name", "published_date":"20-10-2011", "nouns":["n1","n2"], .... 我可以在作者字段上进行分面在使其成为范围索引字段之后。我不确定如何计算这个“名词”字段中的所有单词。

请建议我如何在这个或任何其他方式上进行刻面以获得这些词的频率。

4

3 回答 3

2

目前没有对数组对象的分面的本机支持。他们计划将其包含在下一个 Marklogic 版本中。这里建议解决方法https://github.com/marklogic/Corona/issues/86

于 2012-06-19T10:59:14.567 回答
0

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

如果您尚未查看它们,https://github.com/marklogic/Corona/wiki/Facet-Querieshttps://github.com/marklogic/Corona/wiki/Range-Management可能会有所帮助。

于 2012-06-16T19:58:09.397 回答
0

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

  1. 在数据库中创建范围索引,例如:用于“作者”元素

  2. 转到,Configure->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 服务器(如果需要)。

现在点击您的特定网址以获取作者方面的信息,如下所示:

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

于 2012-06-17T09:05:12.173 回答