Web(4)XML基础

本文介绍了XML的定义、功能,如配置文件存储和网络传输,列举了部分标签集如CDF、SVG、MathML等,并详细讲解了XML的语法、文档结构、架构及常用的XML处理器,展示了如何在文档中正确使用DTD和Schema进行约束
摘要由CSDN通过智能技术生成

一.简介:

  概念:

          XML是可扩展标记语言(标签都是自定义的),就是提供框架,定义用于特定领域的标记语言时创建标记语言的规则,所以也叫做元标记语言。

         作为元标记语言,XML不包含标签,必须定义用于该标记语言的标签的标签集。

         XML文档的数据只有应用了某种样式表才能被浏览器显示。

功能:存储数据
            1. 配置文件
            2. 在网络中传输

二.一部分标签集

公共数据格式CDF:描述和储存标量数据的标签集。

可缩放矢量图形SVG:描述矢量图形

数学标记语言MathML:数学符号集合

化学标记语言CML:支持化学的标签集

GPX:描述GPS数据的标签集

 

三.语法

分为必须遵守的初级语法和XML架构规定的标签集和标签集顺序。以下主要介绍初级语法。

XML文档中最常见的是文档的数据元素,标记声明(是XML解析器的指令),处理指令(给处理文档中的数据的应用程序使用)。

文档从XML声明开始,用于标识XML文档,注明XML标准版本号,指定编码标准。

注释语法<!   >。

XML命名由字母或者下划线开始,然后可以包括数字,字符,英文句号。区分大小写,不限制长度。

定义一个单独的根元素,起始标签在第一行。其他元素必须嵌套在根元素中。

每个元素必须有结束标签。

不含数据内容的元素必须用<element_name />标签。

属性值必须使用引号(单双都可)引起来。

当涉及元素是图片时,使用特性引用,因为图片是二进制数据,XML只能包含文本。

特性不能模式结构,所以相关数据有子结构时使用嵌套元素。数据是父元素的子数据而不是父元素的相关信息时使用嵌套元素。

标识元素编号和名称使用特性。数据是父元素的相关信息而不是父元素的子数据时使用特性。

 

四.文档结构

辅助文件:一个规定语法规则,一个包含样式表。

文档由多个实体构成,便于管理同时使图片等信息使用二进制储存时成为独立实体。这些实体中,只有文档实体在物理上是储存于代表文档的文件中。文档实体还包含其他实体的引用。

1. 文档声明
            1. 格式:<?xml 属性列表 ?>
            2. 属性列表:
                * version:版本号,必须的属性
                * encoding:编码方式。告知解析引擎当前文档使用的字符集,默认值:ISO-8859-1
                * standalone:是否独立
                    * 取值:
                        * yes:不依赖其他文件
                        * no:依赖其他文件
        2. 指令(了解):结合css的
            * <?xml-stylesheet type="text/css" href="a.css" ?>
        3. 标签:标签名称自定义的
            * 规则:
                * 名称可以包含字母、数字以及其他的字符 
                * 名称不能以数字或者标点符号开始 
                * 名称不能以字母 xml(或者 XML、Xml 等等)开始 
                * 名称不能包含空格 

        4. 属性:
            id属性值唯一
        5. 文本:
            * CDATA区:在该区域中的数据会被原样展示
                * 格式:  <![CDATA[ 数据 ]]>

 

五.架构

* 约束:规定xml文档的书写规则
        * 作为框架的使用者(程序员):
            1. 能够在xml中引入约束文档
            2. 能够简单的读懂约束文档
        
        * 分类:
            1. DTD:一种简单的约束技术
            2. Schema:一种复杂的约束技术

* DTD:
            * 引入dtd文档到xml文档中
                * 内部dtd:将约束规则定义在xml文档中
                * 外部dtd:将约束的规则定义在外部的dtd文件中
                    * 本地:<!DOCTYPE 根标签名 SYSTEM "dtd文件的位置">
                    * 网络:<!DOCTYPE 根标签名 PUBLIC "dtd文件名字" "dtd文件的位置URL">

 * Schema:
            * 引入:
                1.填写xml文档的根元素
                2.引入xsi前缀.  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                3.引入xsd文件命名空间.  xsi:schemaLocation="http://www.itcast.cn/xml  student.xsd"
                4.为每一个xsd约束声明一个前缀,作为标识  xmlns="http://www.itcast.cn/xml" 

            <students   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xmlns="http://www.itcast.cn/xml"
                xsi:schemaLocation="http://www.itcast.cn/xml  student.xsd">
 

六.XML处理器

xml常见的解析器:
        1. JAXP:sun公司提供的解析器,支持dom和sax两种思想
        2. DOM4J:一款非常优秀的解析器
        3. Jsoup:jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
        4. PULL:Android操作系统内置的解析器,sax方式的。

 

 

             

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

<千繁/>

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值