日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

xml学习4-dtd

發(fā)布時間:2023/12/10 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 xml学习4-dtd 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、DTD元素的定義

<?xml version="1.0" encoding="gb2312"?>
<!--*表示0或者多個? +表示至少要有一個? ?表示0個或者一個 內(nèi)容模型? |表示只能包含分隔開中的一個
?,表示序列? 下面是DTD元素的聲明???? #PCDATA 表示字符數(shù)據(jù)?? EMPTY表示 空元素???? ANY 表示該元素可以包含
任意類型的字符數(shù)據(jù)和子元素,只要符合xml規(guī)則就行。在實際使用時候應(yīng)該避免使用ANY? 明確的DTD 有助于我們理解文檔
<!ELEMENT? employee (#PCDATA | name*)> 表示混合元素 就是employee中既可以包含子元素 也可以包含文本 但是必須是0個或者多個*
下面是DTD 元素定義
-->
<!DOCTYPE company[
<!ELEMENT company (employee)>?????????????????????????????????????? //表示compant元素下包含 employee元素
<!ELEMENT employee (name,age,sex,salary,interest*)>?? //employee元素包含? name? age sex? salary? interest元素?? interest元素可以使 0個或者多個
<!ELEMENT salary (cash | credit_card)>???????????????????????? //salary 方式有? cash? 或者 credit_card中的一種
<!ELEMENT cash (#PCDATA)>????????????????????????????????????????? //cash 包含的數(shù)據(jù)是字符一下雷同
<!ELEMENT credit_card (#PCDATA)>??
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT sex (#PCDATA)>?
<!ELEMENT interest (#PCDATA)>?
?]>
?<company>
?<employee>
??? <name>zhangsan</name>??
??? <age>15</age>
??? <sex>男</sex>
??? <salary>
??? <credit_card>2000</credit_card>
??? </salary>
??? <interest>basketball</interest>
??? <interest>football</interest>
??? <interest>volleyball</interest>
?</employee>?
?</company>

?

2、DTD元素的定義? DTD屬性用來限制xml屬性

DTD元素采用

<!ATTLIST? 元素名

屬性名1? CDATA?? #REUIRED??????? //屬性必須設(shè)置

屬性名2? CDATA?? #IMPLIED?? //表示屬性可以設(shè)置也可以不設(shè)置?? #FIXED表示值固定 不能設(shè)置

>

如下 :

<!ATTLIST? employee

name?? CDATA?? #REQUIRED??? //name值必須被設(shè)置?

sex???? CDATA? "女"???????????????????? //使用默認(rèn)值 可以設(shè)置或者不設(shè)置

age?? CDATA? #FIXED? "15"????? //值是固定的不可以設(shè)置

interest?? CDATA?? #IMPLIED?? //愛好可有可無?

>

元素的類型 :我們知道CDATA表示 字符型那么? ENUMRATED 枚舉類型用什么表示呢?

(a |? b |?c | d)? 這就表示枚舉類型 。

<!ATTLIST? emploree

name? (a | b | c | d)? "a"

>?

下面是一個應(yīng)用

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE? employee[?
<!ELEMENT employee (name,salary)>
<!ATTLIST salary way (check|cash) #REQUIRED>
<!ELEMENT salary (#PCDATA)>
<!ELEMENT name (#PCDATA)>
]>
<employee>
<name>xiaowang</name>
<salary way="cash"></salary>
</employee>

?

ID 這個類型用于 唯一的標(biāo)識xml中的某個元素,這樣的屬性 每個元素的屬性 都不恩能夠相同? 。

?

?

3、DTD的實體引用 就是像html中的轉(zhuǎn)義字符一樣使用 ,只不過這個實體引用時我們自己定義的 ,

實體是用于定義引用普通文本或特殊字符的快捷方式的變量。

實體引用是對實體的引用。

實體可在內(nèi)部或外部進(jìn)行聲明。

一個內(nèi)部實體聲明

語法:

<!ENTITY 實體名稱 "實體的值">

例子:

DTD 例子:

<!ENTITY writer "Bill Gates"> <!ENTITY copyright "Copyright W3School.com.cn">

XML 例子:

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

注釋: 一個實體由三部分構(gòu)成: 一個和號 (&), 一個實體名稱, 以及一個分號 (;)。

一個外部實體聲明

語法:

<!ENTITY 實體名稱 SYSTEM "URI/URL">

例子:

DTD 例子:

<!ENTITY writer SYSTEM "http://www.w3school.com.cn/dtd/entities.dtd"> <!ENTITY copyright SYSTEM "http://www.w3school.com.cn/dtd/entities.dtd">

XML 例子:

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

?

?

?

?

?

?

?

?

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/mosatsu/archive/2012/04/08/2466784.html

總結(jié)

以上是生活随笔為你收集整理的xml学习4-dtd的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。