繁体   English   中英

使用JENA构建OWL文件

[英]Build an OWL file with JENA

我的工作需要构建本体模块。 为此,我需要构建owl文件以包含这些本体。 我的输入是一个带有解析和分裂句子的xml文件。

<Subject> A tumor </Subject> 
<Verb> is </Verb> 
<Object> an abnormal growth </Object> 
</sentence> 
<sentence> 
<Subject> A kidney tumor </Subject> 
<Verb> is </Verb> 
<Object> an abnormal growth </Object> 

我现在需要做的是:

  • 将“subject”和“object”转换为OntClass
  • 将“动词”转换为“obj”和“sub”之间的传递属性

我是本体领域的新手,可能是那些基本问题,但我正在努力创建这些文件,尤其是传递属性。

欢迎任何帮助。

要创建OntClass ,只需调用OntModel.createClass( uri ) 当然,这就留下了你应该使用哪个uri的问题。 你需要一个命名空间,形式为http://yourcompany.com/ontology/diagnosis# ; 理想情况下,此命名空间将对应于可以检索本体文档的Web地址。

然后你需要一个算法将像'A tumor'这样的短语转换成一个类名。 这可能很简单:

  • 删除前缀,如明确和不定冠词(a,an,the)
  • 删除空格并使用CamelCase表示单词边界

然后uri将是命名空间和转换后的名称的串联。

创建传递属性也很简单( OntModel.createTransitiveProperty() ),但是在您展示的示例中,您实际上似乎在谈论类之间的子类关系。 如果所有ns:KidneyTumor实例都在ns:AbnormalGrowth实例的集合中,那么<Verb>is</Verb>对应于现有的RDF属性rdfs:subClassOf 当然,如果这种关系更加微妙(例如,可能是有条件的或概率上的),那么你需要与你的特定语义建立不同的关系。

至于阅读XML文件, Web上许多教程Stackoverflow 上的 问题可以帮助解决这个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM