问题标签 [manchester-syntax]
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.
conditional-statements - Protege-OWL:类必须各有一个
我是新手,我必须使用曼彻斯特 OWL 语法为具有与 soduku 相似属性的网格建模。
我一直在搜索,但似乎找不到一种方法来制定一个公理,即“每列必须有 4 个单元格,并且必须具有这些值中的每一个”。如,假设一个 4x1 列,每个单元格必须包含一个数字,并且该列必须包含所有数字 [1:4]。
我已经设置了一些 Objects 、 data 属性和 Object 属性,我将在这里留下。我将把完整的 .owl 文件留在这里,以便可以加载它,从而更容易提供帮助。
高度赞赏所有帮助。
编辑:这一点是当我运行推理器时,某些单元格的值,它将推断其他单元格的值。例如:cell1 = 1, cell2 =2, cell3 = 3 => 推理器将推断 cell4 的值为 4。
xsd - Protégé data时间限制
我有一个带有域 Show 和 range 的数据属性 ShowTime xsd:dateTime
。我想知道是否有办法断言 dataTime 范围必须包含在“2018-01-01TX:X:X”中,以便在该日期有一个固定的日期和一个可变的小时。
我试过曼彻斯特语法:
但是告诉我语法不正确。
PS我正在使用HermiT。
有人能帮我吗?谢谢。
已编辑
具体例子。假设我们有一个Show
类,它代表了电影放映的概念。每个节目都有日期和开始时间。因此,我们可以通过showDateTime
具有域Show
和范围的数据属性xsd:dateTime
(例如“2018-01-16T18:00:00”)简单地表示这些信息。
问题是我需要仅根据开始时间对每天的时间段(早上、下午、傍晚、深夜)中的每个节目进行分类。我尝试了 SWRL,财产限制......我还没有找到一种方法来告诉推理者不要考虑日期,这显然优先于时间并且把我搞砸了。
因此,我想将日期和时间分成两个单独的属性(showDate
和showTime
),始终为 xsd:dateTime 类型,并限制将其showTime
绑定为具有固定日期(例如 2018-01-01)。通过这种方式,我可以将 MorningShow 类定义如下:
这就是我提出问题的原因。
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 本体?
excel - 使用 Cellfie 从 Excel 获取 Protege DataProperty 整数值的问题
我正在使用 Protégé 的 Cellfie 插件从科学文章的 Excel 数据库创建本体论个体。当我尝试将整数值分配给范围为 xsd:integer 的属性“具有整数值”时遇到问题。实际上,正在分配属性但没有 ^^xsd:integer 类型规范,因此推理器失败,因为这些值未被识别为整数。我正在使用这个曼彻斯特语法代码,它不会导致任何错误,但是赋予属性的值没有在 Protégé 本体中声明为整数:
个人:@B*
类型:“出版年”
事实:'具有整数值'@B*(xsd:integer)
Excel 的 B 列全是整数(年)。如果我尝试使用 xsd:string,则属性具有正确的类型声明 ^^xsd:string,但如果我尝试使用 xsd:integer,则会创建公理而忽略类型声明。
ontology - 使用 HermiT 推理器和 OWLAPI 执行 DL 查询的问题?
我正在使用 OWLAPI 5.1.9 和 HermiT 1.4.5.519 以便在本体上自动生成一些 DL。我使用了https://github.com/phillord/owl-api/blob/master/contract/src/test/java/org/coode/owlapi/examples/DLQueryExample.java上的示例代码 DLQueryExample刚刚修改为使用隐士推理者。
HermiT 推理器至少似乎可以工作,但是如果我引入本体的类名,则会显示此错误:
线程“main” org.semanticweb.owlapi.manchestersyntax.renderer.ParserException 中的异常:在第 1 行第 1 列遇到质量。预期其中之一:类名称对象属性名称数据属性名称反转不是({
DL 查询的语法是否与 Protégé 中使用的相同?
java - 曼彻斯特语法中的 ParserException
我尝试使用来自 OWL-API 的 ManchesterOWLSyntaxParser。我需要将曼彻斯特语法中的 String 转换为 OWL Axiom,我可以将其添加到现有的本体中。问题是,我总是得到 Parser Exception(如下所示):
我在 w3c 网站上阅读了有关曼彻斯特语法的信息,但我不知道问题出在哪里。也许曼彻斯特解析器应该以不同的方式使用。
我试图解析的曼彻斯特语法中的字符串示例代码。
owl - 在类表达式中选择属性右侧的个体
找不到我的问题的答案:
假设我有一个属性“有”和两个不同类别 A 和 B的个体。
我们定义个体 A“有”B。
个体 B 没有任何信息被A定义为属性“has”的目标。
如何定义一个类来捕获“has”右侧的所有个体?