以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  请求:OWLAPI的相关资料  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=67045)


--  作者:dengluxin
--  发布时间:9/9/2008 11:50:00 PM

--  请求:OWLAPI的相关资料
现在开始写程序,却发现远不是自己想的那样。好难!连OWLAPI的框架一直还没弄清楚。网上找不到比较系统的介绍资料。
哪位过来人,有OWLAPI方面的资料,能否分享?:翻译、框架描述、总结什么的。
谢谢!
--  作者:Jevin
--  发布时间:9/10/2008 11:38:00 AM

--  
也在看,还没有具体的应用总结...一直在找这方面的材料
--  作者:dengluxin
--  发布时间:9/10/2008 10:34:00 PM

--  
assersion,断言,指类与个体的关系;
axiom,公理,其实就是指主谓宾结构;
declaration,声明,特指命名空间之类的东西;
OWLDescription,它的用途主要是?
这样的理解正确吗?能否给出其中一些关键类的用途及其之间的关系?

如果我要遍历这条路径,并记录经过的类,应该如何操作?
ClassA  PropertyX  ClassB;ClassB  PropertyX  ClassC;ClassC  PropertyX   ClassD;
因为,我想解析owl文档,以建立自己的树形结构;但是owl中定义了较多的属性和类。

我通过:本体函数getAxioms(ClassA)得到相应的axiom,但如何从中解析出我所需要的类?
OWLAxiom没有提供相应的操作。

几天都没有得到解决,被卡在了这里。请高手指教。谢谢!


--  作者:alexwan
--  发布时间:9/11/2008 10:50:00 AM

--  
我不知道你是否是用protege提供的owlapi呢还是其他的owlapi,如果是前者,则类树可以直接调用protege owl的类树,如下所示代码:
    ClassTreeComponent pl= new ClassTreeComponent(null,owlModel);  
    
    final JTree clsTree=pl.getTree();

然后把该树插到你的panel内就可以对树进行各种操作了,这样作比较简单。
如果你自己要手工解析owl文件建树的话,要麻烦的多


--  作者:dengluxin
--  发布时间:9/11/2008 5:23:00 PM

--  
非常感谢alexwan的关注:
Protege 所用的OWL API不是sourceforge.net的吗?

我们希望建构的系统是B/S结构的,因此希望对它进行解析。owl文档中subClassof属性所形成的结构能够解决,但自己定义的属性就一直找不到头绪。

能否指点一二!谢谢!


--  作者:alexwan
--  发布时间:9/11/2008 8:49:00 PM

--  
getUserDefinedOWLDatatypeProperties,getUserDefinedOWLObjectProperties在owl api里用来获得用户定义的对象属性和数据属性,既然是bs架构的,可能要进行封装吧,没有搞过jsp,随便说说的
--  作者:jokoko
--  发布时间:9/13/2008 4:55:00 PM

--  
请问dengluxin目前是利用这个网址的OWLAPI吗??
http://owlapi.sourceforge.net/
这OWLAPI跟Protégé与Jena是不同的API…
且Protégé与Jena也好像也不是相同的API…
目前小弟也正在使用OWLAPI撰写一些Java程序!!
若有问题可以一起讨论一下啰!!
因为去年小弟我也搞超久的…网上很难找到相关信息…
建议是先从OWLAPI的Sample去了解如何使用!!

--  作者:jokoko
--  发布时间:9/13/2008 5:11:00 PM

--  
对了…小弟先问一下dengluxin会使用OWLAPI去查询individual吗??
因为小弟之前也曾经将应该要用individual解决的方式,硬是利用class与assersion去解决…最后是整个ontology完全不通…结果又重写…
小弟算是也有完成一些东西了…但是也还不完全了解这OWLAPI…因为SDK写得太简略了…小弟可能帮助有限…所以先了解一下dengluxin状况…以确定小弟能利用微薄的知识帮助您
--  作者:dengluxin
--  发布时间:9/15/2008 11:53:00 AM

--  
谢谢大家的帮助:

我使用的是http://owlapi.sourceforge.net/的OWL API。我也在看这里的例子,非常好。谢谢。


重述一下自己目前的困难(好像一直没有说清楚,抱歉!):
******首先,有自己定义的一串类、属性:ClassA  PropertyX  ClassB;ClassB  PropertyX  ClassC;ClassC  PropertyX   ClassD;
当然,在这些类中,可能还存在子类或者由自定义属性所关联起来的类。
就是说这实质是一个或多个由PropertyX关联起来的树,现在我希望能够对其进行遍历、解析然后显示在web页面中。
To:jokoko,我首先是要对这些类进行操作,因为这棵树显然要是抽象的本体结构。接下来会用到individual。
******然后,希望能够以ClassA为起点,来遍历这一条路径。就是说,我仅仅知道起点ClassA,不想给出更多的条件。
******现在的问题就是:从ClassA找不到PropertyX。


alexwan又一次给出了一种解决方案,就是利用getUserDefinedOWLDatatypeProperties,getUserDefinedOWLObjectProperties,但我发现我所采用的OWL API中不提供这些函数,而是Protege API的。


请教一些问题:
1.OWL、Protege、Jena几个API大家都是采用的哪一个?各自特点如何,有优劣之分吗?
2.可以同时使用吗?


--  作者:dengluxin
--  发布时间:9/18/2008 10:43:00 AM

--  
改用 Protege OWL api了!
--  作者:jokoko
--  发布时间:9/19/2008 3:14:00 AM

--  
1.OWL、Protege、Jena几个API大家都是采用的哪一个?各自特点如何,有优劣之分吗?
2.可以同时使用吗?
=====================================================
1.Jena算是在网上最容易找到信息的API…Protégé API小弟觉得这API应该是为了Protégé这软件而发展的吧…OWLAPI…这个…小弟是在W3C看到的…应该算是W3C比较推荐的吧….
2.应该可以同时使用吧…只要把相关的jar檔汇入就ok了吧??不过没试过啦…哈

另外…之前我利用class抓Property是将一个一个的class利用getAxiom这功能去抓到每一个class的断言并将断言转成String格式…然后再利用java的String里面的功能去解决!!~不过小弟我也看了很久都没有发现OWLAPI可以直接抓到Property值的API可供使用…目前小弟是先利用此方案来解决…算是提供一点意见吧…请多指教啰~~


--  作者:dengluxin
--  发布时间:9/19/2008 8:40:00 PM

--  
To jokoko:

谢谢解释.
我已经转到Protege OWL api了.原因就是它的功能要强大的多.
我们所说的问题,用它很容易就可以解决.
从Protege OWL api转到OWLAPI,非常容易.


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms