以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 Semantic Web(语义Web)/描述逻辑/本体 』 (http://bbs.xml.org.cn/list.asp?boardid=2) ---- 高手讨论一下OntProperty.listDomain()这个方法是否真的可用! (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=37410) |
-- 作者:horizonman -- 发布时间:8/30/2006 12:06:00 PM -- 高手讨论一下OntProperty.listDomain()这个方法是否真的可用! 想通过OntProperty.listDomain()获得某个属性(A)的Domain,发现不管属性A的domain有几个,这个方法只会返回一个。查看了owl中是这样描述的: <owl:ObjectProperty rdf:ID="has_Deviation"> <rdfs:domain> <owl:Class> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#HazopResult"/> <owl:Class rdf:about="#案例库"/> </owl:unionOf> </owl:Class> </rdfs:domain> <rdfs:range rdf:resource="#Deviation"/> </owl:ObjectProperty>以上代码明显表述属性“has_Deviation”有两个domain:“HazopResult”和“案例库” 将上述代码所在的owl导入到mysql中,发现代码所关联的条目如图: 我用以下代码: 结果返回的结果是: 感觉方法listDomain()并没有返回所有的Domain。 不知道该怎么办?? 如果像返回属性的Domain该怎么办?? |
-- 作者:jpz6311whu -- 发布时间:8/30/2006 12:50:00 PM -- <owl:ObjectProperty rdf:ID="has_Deviation"> <rdfs:domain> <owl:Class> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#HazopResult"/> <owl:Class rdf:about="#案例库"/> </owl:unionOf> </owl:Class> </rdfs:domain> <rdfs:range rdf:resource="#Deviation"/> </owl:ObjectProperty>以上代码明显表述属性“has_Deviation”有两个domain:“HazopResult”和“案例库” 以上代码明显表述属性“has_Deviation”只有一个domain:“HazopResult”和“案例库”的union |
-- 作者:Ambrosia -- 发布时间:8/30/2006 6:38:00 PM -- 用递归自动进行语法推理 |
-- 作者:horizonman -- 发布时间:8/30/2006 9:36:00 PM -- 呵呵!问题已经解决,是属性的domain多于2层的话,就被自动的转换成一个UnionClass.出现的乱码是一个匿名资源。讲listdomain()得到的OntResource用asUnionClass()方法转换成UnionClass,然后就可以用其函数列出这个UnionClass所包含的OntClass了。代码如下: for(ExtendedIterator ExIter = pp.listDomain();ExIter.hasNext();){ OntResource tempind = (OntResource) ExIter.next(); UnionClass tempc = tempind.asClass().asUnionClass(); for(ExtendedIterator ExIter2 = tempc.listOperands();ExIter2.hasNext();){ OntClass tempind2 = (OntClass) ExIter2.next(); System.out.println(tempind2.toString()); } } |
-- 作者:linkejie126 -- 发布时间:6/10/2009 6:47:00 PM --
字面上怎么解释了,有通俗点的说话吗? |
-- 作者:jpz6311whu -- 发布时间:6/13/2009 12:18:00 PM --
那一个domain就是那个unionclass,它是一个匿名类 |
-- 作者:linkejie126 -- 发布时间:6/13/2009 7:32:00 PM -- 能明白楼上的意思。 但我想问下,能否字面表达下这个属性的意思。 如果属性的domain是一个类,那好表达。 但如果上楼主说的这种情况, 最近在写论文,想清楚表达当domain是个COLLECTION的时候,该怎么说的清楚。 |
-- 作者:jpz6311whu -- 发布时间:6/13/2009 7:47:00 PM -- 可以表达成: “人”有个属性是“名字”。 “HazopResult”和“案例库”都有个属性是“has_Deviation” |
-- 作者:linkejie126 -- 发布时间:6/13/2009 9:11:00 PM -- “HazopResult”和“案例库”都有个属性是“has_Deviation”??? 都有??好像不大准确吧? 比如调用listDomain()这个方法,HazopResult”和“案例库”都应该没有has_Deviation这个属性吧。 麻烦楼上的了,不好意思啊。 |
-- 作者:linkejie126 -- 发布时间:6/13/2009 9:17:00 PM -- 说错了,不是listDoman()方法。 应该对 HazopResult”和“案例库” 这两个类,调用 listOntProperties() 方法, |
-- 作者:jpz6311whu -- 发布时间:6/13/2009 9:19:00 PM -- “HazopResult”和“案例库”并集有个属性是“has_Deviation” |
-- 作者:linkejie126 -- 发布时间:6/13/2009 10:14:00 PM -- 谢谢了,真的非常谢谢。 |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
93.750ms |