曝光臺 注意防騙
網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者
bb:POSITION=”Starting Pitcher” bb:GAMES=”33”
bb:GAMES_STARTED=”33” bb:WINS=”20” bb:LOSSES=”6” bb:SAVES=”0”
bb:COMPLETE_GAMES=”4” bb:SHUT_OUTS=”3” bb:ERA=”2.47”
bb:INNINGS=”229.1” bb:HOME_RUNS_AGAINST=”13”
bb:RUNS_AGAINST=”67” bb:EARNED_RUNS=”63” bb:HIT_BATTER=”2”
bb:WILD_PITCHES=”3” bb:BALK=”O” bb:WALKED_BATTER=”74”
XML 實用大全
第 625 頁
bb:STRUCK_OUT_BATTER=”157”/>
如果需要將兩個不同XML 應用程序中的特性組合到同一個元素中,這種方式有時或許也有用。
可以(雖然通常無意義)將同一個命名域URI 與兩個不同的前綴相關聯。實在是沒有道理這么做,不過需要提醒讀者,我在
此提出可以這樣做的唯一前提是,對于帶有相同名稱的最多只有一個特性的一個元素來說,特性的全名必須滿足XML 規則。
例如,由于bb:GIVEN_NAME 和baseball:GIVEN_NAME 是相同的,所以下面的形式是不合法的:
<bb:PLAYER xmlns:bb=”http://metalab.unc.edu/xml”
xmlns:baseball=”http://metalab.unc.edu/xml”
bb:GIVEN_NAME=”Hank” bb:SURNAME=”Aaron”
baseball:GIVEN_NAME=”Henry” />
另一方面,URI 實際上并不領會它所指向的是什么對象。URI 的http://metalab.unc.edu /xml/和
http://www.metalab.unc.edu/xml/指向同一頁。但下面的這種是合法的:
<bb:PLAYER xmlns:bb=”http://metalab.unc.edu/xml”
xmlns:baseball=”http://www.metalab.unc.edu/xml”
bb:GIVEN_NAME=”Hank” bb:SURNAME=”Aaron”
baseball:GIVEN_NAME=”Henry” />
18.2.4 缺省的命名域
在有大量標記的長文檔(在所有相同命名域)中,可能會發現要將前綴加到各個元素名中是很不方便的。可以使用沒有前綴
的xmlns 特性,將缺省的命名域與某個元素及其子元素相關聯。此元素本身(其所有的子元素也一樣)可認為處于定義的命
名域中,除非它們擁有明確的前綴。例如,清單18-4 顯示的XSL 樣式單就像習慣上的那樣,沒有使用xsl 作為XSL 轉換元
素的前綴。
特性從不處于缺省的命名域中,它們必須明確地作為加上前綴。
清單18-4:使用缺省命名域的XSL 樣式單
<?xml version="1.0"?>
<stylesheet
xmlns="http://www.w3.org/XSL/Transform/1.0"
xmlns:fo="http://www.w3.org/XSL/Format/1.0"
XML 實用大全
第 626 頁
result ns="fo">
<template match="/">
<fo:root xmlns:fo="http://www.w3.org/XSL/Format/1.0">
<fo:layout-master-set>
<fo:simple-page-master page-master-name="only">
<fo:region-body/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence>
<fo:sequence-specification>
<fo:sequence-specifier-single page-master-name="only"/>
</fo:sequence-specification>
<fo:flow>
<apply-templates select="//ATOM"/>
</fo:flow>
</fo:page-sequence>
</fo:root>
</template>
<template match="ATOM">
<fo:block font-size="20pt" font-family="serif">
<value-of select="NAME"/>
</fo:block>
</template>
</stylesheet>
XML 實用大全
第 627 頁
或許最好使用缺省的命名域來將命名域與正準備加入不同語言標記的、現有的文檔中的每個元素相關聯。例如,如果將某個
MathML 放在HTML 文檔中,只要將前綴加到MathML 元素中。只需要將<html>開始標記用下面標記代替,就可以將所有的HTML
元素放在http://www.w3.org/TR/REC-html40 命名域中:
<html xmlns="http://www.w3.org/TR/REC-html40">
無需編輯文件的其余部分!插入的MathML 標記仍需要在各自的命名域中。但是,只要這些標記不與大量的HTML 標記相混合,
就可以在MathML 根元素上簡單地聲明xmlns 特性。這樣就定義用于MathML 元素的一個缺省命名域,此元素覆蓋包含MathML
的文檔的缺省命名域。如清單18-5 所示。
清單18-5:嵌入到使用命名域的、結構完整的HTML 文檔中的MathML 數學元素
<?xml version="1.0"?>
<html xmlns="http://www.w3.org/TR/REC-html40">
<head>
<title>Fiat Lux</title>
<meta name="GFNFRATOR" content="amaya V1.3b" />
</head>
<body>
<P>And God said,</P>
<math xmlns="http://www.w3.org/TR/REC-MathML/">
<mrow>
<msub>
<mi>δ</mi>
<mi>α</mi>
</msub>
<msup>
<mi>F</mi>
<mi>αβ</mi>
</msup>
XML 實用大全
第 628 頁
<mi></mi>
<mo>=</mo>
<mi></mi>
<mfrac>
<mrow>
<mn>4</mn>
<mi>π</mi>
中國航空網 www.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:
XML實用大全(177)