我必须对N3进行采样,我需要将其转换为对应的RDF/XML格式,请帮忙吗?
crop:AttributeValue a rdfs:Class .
crop:SomeValue a rdfs:Class; rdfs:subClassOf crops:AttributeValue .
crop:SomeValue/7 a crops:SomeValue .
crop:SomeValue a rdf:Property ; rdfs:range crops:SomeValue .
Run Code Online (Sandbox Code Playgroud) 使用RDF和SPARQL的最佳Ruby库是什么?我看到了一些其他相关的问题,但他们已经两岁多了.
我试图将一些数据转换为RDF格式.我能够使用dc和foaf类型创建基本本体.问题是,对于更复杂的本体,我需要一些更具体的谓词.我正在寻找一些更具体的词汇,但我不确定词汇表的含义.它只是一个URI(可能是一些网站),其中包含我想要使用的术语的信息,或者它必须以RDF格式编写?示例:我可以使用IMDB术语吗?例如http://www.imdb.com/glossary/C
我在StackOverflow上阅读了一些RDF相关问题,这些问题有RDFS解决方案,但也有OWL解决方案.(值得注意的是,我自己的问题)
我理解推理器的概念,并且OWL在推断复杂关系方面更为彻底,但这需要付出代价,通常引用的是更新性能.
有人可以解释在决定是否使用OWL推理器以及如何评估RDFS推理器是否足以满足一组要求时做出设计决策的因素.(我现在正强烈考虑AllegroGraph的RDFS ++推理器.)
我已经开始对本体的工作,并已经确定使用的东西像三联owl:ObjectProperty,owl:FunctionalProperty以及有几个子类owl:Thing.这是否意味着我已经超过了门槛并需要一个OWL推理器?一个人越过那条线,为什么?
我正在阅读RDF Schema 1.1建议,其中包括以下内容(添加了重点):
5.1.2 rdf:袋子
rdf:Bag 类是 RDF“Bag”容器的类。它是 rdfs:Container 的子类。虽然形式上它与 rdf:Seq 或 rdf:Alt 没有什么不同,但 rdf:Bag 类通常用于向人类读者指示该容器是无序的。
5.1.3 rdf:序列
rdf:Seq 类是 RDF“序列”容器的类。它是 rdfs:Container 的子类。虽然形式上它与 rdf:Bag 或 rdf:Alt 没有什么不同,但 rdf:Seq 类通常用于向人类读者指示容器的容器成员属性的数字顺序是重要的。
5.1.4 rdf:替代
rdf:Alt 类是 RDF“Alternative”容器的类。它是 rdfs:Container 的子类。虽然形式上它与 rdf:Seq 或 rdf:Bag 没有什么不同,但 rdf:Alt 类通常用于向人类读者指示典型的处理将选择容器的成员之一。容器的第一个成员,即 rdf:_1 属性的值,是默认选择。
我尝试理解它们的最后一行(以粗体显示)。还google了一下,很好理解。但无法了解他们想要如何在人类/逻辑层面上区分所有 3 个容器。以及如何在 rdf:Seq 中维护顺序。
为了理解排序,我还尝试使用 rdf 文件中的 rdf 解析器读取它们,如下所示:
<rdf:Alt rdf:about="http://eresources.nlb.gov.sg/ID/NLBDM/entity/XYZContainer">
<rdf:li>http://eresources.nlb.gov.sg/ID/NLBDM/resource/c85a5e82-b357-4168-a31e-1c8fd7f46101</rdf:li>
<rdf:li>http://eresources.nlb.gov.sg/ID/NLBDM/vocab/tqS1cM1h</rdf:li>
<rdf:li>http://eresources.nlb.gov.sg/ID/NLBDM/vocab/rQhlIgDw</rdf:li>
<rdf:li>http://eresources.nlb.gov.sg/ID/NLBDM/vocab/AaNRoEP6</rdf:li>
</rdf:Alt>
Run Code Online (Sandbox Code Playgroud)
使用 rdf:Bag 或 rdf:Seq 或 rdf:Alt,所有这些都为rdf:li提供相同的有序 Uris
例如。www.w3.org/1999/02/22-rdf-syntax-ns#_1,www.w3.org/1999/02/22-rdf-syntax-ns#_2,www.w3.org/1999/02/ 22-rdf-syntax-ns#_3 等等...
我想通过清晰的例子来理解如何在不同的场景中以不同的方式使用这些 …
我正在尝试构建一个Ontology来表示属性(资产),该属性应该有一个类型,如别墅或公寓......
我的问题是,我不知道别墅和公寓是否应该是班级或实例.我怎么知道?
我正在考虑有一个被调用的类Property和一个被调用的关系isTypeOf和一个被调用的类PropertyType,它有两个实例apartment和villa.那是对的吗?或者我应该Apartment和Villa类作为类的子PropertyType类?
我想用Protege创建一个本体,它包含两个类,Animal和FatherAnimal,以及对象属性hasFather,域名为Animal,范围为FatherAnimal.
另外,我创建了另外两个类:Son和Father,它们与相同的对象属性hasFather链接.这里的问题是我不允许为同一个对象属性创建多个域和范围.我真的想避免创建一个新的对象属性.还有其他解决方案吗?
W3C建议书RDF 1.1概念和抽象语法 定义了广义RDF三元组是什么(即,每个主题/谓词/对象可以是IRI/bnode/literal的非标准三元组).
关于它的可能用途,它给出了这个例子:
有时可以方便地放宽对RDF三元组的要求.例如,RDFS蕴涵规则的完整性更容易通过RDF三元组的推广来显示.
"RDFS蕴涵规则的完整性"是什么意思?(在W3C建议RDF Schema 1.1中搜索"完整"或"需要" 不会给出任何结果.)
而使用广义RDF三元组比使用规范的RDF三元组更容易显示哪种方式?
我想做出如下推论,比如图中灰色虚线代表的属性:
我断言了一个普遍的公理:
(hasTaste some Bitter) SubClassOf: goesWellWith some (hasTaste some Sweet)
Run Code Online (Sandbox Code Playgroud)
其中“bitter”是“Bitter”类型,“sweet”是“Sweet”类型。
我认为 owl:someValuesFrom (或曼彻斯特的“some”)意味着至少必须存在一个这样的关系。然而,在做出大胆的图表断言和一般公理之后,这种情况并没有发生。
我怎样才能做到这一点?
编辑(编辑2,我明白了)
我只是想到了一个可以用的超级房产链!我只是指定
hasTaste o complements o isTasteOf
Run Code Online (Sandbox Code Playgroud)
作为gosWellWith的超级地产链。事实上,通过制作 hasTaste、hasTexture 等...通用 hasTrait 的所有子属性,然后我可以分别用 hasTaste 和 isTraitOf 替换 hasTaste 和 isTasteOf :
hasTrait o complements o isTraitOf
Run Code Online (Sandbox Code Playgroud)
结果捕捉到了彼此互补的食品特性的每一种排列。
为了指定rdfs:Class并组织本体,我想使用 SKOS。目前我使用 RDFS 属性定义我的类:
:MyClass a rdfs:Class;
rdfs:label "my label";
rdfs:comment "this is a comment";
.
Run Code Online (Sandbox Code Playgroud)
我可以定义:MyClass为skos:Concept具有 SKOS 属性和 RDFS 属性吗?我想要这样的东西:
:MyClass a rdfs:Class;
rdfs:subClassOf skos:Concept;
rdfs:label "my label";
skos:prefLabel "my label";
rdfs:comment "this is a comment";
skos:notes "this is a comment";
.
Run Code Online (Sandbox Code Playgroud)
我读到一些 RDFS 属性可以映射到 SKOS 属性。那么,大家对这个语法感兴趣吗?RDFS 和 SKOS 在这里给出相同的冗余信息?