XMl简单语法笔记

XMl简单语法笔记

XML语法

首先一个xml文件分为如下几个部分:

  1. 文档声明
  2. 元素/标签
  3. 属性
  4. 注释
  5. CDATA区域(特殊字符)
  6. 处理指令(processing instruction)

(1)文档声明

<?xml version="1.0" encoding="UTF-8" standalone="yes ?>

 

在编写XML文档时,需要先使用文档声明,声明XML文档的类型

最简单的声明语法:

<?xml version =”1.0″?>

用encoding 属性说明文档的字符编码:

<?xml version = “1.0” encoding =”GB2312″ ?>

用standlone 属性说明文档是否独立

<?xml version = “1.0” encoding = “GB2312  standlone = “yes”?>

(2)元素/标签

  • XML元素指的是xml文件中出现的标签,一个标签分为开始标签和结束标签。   

     标签有如下几种书写形式。例如:

     包含标签体:<a> www.baidu.com</a>

     不包含标签体的<a></a> ,简写为</a>

  • 一个标签中可以嵌套若干子标签。但不允许交叉嵌套。

      交叉嵌套,例如。

              <a> welcome to <b>www.baidu.com</a></b>

  • 格式良好的XML文档必须有且仅有一个根标签,其它标签都是这个跟标签的子孙标签。
  • 对于xml标签中出现的所有空格和换行,xml解析程序都会当做标签内容进行处理。例如:下面两端内容的意义是不一样的
  • 由于空格和换行都作为原始内容被处理,所以使用换行和缩进等方式来让原文件中的内容清晰可读的”良好”书写习惯可能要被迫改变。

元素命名规范:一个XML元素可以包含字母、数字以及其它一些可见字符,但必须遵守下面的一些规范
①区分大小写,例如<P><p>是两个不同的标记。
②不能以数字或”_”(下划线)等标点字符开头。
③不能以XML(或XML、或Xml等)开头。
④不能包含空格
⑤名称中间不能包含冒号(:)。

(3)属性

  • 一个标签可以有多个属性,每个属性都有它自己的名称和取值,例如<input name="text">
  • 属性值一定要用双引号(")或单引号(')引起来。
  • 定义属性必须遵循与标签相同的命名规范。

多学一招,在xml技术中,标签属性所代表的信息。也可以被改成用子元素的形式来描述。例如:

<input>
		<name>text</name>
</input>

(4)注释

  • XML文件中注释采用:<!--注释内容-->
  • XML声明之前不能有注释,注释不能嵌套。

(5)CDATA区、特殊字符

 a、CDARA区

在编写xml文件时,有些内容,可能不想让解析引擎解析执行,而是当做原始内容处理,这些内容放在CDATA里面,对于cdata区域的内容,XMl解析程序不会处理,而是直接原封不动的输出。

		<![CDATA[
			<href>
				<br/>
			</href>
		]]>

b、特殊字符

特殊字符 替代符号
& &amp;
< &lt;
> &gt;
&quot;
&apos;

(6)处理指令(processing instruction)

  • 处理指令PI,用来指挥解析引擎如何解析XML文档内容。
  • 例如,在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。
<?xml-stylesheet type="text/css" href="1.css"?>
  • 处理指令必须以”<?“作为开头,以”?>“作为结尾,XML声明语句就是最常见的一种处理指令。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114774.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CSS实现文字两端对齐

    CSS实现文字两端对齐最近的项目遇到了这样的需求:(要求标题部分不管文字多少,都必须两端对齐)如下图:当时也没有多想直接使用‘&ensp;’进行代替,毕竟产品同学想快一点看到效果,不敢怠慢!不过到第二个页面就傻

    2022年7月3日
    20
  • Linux下视频流媒体服务器搭建详解「建议收藏」

    Linux下视频流媒体服务器搭建详解「建议收藏」目标用于搭建内网流媒体服务器支持视频的点播。背景用于支持培训网站中视频点拨功能,在培训网站总体方案中需要加入流媒体服务器,用于存储和传输视频资源。相关概念流媒体流媒体(StreamingMedia)是一种新兴的网络传输技术,在互联网上实时顺序地传输和播放视/音频等多媒体内容的连续时基数据流。流媒体技术包括流媒体数据采集、视/音频编解码、存储、传输、播放等领域。流媒体系统组成包括编码工具、流媒体数…

    2022年10月20日
    1
  • 2021年美赛A题思路详解

    2021年美赛A题思路详解2021年数模美赛A题思路详解题目分析思路详解由于和队友思路不一致,导致最后我的思路只算了前两问,而后几问用了我认为离题的PCA(主成分分析)的方法,我的建模思路没有得到完全实现,总体情况很不满意,特此写下这篇文章。题目分析从题目前面所提供的背景知识可以看出,C指出分解速率与菌丝伸长速率成正相关关系,我队友认为是线性关系而我认为是对数近似的关系。第二长图给了一个正比的关系,但是坐标却很容易理解错。这个moisturetrde-off不是湿度耐受性(moisturenichewidth),更

    2022年6月9日
    88
  • navicat 激活码【注册码】「建议收藏」

    navicat 激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    41
  • Git 常用命令

    Git 常用命令

    2021年9月17日
    48
  • 微博账号注册_不用手机号注册微博小号

    微博账号注册_不用手机号注册微博小号新浪微博开放平台:https://open.weibo.com/1.注册账号注册新浪微博账号进入首页。创建网站接入的应用:https://open.weibo.com/选择立即接入,进入到创建

    2022年8月5日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号