首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于字段或元素范围索引的面

基于字段或元素范围索引的面
EN

Stack Overflow用户
提问于 2016-09-27 18:24:18
回答 2查看 154关注 0票数 1

我有一个xml文件,如下所示

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<document-envelope xmlns="http://abc/content-repo/envelope">
  <metadata xmlns="http://abc/content-repo/metadata">
    <name>48363ff1d9e0a48dc9e578f0f4519564628fdbbc.docx</name>
    <SubjectMatter>
    Combination Therapy; Comparative Efficacy; Pharmacokinetics/Pharmacodynamics; Safety; Serum Drug Levels; Therapeutic Drug Monitoring (TDM)
    </SubjectMatter>
  </metadata>
</document-enevelope>

我为SubjectMatter创建了字段和字段范围索引。

我的困境是,当我为SubjectMatter创建一个方面时,它将<SubjectMatter>中的整个内容作为一个唯一的实体来处理。但我想使';‘分隔文本作为唯一的实体。对于上面的示例xml,我希望facet是

代码语言:javascript
复制
Combination Therapy
Comparative Efficacy
Pharmacokinetics/Pharmacodynamics
Safety
Serum Drug Levels
Therapeutic Drug Monitoring (TDM)

我知道我可以通过解析字符串并在构建信封时将每个字符串添加为单独的SubjectMatter来实现这一点。

我想知道是否还有其他方法可以做到这一点,而不需要在文档信封中创建多个SubjectMatter xml标记?

下面是一个示例xml文件。

代码语言:javascript
复制
<?xml  version="1.0" encoding="UTF-8"?>
<document-envelope xmlns="http://abc/content-repo/envelope">
  <metadata xmlns="http://abc/content-repo/metadata">
    <name>2747f031c217f9e23f1e2c1e600ee48cc703494a.pdf</name>
    <context>GMA</context>
    <mime-type>application/pdf</mime-type>
    <file-type>PDF</file-type>
    <virtual-path>KN</virtual-path>
    <id>54a7b5298b5574ea7e5b743a2817d6c5ad723ac4</id>
    <uploadDate>2016-07-13T02:55:00.000-05:00</uploadDate>
    <remoteURL>https://teams.abbvienet.com/gprd/gma/KM/Lists/Library/Attachments/1120/Hawaii Derm 2013 Meeting Summary CSM Ed.pdf?Web=1</remoteURL>
    <displayFilename>Hawaii Derm 2013 Meeting Summary CSM Ed.pdf</displayFilename>
    <Title xmlns="http://abc/content-repo/metadata/gma">Hawaii Derm 2013 Meeting Summary CSM Ed</Title>
    <Modified-Date xmlns="http://abc/content-repo/metadata/gma">2016-07-13T02:55:00.000-05:00</Modified-Date>
    <author>a-gangapx</author>
    <Presenter xmlns="http://abc/content-repo/metadata/gma">US MSLs</Presenter>
    <Organization xmlns="http://abc/content-repo/metadata/gma">Malhotra, Kailash</Organization>
    <Description xmlns="http://abc/content-repo/metadata/gma">Regional Medical Meeting Report</Description>
    <Therapeutic-Area xmlns="http://abc/content-repo/metadata/gma">7. Immuno - Dermatology</Therapeutic-Area>
    <Disease-State xmlns="http://abc/content-repo/metadata/gma">7. Ps</Disease-State>
    <Material-Type xmlns="http://abc/content-repo/metadata/gma">Report</Material-Type>
    <SubjectMatter xmlns="http://abc/content-repo/metadata/gma">Safety; Pediatrics</SubjectMatter>
    <Region xmlns="http://abc/content-repo/metadata/gma">United States</Region>
    <Language xmlns="http://abc/content-repo/metadata/gma">English</Language>
    <Publication-Date xmlns="http://abc/content-repo/metadata/gma">2013-02-10T00:00:00.000-06:00</Publication-Date>
    <Active-Date xmlns="http://abc/content-repo/metadata/gma">2014-02-07T00:00:00.000-06:00</Active-Date>
    <Expiration-Date xmlns="http://abc/content-repo/metadata/gma">2014-01-01T00:00:00.000-06:00</Expiration-Date>
    <Congress xmlns="http://abc/content-repo/metadata/gma">Other</Congress>
    <Congress-Year xmlns="http://abc/content-repo/metadata/gma">2013</Congress-Year>
    <Endorsement xmlns="http://abc/content-repo/metadata/gma">MSL</Endorsement>
  </metadata>
</document-envelope>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-27 19:05:38

对于MarkLogic方面的本地使用,我认为重构信封是最符合逻辑的方法。

如果您想保持现有的数据,那么您可能会发现这种方法是可以接受的:

在subjectMatter元素上创建一个字段*

  • 增加一个词汇
  • 并自定义标记器,使其只在“;”上拆分。

在这一点上,你以你想要的方式在一个词典中得到信息。

然后查看文档abou用字典浏览中可用的工具“是否对您有足够的帮助。

  • 为什么是字段而不是elementWordLexicon?如果我们使用一个字段,那么我们可以使用管理界面中可用的设置。如果我们使用elementWordLexicon,那么我们将注册自定义令牌程序。我描述的字段选项在索引时确实有更多的开销。但是,它的实现稍微容易一些。
票数 2
EN

Stack Overflow用户

发布于 2016-09-27 18:35:02

如果您希望对每个分隔的值有单独的方面计数,那么我认为您必须创建单独的元素。如果您只想计算该值组合的匹配数,那么您可以构建一个自定义约束(假设您使用的是Search ),并在查询时解析它们。不过,您可能仍然需要对重叠的值组合进行特殊处理。

通过构建一个SubjectMatter元素,可以在不创建多个聚合用户定义的函数插件元素的情况下计算单独的值;但是,除非您对文档没有任何控制,否则拆分它们可能要简单得多。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39731800

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档