问题标签 [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.
python - 使用 Owlready2 在 OWL/RDF 本体中检索 rdf 标签
我正在做一个项目,我需要检索人类/鼠标本体的 rdf:label 值并在这些标签上运行匹配器。但是,我似乎找不到可以返回本体中所有类的所有标签的内置 Owlready2 方法。我可以使用所有类名,onto.classes()
但这对我没有帮助,因为我无法从类名中获取标签。类名在数据集中只有 IRI,格式为human.NCIXXXXX.
我正在使用OWL/RDF
格式为:http ://oaei.ontologymatching.org/2012/anatomy/index.html 的 OAEI 2012 数据集
(数据集的下载链接在数据集标题下)
这是人类猫头鹰本体文件的片段:
onto.classes()
返回human.NCI_C13031
。我想要 Python 列表中“subiculum”的 LABEL 值。
文档说,owlready2
可以通过调用onto.search(label = "XXXXXX") (X = labelname)
. 但是,我想要反过来。我需要检索标签。我似乎找不到使用 owlready2 的方法。有没有办法在有/没有owlready2的情况下做到这一点?我知道 owlready2 中有一个 OWL/RDF 解析器(owlready 没有),我可以成功读取文件。我只需要某个标签查询即可工作。
请考虑我需要在 Python 中执行此操作,而且我对 Python 也很陌生。我尝试了 onspy,但它似乎没有本体查询的潜力,仅用于本体文档(如果我错了,请纠正我)。
谢谢!
编辑:我自己解决了。要获取标签,请将 设置set render function
为自定义函数,该函数接受一个实体并返回其标签。它全部在 owlready 文档中:https://pythonhosted.org/Owlready2/annotations.html#custom-rendering-of-
entities`
python-3.x - IndexError:列表索引超出范围本体注释
我正在使用以下代码向本体添加注释
然后它显示一个IndexError
,当我使用 on.save() 保存它时
python - Python:用owlready加载“爱因斯坦斑马拼图”-本体
我想借助 Python 的语义网络工具(最好是 owlready )解决 A. Einstein 著名的斑马难题。
起点是链接在https://github.com/RDFLib/OWL-RL/issues/3中的两个 owl 文件。第一个(XML 语法)按预期工作。第二个(不同的作者,n3海龟语法)无法加载或仅在owlready中“部分”加载。为了更容易理解我的步骤,我将它们记录在此笔记本中:https ://github.com/cknoll/demo-material/blob/main/expertise_system/einstein-zebra-puzzle-owlready-solution-attempt.ipynb 。
<Edit1>为了更好地参考,我包括了笔记本的基本部分:
</编辑1>
结论:我可以加载此本体的 XML 版本,但我无法确认这些概念是否定义为owl:oneOf
-objects,也无法找到断言之类的位置
告终。
我会很高兴得到一些提示。
(我认为,一旦正确表示了本体,就可以通过类似的方式获得解决方案sync_reasoner_pellet(infer_property_values=True, infer_data_property_values=True))
python - python:将曼彻斯特语法中的owl文件解析为owlready
是否可以解析以曼彻斯特语法给出的本体,使其最终成为owlready的本体对象。
这是我到目前为止发现的:
Owlready 本身只能导入“NTriples、RDF/XML 或 OWL/XML 格式”(ref1)。
Ontospy可以(除其他外)在这些格式之间进行转换:(
['xml', 'turtle', 'n3', 'nt', 'trix', 'rdfa']
ref2 )。rdflib有一个功能
rdflib.extras.infixowl.manchesterSyntax(...)
,但似乎没有很好地记录,似乎不适用于整个文件(或str
多个语句)。
是否还有其他我遗漏的项目,或者是否有一种简单的方法可以组合(一些)这些项目以将曼彻斯特语法中的 owl 文件解析为 owlready 本体?
python - PYM["SNOMEDCT_US"] python 缺少什么
我正在使用 owlread 构建代码,代码必须抛出文本并将医学发现转换为 SNOMED ct
但是我收到关于 SNOMEDCT_US = PYM["SNOMEDCT_US"] 的错误,错误说 TypeError: 'NoneType' object is not subscriptable
我认为缺少可以识别 PYM["SNOMEDCT_US"] 的文件,但我仍然找不到它?
谢谢
python - 在python中访问翻译本体时堆栈溢出
我有一段非常简单的代码,但它已经遇到了错误。我的一段代码应该只遍历本体中的类名并将它们打印出来。这适用于前 20 个左右,但随后会发生此错误:
我使用 owlready2 的代码只有这 4 行:
你能指出我的错误吗?我最初在 MacBook 上尝试过,但现在我也在运行 Arch 的计算机上进行了测试,同样的错误。
python - 如何在 OWL 中获取文字标签值?
我在 desctop Protege 中创建了本体。它由两个类组成 - test1 和 test2。然后我为他们声明了标签。第一个没有数据类型的标签,第二个 - 文字。OWL 文件内容如下。差异是字符串 'rdf:datatype="&rdfs;Literal"' 的存在尝试通过 owlready2 获取标签时,出现错误“ValueError:无法读取数据类型 305 的文字!” 用于文字类型标签。
这是 OWL 文件的内容:
这是打印子类标签的代码:
这是带有错误消息的输出:
如何获取 test2 的标签值?
python - Owlrady2 从文件而不是从 url 加载导入的本体
我正在尝试加载一个导入其他一些本体的本体。这些其他本体位于我的机器上,而不是在网络上。如果我尝试 my_ontology.load() 它会尝试从它们的 URI 加载这些其他本体。但这失败了。我如何告诉 owlready2 这些本体在哪里?
java - 如何在drone.io上使用python和java?
我开发了一个使用包的 python 项目owlready2
。对于它的一些功能,owlready2 显式地java -jar ...
通过-package 进行调用subprocess
。
在我的本地机器上,这工作正常。现在我想用drone.io 设置CI。
我现在的.drone.yml
样子是这样的:
在测试摘要中,我收到错误:
这是非常合乎逻辑的,因为我使用图像“python:3.8”。
问题:如何使 java 在测试机上可用?
owl - 如何修复在 owlready2 中加载本体的此错误
我正在尝试加载本体,但我收到一个错误,您可以在帖子中看到,代码如下所示。
代码:
错误: