我有一个用OWL编写的本体。有人知道我可以将其加载到python吗?任何包装,甚至手动?在其他问题中提到的rdflib不适合我,因为它主要与RDF有关,而“ Seth”是一个非常好的库,它不起作用,因为它需要“ Pellet”库,该库的网站似乎已关闭并且它(seth)也仅适用于JVM 1.4!
我正在使用具有相关类,对象属性等的OWL本体来建模大学数据.我将大学数据放在一个简单的文本文件中(比如CSV).我想使用我的模型为这些数据创建本体.我的问题是:
我正在使用Gnome技术编写桌面应用程序,然后我开始计划语义桌面支持.
经过大量的头脑风暴,草拟想法和模型,写笔记和阅读大量有关RDF和相关主题的内容后,我终于想出了一份计划草案.
我决定做的第一件事是定义我给资源提供URI的方式,这是我想听听你的意见的地方.
我的计划由两部分组成:
1)在较低级别,定义了RDF模式.它是一组标准的类和属性,可能需要更多选项(使用转换为RDF的定义语言)的用户进行扩展.
2)在高级别,用户使用这些类和属性定义资源.
较低级别没有问题,因为数据模型是公开的:即使用户决定添加新内容,她也非常欢迎分享它并让其他人的应用程序具有更多功能.问题出在第二部分.在更高级别,用户定义任务,会议,约会,计划和日程安排.这些可能是私有的,并且用户可能更喜欢在URI中显示任何信息来揭示信息的来源.
以下是我的想法:
1)我应该使用哪种URI方案?我没有网站或任何网页,所以使用http没有意义.使用任何其他标准的IANA注册URI似乎也没有意义.我一直在考虑两个选项:为公共资源使用一些自定义的,我自己的URI方案名称,并为私有使用裸URN,如下所示:
urn : random_name_i_made_up : some_private_resource_uuid
Run Code Online (Sandbox Code Playgroud)
但我想知道自定义URI方案是否是一个好的决定,我很乐意听取你的意见:)
2)如何隐藏私人资源?一方面,URI可能非常有用,可以告诉任务来自何处,尤其是在人员之间共享和委派任务时.另一方面,它不考虑隐私.然后我想,我可以/我应该使用两种不同的URI样式,具体取决于用户设置吗?这会造成一些不一致.我不知道该怎么做,因为我没有任何URI经验.希望你对我有一些建议.
我正在遵循 Protégé 教程并执行 Pizza 本体的步骤。
问题是我无法创建限制。我找不到超类标题。我该怎么做?
我想用Protege创建一个本体,它包含两个类,Animal和FatherAnimal,以及对象属性hasFather,域名为Animal,范围为FatherAnimal.
另外,我创建了另外两个类:Son和Father,它们与相同的对象属性hasFather链接.这里的问题是我不允许为同一个对象属性创建多个域和范围.我真的想避免创建一个新的对象属性.还有其他解决方案吗?
我正在使用适用于 Windows 的 Prot\xc3\xa9g\xc3\xa9 桌面。\n我正在使用以下 URL 将 Dublin Core 元素导入到 prot\xc3\xa9g\xc3\xa9 中:http: //purl.org/dc/elements/ 1.1
\n我原本希望能够访问 15 AnnotationProperty、dc:creator、dc:title、dc:contributor...,但我看不到它们。\n相反,我看到了一些 dcterms:title、dcterms:hasVersion、。 ..(见下图)
\n\n因此,我想知道我做错了什么。\n我可以得到正确的程序来做好这件事吗?
\n我无法访问现有本体的类公理。我知道某个类包含我需要的公理。例如,类“cold”包含公理:
\n\n冷 \xe2\x8a\x93 啤酒 \xe2\x8a\x91 正,和
\n\n冷 \xe2\x8a\x93 披萨 \xe2\x8a\x91 负
\n\n有办法访问这些吗?
\n\nfrom owlready2 import * \n\nonto_path.append("\\Path_to_owl_file")\nonto = get_ontology("some_owl_file.owl")\nonto = onto.load()\n\nclasses = list(onto.classes()) # Get all classes from the ontology\n\nfirst_class = classes[0]\n# Access axioms from this class\nRun Code Online (Sandbox Code Playgroud)\n\n提前致谢!
\n我们有一个本体,但我们需要使用推理器 HermiT 来推断给定表达的情绪。我们不知道如何在 python 中使用和实现推理器,我们在互联网上找不到很好的解释。我们发现我们可以为此使用 sync_reasoner() ,但这究竟是做什么的?我们是否每次都必须手动调用推理器还是自动发生?
好像他们是一样的?
此内容或评级的作者。请注意,author 的特殊性在于 HTML 5 提供了一种通过 rel 标签指示作者身份的特殊机制。这等效于 this 并且可以互换使用。
此 CreativeWork 的创建者/作者。这与 CreativeWork 的 Author 属性相同。
我在 Datasets useauthor和其他人中看到了一些在野外的用途creator。
我正在建模一个本体,该本体应该用于表示有关餐厅、其提供的菜肴、价格和美食类型的知识。
该系统的功能之一是允许用户浏览吃某种特定菜肴的地方或搜索专门提供某些菜肴的餐馆。
考虑到这一点,我已经对本体的第一个版本进行了建模,但我的问题出现了。
为了表示餐厅的特色:(a)我应该将其作为对象属性,具有类Cuisine,还是(b)仅作为数据属性,即作为餐厅类的简单属性?
选择a或b有何含义?
ontology ×10
owl ×5
rdf ×4
python ×3
owlready ×2
protege ×2
semantic-web ×2
dublin-core ×1
hermit ×1
privacy ×1
protege4 ×1
python-3.x ×1
rdfs ×1
reasoner ×1
schema.org ×1
uri ×1