• web学习-XML基础


    一 XML语法
    1 文档声明
    一个完整的XML文档中,必须包含一个XML文档的声明,并且声明位于第一行
    <? xml 版本信息[编码信息][文档独立信息]?>
    1.1 版本信息
    解析器对不同版本的XML文档的解析方式不同,文档声明是,必须知道版本信息
    如:<?xml version="1.0"?>
    1.2 文档编码声明
    即指定文档所使用的的编码方式,默认情况下采用UTF-8编码
    如:<?xml v ="1.0" encoding="gb2312"?>
    1.3 独立文档声明
    文档不依赖外部文档,在XML声明中,可以通过standalone="yes"声明;
    默认情况下,standalone为no,即文档依赖外部文档;

    2.元素定义
    在XML文档中,主体内容都市由元素(ELement)组成,元素一般由开始标记、属性
    元素内容组成。
    元素的名称可以包含字母、数字以及一些可见的字符,遵循以下的规范:
    (1)区分大小写;
    (2)元素名称中,不能包含空格、冒号、分号、逗号和尖括,元素不能以数字开头;
    (3)建议不使用'-';
    (4)建议不使用减号'-',而是用下划线'_'代替;
    (5)建议名称不使用"xml"作为开头;
    (6)建议名称的大小尽量采用统一标准。

    3 属性定义
    XML文档中,可以为元素定义属性,进而对元素进行进一步的描述和说明。

    4 注释
    语法格式:<!--注释信息-->,且遵循以下规范
    (1)注释不能出现在XML之前;
    (2)注释不能出现在标记中;
    (3)字符串"--"不能在注释中出现;
    (4)XML文档中,不允许以"->"结尾;
    (5)注释不能嵌套使用;

    5 特殊字符处理
    特殊字符 预定义实体 特殊字符 预定义实体
    & &amp; " &quot;
    < &It; ' &apos;
    > &gt;

    6 CDATA区
    CDATA:Character Data,字符数据,指不想被程序解析的一段原始数据;
    语法格式: <![cdata[ ]]>

    二 DTD语法

    1 简介
    DTD约束是XML约束模式语言,可以包含元素的定义、元素之间的定义、元素属性
    的定义以及实体和符号的定义。
    使用DTD文件约束XML文档,必须在XML文档中引入DTD文件,有以下两方式。
    1)<!DOCTYPE 根元素名称 SYSTEM "尾部文件的URI"> //引入本地的DTD文件
    2)<!DOCTYPE 根元素名称 PUNLIC "DTD名称" "尾部文件的URI"> //引入公共的DTD文件

    2 元素定义
    DTD定义中,DTD语法格式为:
    <!ELEMENT 元素名称 元素内容>
    (1)#PCDDATA:表示元素中嵌套的内容是普通文本字符串;
    (2)子元素:说明元素包含的元素,通常用一对圆括号()将元素中要嵌套的一组子元素括起来;
    (3)混合内容:表示元素既可以包含字符数组,也可以包含子元素;
    (4)EMPTY:表示该元素是一个空元素;
    (5)ANY:表示该元素可以包含任何形式的内容;
    (6)相关符号的定义:
    问号?:表示该对象可以出现0次或1次;
    星号*:表示该对象可以出现0次或多次;
    加号+:表示该对象可以出现0次或多次;
    竖线|:表示在列出的对象中选择1个;
    逗号,:表示对象必须按照指定的顺序出现;
    括号():用于给元素分组。

    3 属性定义
    DTD文档中,定义元素的同时,还可以为定义元素属性,其语法格式为:
    <!ATTLIST 元素名
    属性名1 属性类型 设置说明
    属性名2 属性类型 设置说明
    ...
    >
    3.1 设置说明——用来说明该属性是否必须出现
    (1)#REQUIRED:表示元素是必须的;
    (2)#IMPLIED:表示元素可以包含该属性,也可以不包含该属性;
    (3)#FIXED:表示一个固定的默认属性值,在XML文档中不能将该属性值设置为其他值;
    (4)默认值;表示一个固定的默认属性值,在XML文档中能将该属性值设置为其他值;
    3.2 属性类型——用来指定该属性属于那种类型
    (1)CDATA:表示属性类型是自发数据;
    (2)Enumerated:枚举类型,限制属性的取值只能从一个列表中选择;
    (3)ID:一个ID类型的属性用于唯一标识XML文档中一个元素;
    (4)IDREF和IDREFS:;属性值必须为一个已经存在的ID类型的属性值;
    (5)NMTOKEN和NMTOKENS:NMTOKEN表示由一个或多个字母、数字、句点、连字号、下划线组
    成的一个名称;NMTOKENS关键字表示一种列表类型。一个元素的NMOTKENS类型的属性可以是同一个
    XML文件中的另外多个NMTOKEN类型的属性的设置值,每个NMTOKEN属性值之间用空格分隔。
    (6)NOTATION:引入无法用XML格式组织的数据,如图像、声音、影像。
    第一种情况:<!NOTATION 符号名 SYSTEM "MINE"类型>
    第二种情况:<!NOTATION 符号名 SYSTEM "URL"路径名>

    4 实体定义——多个文档重复调用同样的内容,为了避免重复,可以定义实体
    1)引用实体
    引用实体的语法格式有两种:
    <!ENTITY 实体名称 "实体内容">
    <!ENTITY 实体名称 SYSTEM "外部XML文档的URL">
    实体的引用方式为:
    & 实体名称;
    2)参考实体
    参考实体只能被DTD文件自身使用,它的语法格式为:
    <!ENTITY % 实体名称 "实体内容">
    参考实体的引用方式为:
    %实体名称;

  • 相关阅读:
    Maven项目上总有一个小红叉问题
    Maven web项目创建
    MogileFS操作指令
    MogileFS安装
    mongo与spring集合
    linux上启动tomcat报错:Failed to read schema document 'http://www.springframework.org/schema/data/mongo/spring-mongo-2.0.xsd
    数据导入导出
    备份和恢复
    身份验证
    Mongo DB分片
  • 原文地址:https://www.cnblogs.com/tianliang94/p/10923848.html
Copyright © 2020-2023  润新知