问题标签 [owlready]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
rdf - 如何在 python 中使用 owlready2 库读取 rdf:range 的资源 url?
我使用 dbpedia.owl 文件并使用owlready2
库加载本体。我想知道如何访问rdf:resource
underrdfs:domain
标签。他们的文档没有任何线索可以做到这一点。以下显示当前代码状态。
有没有办法像访问一样ontoProperty.range.resource
?但这不起作用。文件中的以下部分owl
显示了与ontoProperty
. 非常感谢您的回答和建议。
python - 成功安装OWLready2,但使用时出错
正如标题中提到的,我已经将“Python”和“pip”更新 到了他们的最新版本,也成功安装了“owlready2”库,但是在下面的代码中使用它时:
Python给了我以下错误:
Blockquote ModuleNotFoundError: 没有名为 owlready2 的模块
python - 在 Ubuntu 中安装 OwlReady2 (Python lib) 时出现问题
我正在尝试按照以下方法在 Ubuntu中安装owlready2库,但我遇到了问题。
- 我更新了系统和应用程序
- 安装 Python 3 并使其成为工作版本(默认)
- 安装 pip3
- 使用 pip 和 pip3 安装 owlready2 库
但是我遇到了以下问题,这似乎是库包的问题:
错误:无法复制'./hermit/org/semanticweb/hermit/hierarchy':不存在或不是常规文件”
命令 /usr/bin/python3 -c "import setuptools, tokenize; file ='/tmp/pip_buil d_root/owlready2/setup.py';exec(compile(getattr(tokenize, 'open', open)( file ).read ().replace('\r\n', '\n'), file , 'exec'))" install --record /tmp/pip-lq v533ik-record/install-record.txt --single-version -externally-managed --compile 失败,错误代码 1 在 /tmp/pip_build_root/owlready2 将调试日志存储在 /home/ubuntu/.pip/pip.log 中
有谁知道如何解决这个问题?
python-3.x - 无法在加载的 owl 文件中创建子类
我有一个owl/rdf 文件本体,用owlready2 加载它,并希望在本体中的特定类中创建一个子类。
我已经尝试了 owlready2 文档https://owlready2.readthedocs.io/en/latest/class.html中的代码,但向我显示了问题:'NoneType' 对象不可迭代
types.new_class(class_name, (self.onto[superclass]))
python - Python Owlready2 Ontology Creation and Reasoning,Cannot save function错误,同时保存equal_to
我尝试创建一些语义规则,并希望使用 owlready2 for python 保存它们。我想推理与时间范围相关的错误,所以我创建了一个错误类和一个 timerangeWithError 类。现在我想检查传入的错误是否是TimeRangeRelatedError,所以我尝试使用equal_to-method来设置一些规则,隐士推理器可以区分错误和TimeRelatedError。尽管如此,编译器还是提出了一个错误,说我无法存储函数:
我不知道有任何其他方法可以检查时间跨度是否在特定范围内。我认为我在本体描述中建模了一些错误。你能帮我建立一个能够检查值是否在日期之间的本体吗?
编辑:// AWSK评论后,我尝试使用constraintedDatatype设置error_at(在推理日期时间是否超出范围后应该抛出异常,最后我有一种方法来检查日期是否在范围内),但它也因错误而失败:
错误信息:
经过一些工作,我得到了以下信息,但在颗粒中的推理失败了:
对于以下 Pellet 异常,我认为 Pellet 找不到 ?d 变量(我认为这是我预先定义的一个错误的实例):
这是我生成的 OWL 文件,可能会以错误的方式生成某些内容(我只是该领域的初学者,请见谅):
Edit3:// Idk 如何返回 lessThan 的返回值,所以我假设该规则只有在 lessEqual 为真时才会触发。这是我的新代码:
这是我的新 rdf 文件:
python - OWL2,SWRL:查询项目是否在另一个项目的范围内?
我的问题是,如果我想检查一个实例是否在范围内,我使用以下规则:
如果我的本体中只有一个 TimeRelatedError ,它会起作用,如果我有更多实例,它将始终触发 true (因为 TimeRelatedError 之一总是在开始/结束点之前/之后)。您对如何解决这个问题有任何想法吗?我想如果我以某种方式将我的 TimeRelatedError 分配给 Error 实例,我可以解决这个问题,但我不知道如何。请 OWL/SWRL 专业人员帮助我完成这项任务 :)
python - OwlReady2:如何使用 ConstrainedDatatype 正确限制 DataProperty 的范围
我正在阅读并关注 owlready2 文档,并且我已经在 ConstrainedDatatype 中。这些例子是:
这很简单,但没有关于如何在上下文中使用它的进一步示例。所以我在 DataProperty 中尝试使用它:
现在看看这是否会正确实现/编写,我保存了 owl 文件。这是保存的 XML 的片段:
由于限制已写在 XML 中,我现在期望药物个体/实例的“x”数据属性将只接受长度 <=3 的字符串值。为了测试这一点,我创建了一个实例并将值设置为长度大于 3 的字符串:
这就是我的困惑和问题出现的地方......由于我试图存储的字符串长度大于3,这不应该引发异常/错误吗?或者我应该使用 Imp() 类并设置规则,以使数据类型限制在单独创建期间生效?
提前致谢!
owl - owlready2 API 无法访问 https 链接
我遇到了一个非常基本的问题,即 Owlready2 API get_topology() API 无法读取指向我的 owl 文件的 HTTPS URL 链接。对于 URLLIB API 有解决方案;但是,我不知道在 OwlReady2 API 的情况下如何处理它。
如果我使用基于“HTTP”的 URL(例如注释行),它可以正常工作。
我得到的运行时错误是:
主要调用跟踪如下。
python - 在python3中打印本体类时出现问题
我正在使用owlready2。我加载了一个本地 .owl 文件(我正在使用的 .owl 文件),它有一个 Radiometry 类。我做了以下事情:
输出为无
当我在本体中打印一个已经存在的类时,为什么我得到 None ?
调试我试过:
然后我得到:
[owl.Thing, untitled-ontology-17.Radiometry, untitled-ontology-17.Astrophysics,........]
untitled-ontology 是什么意思,这是问题所在吗?
我是新手,非常感谢任何帮助。
python - Python对象到类的转换
我想在 Python 中定义一个本体(owlready)。owlready 中的所有术语都被定义为类。我已经有了类似的东西,其中一些术语(代表部分)已经定义为类,而其他术语是这些类中的对象(定义为 Quantity 对象)。有没有办法将这些对象转换为新类?
这是一个例子。basis_set
将在一个类中定义section_basis_set
但我想要类似的东西