如何解决SPARQL 查询中的析取过滤器
我想在判例法数据库中搜索特定标题。我在 ?title
和 ?alttitle
属性中查找该标题,使用 FILTER
和 ||
(逻辑或)。
现在我注意到,这似乎只有在两个 FILTER 条件都为真时才会产生结果。因此,即使我要查找的记录中 ?alttitle
字段的值是“NTN Toyo bearing and Others v Council”和 ?title
字段的值,下面的示例也不会产生任何结果是“NTN Toyo bearing Company Ltd and others v Council”。我希望在使用 ?alttitle
时 ||
属性中存在匹配这一事实就足够了。
即使仅与 ?alttitle
值匹配,我如何确保返回此记录?此外,感谢任何使此查询更快的提示。
SPARQL 端点:http://publications.europa.eu/webapi/rdf/sparql
PREFIX cdm: <http://publications.europa.eu/ontology/cdm#>
SELECT disTINCT ?work ?expression ?ecli ?celex ?alttitle ?agname ?title
WHERE {{{
?work a ?class.
?expression cdm:expression_belongs_to_work ?work.
?expression cdm:expression_title ?title.
?expression cdm:expression_uses_language <http://publications.europa.eu/resource/authority/language/ENG>.
?work cdm:case-law_ecli ?ecli.
?work cdm:resource_legal_id_celex ?celex.
OPTIONAL{?expression cdm:expression_case-law_parties|cdm:expression_title_alternative ?alttitle}
}
FILTER(?class in (<http://publications.europa.eu/ontology/cdm#judgement>,<http://publications.europa.eu/ontology/cdm#opinion_cjeu>))
FILTER (CONTAINS(?alttitle,"NTN Toyo bearing and Others v Council")||CONTAINS(?title,"NTN Toyo bearing v Council"))}
UNION{?work a ?class.
?expression cdm:expression_belongs_to_work ?work.
?expression cdm:expression_title ?title.
?expression cdm:expression_uses_language <http://publications.europa.eu/resource/authority/language/ENG>.
?work cdm:case-law_ecli ?ecli.
?work cdm:resource_legal_id_celex ?celex.
?work cdm:case-law_delivered_by_advocate-general ?ag.
?ag cdm:agent_name ?agname.
OPTIONAL{?expression cdm:expression_case-law_parties|cdm:expression_title_alternative ?alttitle}
}
FILTER(?class in (<http://publications.europa.eu/ontology/cdm#opinion_advocate-general>))
FILTER (CONTAINS(?alttitle,"NTN Toyo bearing v Council"))}
LIMIT 15
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。