xml技术基础
HTML语言
缺点 : 1.标签规定好,用户不能自定义
2.标签显示样式和数据绑定在一起,数据不可复用
3.html标签没有任何含义
XML语言(Extensible Markup Language)可扩展标记语言
设计宗旨:传输数据,而不是显示数据,但也可以像html那样显示(使用 PI处理指令)
用途:
1.程序之间数据通讯的标准(ajax中用到,xml,文本,json)
2.xml可以做配置文件使用(连接数据库等,php中经常用到)
3.xml可充当小型数据库
优势:直接操作文件比操作数据库更快
一些经常要人工配置的数据,如果放入数据库读取不合适(增加数据库的维护工作),则可以直接用xml做小型数据库,直接读取文件显然比读取数据库快(比如msn中保存聊天记录就是用xml文件)
特点:描述关系数据
语法:
XML文件
1.文档说明
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
注意: 文本编辑保存也为utf-8格式
XML声明放在XML文件的第一行
version 文档规范
encoding 文档字符编码
standalone 文档定义是否独立使用 yes no默认
2.元素
即标签:所有标签必须(开始和结束)成对出现
若不含内容可简写为 <a></a> <a/> 自闭合单标签
标签不可交叉嵌套 <a><b></a></b>
XML文档必须有一个根元素(根元素--一个完全包括文档中其他所有元素的元素)
对于XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容(一个字符)进行处理
<stu>小明</stu>
<stu>
小明
</stu>
两个意义不一样,PHP在解析XML时都会当作标签内容(一个字符)进行处理
命名规范:
XML元素可以包含字母数字等,不能以数字或_下划线开头
区分大小写 <age>25</Age> 非法
不能以xml开头
不能包含空格 < name>或<na me> 都非法
名称之间不能包含冒号(:)
属性
<stu no="num01"> 属性值用双引号或单引号分隔
如果属性值中包含单引号或双引号 可使用xml中5个预定义实体引用
< < 小于
> > 大于
& & 和号
' ' 单引号
" " 双引号
<student id="num"'01">效果<stu no="num"'01">
一个元素可以由多个属性
特定的属性名称在同一个元素标记中只能出现一次(不能在同一个标签中定义相同的属性名)
属性值不能包括<,>,& 若有可使用实体
注释
格式 <!--注释内容-->
1.注释内容中不要出现 --
2.不要把注释放在标记中间 <name<!--注释-->>Tom</name>
3.注释不能嵌套
4.可以在标记(标签)外的任何地方放注释
CDATA节
背景:有些内容不想让解析引擎解析执行,而当作原始内容处理,把整段文本解释为纯数字数据而不是标记的情况
包含大量< > & ' "" 等字符。可使用CDATA
html文件传输二进制数据(小的图片)都是特殊字符
CDATA节中的所有字符都会当作元素字符数据的常量原样输出。
语法:
<![CDATA[
内容...
]]>
不能嵌套
处理指令(processing instrution) 了解
像html一样处理显示,但xml最重要是作为数据
<?xml version="1.0" encoding="utf-8"?>
<!--xml也可以使用css来修饰使用pi-->
<?xml-stylesheet-type="text/css" href="class.css"?>
<!--使用css后就会按css样式修饰显示内容-->
<class>
<student id="num"'">
<name><!--优秀学生-->
杜杰
</name>
<sex>boy
</sex>28
<age>
</age>
</student>
</class>
XML文档格式规范
1.XML声明语句 <?xml version="1.0" encoding="utf-8"?>
2.必须有且只有一个根元素
3.标记大小写敏感
4.属性值用引号
5.标记成对出现
6.空标记关闭
7.元素正确嵌套
xml技术基础的更多相关文章
- 打造完美的xml技术解决方案(dom4j/xstream)
转: XML 技术是随着 Java 的发展而发展起来的.在 XML 出现之前对于简单的数据格式通常是存储在 ini 配置文件等文本文件中,复杂的格式则采用自定义的文件格式,因此对于每种文件格式都要有专 ...
- 【Java】Java XML 技术专题
XML 基础教程 XML 和 Java 技术 Java XML文档模型 JAXP(Java API for XML Parsing) StAX(Streaming API for XML) XJ(XM ...
- AOP技术基础
1.引言 2.AOP技术基础 3.Java平台AOP技术研究 4..Net平台AOP技术研究 2.1 AOP技术起源 AOP技术的诞生并不算晚,早在1990年开始,来自Xerox Palo Alto ...
- 《C#语言和数据库技术基础》单词必备
<C#语言和数据库技术基础> 第一章1..NET Framework 框架2.sharp 尖锐,强烈的3.application 应用程序4.devel ...
- JavaWeb开发技术基础概念回顾篇
JavaWeb开发技术基础概念回顾篇 第一章 动态网页开发技术概述 1.JSP技术:JSP是Java Server Page的缩写,指的是基于Java服务器端动态网页. 2.JSP的运行原理:当用户第 ...
- ajax技术基础详解
一.概述 1.什么是ajax 可以与服务器进行[异步]交互的技术,浏览器无需刷新 2.什么时候出现ajax? -- XMLHttp 微软 1999年微软公司发布IE5版本,内嵌了ajax技术 什么时候 ...
- XML技术思想
百科名片: 可扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语 ...
- AOP技术基础(转)
1.引言 2.AOP技术基础 3.Java平台AOP技术研究 4..Net平台AOP技术研究 2.1 AOP技术起源 AOP技术的诞生并不算晚,早在1990年开始,来自Xerox Palo Alto ...
- JSP Web第四章整理复习 JSP技术基础
P104 JSP简介 (1)基本概念:jsp技术.jsp.jsp网页组成 JSP技术基础java servlet和整个java体系的Web服务器端开发技术. JSP表示它是用java写的Web服务页面 ...
随机推荐
- C++中模板使用详解
转自:http://www.360doc.com/content/09/0403/17/799_3011262.shtml 1. 模板的概念. 我们已经学过重载(Overloading),对重载函数而 ...
- 混合模式程序集是针对“v1.1.4322”版的执行时生成的,在没有配置其它信息的情况下,无法在 4.0 执行时中载入该程序集。
看到一个kinect大牛编写的一个水果忍者的体感游戏版本号,让我为自己一直以来仅仅用现有的网页游戏来模拟kinect体感游戏控制感到羞愧,没办法.我还是菜鸟.学习一段后自己模仿星际大战这个游戏.自己写 ...
- Xutils 源码解析【转】
原文:http://my.oschina.net/u/1538627/blog/395098 目录[-] 1. 功能介绍 2. 详细设计 2.1 View模块 2.1.1 总体设计 2.1.2 流程图 ...
- dubbo资料
http://blog.csdn.net/morning99/article/details/40426781http://blog.csdn.net/ruishenh/article/details ...
- Python重写C语言程序100例--Part1
''' [程序1] 题目:有1.2.3.4个数字,能组成多少个互不同样且无反复数字的三位数?都是多少? 1.程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成全部的排列后再去 掉不满足条件 ...
- Ubuntu上架设PPPoE Server
一.安裝 PPPoE Server Software1)sudo apt-get install ppp2)rp-pppoe(非apt套件)wget -c http://www.roaringpeng ...
- android开发之使用上下文菜单
android中的上下文菜单类似于PC上的鼠标右键单击,不同的是android上没有鼠标这一概念,更谈不上右键单击,在android中,一般是长按某个View,调出上下文菜单.与OptionsMenu ...
- bootstrap系列整理
去年的九月份做第一版文档站时, 就开始尝试使用bootstrap ,由于当时对node 还一知半解,大部分精力放在nodejs上,bootstrap只是拿来就用,起步文档都没看: 当别人提到 Norm ...
- Mac系统Safari浏览器启动无图模式
有的时候我们用热点上网,图片的出现会消耗大量的流量,这时候就需要启动无图模式不加载图片. 步骤:启动Safari浏览器->偏好设置->高级->勾选“在菜单栏中显示“开发”菜单”-&g ...
- mono & apache install
1.red hat 6安装完后网卡是默认不启动的 作为双生兄弟的CENTOS同样如是 第一步 设置网卡开机启动 进入 路径此目录下修改网卡配置文件 如果网卡驱动正常 会有如下文件 只要修改 ifcfg ...