新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     >>计算机科学论坛<<     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论Semantic Web(语义Web,语义网或语义万维网, Web 3.0)及相关理论,如:Ontology(本体,本体论), OWL(Web Ontology Langauge,Web本体语言), Description Logic(DL, 描述逻辑),RDFa,Ontology Engineering等。
    [返回] 计算机科学论坛W3CHINA.ORG讨论区 - Web新技术讨论『 Semantic Web(语义Web)/描述逻辑/本体 』 → 如何用Jena加载本体 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 2908 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 如何用Jena加载本体 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     oynwj 美女呀,离线,快来找我吧!
      
      
      等级:大二(研究汇编)
      文章:32
      积分:207
      门派:XML.ORG.CN
      注册:2007/9/24

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给oynwj发送一个短消息 把oynwj加入好友 查看oynwj的个人资料 搜索oynwj在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看oynwj的博客楼主
    发贴心情 如何用Jena加载本体

    请教各位高手,我用Protege做了个本体,如何在Eclipse里用Jena加载这个本体模型呢?小妹真的是菜鸟,但是这个问题很急,小妹是南京的,请问有哪位能让我当面请教啊?我愿付报酬的,谢谢!

       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/27 17:40:00
     
     iamwym 帅哥哟,离线,有人找我吗?
      
      
      
      威望:9
      等级:计算机硕士学位(版主)
      文章:2454
      积分:17456
      门派:XML.ORG.CN
      注册:2004/11/14

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给iamwym发送一个短消息 把iamwym加入好友 查看iamwym的个人资料 搜索iamwym在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 访问iamwym的主页 引用回复这个贴子 回复这个贴子 查看iamwym的博客2
    发贴心情 
    我汗,leopard,赶快上啊,机会难得~我就不回答了
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/27 18:29:00
     
     bzbc 帅哥哟,离线,有人找我吗?
      
      
      等级:大三暑假(TOFEL考了660分!)
      文章:151
      积分:921
      门派:XML.ORG.CN
      注册:2006/4/15

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给bzbc发送一个短消息 把bzbc加入好友 查看bzbc的个人资料 搜索bzbc在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看bzbc的博客3
    发贴心情 
    怎样用Jena读我们用Protege创建的OWL本体呢,假设你有一个OWL本体文件(.owl),里面定义了动物类(http://www.zoo.com/ont/Animal,注意这并不是一个实际存在的URL,不要试图去访问它),并且它有一些实例,现在看如下代码:

    OntModel m = ModelFactory.createOntologyModel();
    File myFile = ...;
    m.read(new FileInputStream(myFile), "");
    ResIterator iter = m.listSubjectsWithProperty(RDF.type, m.getResource("http://www.zoo.com/ont/Animal"));
    while (iter.hasNext()) {
        Resource animal = (Resource) iter.next();
        System.out.println(animal.getLocalName());
    }
    和操作RDF(S)不同,com.hp.hpl.jena.ontology.OntModel是专门处理本体(Ontology)的,它是com.hp.hpl.jena.rdf.model.Model的子接口,具有Model的全部功能,同时还有一些Model没有的功能,例如listClasses()、listObjectProperties(),因为只有在本体里才有“类”和“属性”的概念。

    上面的代码很简单,从ModelFactory创建一个OntModel,从指定文件把模型读到内存里。再下面的代码是一个例子,作用是取出模型中所有Animal的实例(Individual,也叫个体),并打印它们的名称。要从OntModel里取实例,也可以用listIndividuals()方法,只不过你得在得到的实例中判断它们是不是Animal的实例,我觉得不如用上面这种简易查询的方式来得方便。

    Jena里扩展了很多Iterator,比如ResIterator、StmtIterator和NodeIterator等等,刚开始用会觉得很别扭,好象还不如都用java标准的Iterator,不知道Jena的设计者是怎么考虑的。要熟练掌握还是得对整个Jena的API有全局掌握才好。

    在循环里,我们得到的每个元素都是一个Resource,因为本体里的任何东西都是资源,不论你想得到Subject、Property还是Object,在Jena里实际得到的都是资源(Resource),在Jena里,Property是Resource的子接口,而Jena并没有Subject或Object接口。(注:在OWL本体中,Subject->Property->Object组成一个三元组,例如:张小刚->父亲->张大刚;或者:绵羊多利->rdf:type->动物,rdf:type是一个特殊的属性,表示前者是后者的实例)

    互相学习,下次不用怎么客气.分享知识,就是分享快乐

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/29 9:14:00
     
     leopard 帅哥哟,离线,有人找我吗?
      
      
      威望:10
      等级:大四寒假(收到Stanford的Offer啦)(贵宾)
      文章:150
      积分:1153
      门派:XML.ORG.CN
      注册:2005/1/24

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给leopard发送一个短消息 把leopard加入好友 查看leopard的个人资料 搜索leopard在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看leopard的博客4
    发贴心情 
    ?这个玩意我倒是比较懂,可惜马上要出国了,没时间了,再说ls的回答似乎不错。
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/29 18:53:00
     
     oynwj 美女呀,离线,快来找我吧!
      
      
      等级:大二(研究汇编)
      文章:32
      积分:207
      门派:XML.ORG.CN
      注册:2007/9/24

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给oynwj发送一个短消息 把oynwj加入好友 查看oynwj的个人资料 搜索oynwj在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看oynwj的博客5
    发贴心情 
    虽然看的不是很懂,但还是非常感谢!
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/30 9:16:00
     
     buddyst 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(猛啃高等数学)
      文章:19
      积分:150
      门派:XML.ORG.CN
      注册:2006/4/23

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给buddyst发送一个短消息 把buddyst加入好友 查看buddyst的个人资料 搜索buddyst在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看buddyst的博客6
    发贴心情 
    小生不才,本科毕业设计做的就是用JENA对本体解析并进行语法转换
    呵呵,我也是南京人唉
    有问题大家可以研究研究
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/30 11:03:00
     
     bzbc 帅哥哟,离线,有人找我吗?
      
      
      等级:大三暑假(TOFEL考了660分!)
      文章:151
      积分:921
      门派:XML.ORG.CN
      注册:2006/4/15

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给bzbc发送一个短消息 把bzbc加入好友 查看bzbc的个人资料 搜索bzbc在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看bzbc的博客7
    发贴心情 
    以后大家多交流
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/31 10:19:00
     
     oynwj 美女呀,离线,快来找我吧!
      
      
      等级:大二(研究汇编)
      文章:32
      积分:207
      门派:XML.ORG.CN
      注册:2007/9/24

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给oynwj发送一个短消息 把oynwj加入好友 查看oynwj的个人资料 搜索oynwj在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看oynwj的博客8
    发贴心情 
    请问高手们,这段程序是不是错误很多啊?为什么在Eclipse里总是提示错误呢?
    import java.io.*;
    import com.hp.hpl.jena.ontology.*;
    import com.hp.hpl.jena.rdf.model.*;

    public class Jena {

     /**
      * @param args
      */
     OntModel m = ModelFactory.createOntologyModel(); 
      public void loadmodel() {
      InputStreamReader in;
      try {
             FileInputStream file = new FileInputStream("d:/second semester/houls/bt/examples/pizza/pizza.owl");
       in = new InputStreamReader(file, "UTF-8");
       m.read(in, null);
       in.close();
      } catch (FileNotFoundException e) {
       System.out.println("无法打开本体文件,程序将终止");
       System.exit(0);
      } catch (IOException e) {
       e.printStackTrace();
       System.exit(0);
      }
      }
    }

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/10/31 21:01:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/10/9 13:31:51

    本主题贴数8,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    82.031ms