如何指定JSON Path MarkLogic SmartMastering匹配器选项?

时间:2019-07-17 12:03:06

标签: duplicates marklogic

我正在尝试使用SmartMastering检测重复项。对于字段定义,我不仅要指定属性,还要指定路径,即我想在字段节点下而不是从属节点下将关联文档与具有相同ssn的关联文档进行匹配。

我尝试使用属性定义中的名称空间指定字段。

     {
  "options": {
    "propertyDefs": {
      "property": [
        { "namespace": "", "localname": "ssn", "name": "ssn" },
      ]
    },
    "algorithms": {
    },
    "scoring": {
      "add": [
       { "propertyName": "ssn", "weight": "50" },
      ]
    },
    "collections":{
      "content": ["employees"]
    },
    "thresholds": {
      "threshold": [
        { "above": "50", "label": "Possible Match" },
      ]
    },
    "tuning": { "maxScan": "200" }
  }
}

当我在命名空间下指定节点时,当我没有得到任何结果时 试图匹配一个同事。

当我不指定时,我得到错误的匹配。这是因为它在整个文档(包括从属对象)中寻找SSN(和其他字段)。例如,如果史密斯先生和史密斯女士都是雇员,并且史密斯先生被列为史密斯女士的受抚养者,则在史密斯女士上运行matcher.findDocumentMatchesByOptionsName()会认为史密斯先生是一名匹配者,因为他的ssn将被列出在路径document.dependents [0] .ssn下。

0 个答案:

没有答案