以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  jena查询中关于本体引用的问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=123898)


--  作者:collion
--  发布时间:3/26/2012 9:57:00 AM

--  jena查询中关于本体引用的问题
大家好,我碰到的问题描述如下:
1、有两个使用protege创建的本体文件PDM.owl和DataBase.owl,位于d:\ontology\目录下,其中PDM.owl引用了DataBase.owl;
2、使用jena查询所有PDM.owl中的类,结果只显示了PDM.owl中的类。
看文档说是jena在创建OntModel会自动将引用的本体加载到模型,但有个问题想不明白,代码中给出了PDM.owl的具体路径,没有DataBase.owl的路径,jena该如何定位呢?
请大家指教~~~
下面附上部分相关代码:
1、PDM.owl:
<rdf:RDF xmlns="http://www.semanticweb.org/ontologies/2012/2/PDM.owl#"
     xml:base="http://www.semanticweb.org/ontologies/2012/2/PDM.owl"
     xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
     xmlns:DataBase="http://www.semanticweb.org/ontologies/2012/2/DataBase.owl#"
     xmlns:owl="http://www.w3.org/2002/07/owl#"
     xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:PDM="http://www.semanticweb.org/ontologies/2012/2/PDM.owl#">
    <owl:Ontology rdf:about="http://www.semanticweb.org/ontologies/2012/2/PDM.owl">
        <owl:imports rdf:resource="http://www.semanticweb.org/ontologies/2012/2/DataBase.owl"/>
    </owl:Ontology>
2、jena代码:
 private void buttonAction()
 {
  OntModel m = ModelFactory.createOntologyModel();
  m.read("file:d:/ontology/PDM.owl");  
  
  m.loadImports();
  m.write(System.out);
  
  for (Iterator i = m.listClasses(); i.hasNext();)
  {
   OntClass c = (OntClass) i.next();
   System.out.println(c.getLocalName());
  }
  
 }
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
31.250ms