现在的位置: 首页 > 综合 > 正文

XML(2)—-XML的基本常识

2018年04月15日 ⁄ 综合 ⁄ 共 2145字 ⁄ 字号 评论关闭

本文主要是介绍XML文档格式和XML的语法。

XML文档格式:

1.元素
XML文档内容 的基本单位。
语法格式:
<标签>文本内容</标签>
eg.
<姓名>zhanshenzhi2008</姓名>
无论文本内容多么的复杂,XML元素中还可以再嵌套别的元素,这样是相关元素构成等级机构。记住:XML是树结构 。

<employees>
  <employee>
    <name>zhanshenzhi2008</name>
    <salary>3100</salary>
  </employee>
  <employee>
    <name>lj</name>
    <salary>7000</salary>
   </employee>
</employees>

除了元素,XML文档能出现的有效对象:处理指令、注释、根元素、子元素、和属性。

2.处理指令
处理指令主要是给解析器提供信息,是其能够正确解释文档内容。还可以定义文档编码方式或者把一个样式单文件应用到XML文档上用以显示。
它的起始标示符:<?
结束标示符:?>
eg.

<?xml version="1.0"?>

或者

<?xml version="1.0" encoding="ISO-8859-1"?>

3.注释
语法格式:

<!--注释内容-->

4.根元素和子元素
如果一个元素从文件头的序言部分之后开始一直到文件尾,包括了文件中所有的数据信息,我们成之为根元素,被嵌套在里面的元素就是子元素。
以上的eg.中<employee>就是<employees> 的子元素。

5.属性

属性是对元素的进一步说明,它必须出现在起始标签中。
属性是以名称/取值对出现,并且属性名不能重复。
eg.
<salary currency=''US$''>2500</salary>
currency=“US$”就是salary的属性,并且属性值并需用引号,和HTML语法(可有可无)不同。

XML的语法

XML文档的基本结构有序言部分和一个根元素组成。
序言包括XML声明和DTD(或者是XMLSchema)。
将上面的例子加上如下的序言,就构成了一个完整的XML文档


<?xml version="1.0"?>
<!DOCTYPE employees SYSTEM "employees.dtd">
<employees>
  <employee>
    <name>zhanshenzhi2008</name>
    <salary>3100</salary>
  </employee>
  <employee>
    <name>lj</name>
    <salary>7000</salary>
   </employee>
</employees>

XML文档定义遵循 http://www.w3.org/TR/REC-xml
1.起始标签和结束标签应当匹配:结束标签必不可少的。
2.大小写应一致:XML对字母的大小写是敏感的。<employee>和<Employee>是完全不同的两个标签。
3.元素应当正确嵌套;子元素必须嵌套在父元素中。
下面是错误的:
<A><B></A><B>
正确的是
<A><B></B></A>
4.属性值必须用引号。

5.元素的属性名不能重复。

XML的名称空间

XML文档中很可能会定义许多名字相同而意义不同的元素或属性,尤其在把不同的XML文档合二为一时,更容易产生冲突。名称空间就是为了解决这个问题而提出的。它用URI(Uniform Resource Identifier,统一资源定位符)加以区别,是在XML文件的元素和属性中出现的所有名称的集合。
XML 命名空间属性被放置于元素的开始标签之中
语法格式:
xmlns:namespace-prefix="namespaceURI"
eg.现在有两个XML文档被一起使用,两个文档都有不同内容的<table>标签,此时就会发生冲突

<table>
   <tr>
   <td>hello</td>
   <td>good</td>
   </tr>
</table>
<table>
   <name>zhanshenzhi2008</name>
   <width>100</width>
   <length>160</length>
</table>

为了避免冲突,此时用命名空间,如下

<l:table xmlns:h="http://www.w3.org/TR/html4/">
   <l:tr>
   <l:td>hello</l:td>
   <l:td>good</l:td>
   </l:tr>
</l:table>
<j:table xmlns:f="http://www.w3school.com.cn/furniture">
   <j:name>zhanshenzhi2008</j:name>
   <j:width>100</j;width>
   <j;length>160</j;length>
</j;table>

注释:用于标示命名空间的地址不会被解析器用于查找信息。其惟一的作用是赋予命名空间一个惟一的名称。不过,很多公司常常会作为指针来使用命名空间指向实际存在的网页,这个网页包含关于命名空间的信息。请访问http://www.w3.org/TR/html4/。
默认的命名空间

<table xmlns:h="http://www.w3.org/TR/html4/">
   <tr>
   <td>hello</td>
   <td>good</td>
   </tr>
</table>

抱歉!评论已关闭.