XML基础知识讲解

文章目录

  • [1. xml简介](#1. xml简介)
  • [2. xml快速入门](#2. xml快速入门)
  • [3. xml的元素(标签)定义](#3. xml的元素(标签)定义)
  • [4. xml标签的命名规范](#4. xml标签的命名规范)
  • [5. xml的属性定义和注释](#5. xml的属性定义和注释)
  • [6. 转义字符](#6. 转义字符)
  • [7. CDATA区](#7. CDATA区)
  • [8. xml的处理指令](#8. xml的处理指令)
  • [9. xml的约束](#9. xml的约束)

1. xml简介

XML(eXtensible Markup Language)是一种用于描述数据的标记语。

它以纯文本的方式存储数据,并使用标签来标记数据的结构和含义。XML被设计用于传输和存储数据,同时也可作为配置文件和数据交换的格式

2. xml快速入门

创建一个xml文档,必须要有文档说明且必须放在第一行

xml 复制代码
<?xml version="1.0" encoding="UTF-8" ?>
  • version(必须要有): 表示xml的版本(1.0和1.1)

    • 注: 1.1不会向下兼容,一般都是1.0
  • encoding(可选): 表示xml的编码格式,例如:UTF8,GBK等

xml使用示例:

xml 复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<root>
    <person>111</person>
</root>

对于xml文档,可以使用浏览器打开

3. xml的元素(标签)定义

  1. xml文档中只能有一个根标签

  2. 用户可自定义标签,例如:<person></person>

    • 结束标签比开始标签多了一个 /
  3. 标签的定义有开始必须要有结束

  4. 标签必须是合理嵌套

4. xml标签的命名规范

  1. 标签区分大小写
  2. 标签不能以数字或者下划线开头
  3. 不能以xml等关键字开头
  4. 不能包含空格
  5. 名称中间不能有:

注: xml在解析时会把空格和换行都当成内容来处理

5. xml的属性定义和注释

属性定义:

  • 每个标签可以有多个属性,但是属性不能相同
  • 属性和属性之间要使用引号(单引号或双引号)
  • 属性名称的命名规范和元素名称的命名规范相同

示例:

注释:

xml 复制代码
<!-- 注释内容   -->

注释不能嵌套

6. 转义字符

在XML中,有几个特殊字符被认为是保留字符,不能直接在文本中使用,而是需要使用转义字符来表示。

以下是XML中常见的转义字符:

  • &lt; - 表示小于号 <
  • &gt; - 表示大于号 >
  • &amp; - 表示和符号 &
  • &quot; - 表示双引号 "
  • ' - 表示单引号 '

示例:

7. CDATA区

CDATA(Character Data)区是XML中的一个特殊区域,用于包含文本数据,其中可以包含任何字符,包括XML保留字符和特殊字符,而不需要进行转义。

CDATA区是由<![CDATA[开始,以]]>结束。

xml 复制代码
    <![CDATA[

    ]]>

CDATA区中的内容将被视为纯文本,不会被解析为XML标记。CDATA区常用于包含包含特殊字符或大量文本的数据,以避免不必要的转义。

示例:

8. xml的处理指令

XML中,处理指令是用来指导XML解析器或其他处理工具对XML文档进行处理的指令。它们以<?开始,以?>结束,并位于XML文档的开头。

常见的XML处理指令包括:

  1. XML声明:<?xml version="1.0" encoding="UTF-8"?>。这是XML文档的第一个处理指令,用于指定XML版本和字符编码。
  2. 样式表处理指令:<?xml-stylesheet type="text/xsl" href="style.xsl"?>。用于引用XSL样式表,用于对XML文档进行转换和呈现。
  3. 实体处理指令:<!ENTITY name "value">。用于定义实体,可以在XML文档中引用并展开为对应的值。
  4. 命名空间处理指令:xmlns:prefix="namespace"。用于定义命名空间和命名空间前缀,以在XML文档中标识元素和属性的命名空间。

这些处理指令可以向XML解析器提供关于XML文档的附加信息,或者指示如何处理XML文档。处理指令通常出现在XML文档的开头,但不是必需的。

9. xml的约束

xml的约束就是指xml中可以出现哪些元素以及不能出现哪些元素

常见的两种约束:

  1. DTD
  2. schema

DTD是一种基本的XML约束语言,用于定义XML文档的元素、属性和实体,以及它们之间的关系和约束。DTD使用一组规则来验证XML文档的结构和内容,确保它们符合DTD中定义的规范。
Schema是一种更强大和灵活的XML约束语言,用于定义XML文档的结构、数据类型和约束。XML Schema使用XML语法来定义元素、属性、数据类型、约束和关系,可以进行更复杂的验证和约束。

相关推荐
Howrun7774 分钟前
关于Linux服务器的协作问题
linux·运维·服务器
工程师老罗8 分钟前
YoloV1数据集格式转换,VOC XML→YOLOv1张量
xml·人工智能·yolo
Coder_Boy_1 小时前
技术让开发更轻松的底层矛盾
java·大数据·数据库·人工智能·深度学习
invicinble1 小时前
对tomcat的提供的功能与底层拓扑结构与实现机制的理解
java·tomcat
较真的菜鸟1 小时前
使用ASM和agent监控属性变化
java
黎雁·泠崖1 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
yunfuuwqi2 小时前
OpenClaw✅真·喂饭级教程:2026年OpenClaw(原Moltbot)一键部署+接入飞书最佳实践
运维·服务器·网络·人工智能·飞书·京东云
代码游侠2 小时前
C语言核心概念复习——网络协议与TCP/IP
linux·运维·服务器·网络·算法
你真是饿了2 小时前
6.库制作与原理
linux·服务器
qq_12498707533 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计