- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
栏目 9.4 Datatype Definitions OWL 2 Web Ontology Language Structural Specification 展示了如何定义自定义数据类型,给出以下示例:
a:SSN rdf:type rdfs:Datatype .
a:SSN owl:equivalentClass [
rdf:type rdfs:Datatype ;
owl:onDatatype xsd:string ;
owl:withRestrictions (
[ xsd:pattern "[0-9]{3}-[0-9]{2}-[0-9]{4}" ]
)
] .
a:hasSSN rdfs:range a:SSN .
所以在这里我们定义了一个新的数据类型
a:SSN
通过限制
xsd:string
数据类型通过
xsd:pattern
方面。到现在为止还挺好。
The datatypes defined by datatype definition axioms … have empty lexical spaces and therefore they must not occur in literals.
a:SSN
这里有一个空的词法空间?它是通过约束
xsd:string
的值空间来定义的。通过
xsd:pattern
方面。栏目
4.3.4 pattern XSD 1.1 Part 2: Datatypes 说
… pattern is a constraint on the ·value space· of a datatype which is achieved by constraining the ·lexical space· to ·literals· which match each member of a set of ·regular expressions·.
xsd:string
的值空间,但我们通过限制
xsd:string
的词法空间来做到这一点(
the set of finite-length sequences of zero or more characters … that ·match· the Char production from XML ) 到与正则表达式匹配的文字。那么为什么 OWL 规范说
a:SSN
的词法空间为空,而不是与正则表达式
[0-9]{3}-[0-9]{2}-[0-9]{4}
匹配的零个或多个字符(如 XML 中定义的)的有限长度序列的集合。 ?
… there can be no literals of datatype
a:SSN
.
a:SSN
不能如下使用?
a:Jane a:hasSSN "123-45-6789"^^a:SSN .
如果是这样,应该如何使用
a:SSN
数据类型?是一个人应该写的想法
a:Jane a:hasSSN "123-45-6789"^^xsd:string .
并从
a:hasSSN
的声明范围推断实际数据类型是什么,因此值是否有效?
最佳答案
Why would
a:SSN
have an empty lexical space here?
http://dbpedia.org/resource/France
可以表示任何东西,就推理者而言,并且不可能约束这个 IRI 来表示特定的FOL 或 DL 中的东西)。
"10"^^xsd:integer
表示数字“十”,仅此而已。这对推理者很重要,因为它必须明白这与
"10"^^xsd:string
不同。表示,但与
"10.0"^^xsd:decimal
相同表示。这意味着无论您如何实现推理器,都必须有一部分代码专门用于处理数据类型为 IRI
xsd:integer
的文字。 .由于此专用代码,OWL 推理器能够推断:
<s> <o> "10"^^xsd:int .
从:
<s> <o> "10.0"^^xsd:decimal .
如果本体可以引入可用于文字的新数据类型 IRI,那么您就没有专门用于具有这些类型的文字的代码。现在,请考虑以下事项:
ex:one a rdfs:Datatype;
owl:equivalentClass [
a rdfs:Datatype ;
owl:onDatatype xsd:positiveInteger ;
owl:withRestrictions ( [ xsd:maxInclusive 1 ] )
] .
那么,鉴于此数据类型定义,以下内容是否应该是格式良好的文字?
"1.0"^^ex:one
你看,
"1.0"
位于
xsd:decimal
的词法空间中并映射到此数据类型中的数值“one”。值“one”也是
xsd:positiveInteger
值空间的一部分,但是
"1.0"
不是
xsd:positiveInteger
的有效词法形式.你可以争辩说
ex:one
只能使用
xsd:positiveInteger
的词法形式因为它被定义为对它的限制。但问题是,您有一个语义描述(一个本体),它定义了一个句法约束(允许您使用特定数据类型 IRI 编写文字的方式)。逻辑学家知道,允许用语义来约束句法的逻辑是邪恶的。
ex:one
的词法空间为空,则可以说
ex:one
与
ex:oneD
的数据类型相同定义如下:
ex:oneD a rdfs:Datatype;
owl:equivalentClass [
a rdfs:Datatype ;
owl:onDatatype xsd:decimal ;
owl:withRestrictions ( [ xsd:minInclusive 1 ] [ xsd:maxInclusive 1 ] )
] .
再说一句:我在这里说的只有当您考虑
OWL 2 Direct Semantics 时才有效。 .如果您考虑
OWL 2 RDF-based semantics ,然后还有其他事情需要考虑。特别是,在基于 RDF 的语义中,
ex:one
不一定是这种情况。与
ex:oneD
相同.它们可能是恰好具有相同值空间的不同数据类型。
So why does the OWL spec say that the lexical space of
a:SSN
is empty, rather than the the set of finite-length sequences of zero or more characters (as defined in XML) that match the regular expression[0-9]{3}-[0-9]{2}-[0-9]{4}
?
xsd:string
数据类型,其中值空间和词法空间相同。词法到值的映射是身份。所以看起来有一种简单的方法可以允许在文字上使用数据类型 IRI。但是请考虑我之前向您展示的更广泛的问题。
So does that mean that
a:SSN
cannot be used as follows?
If so, how is one supposed to use the
a:SSN
datatype?
allValuesFrom
中使用。或
someValuesFrom
限制。但是,当涉及到附加到实例的具体值时,您必须使用 OWL 2 推理器 native 支持的数据类型,正如您在上一个代码片段中所建议的那样。
关于xml - 如何使用 OWL 定义的数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66859624/
我在网上搜索但没有找到任何合适的文章解释如何使用 javascript 使用 WCF 服务,尤其是 WebScriptEndpoint。 任何人都可以对此给出任何指导吗? 谢谢 最佳答案 这是一篇关于
我正在编写一个将运行 Linux 命令的 C 程序,例如: cat/etc/passwd | grep 列表 |剪切-c 1-5 我没有任何结果 *这里 parent 等待第一个 child (chi
所以我正在尝试处理文件上传,然后将该文件作为二进制文件存储到数据库中。在我存储它之后,我尝试在给定的 URL 上提供文件。我似乎找不到适合这里的方法。我需要使用数据库,因为我使用 Google 应用引
我正在尝试制作一个宏,将下面的公式添加到单元格中,然后将其拖到整个列中并在 H 列中复制相同的公式 我想在 F 和 H 列中输入公式的数据 Range("F1").formula = "=IF(ISE
问题类似于this one ,但我想使用 OperatorPrecedenceParser 解析带有函数应用程序的表达式在 FParsec . 这是我的 AST: type Expression =
我想通过使用 sequelize 和 node.js 将这个查询更改为代码取决于在哪里 select COUNT(gender) as genderCount from customers where
我正在使用GNU bash,版本5.0.3(1)-发行版(x86_64-pc-linux-gnu),我想知道为什么简单的赋值语句会出现语法错误: #/bin/bash var1=/tmp
这里,为什么我的代码在 IE 中不起作用。我的代码适用于所有浏览器。没有问题。但是当我在 IE 上运行我的项目时,它发现错误。 而且我的 jquery 类和 insertadjacentHTMl 也不
我正在尝试更改标签的innerHTML。我无权访问该表单,因此无法编辑 HTML。标签具有的唯一标识符是“for”属性。 这是输入和标签的结构:
我有一个页面,我可以在其中返回用户帖子,可以使用一些 jquery 代码对这些帖子进行即时评论,在发布新评论后,我在帖子下插入新评论以及删除 按钮。问题是 Delete 按钮在新插入的元素上不起作用,
我有一个大约有 20 列的“管道分隔”文件。我只想使用 sha1sum 散列第一列,它是一个数字,如帐号,并按原样返回其余列。 使用 awk 或 sed 执行此操作的最佳方法是什么? Accounti
我需要将以下内容插入到我的表中...我的用户表有五列 id、用户名、密码、名称、条目。 (我还没有提交任何东西到条目中,我稍后会使用 php 来做)但由于某种原因我不断收到这个错误:#1054 - U
所以我试图有一个输入字段,我可以在其中输入任何字符,但然后将输入的值小写,删除任何非字母数字字符,留下“。”而不是空格。 例如,如果我输入: 地球的 70% 是水,-!*#$^^ & 30% 土地 输
我正在尝试做一些我认为非常简单的事情,但出于某种原因我没有得到想要的结果?我是 javascript 的新手,但对 java 有经验,所以我相信我没有使用某种正确的规则。 这是一个获取输入值、检查选择
我想使用 angularjs 从 mysql 数据库加载数据。 这就是应用程序的工作原理;用户登录,他们的用户名存储在 cookie 中。该用户名显示在主页上 我想获取这个值并通过 angularjs
我正在使用 autoLayout,我想在 UITableViewCell 上放置一个 UIlabel,它应该始终位于单元格的右侧和右侧的中心。 这就是我想要实现的目标 所以在这里你可以看到我正在谈论的
我需要与 MySql 等效的 elasticsearch 查询。我的 sql 查询: SELECT DISTINCT t.product_id AS id FROM tbl_sup_price t
我正在实现代码以使用 JSON。 func setup() { if let flickrURL = NSURL(string: "https://api.flickr.com/
我尝试使用for循环声明变量,然后测试cols和rols是否相同。如果是,它将运行递归函数。但是,我在 javascript 中执行 do 时遇到问题。有人可以帮忙吗? 现在,在比较 col.1 和
我举了一个我正在处理的问题的简短示例。 HTML代码: 1 2 3 CSS 代码: .BB a:hover{ color: #000; } .BB > li:after {
我是一名优秀的程序员,十分优秀!