XML的基础(概念和语法)

xml html 概念 异同 

XML全称为extensible markup language,即可扩展标记语言,简单理解为可预定义标签的编程语言。它与HTML(超文本标记语言)类似,但它主要用于数据存储和传输数据,而HMTL用于显示数据.

可概括为以下几点

1.名称是可扩展标记语言,理解为可预定义标签
2.它与HTML(超文本标记语言)类似
3.主要用于存储和传输数据
4.具有自我描述性,自定义标签名即其功能特性,如标签名为student的标签,它的功能就是存储或传输一个学生信息
5.但不作为,即纯粹为数据内容,需要其他程序和软件进行使用。

与HTML的异同

同:与html结构类似,都是标签标记数据的语言.

异:

  1. XML可自定义标签,HTML不能
  2. 处理数据的方式不同,XML用于存储和传输数据,而HTML负责显示数据
  3. XML与HTML没有上下级关系。

XML的语法

结构: 一种反转的树形结构,从根部到叶子

<root>         <!-- 根结点-->
<child> <!-- 子结点-->
<subchild> <!-- 根节点的孙子结点,子节点的子节点-->
.....
</subchild>
</child>
<child> <!-- 上一个child的兄弟结点-->
<subchild>
.....
</subchild>
</child>
</root>

顾名思义,XML的结构必含根结点/根元素,该结点为所有结点的父节点。它可有可没有子结点。子结点可再有子节点,也可有兄弟结点。

语法

  1. XML稳定以<?xml version="1.0" encoding="ISO-8859-1"?> 开头,定义XML的版本号和所采用的字符集;
  2. XML文档必有根节点,参照结构
  3. 标签以成双成对的形式出现,即有开始和结束标签<start></start>,非双标签不是XML元素;
  4. XML大小写敏感,即标签内容如果不相同,即为其他标签,如<start> <Start>,所以必须使用相同的大小写来编写开始标签和结束标签;
  5. 标签需要被正确嵌套,即子标签的开始和关闭必须在父标签内进行打开和关闭
<root>                                    <root>
<child> <!--正确> <child> <!--错误>
</child> </root>
</root> </child>
  1. 特殊语义,由于<>被用作语法标签的符号,所以文本内容的小于号就失效了(大于号还保留语义),故此要引入特殊符号&lt;来表示该符号。
错误范例,会产生错误
<sample> his age < than me </sample>
正确范例
<sample> his age ;&lt than me </sample>

7.其他特殊语义关键词还有;&gt(大于,great than) ;&apos(撇号,apstrophe) ;&quto(双引号,quotation) ;&amp(与号,ampersand);

8.标签内的属性需要加引号(单引双引都可)

<root src="xx/xx">
</root>

注:第7,8条容易引起歧义,即标签内<"">的引号没失效,无需使用特殊语义,文本内容<test> ;quto文本内容<test>的引号需要特殊语义来表示。

9.注释,单行以<!-- 和 -->来对代码进行注释说明

<!-- 注释内容 -->

XML的基础之一(概念和语法)的更多相关文章

  1. 使用XML的五种场合,XML基本规则,XML的术语,结构与语法

    在很多研讨会和培训班上我遇到过许多人,他们还不明白为什么要使用XML也不知道如何 在他们的应用中使用XML.一些来自诸如Gartner公司的报告建议说,商业公司不能再做 局外人了,不能对XML置之不理 ...

  2. 学习 JavaScript (三)核心概念:语法、变量、数据类型

    JavaScript 的核心概念主要由语法.变量.数据类型.操作符.语句.函数组成,这篇文章主要讲解的是前面三个,后面三个下一篇文章再讲解. 01 语法 熟悉 JavaScript 历史的人应该都知道 ...

  3. Java基础-正则表达式(Regular Expression)语法规则简介

    Java基础-正则表达式(Regular Expression)语法规则简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.正则表达式的概念 正则表达式(Regular Exp ...

  4. XML语言基础1

    这学期选修了XML技术这门课,没有发课本,于是参考了W3school教程,整理一下上课的内容. 1.XML简介 XML是一种标记语言,很类似HTML,它不是对HTML的替代,而是对HTML的补充.在大 ...

  5. C#中区别多态、重载、重写的概念和语法结构

    C#中区别多态.重载.重写的概念和语法结构 重写是指重写基类的方法,在基类中的方法必须有修饰符virtual,而在子类的方法中必须指明override. 格式: 基类中: public virtual ...

  6. Python 3 集合基础和概念!

    Python 3 集合基础和概念! Python 3中,集合是无序的,所以不能进行切片和索引操作. 创建集合有两个方法:set()方法创建的集合是可变的,可被迭代的:frozenset()方法创建的集 ...

  7. net必问的面试题系列之基本概念和语法

    上个月离职了,这几天整理了一些常见的面试题,整理成一个系列给大家分享一下,机会是给有准备的人,面试造火箭,工作拧螺丝,不慌,共勉. 1.net必问的面试题系列之基本概念和语法 2.net必问的面试题系 ...

  8. HTML基础-------最初概念以及相关语法

    HTML概念以及相关语法 HTML HTML是一种类似于(c,java,c++)之类的语言,他是用来描述网页的一种语言.通过各种标签所代表的语义来构建出一个网页,再通过浏览器的渲染功能来实现该网页的各 ...

  9. vue的基础概念和语法01

    vue的特点和web开发中的常见高级功能 解耦视图和数据 可复用的组件 前端路由技术 状态管理 虚拟DOM 数据响应式 不是所有元素操作都Vue都会监听并实现数据响应式 //push方法:追加 thi ...

随机推荐

  1. Centos7 yum安装LNMP

    1.Centos7系统库中默认是没有nginx的rpn包的,所以我们需要先更新下rpm依赖库 (1):使用yum安装nginx,安装nginx库 rpm -Uvh http://nginx.org/p ...

  2. RabbitMq学习2-php命令行模式测试rabbitmq

    一.RabbitMQ结构 1.几个概念说明:       Broker:简单来说就是消息队列服务器实体. Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列. Queue:消息队列载体 ...

  3. js模拟自动化测试 -- 多用户登录

    1.核心登录提交方法 /** * 动态表单提交方法 * @param url{string}: 提交地址 * @param params{object}: 要提交的表单数据 **/ function ...

  4. css重置的各种版本总结

    个人手机端常用到的: @charset "utf-8"; body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ...

  5. ubuntu系统更新命令

    一.图形界面更新升级 1.点击”系统设置“,打开“软件和更新”,切到“更新”栏目进行更新设置. 2.可以通过软件更新器进行更新升级自己想要更新的 二.命令方式更新升级 1.先解锁 ps -e|grep ...

  6. RNN, LSTM, GRU cells

    项目需要,先简记cell,有时间再写具体改进原因 RNN cell LSTM cell: GRU cell: reference: 1.https://towardsdatascience.com/a ...

  7. windows 桌面背景设置实例

    应用SystemParametersInfo函数可以获取和设置数量众多的windows系统参数.这个小程序就是运用了SystemParametersInfo函数来设置桌面的墙纸背景,而且程序可以让我们 ...

  8. Sql 字符串自增列的实现

    ALTER FUNCTION [dbo].[f_NextID](@tabname VARCHAR()) RETURNS ) AS BEGIN DECLARE @charval CHAR() IF LO ...

  9. 前端开发HTML&css入门——伪类选择器和一些特殊的选择器

    伪类和伪元素 有时候,你需要选择本身没有标签,但是仍然易于识别的网页部位,比如段落首行或鼠标滑过的连接.CSS为他们提供一些选择器:伪类和伪元素. 常用的一些伪类选择器: :link :visited ...

  10. ukhj

    SQL解析顺序: 七种Join图: