xml学习



一、xml Exdtensible Markup Language

1.
XML--可扩展的标记语言
HTML--超文本标记语言

IBM内部的文档格式
SGML--标准通用的标记语言
HTML,XML  W3C

2.XML的语法


二、xml组成部分:
1. PI---<?xml version="1.0"?>
2.元素
3.属性
4.注释<!--注释内容-->
5.实体定义
在XML 中,有 5 个预定义的实体引用:
&lt; <    小于
&gt;    >    大于
&amp;   &    和号
&apos;  '    单引号
&quot;  "    引号

6.CDATA

<![CDATA[此处写文本内容]]>

三、XML文档语法要求:
1.一个根元素
2.开始标签必须有结束标签<name></name>或<name/>
3.<name></Name> 大小写敏感
4.属性定义在开始标签中,属性值必须用引号
5.同一标签不能有同名属性
6.元素正确嵌套,标签名不能有空格

定义xml文档,描述个人信息(姓名,年龄,性别,
  联系方式,教育经历)

四、xml作用
1.xml用于显示(xml+xslt=html),XSLT是扩展样式表转换语言(Extensible Stylesheet Language Transformations)的简称。

2.xml做配置文件
  config.properties
3.xml用于通信,数据交换 

五。命名空间
解决标签名冲突的问题,增加前缀
xmlns:book=URI
<book:name></book:name>

URI--统一资源标识符(URL,URN)
     URL--统一资源定位符
     URN--统一资源命名
缺省空间:xmlns=URI

命名空间URI可以是虚拟的,不一定真实存在。


六,DTD  文档类型定义 (Document Type Definition)
     对XML文档的约束

语法:
  对元素:
     <!ELEMENT 元素名 内容模型>
例:
<!ELEMENT 个人信息 (基本信息,教育背景*,工作经历*)>
表示元素“个人信息”,含有子元素“基本信息”、“教育背景”和“工作经历”,其中子元素“教育背景”和“工作经历”可以有0个或若干个。
    
内容模型:
   EMPTY---元素内容模型为空
   #PCDATA---元素内容是文本内容
   子元素---有哪些子元素组成
   混合模型---内容模型由文本内容或者子元素构成

   , ---逗号分隔,子元素出现的顺序
   * ---元素出现的次数是0或者多次
   + ---元素出现的次数是1或者多次
   ? ---元素出现的次数是0或者1次
   | ---或者
   无符号 ---必须出现,并且只能一次


   对属性:
     <!ATTLIST 元素名 属性名 属性类型 缺省值>
    
     属性类型:
            CDATA -- 普通文本内容
            NMTOKEN --有限制的文本,只能有字符,数字,下划线,-,:组成
            NMTOKENS --多个NMTOKEN组成,空格分开
            ID -- 属性值唯一
            IDREF -- 属性值只能引用类型为ID的元素值
            IDREFS -- 多个类型为IDREF组成,空格分开
            枚举 --
    
     缺省值:
            #REQUIRED -- 属性必须出现
            #IMPLIED -- 属性可有可无
            #FIXED -- 固定值
            缺省值 -- 默认值

<!ENTITY 实体名称 实体内容>
引用:&实体名称;

<!ENTITY 实体名称 SYSTEM URI>
引用:&实体名称;


例:
<!ELEMENT 教育背景 (学校)>
<!ELEMENT 学校 (#PCDATA)>
<!ATTLIST 学校 入学日期 CDATA #REQUIRED
               毕业日期 CDATA #IMPLIED>


七,引用DTD

1.内部声明,写在xml文档中
  <!DOCTYPE 根元素名[
     <!ELEMENT book (#PCDATA)>
  ]>

2.外部声明
约束语法保存文档,扩展名 .dtd
在xml中引入dtd
  <!DOCTYPE 根元素名 SYSTEM "**.dtd">
例:
<!DOCTYPE 个人信息 SYSTEM "person.dtd">
 
3.引用网络资源
  <!DOCTYPE 根元素名 PUBLIC "描述" "dtd文件网络路径">

例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
此为网页html文件头,表示引用网络资源。
 
 
  xml文档:
      1.良构
      2.有效

练习:    
  定义DTD,基本信息(姓名,年龄,联系电话),
           教育背景(起始年月,终止年月,学校)
           工作经历(入职日期,离职日期,公司)
  根据DTD,定义有效的XML


八,xsd  XSD是指XML结构定义(XML Schemas Definition)
XML Schema 是DTD的替代品。XML Schema语言也就是XSD。
XML Schema描述了XML文档的结构。可以用一个指定的XML Schema来验证某个XML文档,以检查该XML文档是否符合其要求。文档设计者可以通过XML Schema指定一个XML文档所允许的结构和内容,并可据此检查一个XML文档是否是有效的。XML Schema本身是一个XML文档,它符合XML语法结构。可以用通用的XML解析器解析它。
  一个XML Schema会定义:文档中出现的元素、文档中出现的属性、子元素、子元素的数量、子元素的顺序、元素是否为空、元素和属性的数据类型、元素或属性的默认和固定值。
  XSD是DTD替代者的原因,一是据将来的条件可扩展,二是比DTD丰富和有用,三是用XML书写,四是支持数据类型,五是支持命名空间。
  XSD文件的后缀名为.xsd。
  XML Schema的优点:
  1) XML Schema基于XML,没有专门的语法
  2) XML可以象其他XML文件一样解析和处理
  3) XML Schema支持一系列的数据类型(int、float、Boolean、date等)
  4) XML Schema提供可扩充的数据模型。
  5) XML Schema支持综合命名空间
  6) XML Schema支持属性组。


你可能感兴趣的:(html,xml,教育)