?? 0303-0301.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0071)http://162.105.170.55/ASPs/GetLearningArticleTemp.asp?section=0303-0301 -->
<HTML><HEAD><TITLE>XML中國論壇 - 初學進階 - 3.3.3.1 命名空間作用于元素</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>TABLE {
FONT-SIZE: 9pt; COLOR: black; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"
}
.pt9 {
FONT-SIZE: 9pt; COLOR: black; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"
}
.pt10 {
FONT-WEIGHT: 700; FONT-SIZE: 10pt; LINE-HEIGHT: 18pt; FONT-FAMILY: "宋體"
}
.TempOutline {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; COLOR: #666666; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.TempOutline1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; COLOR: #666666; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.Outline11 {
FONT-SIZE: 9pt; MARGIN-LEFT: 38pt; TEXT-INDENT: -50pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage0 {
FONT-SIZE: 9pt; MARGIN-LEFT: 15pt; TEXT-INDENT: -28pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage1 {
FONT-SIZE: 9pt; MARGIN-LEFT: 24pt; TEXT-INDENT: -36pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage11 {
FONT-SIZE: 9pt; MARGIN-LEFT: 38pt; TEXT-INDENT: -50pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
.passage111 {
FONT-SIZE: 9pt; MARGIN-LEFT: 51pt; TEXT-INDENT: -64pt; LINE-HEIGHT: 15pt; FONT-FAMILY: "宋體"; TEXT-DECORATION: none
}
</STYLE>
<META content="Microsoft FrontPage 5.0" name=GENERATOR></HEAD>
<BODY vLink=#000000 aLink=#000000 link=#000000 leftMargin=0 topMargin=0
onload=""><!-- 以下為主體內(nèi)容 -->
<div align="center">
<center>
<TABLE width="100%" border=0 style="border-collapse: collapse" bordercolor="#111111" cellpadding="0" cellspacing="0">
<TBODY>
<TR vAlign=top>
<TD width=42 rowSpan=2></TD>
<TD vAlign=center width="507" >
<p align="center"><IMG height=33
src="image/title_learner.gif" width=226></TD>
<TD width=37 rowSpan=2></TD>
</TR>
<TR vAlign=top>
<TD width="507" ><!-- 正文內(nèi)容 -->
<DIV class=pt10><B>3.3.3.1 命名空間作用于元素</B></DIV>
<DIV></DIV><BR>
<DIV class=pt9>
<P>有了命名空間的聲明,又有了命名空間下的合法名稱,下面我們就可以在元素標記和屬性中享受命名空間帶來的一系列便利了。我們先來說說元素標記中對于命名空間的使用。</P>
<P>合法名稱可以用于起始元素標記、結(jié)束元素標記和空元素標記。合法名稱中的前綴部分必須是一個已經(jīng)聲明過的命名空間前綴,聲明的位置,既可以在使用該前綴的起始元素的標記處,也可以是引用處的父輩元素標記處。命名空間聲明是作用到說明它的元素和該元素的所有子元素的,除非被其它命名空間聲明所覆蓋。例如:</P>
<DIV align=center>
<CENTER>
<TABLE width="80%" border=1>
<TBODY>
<TR>
<TD width="100%"><聯(lián)系人:聯(lián)系人列表 xmlns:聯(lián)系人 ="聯(lián)系人列表.dtd"><BR>
<聯(lián)系人:聯(lián)系人><BR>
<聯(lián)系人:姓名>張三</聯(lián)系人:姓名><BR>
<聯(lián)系人:ID>001</聯(lián)系人:ID><BR>
<聯(lián)系人:公司>A公司</聯(lián)系人:公司><BR>
<聯(lián)系人:EMAIL>zhang@aaa.com</聯(lián)系人:EMAIL><BR>
<聯(lián)系人:電話>(010)62345678</聯(lián)系人:電話><BR>
<聯(lián)系人:地址><BR>
<聯(lián)系人:街道>五街1234號</聯(lián)系人:街道><BR>
<聯(lián)系人:城市>北京市</聯(lián)系人:城市><BR>
<聯(lián)系人:省份>北京</聯(lián)系人:省份><BR>
</聯(lián)系人:地址><BR> <聯(lián)系人:直接上級 xmlns:企業(yè)經(jīng)理
="企業(yè)經(jīng)理.dtd"><BR>
<企業(yè)經(jīng)理:姓名>王五</企業(yè)經(jīng)理:姓名><BR>
<企業(yè)經(jīng)理:電話><BR>
<企業(yè)經(jīng)理:秘書電話>(010)62345678</企業(yè)經(jīng)理:秘書電話><BR>
<企業(yè)經(jīng)理:手機>13601234567</企業(yè)經(jīng)理:手機><BR> </企業(yè)經(jīng)理:電話><BR>
</聯(lián)系人:直接上級><BR>
</聯(lián)系人:聯(lián)系人><BR></聯(lián)系人:聯(lián)系人列表></TD></TR></TBODY></TABLE></CENTER></DIV>
<P>這個例子的表達效果和3.3.2.1節(jié)中的例子是相同的,命名空間"聯(lián)系人列表.dtd"的作用域,在除"直接上級"元素范圍以外的任何地方;而命名空間"企業(yè)經(jīng)理.dtd"的作用域在"直接上級"的各個子元素中。<BR><BR>同樣,缺省的命名空間是作用到聲明它的元素和該元素的子元素的。當然,這里所說的元素都是那些沒有命名空間前綴的元素,有了前綴的元素仍然遵照前綴所指示的命名空間。</P>
<P>在下面例子中,同時含有一個缺省的和一個非缺省的命名空間,它的表達效果和上面的例子是相同的。</P>
<DIV align=center>
<CENTER>
<TABLE width="80%" border=1>
<TBODY>
<TR>
<TD width="100%"><聯(lián)系人列表 xmlns="聯(lián)系人列表.dtd" xmlns:企業(yè)經(jīng)理
="企業(yè)經(jīng)理.dtd"><BR> <聯(lián)系人><BR>
<姓名>張三</姓名><BR>
<ID>001</ID><BR>
<公司>A公司</公司><BR>
<EMAIL>zhang@aaa.com</EMAIL><BR>
<電話>(010)62345678</電話><BR>
<地址><BR>
<街道>五街1234號</街道><BR>
<城市>北京市</城市><BR>
<省份>北京</省份><BR>
</地址><BR>
<直接上級><BR>
<企業(yè)經(jīng)理:姓名>王五</企業(yè)經(jīng)理:姓名><BR>
<企業(yè)經(jīng)理:電話><BR>
<企業(yè)經(jīng)理:秘書電話>(010)62345678</企業(yè)經(jīng)理:秘書電話><BR>
<企業(yè)經(jīng)理:手機>13601234567</企業(yè)經(jīng)理:手機><BR>
</企業(yè)經(jīng)理:電話><BR>
</直接上級><BR>
</聯(lián)系人><BR></聯(lián)系人列表></TD></TR></TBODY></TABLE></CENTER></DIV>
<P>需要注意的是,在一個缺省的命名空間聲明中,URI引用可以是空,這在直接方式的命名空間聲明中是不允許的。當URI引用為空串時,在聲明作用域范圍內(nèi)沒有前綴的元素,被認為是不在任何命名空間作用域范圍內(nèi)的。下面是一個合法的XML文件,"直接上級"元素的兩個子元素不屬于任何命名空間,因此,它們也不屬于聯(lián)系人列表所規(guī)定的命名空間,和前面的“姓名”和“電話”不是一回事。</P>
<DIV align=center>
<CENTER>
<TABLE width="80%" border=1>
<TBODY>
<TR>
<TD width="100%"><聯(lián)系人列表 xmlns="聯(lián)系人列表.dtd"><BR>
<聯(lián)系人><BR> <姓名>張三</姓名><BR>
<ID>001</ID><BR>
<公司>A公司</公司><BR>
<EMAIL>zhang@aaa.com</EMAIL><BR>
<電話>(010)62345678</電話><BR>
<地址><BR>
<街道>五街1234號</街道><BR>
<城市>北京市</城市><BR>
<省份>北京</省份><BR>
</地址><BR>
<直接上級><BR> <姓名 xmlns =
"">王五</姓名><BR> <電話 xmlns =
""><BR> <秘書電話 xmlns
=
"">(010)62345678</秘書電話><BR>
<手機 xmlns =
"">13601234567</手機><BR> </電話><BR>
</直接上級><BR>
</聯(lián)系人><BR></聯(lián)系人列表></TD></TR></TBODY></TABLE></CENTER></DIV></DIV>
<P></P>
<P></P></TD></TR></TBODY></TABLE>
</center>
</div>
<P></P>
<P>
<P></P></BODY></HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -