xml语法

一.基本介绍

1.xml语言的根本目标在于描述从属关系的数据, 也常用作开发软件的配置文件, 规定模块的启动顺序. 

二.语法

1.文档声明:  <?xml version="1.0" encoding="UTF-8" standalone="yes/no" ?>  *必须写在第一列第一行

 *若文档中含有中文,必须ecoding指定编码形式 standalone属性说明文档是否独立

2.xml标签中所有的空格和换行都会当做标签内容进行处理

3.标签属性所代表的信息,可以用子元素的形式来表示

    eg. <input name="text">   =     <input><name>text</name></input>

5.xml语言允许用户可以自定义标签.

6.cdata区:该区域的内容不会被xml解析程序处理,而是直接原封不动的输出

    <![CDATA[内容]]>

7.处理指令:简称pi,用来指挥解析引擎如何解析xml文档内容

    格式<?内容?>

    eg.用xml-stylesheet指令应用css   <?xml-stylesheet type="text/css" href="-"?>

三.xml约束

1.定义:编写另外一个文档来约束xml书写规范

2.常用约束技术:DTD Schema

四.DTD

1)元素声明    eg 书.dtd

<!ELEMENT 书架(书+)>    ------在书架标签中可放一本或多本书

<!ELEMENT 书(作者,书名,售价)>  -------在书中可放作者.书名.售价

<!ELEMENT 作者(#PCDATA)>--------只能放字符串

<!ELEMENT 猫 ANY>----可以放任何内容

<!ELEMENT 狗 EMPTY>-----为空元素

   元素内容: , 分割,则出现顺序必须与声明一致

                 | 分割,表示任选其一,即只能出现一次

                +:一次或多次    ?:零次或一次    *:零次或多次

2)属性定义  

<!ATTLIST 元素名

    属性名1 属性值类型 设置说明

    属性名2......>

 属性值类型: CDATA   字符串   

                 ENUMERATED   eg.<!ATTLIST 肉 品种 (鸡肉|牛肉|羊肉) "鸡肉">

                            为<肉>设置品种属性,可选值为三种肉的一种,若<肉/>则品种为鸡肉

                 id  表示每个标签该属性的值为唯一,值不要以数字开头.

设置说明:  #REQUIRED  必须设定                #FIXED 属性取固定值,xml中不能设置

               #IMPLIED    可选                        默认值:直接写值,xml中可设可不设,不设遵循默认

3)实体  

    A.引用实体 :  定义:<!ENTITY 实体名称 "实体内容">   (相当于给变量赋字符串)

                      引用: &实体名称;

   B.参数实体:参数实体被dtd文档自身使用

                    定义: <!ENTITY % 实体名称 "实体内容">

                    应用:%实体名称;

4).xml文档指定遵循dtd文件语句:  <!DOCTYPE 文档根节点 SYSTEM "dtd文件名.dtd">----引用文档在本地

                                              <!DOCTYPE 文档根节点 PUBLIC "dtd名称" "dtd文件的url">---引用公共文件

                                              <!DOCTYPE 文档根节点 [.....]>---在xml文件中声明dtd

5).校验xml是否遵从指定dtd文件:eclipse自动校验

五.schema

1.schema符合xml语法结构,后缀名.xsd, 所以可以用dom,sax解析

2.scheme比did支持更多的数据类型,并支持用户自定义新的数据类型. 但它不能像dtd一样定义实体








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值