最后
不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~
给大家准备的学习资料包括但不限于:
Python 环境、pycharm编辑器/永久激活/翻译插件
python 零基础视频教程
Python 界面开发实战教程
Python 爬虫实战教程
Python 数据分析实战教程
python 游戏开发实战教程
Python 电子书100本
Python 学习路线规划
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
在RDF中,properties的值可以是literals,如字符串,因此也可以长成:
在RDF中,属性的字面值也可以使用XML数据类型键入
RDF和RDFS
RDFS(RDF Schema)在RDF的基础上提供了一个术语、概念的定义方式,以及那些属性可以应用到哪些对象上。换句话说,RDFS为RDF模型提供了一个基本的类型系统。如:
上述三元组表示用户自定义的元数据Author是Dublin Core的元数据Creator的子类。RDF Schema正是通过这样的方式来描述不同词汇集的元数据之间的关系,从而为网络上统一格式的元数据交换打下基础。
RDFS支持推理功能,如:
OWL和OWL2
前面我们知道,通过RDF(S)可以表达一些简单的语义,但在更复杂的场景下,RDF(S)语义表达能力显得太弱,还缺少诸多常用的特征。包括对局部值域的属性定义,类、属性、个体的等价性,不相交类的定义,基数约束,关于属性特征的描述等。因此W3C提出了OWL语言扩展RDF(S),作为语义网上表示本体的推荐语言。
OWL
W3C于2002年7月31日发布了OWL Web本体语言(OWL Web Ontology Language)工作草案的细节其目的是为了更好地开发语义网。OWL有三个子语言:OWL Lite、OWL DL、OWL Full。下表给出OWL三个子语言的特征于区别:
OWL各语言如何选择
- 选择OWL Lite还是OWL DL主要取决于用户需要整个语言在多大程度上给出约束的可表达性;
- 选择OWL DL还是OWL Full主要取决于用户在多大程度上需要RDF的元模型机制 (如定义类型的类型以及为类型赋予属性);
- 在使用OWL Full而不是OWL DL时,推理的支持可能不能工作,因为目前还没有完全的支持OWL Full的系统实现。
综上所述,在要求简单时可采用OWL Lite,通常可采用OWL DL,对概念要求定义精确时采用OWL Full。(在Protege练习中感觉DL 和 Full区别并不明显)
OWL与RDF的关系
- OWL Full可以看成是RDF的扩展;
- OWL Lite和OWL Full可以看成是一个约束化的RDF的扩展;
- 所有的OWL文档 (Lite,DL,Full)都是一个RDF文档;
- 所有的RDF文档都是一个OWL Full文档;
- 只有一些RDF文档是一个合法的OWL Lite和OWL DL文档。
上面说的很模糊,在Protege操作中,OWL给我的感觉就是在RDFS的基础上,添加了很多描述类别、属性之间关系的定义或约束。,如两个类是否不相交这样的类属性。
OWL词汇扩展
owl:equivalentClass | 等价类 |
---|---|
owl:equivalentProperty | 等价属性 |
owl:sameIndividualAs | 等价个体 |
owl:TransitiveProperty | 属性传递 |
owl:inverseOf | 属性互反 |
owl:FunctionalProperty | 属性函数性 |
owl:SymmetricProperty | 属性对称性 |
owl:allValuesFrom | 属性约束 |
owl:onProperty | 属性约束 |
owl:someValuesFrom | 属性约束 |
owl:onProperty | 属性约束 |
owl:cardinality | 属性约束 |
owl:onProperty | 属性约束 |
owl:intersectionOf | 相交的类 |
owl:oneOf | 声明枚举类型 |
owl:disjointWith | 声明两个类不相交 |
owl:unionOf | 声明类的并运算 |
owl:minCardinality | 最小的基数限定 |
owl:maxCardinality | 最大的基数限定 |
owl:InverseFunctionalProperty | 声明互反类具有函数属性 |
owl:hasValue | 属性的局部约束时,声明所约束类必有一个取值 |
OWL2
OWL2是OWL的最新版本,老的OWL也称为OWL1,OWL2定义了一些OWL的子语言,通过限制语法使用,使得这些子语言能够更方便地实现,以及服务于不同的应用;OWL2也有三大子语言:OWL2 RL,OWL2 QL, OWL2 EL;
OWL2 QL适合概念多的情况,OWL2 EL适合实例较多的情况,如医学领域,OWL2 RL适合高效推理。
OWL2 QL
QL代表query language的意思,专为基于本体的查询设计:
- OWL 2 QL的复杂度是AC 0 ,非常适合大规模处理;
- OWL 2的三大子语言中,QL最为简单;
- OWL 2 QL是基于描述逻辑语言DL-Lite定义的。
OWL2 QL允许的核心词汇为:
通过OWL 2 QL的语言限制,基于QL的本体查询可以优化到多项式对数时间复杂度。
OWL2 EL
OWL 2 EL专为概念术语描述,推理而设计:
- 在生物医疗领域广泛应用,如临床医疗术语本体SNOMED CT;
- 复杂度是PTime-Complete;
- OWL2 EL是基于描述逻辑语言EL++定义的;
它允许的核心词汇为:
OWL2 EL允许表达复杂的概念,如:
Female⊓∃likes.Movie⊓∃hasSon.(Student⊓∃attends.CSCourse)
所有喜欢电影,儿子是学生且参加计算机课程的女性
OWL2 RL
OWL 2 RL在ter Horst的工作基础上延伸而来; 该工作的目的是将 OWL词汇引入RDFS,使得RDFS在表达能力上丰富起来,同时保持 计算复杂度在PTime级别。OWL 2 RL在RDFS的基础上引入属性的特殊特性 (函数性,互反性,对称性);允许声明等价性;允许属性的局部约束。OWL 2 RL与描述逻辑没有直接关系。
业界的一种观点是,OWL 2 RL是专为高效推理设计的本体语言(推理针对的是实例数据)。
OWL2 RL允许的核心词汇为:
OWL2现有的推理系统
OWL 2 DL reasoners | FaCT++ (Manchester), HermiT (Oxford), Pellet (Clarkparsia) |
---|---|
OWL 2 EL reasoners | CEL (Dresden), ELK (Oxford) |
OWL 2 RL reasoners | Jena (HP Labs Bristol, Aberdeen), Oracle 11g OWL Reasoner (Oracle) |
OWL 2 QL reasoners | QuOnto (Rome), Quill (Aberdeen) |
SPARQL简介
SPARQL是RDF的查询语言,它基于RDF数据模型,可以对不同的数据集撰写复杂的连接,同时还被所有主流的图数据库支持。
SPARQL的查询结构如下图所示:
从语法上结构上来看,SPARQL和SQL语言还是有一定的相似性的。比较重要的区别有:
- 变量,RDF中的资源,以“?”或者“$”指示;
- 三元组模板 (triple pattern), 在WHERE子句中列示关联的三元组模板,之所以称之为模板,因为三元组中允许变量;
- SELECT子句中指示要查询的目标变量
简单的查询语句:
查询所有选修CS328课程的学生姓名,以及他们的邮箱;OPTIONAL关键字 指示如果没有邮箱,那么依然返回学生姓名,邮箱处空缺。
JSON-LD
为了方便程序员阅读知识标识,出现了JSON-LD,JSON-LD是JavaScript Object Notation for Linked Data的缩写,是一种基于JSON表示和传输互联数据 (Linked Data)的方法。JSON-LD描述了如何通过JSON表示有向图,以及如何在一个文档中混合表示互联数据及非互联数据。JSON-LD的语法和JSON兼容。
JSON-LD呈现出语义网技术的风格,它们有着类似的目标:围绕某类知识提供共享的术语。例如,每个数据集不应该围绕“name”重复发明概念。JSON-LD 的 实 现 没 有 选 择 大 部 分 语 义 网 技 术 栈 (Turtle/SPARQL/Quad Stores)而是以简单、不复杂以及面向一般开发人员的方式推进。下图给出JSON-LD事例,可以看出非常容易理解:
RDFa
RDFa(Resource Description Framework in attributes)是网页标记语言,也是W3C推荐的标准,它扩充了XHTML的几个属性,网页制作者可以利用这些属性在网页中添加可供机器读取的资源。与RDF的对应关系使得RDFa可以将RDF的三元组嵌入在XHTML文档中,它也使得符合标准的使用端可以从RDFa文件中提取出这些RDF三元组来。RDFa从机器可理解的层面优化搜索,提升访问性以及网页数据的关联性。
HTML5 Microdata
现在能在网上找到很多很多的学习资源,有免费的也有收费的,当我拿到1套比较全的学习资源之前,我并没着急去看第1节,我而是去审视这套资源是否值得学习,有时候也会去问一些学长的意见,如果可以之后,我会对这套学习资源做1个学习计划,我的学习计划主要包括规划图和学习进度表。
分享给大家这份我薅到的免费视频资料,质量还不错,大家可以跟着学习
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!