Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

XML 教程

XML 主页 XML 简介 XML 如何使用 XML 树 XML 语法 XML 元素 XML 属性 XML 命名空间 XML 显示 XML HttpRequest XML 解析器 XML DOM XML XPath XML XSLT XML XQuery XML XLink XML 验证器 XML DTD XML 模式 XML 服务器 XML 示例 XML 测验 XML 证书

XML AJAX

AJAX 简介 AJAX XMLHttp AJAX 请求 AJAX 响应 AJAX XML 文件 AJAX PHP AJAX ASP AJAX 数据库 AJAX 应用程序 AJAX 示例

XML DOM

DOM 简介 DOM 节点 DOM 访问 DOM 节点信息 DOM 节点列表 DOM 遍历 DOM 导航 DOM 获取值 DOM 更改节点 DOM 删除节点 DOM 替换节点 DOM 创建节点 DOM 添加节点 DOM 克隆节点 DOM 示例

XPath 教程

XPath 简介 XPath 节点 XPath 语法 XPath 轴 XPath 运算符 XPath 示例

XSLT 教程

XSLT 简介 XSL 语言 XSLT 变换 XSLT <template> XSLT <value-of> XSLT <for-each> XSLT <sort> XSLT <if> XSLT <choose> XSLT 应用 XSLT 在客户端 XSLT 在服务器端 XSLT 编辑 XML XSLT 示例

XQuery 教程

XQuery 简介 XQuery 示例 XQuery FLWOR XQuery HTML XQuery 术语 XQuery 语法 XQuery 添加 XQuery 选择 XQuery 函数

XML DTD

DTD 简介 DTD 构建块 DTD 元素 DTD 属性 DTD 元素与属性 DTD 实体 DTD 示例

XSD 模式

XSD 简介 XSD 如何做 XSD <schema> XSD 元素 XSD 属性 XSD 限制 XSD 复杂元素 XSD 空 XSD 仅元素 XSD 仅文本 XSD 混合 XSD 指示符 XSD <any> XSD <anyAttribute> XSD 替换 XSD 示例

XSD 数据类型

XSD 字符串 XSD 日期/时间 XSD 数字 XSD 杂项 XSD 参考

Web 服务

XML 服务 XML WSDL XML SOAP XML RDF XML RSS

参考

DOM 节点类型 DOM 节点 DOM 节点列表 DOM NamedNodeMap DOM 文档 DOM 元素 DOM 属性 DOM 文本 DOM CDATA DOM 注释 DOM XMLHttpRequest DOM 解析器 XSLT 元素 XSLT/XPath 函数

XML RDF


RDF 文档示例

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:si="https://w3schools.org.cn/rdf/">

<rdf:Description rdf:about="https://w3schools.org.cn">
  <si:title>W3Schools</si:title>
  <si:author>Jan Egil Refsnes</si:author>
</rdf:Description>

</rdf:RDF>

什么是 RDF?

  • RDF 代表 Resource Description Framework
  • RDF 是一个用于描述 Web 上资源的框架
  • RDF 旨在被计算机读取和理解
  • RDF 不适用于向人们展示
  • RDF 用 XML 编写
  • RDF 是 W3C 语义 Web 活动的一部分
  • RDF 是 W3C 于 2004 年 2 月 10 日发布的推荐标准

RDF - 使用示例

  • 描述购物商品的属性,例如价格和可用性
  • 描述 Web 事件的时间安排
  • 描述有关网页的信息(内容、作者、创建和修改日期)
  • 描述 Web 图片的内容和评级
  • 描述搜索引擎的内容
  • 描述电子图书馆

RDF 旨在被计算机读取

RDF 被设计为提供一种描述信息以供计算机应用程序读取和理解的通用方式。

RDF 描述不适用于在 Web 上显示。



RDF 用 XML 编写

RDF 文档用 XML 编写。RDF 使用的 XML 语言称为 RDF/XML。

通过使用 XML,RDF 信息可以轻松地在不同类型的计算机之间交换,这些计算机使用不同的操作系统和应用程序语言。


RDF 和“语义 Web”

RDF 语言是 W3C 语义 Web 活动的一部分。W3C 的“语义 Web 愿景”是未来,其中

  • Web 信息具有确切的含义
  • Web 信息可以被计算机理解和处理
  • 计算机可以整合来自 Web 的信息

RDF 使用 Web 标识符 (URI) 来标识资源。

RDF 使用属性和属性值来描述资源。


RDF 资源、属性和属性值

RDF 使用 Web 标识符 (URI) 来标识事物,并使用属性和属性值来描述资源。

资源、属性和属性值的解释

  • 资源 是任何可以具有 URI 的东西,例如“https://w3schools.org.cn/rdf”
  • 属性 是具有名称的资源,例如“作者”或“主页”
  • 属性值 是属性的值,例如“Jan Egil Refsnes”或“https://w3schools.org.cn”(注意,属性值可以是另一个资源)

以下 RDF 文档可以描述资源“https://w3schools.org.cn/rdf”

<?xml version="1.0"?>

<RDF>
  <Description about="https://w3schools.org.cn/rdf">
    <author>Jan Egil Refsnes</author>
    <homepage>https://w3schools.org.cn</homepage>
  </Description>
</RDF>

上面的示例是简化的。命名空间被省略了。


RDF 语句

资源、属性和属性值的组合构成一个语句(称为语句的主语、谓语和宾语)。

让我们看一些示例语句,以更好地理解

语句:“https://w3schools.org.cn/rdf 的作者是 Jan Egil Refsnes”。

  • 上面语句的主语是:https://w3schools.org.cn/rdf
  • 谓语是:author
  • 宾语是:Jan Egil Refsnes

语句:“https://w3schools.org.cn/rdf 的主页是 https://w3schools.org.cn”。

  • 上面语句的主语是:https://w3schools.org.cn/rdf
  • 谓语是:homepage
  • 宾语是:https://w3schools.org.cn

RDF 示例

以下是来自 CD 列表的两个记录

标题 艺术家 国家 公司 价格 年份
帝国狂想曲 鲍勃·迪伦 美国 哥伦比亚 10.90 1985
隐藏你的心 邦妮·泰勒 英国 哥伦比亚唱片 9.90 1988

下面是 RDF 文档中的几行

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque">
  <cd:artist>Bob Dylan</cd:artist>
  <cd:country>USA</cd:country>
  <cd:company>Columbia</cd:company>
  <cd:price>10.90</cd:price>
  <cd:year>1985</cd:year>
</rdf:Description>

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Hide your heart">
  <cd:artist>Bonnie Tyler</cd:artist>
  <cd:country>UK</cd:country>
  <cd:company>CBS Records</cd:company>
  <cd:price>9.90</cd:price>
  <cd:year>1988</cd:year>
</rdf:Description>
.
.
.
</rdf:RDF>

RDF 文档的第一行是 XML 声明。XML 声明之后是 RDF 文档的根元素:<rdf:RDF>

xmlns:rdf 命名空间,指定带有 rdf 前缀的元素来自命名空间“http://www.w3.org/1999/02/22-rdf-syntax-ns#”。

xmlns:cd 命名空间,指定带有 cd 前缀的元素来自命名空间“http://www.recshop.fake/cd#”。

<rdf:Description> 元素包含由 rdf:about 属性标识的资源的描述。

元素:<cd:artist>,<cd:country>,<cd:company>,等等是资源的属性。


RDF 在线验证器

W3C 的 RDF 验证服务 在学习 RDF 时非常有用。在这里,您可以尝试使用 RDF 文件。

在线 RDF 验证器会解析您的 RDF 文档,检查您的语法,并生成 RDF 文档的表格和图形视图。

将下面的示例复制并粘贴到 W3C 的 RDF 验证器中

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:si="https://w3schools.org.cn/rdf/">
<rdf:Description rdf:about="https://w3schools.org.cn">
  <si:title>W3Schools.com</si:title>
  <si:author>Jan Egil Refsnes</si:author>
</rdf:Description>
</rdf:RDF>

解析上面的示例时,结果将类似于此


RDF 元素

RDF 的主要元素是根元素 <RDF> 和 <Description> 元素,它标识资源。


The <rdf:RDF> 元素

<rdf:RDF> 是 RDF 文档的根元素。它将 XML 文档定义为 RDF 文档。它还包含对 RDF 命名空间的引用

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  ...Description goes here...
</rdf:RDF>

The <rdf:Description> 元素

The <rdf:Description> 元素使用 about 属性标识资源。

The <rdf:Description> 元素包含描述资源的元素

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque">
  <cd:artist>Bob Dylan</cd:artist>
  <cd:country>USA</cd:country>
  <cd:company>Columbia</cd:company>
  <cd:price>10.90</cd:price>
  <cd:year>1985</cd:year>
</rdf:Description>

</rdf:RDF>

元素 artist、country、company、price 和 year 在 http://www.recshop.fake/cd# 命名空间中定义。此命名空间位于 RDF 之外(并且不是 RDF 的一部分)。RDF 仅定义框架。元素 artist、country、company、price 和 year 必须由其他人(公司、组织、个人等)定义。


属性作为属性

属性元素也可以定义为属性(而不是元素)

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque"
cd:artist="Bob Dylan" cd:country="USA"
cd:company="Columbia" cd:price="10.90"
cd:year="1985" />

</rdf:RDF>

属性作为资源

属性元素也可以定义为资源

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Empire Burlesque">
  <cd:artist rdf:resource="http://www.recshop.fake/cd/dylan" />
  ...
  ...
</rdf:Description>

</rdf:RDF>

在上面的示例中,属性 artist 没有值,但有一个引用,指向包含有关艺术家信息的资源。


RDF 容器

RDF 容器用于描述事物组。

以下 RDF 元素用于描述组:<Bag>,<Seq> 和 <Alt>。


The <rdf:Bag> 元素

The <rdf:Bag> 元素用于描述不需要按特定顺序的值列表。

The <rdf:Bag> 元素可能包含重复的值。

示例

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Beatles">
  <cd:artist>
    <rdf:Bag>
      <rdf:li>John</rdf:li>
      <rdf:li>Paul</rdf:li>
      <rdf:li>George</rdf:li>
      <rdf:li>Ringo</rdf:li>
    </rdf:Bag>
  </cd:artist>
</rdf:Description>

</rdf:RDF>

The <rdf:Seq> 元素

The <rdf:Seq> 元素用于描述值的排序列表(例如,按字母顺序)。

The <rdf:Seq> 元素可能包含重复的值。

示例

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Beatles">
  <cd:artist>
    <rdf:Seq>
      <rdf:li>George</rdf:li>
      <rdf:li>John</rdf:li>
      <rdf:li>Paul</rdf:li>
      <rdf:li>Ringo</rdf:li>
    </rdf:Seq>
  </cd:artist>
</rdf:Description>

</rdf:RDF>

The <rdf:Alt> 元素

The <rdf:Alt> 元素用于描述备选值的列表(用户只能选择一个值)。

示例

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://www.recshop.fake/cd#">

<rdf:Description
rdf:about="http://www.recshop.fake/cd/Beatles">
  <cd:format>
    <rdf:Alt>
      <rdf:li>CD</rdf:li>
      <rdf:li>Record</rdf:li>
      <rdf:li>Tape</rdf:li>
    </rdf:Alt>
  </cd:format>
</rdf:Description>

</rdf:RDF>

RDF 术语

在上面的示例中,我们在描述容器元素时谈论了“值列表”。在 RDF 中,这些“值列表”称为成员。

因此,我们有以下内容

  • 容器是一个包含事物的资源
  • 包含的事物称为成员(而不是值列表)

RDF 集合

RDF 集合描述仅能包含指定成员的组。


rdf:parseType="Collection" 属性

如上一章所示,容器表示包含的资源是成员 - 它没有表示不允许其他成员。

RDF 集合用于描述仅能包含指定成员的组。

集合由属性 rdf:parseType="Collection" 描述。

示例

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cd="http://recshop.fake/cd#">

<rdf:Description
rdf:about="http://recshop.fake/cd/Beatles">
  <cd:artist rdf:parseType="Collection">
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/George"/>
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/John"/>
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/Paul"/>
    <rdf:Description rdf:about="http://recshop.fake/cd/Beatles/Ringo"/>
  </cd:artist>
</rdf:Description>

</rdf:RDF>

RDF Schema 和应用程序类

RDF Schema (RDFS) 是 RDF 的扩展。

RDF 使用类、属性和值来描述资源。

此外,RDF 还需要一种方法来定义特定于应用程序的类和属性。特定于应用程序的类和属性必须使用 RDF 的扩展来定义。

其中一项扩展是 RDF Schema。


RDF Schema (RDFS)

RDF Schema 不提供实际的特定于应用程序的类和属性。

相反,RDF Schema 提供了描述特定于应用程序的类和属性的框架。

RDF Schema 中的类很像面向对象编程语言中的类。这使得资源可以定义为类的实例和类的子类。


RDFS 示例

以下示例演示了一些 RDFS 功能

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://www.animals.fake/animals#">

<rdf:Description rdf:ID="animal">
  <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
</rdf:Description>

<rdf:Description rdf:ID="horse">
  <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
  <rdfs:subClassOf rdf:resource="#animal"/>
</rdf:Description>

</rdf:RDF>

在上面的示例中,资源“horse”是类“animal”的子类。


示例缩写

由于 RDFS 类是 RDF 资源,因此我们可以通过使用 rdfs:Class 代替 rdf:Description 并删除 rdf:type 信息来缩写上面的示例

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base="http://www.animals.fake/animals#">

<rdfs:Class rdf:ID="animal" />

<rdfs:Class rdf:ID="horse">
  <rdfs:subClassOf rdf:resource="#animal"/>
</rdfs:Class>

</rdf:RDF>

就是这样!


Dublin Core

Dublin Core 元数据倡议 (DCMI) 创建了一些预定义的属性来描述文档。

RDF 是元数据(关于数据的數據)。RDF 用于描述信息资源。

Dublin Core 是一组用于描述文档的预定义属性。

第一个 Dublin Core 属性是在 1995 年的 **俄亥俄州都柏林元数据研讨会** 上定义的,目前由 Dublin Core 元数据倡议 维护。

属性 定义
贡献者 负责为资源内容做出贡献的实体
覆盖范围 资源内容的范围或范围
创建者 主要负责创建资源内容的实体
格式 资源的物理或数字表现形式
日期 资源生命周期中事件的日期
描述 对资源内容的描述
标识符 在给定上下文中对资源的明确引用
语言 资源智力内容的语言
出版者 负责使资源可用的实体
关系 对相关资源的引用
权利 有关资源中和资源上的权利的信息
来源 对当前资源所来自的资源的引用
主题 资源内容的主题
标题 赋予资源的名称
类型 资源内容的性质或类型

快速浏览上面的表格表明 RDF 非常适合表示 Dublin Core 信息。


RDF 示例

以下示例演示了在 RDF 文档中使用一些 Dublin Core 属性

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc= "http://purl.org/dc/elements/1.1/">

<rdf:Description rdf:about="https://w3schools.org.cn">
  <dc:description>W3Schools - 免费教程</dc:description>
  <dc:publisher>Refsnes Data as</dc:publisher>
  <dc:date>2008-09-01</dc:date>
  <dc:type>Web Development</dc:type>
  <dc:format>text/html</dc:format>
  <dc:language>en</dc:language>
</rdf:Description>

</rdf:RDF>

RDF 引用

RDF 命名空间 (xmlns:rdf) 是:http://www.w3.org/1999/02/22-rdf-syntax-ns#

RDFS 命名空间 (xmlns:rdfs) 是:http://www.w3.org/2000/01/rdf-schema#

RDF 文件的推荐文件扩展名为 **.rdf**。但是,扩展名 **.xml** 通常用于提供与旧 xml 解析器的兼容性。

MIME 类型应为 **"application/rdf+xml"**。


RDFS/RDF 类

元素 类的 子类的
rdfs:Class 所有类  
rdfs:Datatype 数据类型
rdfs:Resource 所有资源
rdfs:Container 容器 资源
rdfs:Literal 文字值(文本和数字) 资源
rdf:List 列表 资源
rdf:Property 属性 资源
rdf:Statement 语句 资源
rdf:Alt 备选容器 容器
rdf:Bag 无序容器 容器
rdf:Seq 有序容器 容器
rdfs:ContainerMembershipProperty 容器成员属性 属性
rdf:XMLLiteral XML 文字值 文字

RDFS/RDF 属性

元素 范围 描述
rdfs:domain 属性 资源的域
rdfs:range 属性 资源的范围
rdfs:subPropertyOf 属性 属性 该属性是属性的子属性
rdfs:subClassOf 该资源是类的子类
rdfs:comment 资源 文字 资源的人类可读描述
rdfs:label 资源 文字 资源的人类可读标签(名称)
rdfs:isDefinedBy 资源 资源 资源的定义
rdfs:seeAlso 资源 资源 有关资源的其他信息
rdfs:member 资源 资源 资源的成员
rdf:first 列表 资源  
rdf:rest 列表 列表  
rdf:subject 语句 资源 RDF 语句中资源的主题
rdf:predicate 语句 资源 RDF 语句中资源的谓词
rdf:object 语句 资源 RDF 语句中资源的宾语
rdf:value 资源 资源 用于值的属性
rdf:type 资源 该资源是类的实例

RDF 属性

属性 描述
rdf:about 定义正在描述的资源
rdf:Description 用于描述资源的容器
rdf:resource 定义用于标识属性的资源
rdf:datatype 定义元素的数据类型
rdf:ID 定义元素的 ID
rdf:li 定义列表
rdf:_n 定义节点
rdf:nodeID 定义元素节点的 ID
rdf:parseType 定义元素的解析方式
rdf:RDF RDF 文档的根
xml:base 定义 XML 基准
xml:lang 定义元素内容的语言

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.