一、文档规则
  、区分大小写。
  、属性值必须加引号(单引号、双引号都可以),一般情况下建议使用使用双引号。
  、所有标记必须有结束符号。
  、所有空标记必须关闭。
  、必须有且仅有一根元素。
  、解析空白字符时,会按照实际内容输出,不会缩略。
  、特殊字符处理:
  字符  替换字符
  <    &lt;
  >    &gt;
  &    &amp;
  "    &quto;
  '    &apos;
  、标记名称约定:
  [] 可以包含字母、数字、其他字符。
  []不能以数字和下划线开头。
  []不能以xml或者Xml之类的字符开头。
  []不能包含空格 二、xml声明
  xml声明标准语句:<?xml version="1.0" encoding="GB2312" standalone="yes"?>
  强调:
  、“<?xml” 中的"<?"和"xml"中间不能有空格。
  、”?>"之前可以有空格,也可以没有。
  、enconding和standalone是可选属性,encoding默认值是"UTF-8",standalone默认值是"no"。
  、常见的编码方式有:
  简体中文:GB2312
  繁体中文 :BIG5
  西欧字符:UTF-,UTF-
  、standalone表示文档是否附带DTD文件。 三、xml属性
  因为数据既可以存储在子元素中也可以存储在属性中,那么何时用属性,何时用子元素,没有固定规则,但是建议:元数据应该以属性的方式存储,而数据本身应该以元素的形式存储。
  使用属性会引发以下问题:
  、属性不能包含多个值(子元素可以)。
  、属性不容易扩展。
  、属性不能描述结构(子元素可以)。
  、属性很难通过DTD进行测试。 四、命名空间
  声明命名空间俩种方式:
  、默认声明,所有元素不需要指定前缀,如:
  <schema xmlns="http://www.w3.org/2001/XMLschema">
  <element name="diguonianzhu" type="string"/>
  ……
  </schema>
  、明确声明,xmlns关键字与一个命名空间的URI的前缀相关联,所有元素都需要指定前缀,如:
  <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLschema">
  <xsd:element name="diguonianzhu" type="string"/>
     ……
  <xsd:/schema>
  强调:用来表示命名空间的URI并不被XML解析器调用,实际上并不去访问这个URI,它只是表示一个标识名字而已。 五、XML专用标记:CDATA
  CDATA的全称是Character DATA,即字符数据,它主要用来显示特殊字符,比如"<"。
  CDATA的语法格式为:
  <![CDATA[要显示的字符]]> 如:
  <?xml version="1.0"?>
  <data>
    <![CDATA[
      <ok alma!> by a&b!
    ]]>
  </data>
  强调:CDATA不能嵌套;要显示的字符中不能包含"]]>"。

XML 之 语法详解的更多相关文章

  1. XML DTD语法详解

    XML DTD详解   XML DTD详解 前情提要与本文内容介绍 前面的两篇XML相关博文: 第一篇是介绍格式正规的XML: 格式正规的XML:语法 属性 实体 处理指令 样式单 CDATA节 第二 ...

  2. crossdomain.xml的配置详解

    目录 1 简介 2 crossdomain.xml的配置详解 3 总结 1 简介 flash在跨域时唯一的限制策略就是crossdomain.xml文件,该文件限制了flash是否可以跨域读写数据以及 ...

  3. Thymeleaf3语法详解和实战

    Thymeleaf3语法详解 Thymeleaf是Spring boot推荐使用的模版引擎,除此之外常见的还有Freemarker和Jsp.Jsp应该是我们最早接触的模版引擎.而Freemarker工 ...

  4. Xpath语法详解

    1.简介 XPath是一门在XML和HTML文档中查找信息的语言,可以用来在XML和HTML文档中对元素和属性进行遍历 XPath的安装 Chrome插件XPath Helper 点Chrome浏览器 ...

  5. spring AspectJ切入点语法详解 记录以便查阅

    AspectJ切入点语法详解 6.5.1  Spring AOP支持的AspectJ切入点指示符 切入点指示符用来指示切入点表达式目的,,在Spring AOP中目前只有执行方法这一个连接点,Spri ...

  6. spring AOP 之四:@AspectJ切入点标识符语法详解

    @AspectJ相关文章 <spring AOP 之二:@AspectJ注解的3种配置> <spring AOP 之三:使用@AspectJ定义切入点> <spring ...

  7. 史上最全的maven pom.xml文件教程详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  8. Velocity魔法堂系列二:VTL语法详解

    一.前言 Velocity作为历史悠久的模板引擎不单单可以替代JSP作为Java Web的服务端网页模板引擎,而且可以作为普通文本的模板引擎来增强服务端程序文本处理能力.而且Velocity被移植到不 ...

  9. logback logback.xml常用配置详解(三)

    logback logback.xml常用配置详解 <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之 ...

随机推荐

  1. python3连接mysql--增删改查

    ps:MYSQLdb只适用于python2.x python3不支持MYSQLdb,取而代之的是pymysql 运行会报:ImportError:No module named 'MYSQLdb' i ...

  2. 伪奢侈品iPhone大降价,肉搏国产手机胜算几何?

    据国外媒体报道,苹果在中国降低iPhone价格的策略已收到明显的效果,自从1月11日正式调整价格以来,iPhone在苏宁电器平台上的销量飙升83%,而天猫上的销量也增长了76%,其中最受欢迎的机型是i ...

  3. 浏览器之本地缓存存储 localStorage 和 sessionStorage的区别以及用法

    区别: localStorage永久保存在浏览器  :sessionStorage在浏览器关闭之后存储的数据就会销毁 用法:两者用法差不多,但是取值有所不同 编辑页面逻辑代码为: 这是给 id=btn ...

  4. stm32CubeMx工程使用GCC编译

    软件: STM32CubeMx 5.0 GCC编译器 STM32 ST Link Utility 下载器:ST Link V2 1  安装gcc编译器 能编译ARM Cortex M核的GCC编译器下 ...

  5. 初级入门 --- 认识 WebGL

    WebGL 是什么? WebGL 是一组基于 JavaScript 语言的图形规范,浏览器厂商按照这组规范进行实现,为 Web 开发者提供一套3D图形相关的 API. 这些 API 能够让 Web 开 ...

  6. spring bean容器学习

    bean是Spring种最核心的东西 ,如果说Spring是个水桶的话,bean就是桶里面的水,桶里面没有水也就没有意义了. public class MyTestBean { private Str ...

  7. P10891089 狼人杀-简单版

    1089 狼人杀-简单版 (20分)   以下文字摘自<灵机一动·好玩的数学>:“狼人杀”游戏分为狼人.好人两大阵营.在一局“狼人杀”游戏中,1 号玩家说:“2 号是狼人”,2 号玩家说: ...

  8. POJ 3349:Snowflake Snow Snowflakes 六片雪花找相同的 哈希

    Snowflake Snow Snowflakes Time Limit: 4000MS   Memory Limit: 65536K Total Submissions: 35642   Accep ...

  9. GoJS实例1

    复制如下内容保存到空白的.html文件中,用浏览器打开即可查看效果 <!DOCTYPE html> <html> <head> <meta charset=& ...

  10. java中数组输出的方式

    方式1:遍历输出 public class Main { public static void main(String[] args) { int[] ns = { 1, 4, 9, 16, 25 } ...