首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >listDeclaredProperties语义

listDeclaredProperties语义
EN

Stack Overflow用户
提问于 2015-03-03 20:55:13
回答 1查看 242关注 0票数 0

让我们考虑一下

代码语言:javascript
复制
(1) P Domain CSuper
(2) CSub subClassOf CSuper

使用Jena,我试图列出CSub的声明属性。我认为P不能被列为CSub的声明属性。我的理由是:PCSub的一个声明属性, CSubP的一个域,因为(1) CSuperP的域,这并不意味着CSub也是一个域;(1)意味着如果(x, y)P,那么xCSuper,明显x可以E 118(不)E 219 be CSub。

令人惊讶的是,当使用P方法甚至使用OntModelSpec.OWL_DL_MEM_RULE_INF或Pellet时,耶拿都将CSub作为一个声明的属性列出!

更新:声明的属性对于某些类意味着什么?它是否意味着该属性是它们的域的类!

EN

回答 1

Stack Overflow用户

发布于 2015-03-04 11:43:08

你想:

代码语言:javascript
复制
theClass.listDeclaredProperties(false);

来自文献资料

listDeclaredProperties()等价于调用listDeclaredProperties(布尔值),默认值为direct = false。 direct -如果为真,则将返回的属性限制为与该类直接关联的属性。如果为false,该类的超类的属性将不会列在该类的声明属性中。

我想你误解了申报的财产。这将返回类可能(或必须)具有的属性。假设我们有一个类层次结构:

代码语言:javascript
复制
A > B > C

还包括:

代码语言:javascript
复制
P domain B

所有的BsCs都可能有属性P --没有矛盾。然而,并不是所有的As都有属性P -- not-Bs才是问题所在。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28841701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档