初识XML

 

XML是可扩展的标记语言。

XML与HTML的区别主要是:

1.HTML的标记是固定好的,XML是可扩展的标记语言,标记是可以自定义的。

2.HTML用来显示内容布局、美化、显示数据。 XML用于携带数据,设计宗旨是包含和传输数据。

所以说XML的主要作用是:

    作为系统的配置文件

    Ajax中传输数据

    Web Services中传输数据

    异构平台的数据交换与整合

下面举一个XML实例:

<?xml version="1.0" encoding="utf-8"?>
<书籍列表>
   <计算机书籍>
      <书名>XML的今生今世</书名>
      <价格>66.66</价格>
      <简要介绍>该书详细描写XML的从出生到衰老的整个过程</简要介绍>
   </计算机书籍>
</书籍列表>


 

为避免把字符数据和标签中需要用到的一些特殊符号相混淆,XML还提供了实体应用。(当想要前面的字符时,就应该用后面的实体引用代替),例:

          &--&amp;

          >--&gt;

          <--&lt;

          "--&quot;

          '--&apos;

CDATA与注释:

在CDATA标签下所有的标签、实体引用都不起作用,而是被当做字符数据看待。如:

<![CDATA[文本内容]]>

注释:<!--这是注释-->

 

为了正确交换数据,XML文件需要确定的结构。DTD(Document Type Definition)定义了文件的结构,为XML文件提供语法与规则。

 

DTD与XML的内容可以分别放在不同的文件中,也就是外部DTD。如:

book.dtd:

<?xml version="1.0" encoding="utf-8"?>
<!ELEMENT 书籍列表(计算机书籍)*>
<!ELEMENT 计算机书籍(书名,价格,简要介绍)>
<!ELEMENT 书名(#PCDATA)>
<!ELEMENT 价格(#PCDATA)>
<!ELEMENT 简要介绍(#PCDATA)>

使用外部DTD文件的XML文件:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE 书籍列表 SYSTEM "book.dtd">
<书籍列表>
   <计算机书籍>
      <书名>XML的今生今世</书名>
      <价格>66.66</价格>
      <简要介绍>该书详细描写XML的从出生到衰老的整个过程</简要介绍>
   </计算机书籍>
</书籍列表>


 

DTD中元素声明的语法:

例子:

<!ELEMENT  书名 (#PCDATA)>

 

<!ELEMENT 计算机书籍 (书名,价格,简要介绍)>

 

<!ELEMENT br EMPTY>         这个例子是声明了一个空元素,在XML中是<br/>

 

<!ELEMENT 元素名称 ANY>         表示带有任何内容的元素

 

声明只出现一次的元素:<!ELEMENT 书籍列表 (计算机书籍)>

 

声明最少出现一次的元素:<!ELEMENT 书籍列表 (计算机书籍+)>

 

出现零次或多次的元素:<!ELEMENT 书籍列表 (计算机书籍*)>

 

声明出现零次或一次的元素:<!ELEMENT 书籍列表 (计算机书籍?)>

 

声明或:<!ELEMENT 书籍列表 (计算机书籍|文学书籍)>

 

声明混合型的内容:<!ELEMENT 书籍列表 (#PCDATA|计算机书籍)*>

 

DTD-属性:通过ATTLIST来进行声明

语法:<!ATTLIST 元素名称 属性名称 属性类型 默认值>

例子:DTD中:<!ATTLIST payment type CDATA "cash">

            XML中:<payment type="cash">

 

DTD-实体

内部实体声明的语法:<!ENTITY 实体名称 "实体的值">

例子:

    DTD中:

    <!ENTITY writer "Bill Gates">

    <!ENTITY copyright "Copyright jobedu.com.cn">

    XML中:

    <author>&writer;&copyright;</author>

 

外部实体声明语法:

<!ENTITY 实体名称 SYSTEM"URI/URL">

例子:

     DTD中:

    <!ENTITY writer SYSTEM "http:jobedu.com.cn/dtd/person.dtd">

    XML中:

    <author>&writer;</author>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值