我使用OWL API对Protege中创建的本体进行推理。我正在处理OWL API示例DL查询:http://sourceforge.net/p/owlapi/code/ci/aef6981535f07a2d0d44c394b9f4d5415f36025a/tree/contract/src/test/java/org/coode/owlapi/examples/DLQueryExample.java。我猜这个例子提供了与Protege中DL查询标签相同的功能。但实际上存在一些显着的差异:我需要获取匿名类的信息(子类,超类等),它由一组个体(ex {Member1,Member2 ...})定义或在另一个办法。在Protege中,此查询返回正确的结果,但OWL API Dl查询示例中的此类查询返回[NOTHING]。有没有办法在OWL API中操作匿名类?预先感谢您的回答。使用曼彻斯特语法查询OWL API中的匿名类
回答
假设您正在使用the classDLQueryExample
而没有修改。
您需要使用与默认值不同的推理器。看151行,实现使用OWL-API中构建的结构推理器。这个推理者是有限的,并且不能像你的那样处理复杂的类表达式。
如何解决此问题:
使用更高级的推理像Hermit。下载并把罐子放在类路径中,然后通过替换在管线151代码:
OWLReasonerFactory reasonerFactory = new Reasoner.ReasonerFactory();
您需要导入的包org.semanticweb.HermiT.Reasoner
。您现在将使用Hermit处理您的查询。尝试Pizza and (hasTopping some CheeseTopping)
,它应该工作!
非常感谢!!!!!!现在它工作了!你救了我! – user1823541 2013-05-23 22:00:16
OWL API现在提供了有关此问题的文档:https://github.com/owlcs/owlapi/wiki/DL-Queries-with-a-real-reasoner – FBB 2016-02-04 16:10:13
- 1. 如何查询DL曼彻斯特OWL语法中的个人?
- 2. 将OWL公理转换为曼彻斯特语法
- 3. 同步曼彻斯特编码
- 4. 什么使得OWL类是匿名的?
- 5. 在软件中执行曼彻斯特编码的有效算法是什么?
- 6. 曼彻斯特编码和以太网协议
- 7. 在Arduino上实现曼彻斯特编码
- 8. 匿名类型的语法
- 9. 斯卡拉匿名函数语法
- 10. ASP.NET MVC中的匿名类型语法
- 11. 使用Web API返回匿名类型
- 12. 如何使用TypeScript在linq查询中创建匿名类型
- 13. OWL中的类和子类用于推理的SPARQL查询
- 14. 使用匿名类
- 15. 匿名类型,从if语句铸成AsQueryable已再查询
- 16. 如何使用SWI-Prolog的语义Web库查询RDF/OWL?
- 17. 如何查询匿名类型集合?
- 18. 从LINQ查询返回匿名类型?
- 19. 如何使用带lambda语法的LINQ创建匿名类型?
- 20. 谷歌地图API是给了曼彻斯特地址,而不是皮卡迪利广场,伦敦,英国
- 21. 查询关于贝尔曼福特
- 22. 调用方法匿名类
- 23. TFS API C#查询语法
- 24. 语法使用VAR查询
- 25. 无法使用OWL API来加载OWL文件
- 26. 无法将查询中的匿名返回类型转换为实体类型
- 27. SPARQL查询OWL文件
- 28. 匿名化查询张贴
- 29. CoffeeScript中的匿名函数语法
- 30. JavaScript匿名函数语法
'DLQueryExample'应该处理匿名类表达式作为输入(就像在Protege中一样)。你能否准确地表达你使用的确切表达式,并且包括一个片段或指向你使用的本体的链接? – loopasam 2013-05-06 23:07:03
@loopasam,谢谢你的回答。我尝试了比萨样本:http://www.co-ode.org/ontologies/pizza/pizza.owl。查询很简单:比萨和(hasTopping一些CheeseTopping),结果是:Loaded ontology:OntologyID(OntologyIRI()) 请在曼彻斯特语法类型一类表达,并按下回车键(或按x 退出): 披萨和(hasTopping一些CheeseTopping) QUERY:披萨和(hasTopping一些CheeseTopping) 超类 [NONE] EquivalentClasses [NONE] 子类 [NONE] 实例 [NONE] –
user1823541
2013-05-23 18:51:10
有问题的DL查询示例的链接现在是:https://github.com/owlcs/owlapi/blob/version3/contract/src/te st/java/org/coode/owlapi/examples/DLQueryExample.java – FBB 2016-02-04 16:11:17