zoukankan      html  css  js  c++  java
  • XML文档结构【转载】

    一,XML文档结构

     XML文档是由一组使用唯一名称标识的实体组成。也是由数据和描述数据的标记组成。
     文档的组成部分包括:声明,元素,注释,字符引用和处理命令。
     
    二,创建XML文档
     XML声明始终是任何XML文档的第一行。
     
     1,陈述XML声明:为XML文档匹配合适的解析器。
      
      XML声明语法:
      <? xml version = "XML版本号"  standalone = “no或yes” encoding = “UTF-8或UTF-16或GB2321或GBK”?>
       
       <?和?>:表处理指令的开始和结束;
       version :XML版本,默认1.0;
       standalone:是否使用外部声明;
       encoding:字符编码;
      
     2,创建根元素:有且只有一个,用于描述文档的功能。
      语法:
      <? xml version = "1.0" ?>
      <根元素名>
       根元素内容
      </根元素名>
        
     3,创建XML代码:创建自定义元素(elements)和属性(attributes)。
      1,元素是XML内容的基本单元,包含标签(tags)和内容。
      2,所有的XML元素必须合理包含嵌套。
      3,XML标记都是大小写敏感的。
      4,标记可以指定3种含义:结构的,语义的或样式的。
        结构指定文档中不同元素之间关系;
        语义将单个元素与文档之外的现实世界联系;
        样式指定如何现实一个元素;
      5,属性值必须使用引号""
       
       语法:
        <标签名 属性名 = “属性值”> 
         数据 
        </标签名>
        
    三,XML中的注释  
     语法:
     <!-- 这是一个注释 --> 
      
     1,注释文本不应包含“-”。
     2,不能在标签内使用,可用于标签集。
     3,不能放在实体声明中,也不能放在XML声明之前。
      
    四,处理指命
     为使用该XML文档的应用提供一则信息。
     
     格式:
     <? xml:应用名 指令信息 ?>
     
     位置在在XML声明和根元素之间
     在将一个样式表附加到XML文档中时,需要提供一个处理指令:
       <?xml version ="1.0" endcoding="GB2321"?>
       <?xml : stylesheet type = "text/xsl" href = "top.css"?>
       <根元素>数据</根元素>

    五,标签之间的字符数据分类
     1,PCDATA
      表示已解析的字符数据。
     2,CDATA
      表示不通过解析器parsing进行解析的文本。便于包含特殊字符。
      格式:
      <根元素>
       <![CDATA[ 
        <标记1>
         <子标记1>#$%特殊字符</子标记1> 
         <子标记2>$%^特殊字符</子标记2> 
          .....
        </标记1> 
       ]]>
       <标记2>
        ....
       </标记2>
      </根元素>
      
      注意:不可写为<![Cdata[ 或 <![Cdata[
      
    六,XML 对空白和换行的处理
     1,空白部分不会被解析器自动删除。
     2,新行总是被标识为 LF(Line Feed,换行)。
       在Windows应用程序中,文本中的新行通常标识为 CR, LF (carriage return, line feed,回车,换行)。
       在Unix应用程序中,新行通常标识为 LF。还有一些应用程序只使用CR来表示一个新行。

    七,实体
     1,实体是XML的存储单元,是用于定义常见文本的快捷方式的变量,代替字符数据。
     2,内部实体:仅存于声明的文档中;
        外部实体:使用标识符指向文档外的存储单元;
            系统(SYSTEM)外部实体:引用本地计算机或网络;
            公共(PUBLIC)外部实体:引用公共计算机或网络;
     3,实体按在文档出现位置分为:
      ①,一般实体:任何位置
        内部实体:
         <! ENTITY 实体名 "替换内容">
        外部实体:
         <!ENTITY 实体名  SYSTEM  "test.txt(替换文件名)">
         <!ENTITY 实体名  PUBLIC  "test.txt(替换文件名)">
      ②,参数实体:DTD中
        不能在文档中使用,只能在DTD中使用。
        <! ENTITY   %  实体名 "替换内容">
     4,实体的声明
      实体必须在文档DOCTYPE声明中声明
      语法:
       <?xml version = "1.0" endcoding = "gb2321"?>
       <!DOCTYPE   DOCTYPE名[
        实体声明
        ....
       ]>
       <根元素>
       </根元素>
       
     5,实体的引用:
      ①,一般实体:
       引用前必须声明该实体,可以在属性中引用内部实体。
        语法:
         &实体名;
        
        例子:
         ...
        <! ENTITY name "张三">
         ...
        <MSG>
         &name;
         <BODY>
          你好!
         </BODY>
         <FIRST>
          &name;
         </FIRST>
        </MSG>
        
      ②,参数实体:
       语法:
         %实体名;
     
    八,XML文档规范

     1,所有XML文档至少有一个元素。
     2,XML标签区分大小写。
     3,所有的XML文档标签必须有一个结束标记
     4,正确嵌套标签。
     5,标签命名规则:字符 下划线 冒号开头,由字符,数字,句号,冒号,下划线,连接符(-)组合,不能有空格,不以保留字开头。
     6,属性不能重复,值用引号分开。名字规则和标签相同。
     7,应验证文档。
     等

  • 相关阅读:
    第二章整理
    汇编实验二
    汇编实验一
    第一章整理
    第一部分 | 第1章 —— Hello Cocos2d-x
    返回 *this 的成员函数以及 const重载
    C++中的const
    680. Valid Palindrome II
    字典树
    单调队列
  • 原文地址:https://www.cnblogs.com/happylyyer/p/4254902.html
Copyright © 2011-2022 走看看