【问题标题】:Matching a String to a Generated RDF Entity in Python在 Python 中将字符串与生成的 RDF 实体匹配
【发布时间】:2020-06-22 20:19:57
【问题描述】:

我正在尝试将主题和对象字符串与包含它们的 RDF 进行匹配,但是字符串已更改,因此很难生成完全匹配。我试图匹配最相似的,但 difflib 似乎不起作用。所以我有:

subject = "Juliette Gruber"

还有一个看起来像这样的 .rdf(为这篇文章而缩写):


    <j.3:hasDeterminer rdf:resource="http://www.ontologydesignpatterns.org/ont/fred/quantifiers.owl#a"/>

    <rdf:type rdf:resource="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#Actor"/>

  </rdf:Description>

  <rdf:Description rdf:about="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#Actor">

    <owl:equivalentClass rdf:resource="http://dbpedia.org/resource/Actor"/>

  </rdf:Description>

  <rdf:Description rdf:about="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#ProbablyBestKnow">

    <rdfs:subClassOf rdf:resource="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#BestKnow"/>

  </rdf:Description>

  <rdf:Description rdf:about="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#Juliette_gruber">

    <owl:sameAs rdf:resource="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#actor_1"/>

    <j.1:hasQuality rdf:resource="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#British"/>

    <rdf:type rdf:resource="http://www.ontologydesignpatterns.org/ont/fred/domain.owl#BritishActor"/>

  </rdf:Description>

我正在尝试使用主题变量来查找包含它的行,但我似乎无法找到可靠的方法。这只是一个示例,我正在尝试对许多主题/对象/RDF 进行此操作。我尝试使用 difflib 并从主题/对象中仅抓取一个单词,但这不一致并且通常不起作用。

【问题讨论】:

  • 我不明白这个问题。你的目标到底是什么?什么是输入,什么是输出?
  • 我有一大堆句子。对它们做了两件事:1) 提取了一个实体(上面的“Juliette Gruber”),2) 句子已经被解析成一个 RDF 图,就像上面的那个。现在,我正在尝试查找包含“Juliette Gruber”的 RDF 图条目,但是我不确定如何匹配:Juliette Gruberhttp://www.ontologydesignpatterns.org/ont/fred/domain.owl#Juliette_gruber。另外,这只是一个例子,我正在尝试找到一个适用于这个问题的许多版本的解决方案
  • 1.) 如果您使用 Python,您应该使用 rdflib API 2) 如果您为句子创建 RDF 数据,您应该使用字符串将 rdfs:label 数据添加到实体 - 这是最佳实践,并允许通过查看标签来检索数据。例如,您可以使用 SPARQL ,例如select * where {?s rdfs:label "Juliette Gruber"}
  • 我没有生成 RDF,一个闭源 API 是

标签: python string rdf matching


【解决方案1】:

如果我理解正确,那么使用模式匹配我们可以获得所需的字符串并生成所需的 uri,您可以将其与所需的对象匹配。即使三元组重复,知识图也会将它们识别为相同

【讨论】:

  • 正确,也许是一个正则表达式来搜索多个 URI 以查找 subject 字符串的任何迭代
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-09
  • 1970-01-01
  • 2010-12-07
  • 1970-01-01
  • 2013-06-18
相关资源
最近更新 更多