我尝试使用OWL-API中的ManchesterOWLSyntaxParser。我需要将曼彻斯特语法中的字符串转换为OWL Axiom,我可以将其添加到现有的本体中。问题是,我总是得到解析器异常(类似于bellow): Exception in thread "main" org.semanticweb.owlapi.manchestersyntax.renderer.ParserException: Encountered Class: at line 1 column 1. Expected one of:
Class name
Object property n
我刚刚开始使用OWL,并试图给类的实例赋值,但我无法理解如何做到这一点。我知道可以使用rdf:type来指定实例。请按以下方式考虑java类有机体:
class Organism {
String name;
List<Features> features;
}
class Features {
int feature1;
String name;
}
此类由动植物类扩展如下:
class Animal extends Organism {
int animal_property;
}
class Plant extends O
对于OWL类和子类属性继承,我有一个困惑。一些帖子说OWL中没有继承(,)。然而,我也发现了一些相反的讨论。例如,“面向对象软件开发人员的语义Web”页面()提到,对于面向对象的语言,OWL & RDF:“类可以在具有继承的子类层次结构中排列”(第3.3节)。提到“属性rdfs:subClassOf是rdf:Property的一个实例,用于声明一个类的所有实例都是另一个类的实例。”因此,我对此感到困惑。现在我有以下问题:
与面向对象语言一样,是rdfs:子类继承超类?的属性。
,如果不是,那么
- **What is the meaning of inheritance
我可以问你关于本体上的SPARQL查询吗?我有一个family.owl文件,它是从Protege3.4构建的包含数据的本体:
Lan haschild Tuấn,
Tùng haschild Tuấn.
我使用Java和CORESE API on site ( )来查询上面的family.owl。使用以下SPARQL查询:
PREFIX fm:< http://www.owl-ontologies.com/Ontology1287989576.owl#>
SELECT ?child
WHERE
{
fm:Lan fm:haschild ?child
}
结果为Tuá
我正在编写一个代码生成器,它从这里定义的模式( )生成实体(POJO用Java语言)。我使用Jena解析ttl文件并检索生成这些数据所需的元数据。
但是,Jena成功地解析了该文件,但由于某些原因,它没有列出给定实体的所有属性,例如Person。我不确定我是否做错了什么,使用了错误的API,等等。下面是重新创建场景的代码示例:
public class PersonParser {
public static void main(String[] args) {
OntModel model = ModelFactory.createOntologyMode