当前位置:网站首页>XML简介
XML简介
2022-08-02 08:22:00 【虽有嘉肴】
XML简介
1.什么是XML
xml可以用来写出html,我们对xml进行约束,让他的根元素为,再让元素有和。
<大家好>
<好什么好 />
</大家好>
版本是1.0
2.应用场景
*保存数据
3.xml的语法结构
- 文档声明
- 元素:
<a>xxx</a> - 属性
- 实体
- CDATA段
- 处理指令
4.xml文档声明
以<?xml开头,以?>结束- 有三个属性:
- version=“1.0”,必须的
- encoding,可选的,默认值为utf-8
- standalone,可选的,默认值yes,表示文件是独立的。
- 必须在xml文件的第0行第0列出现。
5.元素
普通结构:开始标签、元素体、结束标签,例如:
〈hello>
world
</hello>
空元素结构:开始标签,没有元素体和结束标签,例如:<hello/>
元素体内容可以是文本,也可以子元素!例如:
〈a>
<b>
<c>
hel1o
</c>
</b>
</a>
<xxx>
<yyy>
hel1o
</yyy>
</xxx>
不能出现错误嵌套:
<a>
<b>
</a>
</b>
6.属性
属性是元素的一部分,它只能出现在元素的开始标签中。
一个完素可以有0~N个属性,其中属性的结构:
属性名="属性值",其中属性值必须使用单引或双引
多个属性中间用逗号分隔
<student nunber="xxxx" nane="zhangSan" age="23"/>
<student nnumber="xx">
<nane>----</name>
</student>
7.注释
以 结束。其中的内容是不会被解析器读取的!
不能以“—>”结束。
8.转义字符和CDATA段
(1)转义字符
在 XML 中,一些字符拥有特殊的意义。
如果您把字符"<" 放在 XML 元素中,会发生错误,这是因为解析器会把它当作新元素的开始。
这样会产生 XML 错误:
常见特殊符号:< > ' " &
为了避免这个错误,请用实体引用来代替 “<” 字符
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uFAnKUwv-1659398224083)(https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/0fe94353771e40dc8f4223a238edb4b5~tplv-k3u1fbpfcp-watermark.image?)]
(2)CDATA段
XML 文档中的所有文本均会被解析器解析,只有 CDATA 区段中的文本会被解析器忽略。<![CDATA[]]>
<code>
<![CDATA[
String nane="he11o";
int a = 18;
if(a > 100 && a < 1000){
}
]]>
</code>
9.处理指令
告诉解析器如何解析xml文档
10.格式良好的xml(语法正确)
- XML 文档必须有根元素
- XML 文档必须有关闭标签
- XML 标签对大小写敏感
- XML 元素必须被正确的嵌套
- XML 属性必须加引号
11.DTD约束(文档类型定义)
DTD(文档类型定义)的作用是定义XML文档的合法构建模块。
DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。
在DTD中定义元素,定义属性,然后让xml与这个DTD关联,这时xml中只能出现在DTD中定义的元素了。
DTD分类
内部DTD和外部DTD,其中外部DTD又可以分为SYSTEM(本地的)的PUBLIC(网上的)
内部DTD
- 放到xml中,文档声明下,根元素上,以“<!DOCTYPE 根元素名称[开头,以]”结束
- 内部DTD只对当前×ml文件有效。
总结
概念:发展历史,定义,作用,应用等。
XML语法:既然是一门语言,肯定有其对应的语法,知道了语法才知道怎么去用,去写代码。
DTD: 限定已经说得很明白了,文档类型的定义。其实你翻开那一章的引言读一读就大体明白了,你可以自定义标签,但有必要对文档规范一下。
XSD:同样的,引言第一句是:“XML模式同DTD一样是负责定义和描述XML文档结构和内容模式的”。再看发现它列举了好多DTD的缺点,所以这个东西是用来优化取代DTD的。
CSS和XSL:学过HTML的都知道,CSS是用来给标签加样式的。在引言中也可以知道:“如果希望添加一些额外的显示信息,这项功能就由样式表来完成”。所以说这个东西可以将标签在浏览器中进行显示。
在认为完框架以后,可以用简单的逻辑将它们串联起来。首先要知道xml是什么东西,在哪使用(定义);要用到它的话,该怎样去写这个文件;如果你对xml文件有更高的约束,用DTD或者XSD来规范文档。最后如果你想把XML当HTML使唤,它也是支持的。
边栏推荐
- Technology Cloud Report: To realize the metaverse, NVIDIA starts from building an infrastructure platform
- Seleniu screenshots code and assign name to the picture
- pnpm: Introduction
- Business Intelligence Platform BI Business Intelligence Analysis Platform How to Choose the Right Business Intelligence Platform BI
- Application and case analysis of CASA model and CENTURY model
- 自定义View实现波浪荡漾效果
- WebGPU 导入[1] - 入门常见问题与个人分享
- 文章解读 -- FlowNet3D:Learning Scene Flow in 3D Point Clouds
- uvm-phase机制
- Wang Xuegang - compiled shipment line file
猜你喜欢
![[OC学习笔记]Block三种类型](/img/40/edf59e6e68891ea7c9ab0481fe7bfc.png)
[OC学习笔记]Block三种类型

C语言基础_结构体

(Note) AXIS ACASIS DT-3608 Dual-bay Hard Disk Array Box RAID Setting

USACO美国信息学奥赛竞赛12月份开赛,中国学生备赛指南

Biotin-C6-amine|N-biotinyl-1,6-hexanediamine|CAS: 65953-56-2

OneinStack多版本PHP共存

EPSANet: An Efficient Pyramid Split Attention Block on Convolutional Neural Network

抓包工具Charles修改Response步骤

Postman download localization of installation and use

Figure robot software digital twin station oil and gas pipelines, oil and gas transportation control platform
随机推荐
二分类和多分类
EPSANet: An Efficient Pyramid Split Attention Block on Convolutional Neural Network
Hikari连接池源码解读
PyCharm使用教程(详细版 - 图文结合)
52. [Bool type input any non-0 value is not 1 version reason]
Redisson实现分布式锁
Biotin-C6-amine|N-生物素基-1,6-己二胺|CAS:65953-56-2
(Note)阿克西斯ACASIS DT-3608双盘位硬盘阵列盒RAID设置
MySQL Workbench 安装及使用
RestTemlate源码分析及工具类设计
[OC学习笔记]weak的实现原理
Biotin-EDA|CAS:111790-37-5| 乙二胺生物素
pnpm: Introduction
mysqldump --set-gtid-purged=OFF
Postman download localization of installation and use
prometheus monitoring mysql_galera cluster
Gorilla Mux 和 GORM 的使用方法
Detailed explanation of calculation commands in shell (expr, (()), $[], let, bc )
Ansible 学习总结(11)—— task 并行执行之 forks 与 serial 参数详解
Redis分布式锁入门