当前位置:   article > 正文

[NLP] 语义网络与知识图谱入门(一)

nlp图关系纳入网络

语义网络与知识图谱入门(一)

RDF/XML

本体:一种形式化的对于共享概念体系明确而又详细的说明。就是指一种抽象的模型,可以用来描述对象类型、属性以及关系类型所构成的世界。

RDF/XML主要讲的就是如何用XML的方式来表示RDF的图。

1492605-20190907215851278-1654565251.jpg

椭圆表示节点,矩形表示文本,弧表示谓语。

节点描述

<rdf:Description rdf:about="A"></rdf:Description>

一个节点本身需要被rdf:Description来定义,通过rdf:about来说明资源uri。

前面rdf是空间名字,固有空间默认为rdf空间。

属性描述

如何描述A的属性d的值为D呢?

  1. 属性描述
  2. <rdf:Description rdf:about="A">
  3. <d>D</d>
  4. </rdf:Description>
  5. 简写
  6. <rdf:Description rdf:about="A" d="D"></rdf:Description>

路径描述

如何描述A到B的路径呢?

可以通过定义rdf:nodeId的方式指定唯一的nodeId,也可以通过rdf:parseType为Resouce来指定空节点。

  1. 属性描述,注意这里的B也是个节点,所以也需要Description
  2. <rdf:Description rdf:about="A">
  3. <a rdf:nodeId="abc"></a>
  4. </rdf:Description>
  5. <rdf:Description rdf:nodeId="abc">
  6. <b>
  7. <rdf:Description rdf:about="B" ></rdf:Description>
  8. </b>
  9. </rdf:Description>
  10. 不单独写空节点,即用resource
  11. <rdf:Description rdf:about="A">
  12. <a rdf:parseType="Resource">
  13. <b>
  14. <rdf:Description rdf:about="B" ></rdf:Description>
  15. </b>
  16. </a>
  17. </rdf:Description>

文本表示

  1. <?xml version="1.0"?>
  2. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  3. xmlns:ex="http://purl.org/dc/elements/1.1/">
  4. <rdf:Description rdf:about="http://example.com">
  5. <ex:prop rdf:parseType="Literal" xmlns:a="http://example.org/a#">
  6. 123
  7. </ex:prop>
  8. </rdf:Description>
  9. </rdf:RDF>

xmlns即xml namespace,定义一个命令空间。

使用语法: xmlns:namespace-prefix="namespaceURI"。

这里定义一个名字为a的命令空间

可以看到解析后的结果为:

NumberSubjectPredicateObject
1http://example.com](http://example.com/)http://purl.org/dc/elements/1.1/prop)"123"^^http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral

解析网址:https://www.w3.org/RDF/Validator/rdfval

通过解析可以看出来将prop指向的内容解析成了文本类型,即通过指定rdf:parseType="Literal"来实现。谓词rdf:parseType="Literal",指明节点的内容是普通文本,解释器不需要对其进行解释。

数据类型

可以使用rdf:datatype指定文本的数据类型

  1. <rdf:RDF>
  2. <rdf:Description rdf:about="http://example.com">
  3. <a rdf:datatype="http://www.w3.org/2001/XMLSchema#int">
  4. 123
  5. </a>
  6. </rdf:Description>
  7. </rdf:RDF>

同样的,也有string,date,decimal等数据类型可以在上面的datatype中指定。

RDF Schema (RDFS)

RDFS的全称为RDF Schema,RDF Schema 中的类与面向对象编程语言中的类非常相似。这就使得资源能够作为类的实例和类的子类来被定义。

  1. <rdf:RDF
  2. xmlns:rdf= "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  3. xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
  4. xml:base= "http://www.animals.fake/animals#">
  5. <rdf:Description rdf:ID="animal">
  6. <rdf:type
  7. rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  8. </rdf:Description>
  9. <rdf:Description rdf:ID="horse">
  10. <rdf:type
  11. rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  12. <rdfs:subClassOf rdf:resource="#animal"/>
  13. </rdf:Description>
  14. </rdf:RDF>

rdf:type
用来表示主语是谓语的一个实例,主语是一个资源,谓语是一个类 ,上面例子中说明animal是class的实例,horse也是class的实例。

rdfs:subClassOf

用来表示主语是谓语的子类,主语和谓语都是一个类 。上面例子中表明horse是animal的子类。

rdfs:subPropertyOf

用来表示主语是谓语的子属性,主语和谓语都是属性

rdfs:domain

用来表示属性的定义域

rdfs:range

用来表示值域

另外,一切所有皆资源(resource):所有类(class)都是资源,所有属性(property)都是资源,所有literal都是资源。

容器

Open Lists

open lists为课题添加新元素的容器。

rdf:Seq表示一个规定为有序的值的列表(比如一个字母顺序的排序),可以包含重复值。

rdf:Bag表示一个规定为无序的值的列表,可以包含重复值。

rdf:Alt表示一个可替换的值的列表(用户仅可选择这些值的其中之一)。

  1. <rdf:RDF>
  2. <rdf:Description rdf:about="http://a.com">
  3. <a>
  4. <rdf:Alt>
  5. <rdf:li>CD</rdf:li>
  6. <rdf:li>Record</rdf:li>
  7. <rdf:li>Tape</rdf:li>
  8. </rdf:Alt>
  9. </a>
  10. </rdf:Description>
  11. </rdf:RDF>

rdf:li,解释器在解释时,将自动生成编号。

Closed Lists

closed lists为不可以添加元素的容器,其成为collections。通过rdf:parseType="collections"可以将宾语视为closed lists。

  1. <rdf:RDF
  2. xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  3. xmlns:cd="http://recshop.fake/cd#">
  4. <rdf:Description
  5. rdf:about="http://recshop.fake/cd/Beatles">
  6. <cd:artist rdf:parseType="Collection">
  7. <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/George"/>
  8. <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/John"/>
  9. <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/Paul"/>
  10. <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/Ringo"/>
  11. </cd:artist>
  12. </rdf:Description>
  13. </rdf:RDF>

Turtle语法

turtle用三元组表示,每个句子后面一个.表示句子结束。

前缀

  1. @prefix book: <http://aa.com> .
  2. @prefix ex: <http://axx.com> .

通过@prefix来指定前缀,这样就可以在后面用这个前缀了。

book:uri ex:a "aaa".

转载于:https://www.cnblogs.com/aoru45/p/11483330.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/373506
推荐阅读
相关标签
  

闽ICP备14008679号