Beruflich Dokumente
Kultur Dokumente
æ% z
Ë© ® www.2tigers.net
Ð);*2¥ www.ufoc.com.tw#QÃ
Many of the designations used by the manufacturers and sellers to distinguish
this book, and the author was aware of a trademark claim, the designations
Íh/ZXèC2¥C®`(Ìí &Xò2¥Xb
Ího»ÝDCXbã®ïèºìµ8í ã¹ð8m!ñ
¢1iXb4KB®ï¼T¼æÝn?¬³3Xp¹u.¸àà
#T #CW£]ö´ÙЪ×6+ã¸àïH®ïÃ.
c
Copyright
1999 by Lao Hu and Two-Tigers Workshop. All rights reserved.
1¹hJP[ã¢ðàNv®¤¼¿àHÝGèìã3
h° Ó|JTI5PÆ×»µ
\ïµÍß
ÑT^n.l0mã|Æ^
TßKÆ°
ÆW`ÿàö¤¼¿àH!`ÿ'¸àï[ã¢ðà
Íhå»j½®J2°1®ï1º×6°_åJ
¯Þhh¤
lÁ>0jÞ ºÞ
ÒÁ||¦(¿{¯
ê
¶3G« xiii
0.5 þ8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
0.6 t+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
1 +Û XML 1
1.2 XML Æ6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.1 ó. ML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.2 î= . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
v
ê
1.3.4 XSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.5 bø°8nÝçì . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.7 £8÷ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4 àÎ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2 XML +°r
21
2.1 Gu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2 -ôòP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 ¥ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4 TþÝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5.1 Xb-ôKÑ@2nT . . . . . . . . . . . . . . . . . . . . . . . 26
2.5.3 XbòPKÿîSr . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.5.4 Í! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.6 |° ß . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.7 ¶b5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.8 CDATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.9 ×èËè! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.10 PI ø!d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.11 ¢¢ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3 Unicode 15 35
3.1 Unicode + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
vi
ê
3.2 CÒ*Y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3 ||ÝÞ; . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.3.6 {à . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4 XML ;õÌ 45
4.1 CSS á . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5 (Ìè 47
5.1 %óm(Ìè . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2 (Ìè Ý . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.2.1 ýîÎ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.2.3 (Ìè @» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3.1 GHC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.5 ï'Ý(Ìè . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
vii
ê
6.4.1 XHTML Q
Æê . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6.4.3 l?ßµA . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
6.4.4 Í!¯4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.6 ¢ìW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6.7 t+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
7.1.3 XSL ª . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
7.2 XSLT á . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
7.3 Þ XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
7.3.1 W`ï . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
viii
ê
7.3.3 ÙW5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
7.3.4 q-ôîb×ù . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.3.6 ?òPÂÿ@ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7.5 ð
Ý — @®Y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
7.5.1 xt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
8.5 + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
ix
ê
x
nö®ï
Run!PC Ó¦¶Ýû
ç°']«Ý¶pÓ½
xi
ê
xii
¶3G«
0.1 ¶9ÍhÝ^
®`«¤î9°¬½NÍ]±I*ÝÕ¼e+K²Ý×Í2Í£µ
ÎZÝç¾??.+ZCÝâbP°ñDzåÕ94±I*Xñ¼
Ý-¿
XML Î×ÍμÝçt&Ûößv^ðßþñ¼¬úP;
Ý8I
*9g&ËÝ:Õ&Æ39]«ê . . .
ÿ¾Õ9ÍêÝ9Ä6Î×͹ðìµÝéh¬¹ðNî35²6Ý]
\T|Æ^Kÿt·Ý[ÞéhÝ©PsìÕÁ
0.2 \ïTÌnÝÃ
3. XML GÈ
t?E HTML ý¥+bÃÍÝ-IAW¶Ä HTML
xiii
¶3G«
DOMA
Ìn CSS ÝÃÍÃFJÞºbQÃǸ
^àÄ CSSô
0.3 ÍhX¸àÝBrýî°
• Z©½úÝ2]×|Eî
• o»õÙD|ÆC^CCourierÓ¨A
h²hLæÝ×°oo!`g)î×°ÝÐrA[ A à
¼èø×°¥¯4Tèº@àÝF9°ooÏÝ
Õ`Î×:µU3
hm¾ðS»9®1¯h(
æ
0.4 A¢àhÝ&4
h) PDF XÛÝ5h)6µÎ
à PDF å\ Acrobat Reader ×Æ
9ÍhÝ`Î3¼W\X:ÕÝ£ÍWÏxê1 ÍhÝh)3ZÌÝ
ìAg)PÁÏ×vÝ8TôÑ@2¨¼
1
9õp Ýh)bX!ô¯¸àï.
KÝ PDF °«xÕh)¦
xiv
0.4 A¢àhÝ&4
/Zøüd Z8!¢Ýd×|äî
3é\îà#å\9Íh
Ý`Î|à9°d.
ñÕhÍ2] G«ÀêÝ&Ía;4
êZaÝ¥XC&!!%Ý_rí|/Id]PÓ¨]-\ï
ãå
N hèÕ¥ÝÝb(Þ`A9Í(Þ3hÍ2]b©½ÕÝ
º3å#½(Þ+:Õ×ÍäÝd5ËË
a;d A × Í Ý b ( Þ Î Ø a ; Ý x Þ » A n ö Unicode[3] Ý D
¡9Í`Î
3d:ÕÝÑΣÍa;Ý_r
°d AÝb(ÞÎØa;"DÝxÞ¬3Ø°èÕÄÉA Ù
r
9ø'ÝêÝtݽ¿öJÌ«ÝY̲?¥ÝΠݯ.h
¼3üîå\Ý\ïô²åÕv«aîø=Ý-¿
²Id tÝ/Id²Xbh¦èÕÝçëCçîÝ£ÙK×| ø=
ôΠݯ\ï3üîå\`ôºý´9°8nÝçë*>
Ýp N
=Õçë
xv
¶3G«
0.5 þ8
4Q&E9ÍéhÝ_4C&4ø=Ý']«õðsT¬"ö×®8ݧ
N9¿à&4ø=Ã
">2®Õ0Ýa;õ/
0.6 t+
ͽ˩ 5ãöçàöç6Ý×/ÝÞß3hTDÄ9Íh çî
ÝZt&¼× eSÛÝßæ
Ñ
b¢1ÝÈ <Tý0lÑK&ðK
¶*¼
&pailing@2Ti.com
xvi
1 +Û XML
^ÏÝ@Ä×O 3Y&*>vÝÓçì¦9ÍC¿1BÕ
¾½~Ý2M&*>®`PÊ8õ¸n«¤9°t#Ýi¥
;1ÎÏ×?à#ñÝ×®GXÎbÝ*>¬úÑ3çîß
. ¸ÑÎ'¼ÞZ/Ó¨3¸àï¿GݬÎQ&ð¿ö^ Ý
} (table) ]P4
<h1>.&Lh</h1>
<table border="1" cellpadding="5">
<tr>
<th>(Ì</th>
<th>®ï</th>
<th>³±¬J</th>
1
1 +Û XML
</tr>
<tr>
<!-- Ó
ÝhXÝP9
F ;-) :M -->
<td>õi¯Ýç°'a</td>
<td>
</td>
<td align="right">590</td>
</tr>
<tr>
<td>A¢3 7-11 ç*ç</td>
<td>P(h</td>
<td align="right">120</td>
</tr>
<tr>
......
</table>
2 Ë©
2tigers.net
1.1
%ó. XML
<font> ff/Î
î&é¤7.t±Ýê8/¼¯&ÆÝV|¢hfhô
mss2×çìÏ:®Þ3h7äÝç°¸àv«î»Ý¶
b°T&ÎJ¼ý¥Â×:Ýb°ÎJ¼ý0=ÝÕ9øãÍÎ
ý¤`(ÌõêÝý)A¢Þ¸Æê2³ã¼9µbFÈeÝ1 A&
AΩ½Ï£qͽE&&øÝç°ÂD¹0n"*>¾
WA9°ç°*>©Îöºßvå\;£^b®Þ'×6K4
J¬3*>Ýçt&ßvm@ä^ ¼&Æ95Íz|
þz[£
HTML E¾ ²Ì]«<QÁþzE/ôµÎ*>ݾ
ß^øøàÝEî«X$ÕÝpÞ&ÆtmÝÎ×ÍÞ¤`}@ýî
1
A
H ÝÈ
Õ×Íé¤çìG×G3ç°ó×ø¤`Q+3p
óCî HTML ÙD:D|2.4¤`3ÙDÝ5]6Ý2
¼ ;-)
P¾ XML 3
1 +Û XML
5£Îε;
Ñ HTML 9]«¼½WÊ`¶m9
×°±ý
)6
×Í <price> ݱý)p¼ßµºá&Æ[?¢µ&&¼màÕ&P&
ø!Ýý)AÙÙK
HTML ¦£ÿÝ
(Ìr} . . . &D3XòÝû4ê5ÿ×zÞ½¬×Ëó
£]A¤`T1ºæÍJÝ£]Úx×"×è23 õVÝ
*Ýçt&é¤@·¼²²é\Ù Ý!^Çä*
>!F;ô¼¥ÉAGÝÉ&Æm×Ífê
4 Ë©
2tigers.net
1.1
%ó. XML
õ > ÐrÀR¼?UÝÎ:@»
<.&Lh>
<h°>
<!-- Ó
ÝhXÝP9
F ;-) :M -->
<(Ì>õi¯Ýç°'a</(Ì>
<®ï>
</®ï>
<³ 0J="±¬J">590</³>
</h°>
<h°>
<(Ì>A¢3 7-11 ç*ç</(Ì>
<®ï>P(h</®ï>
<³ 0J="±¬J">120</³>
</h°>
</.&Lh>
5\ b=ý)KÎZÝóç 6
1ËÝÎ&ðÝɯ
©ÝTàAÓ¨ç°X'¬¯@î¸Î×P§;¨à¼'&P&
õ <³>µ|5¿¾WÞ&h7êGXWÝh°õ³××8/
P¾ XML 5
1 +Û XML
¨ÝóCÄ6±ö¬Jëû-93*^BÎß10õF]KãÍ`G.
hûî«ÝD¡
ºs¨ XML Ìnã4¬úPÝ©²bÃö»;¨*Ýé
²²Ù Ý*>!;
µ=&9
¼/IÝ&ÍI KD3&9!ÝÙÕóy0Y-Ý
Ù ??.8A1Ý¿¬óA08CW*>ø;Ýæp39°²²
Ù *>øø??m¸à©Ý85¿2¬÷BhÝb&
&ðjìAøÍÙøFð±Ý8êº×sCW×p
RB
CjTÞ-jKý¥®*>øøÝ&Ùî©mb XML
[2.4]
-\㽬^ XF¼Ý*>
|¿à XML ãÿ|b98
6 Ë©
2tigers.net
1.1
%ó. XML
P¾ XML 7
1 +Û XML
+}PÇAh×¼ØÍÙ/IÝ?NºîCõ¸øø?¼ÝÍÙ
. XML èºÝ×·§Ýc]
XML 9 4 ¿ ö £ ] Ý ø ð õ F L Ý © P ¯ 9 ß - XML Þ é ¤
DÄ XML ¼ìóTFL'%®`Þ
®æàÝòÝçÆשbl
¼ (Fortune 1000 ùÝ) ÔÿRXML Ý
8 Ë©
2tigers.net
1.1
%ó. XML
KÎt·Îóß
XML Î2wÝýÝßßK|J¸¼s8N82¥.¹
Lºb1ÿPÝ2¥¢½Ñ;©bÆ z½Ý}P¼¿ßþ>
^é\{Ýæ¹²>W£]§Ý>3μÞ?ήÞ
1Â
SGML HÄÿÓX|×à^b3t&îøR¼×©bl
¼TÅ8^
2
XML ZÍÕÎ;Ý
3
ãz©« (Intel) 2¥xðß«Xèï?I*Ý
">Þ¸×ÍþnXûÝ0À
óNO+¼ÑÑ
NËO¹¦×g
P¾ XML 9
1 +Û XML
Ä`Ý?W®Þþ9°Ýé\?\
ýïÀ:NÕ}Î
ÃÿÕ9øÝlA½8Ý?±õ>ù\ÞZg)»ð
>ùÕt±Ý}PJê&ð^b[£±ÌÝZh_ì8EÌÝZÝø
P?ÿK×"×è2D@¥¨
?ÎD|Ü~Þm1ÂÝZËKÜñÅ8ú2Z°Z
ª]ÀBI.@~ ×#öÍßÝ^B/7Km1D
Ý` º+t¢3Zhé;Ý 21 tSA¢ò1D9°Zõ
ÞÝ«
ìÌ^ ßÝ×ÍÎlÝ»çîÝ&¨õS[ìêÝÑÎ9°N
F\ÞWûî0Ýç°/8/ãOGµbßμÝçt&YÿÞ
9øÝ;
1. ¸àït×µGm^Ç
2. 9¸àïöÎ.@é\îÝ^ ߧ¼.Tê§Ýè2¥C²
10 Ë©
2tigers.net
1.1
%ó. XML
ÝRFâF^'?+¯çîÝ_ãì¬.t±Ý 8/
¼
3. ××8ÕÝ|+^ ß'¸àï/ ×áø×}t-!èº
® ^ÇÝ¥¢
#ÞÝà#«^ ß×W
¬Î 9øY?ÝGÿKÕêGK^b@¨I5æ.ÑÎG«X1
|DÄ9°ý)"20Õ0Ý*>ºZ´3×n5HTML Wõ6Ý
?ÞÝݨõ
èîXý¥Ý/¯¨õS[¢ãý)õ/ ݵDnÝ@20Õê
ý¾WÜÍ»&Íß?£ËÆR¼(Ý"8àR¼¯øÍÝßÆ
né\"8Ý*>?® &óGÝ¢¬®ÞÎ5"86ËCHÄTÙ
¨3é\ëÝç°ÑÎ&0ÝA
<é\à>
......
<ø\> ýTø\"8 PS2 +« </ø\>
...
<ø\>{ùÔ"â!lÆUSB +«</ø\>
</é\à>
P¾ XML 11
1 +Û XML
¬¸Æô¨öØ)¬$Ý+Û
<)¬$>
<$(>\Zoo!</$(>
<Wõ>
<$>A
x¬é¥</$>
<$õ>äßé</$õ>
<$õ> ¨î"8 </$õ>
......
</Wõ>
</)¬$>
#¨öÍvlÝç°ÉA °ÿbTébÝ®`1°
ólsv¨õR¼3[£Ý@PîK{9Ý
1.2 XML Æ6
!) ¸'9ø!ÉA×Íçh7Ý%h£]Émw3ç°
ºßpêm.¸Æ3ó°ÝsǦhØ)9Í`Ω'Ë
¥ÝÎZÝ/õ²Ì'Î5ݲÌø!`XML Z
åÅ(
12 Ë©
2tigers.net
1.3 XYZ Ýb(Þº — XML Tà@»
GÃ&ÝÄP
1.3.1 ó. ML
1.3.2 î=
P¾ XML 13
1 +Û XML
Ý
Ý'iÊ`2ùÌápÝ×I59]«ÝèçW2Æ(Ý9Í®
ãs" %ó¢×ͱÝ÷
14 Ë©
2tigers.net
1.3 XYZ Ýb(Þº — XML Tà@»
àï3p ®C¨õÝ@bß.Za
Flash éŦ 9øÝç°
ôP°¯¨õS[ìõSrÍÝZCº"®Zlõh²{!PÝ
\bÂݸàßý
Îç°'it?ÝX]nSVG ÝGÿ4Y?¬êG$)º3^ÏÝ
2t+캧øp\
<?xml version="1.0"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG August 1999//EN"
"http://www.w3.org/Graphics/SVG/SVG-19990812.dtd">
<svg width="4in" height="3in">
<desc>|ìÝ SVG Dºi×Í ÝiRݲo</desc>
<g>
<circle style="fill: blue; stroke: red"
cx="200" cy="200" r="100"/>
</g>
</svg>
P¾ XML 15
1 +Û XML
16 Ë©
2tigers.net
1.3 XYZ Ýb(Þº — XML Tà@»
ËÝsß½Ý
Î39¦:ÕÝù ;-)
1.3.4 XSL
1.3.5 bø°8nÝçì
îserver 3¸ÝóA00Õ9Íç°NvÞXbõ9Íç°ntÛ6ÝÍç
àïóCG?
é\óPTÎFÙÝ5nhà6PÑÎÎlÝî*>RDF 'Ýê
6
Ãà RDF ýÝÝ1°
P¾ XML 17
1 +Û XML
ÝÑÎà¼àî*>¬¯^ \?¯¸\ÿU9Í¥Ý
Ý;øø|à¼àç£Ù]-¨´¾£Ù£Ù Ý8!n
5£ Netscape øÿ¼9ó9ç°çìn=PÝ£]÷6
Ý WAIS ¨õS[Ýs߸ݨõÎÍa7bxÝF¸Æ#
åçì¼x (rBº®îä^ É8/¼Ýç°EÍÝø=
Ý¥¢
çì¼ïLÍÎõãPP²Ýì¬ ÝÚS?9Ý"~àn"CÝ'
¥-`¨õPôª±Ý¨´ìÝ@àÂ
HTML4.0 : 100% Yî W3C Ý HTML4.0 XML CSS1 DOM1 ²E CSS2 DOM27 ô
http://www.w3.org/
b×°Yî Mozilla ݸà+«ôÎ×x±¬¬¿¬v|¯ß
TR/REC-html40
XUL : ã'¶Èú-à¼'׸à+«Ý+ — XUL êÎ×4
http://www.
XML ÝTàôµÎ1! XML Ýß|52à XUL õ CSS ¼; Mozilla Ý
mozilla.org/
xpfe/xptoolkit/ ¸à+«p ݲÌô.ÿ Ùw« (themes) ×ø¯b'»¤Ýß
xulintro.html
5sì Ýè µ #Ý MP3 êw Sonique õ WinAmp XYîÝ skin
18 Ë©
2tigers.net
1.4 àÎ
ðî
1.3.7 £8÷
õ Commerce server
1.4 àÎ
XML Î^ÝI*
¨3µ|5²å¸Xñ¼Ý?94¥Ý XML 8n
I*CýÝKs"W!&vTà8?A$+Ê\">2¦
P¾ XML 19
1 +Û XML
20 Ë©
2tigers.net
2 XML +°r
®Õ14+°Ýa;×:~b
2.1: Z XML @»
2.1 Gu
3 2.1 ¦ÝÏ×B&Æ:Õ A
21
2 XML +°r
öEÍ»2 P_DÝYîJã&8s"ï
2.2 -ôòP
50J=”...”6JÎ5³69Í-ôÝ×ÍòP&Æ.50J6Ì®
5òP(6r+«ÝÂJÌ®5òPÂ6t{·Ý-ô.&LhÌ®5q-
ô6 (root element)
22 Ë©
2tigers.net
2.3 ¥
2.3 ¥
î
-ô(`¥.³E0íáÝZCDÝ
2.4 TþÝ
“parse” µ Î Ý ¤ 0 Î · Ý ß v & Æ Ý \ N F K 3 Ý
P¾ XML 23
2 XML +°r
parsing ®Q??BQá —
¨3µÑ3 parsing — å\9Íh
X|:ÿU&¶ÝZaTAh ;-vWUøÍÝßýÝÑÎ.
Ý\
\C\×àÕ+°+59Í ÝÆÓõÞ@΢é\+¯íá
8XT&CÝ'3Õîb×Ͳ'
«¼ý¼
T5\ 9Îø»Ý+°ôá¼9ͲÎ3ø¦.ZÝÄâW
3.lÎ Ý 6
%ó&Æ×WգͲݺyîb9ËDT9µÎ. &Æ\Ý+
Î+§ÝtGaÉA&¼^.Ä»\.bþ+Ý
«E× +Z`&=tÃÍÝCÞxK¢z½?$è¯&
×MËTÑ;9SZaÝ
Æ
×M¿àZÝ/Gùà .Z5W×ÍÍÎ
HTML j
Þç°¾ Ó¨3¸àï«GA¸\ÕH;ùÒHÝ HTML Z
ç°©?-íwaÝ
jݶ°õ}P}ýR¼K)}.hX9g×µ}Æ!X
bÝ XML ZKÄ6ñFãÍÃÍ!ì×;ÝxÞÍJ׺ÙÙª
£NÝý0G>
5Æó!ÿ9ó6
24 Ë©
2tigers.net
2.4 TþÝ
P¾ XML 25
2 XML +°r
XML Ý+°CE}PÝ}O2CÉ£°#Ós"ý
Ýƶ1°Î×Íé\IÝ@~ßc9ËÍ´` µT_×Í
\ XML £]Ý
!ñ×èÝÎNÎàËp ?Ä^®ÞÝç°µ1ßÐ)
¼\Ö¯ÆÝ®`ȼiâ2§&Ë"â+°-Ýç°9µ
G«èÕݲ®Ý»¼Ñ&ÆàÆý¼ÝM¬T&&Æl
ÿ¼1ÝÎ%óX|&1&Æ\Ý+ ËÝÎ
Õ´?%óKW
2.5.1 Xb-ôKÑ@2nT
3 2.1 &Æ:ÕXbÝ-ô[2.2]ÑÍLæÝ9K£]TãÍ-ôÕ
26 Ë©
2tigers.net
2.5 XML ZÄ5C}6
src="foo"> 9vW×Í-Ýý)§óð6
AñbòPÝJ¶W
<-ô òPä="foo" òPØ="bar"/>
&Ƶ¸à5.&Lh6Ý»'*Fb9ø×Íý)4
<h°>
<(Ì>A¢3 7-11 ç*ç
<®ï>
</(Ì>
P(h</®ï>
IxÝu¼ßA
E£]x (data structure) õÎ0'ÝÃF´
ß
P¾ XML 27
2 XML +°r
2.5.3 XbòPKÿîSr
3 HTML &ÆBþûððÝTÿàSr.&ý)ÝòPÂR¼ç°
p E9øݶ°;ðKÑ@§ï[¯9ÍSrݨé?ûC
.hSrÝêY÷\òW÷?
2.5.4 Í!
Í}PÑ@ÝO9îè¼1Ý©ÎãÍ3Tàîtð$ÕÝ
YW XML Ýί
"2
áµTà¯@îb°9]«Ý!
2.6 |° ß
<h°> £];W
<h°>
<(Ì>A¢3 7-11 ç*ç</(Ì>
<®ï>P(h</®ï>
<³ 0J="±¬J">120</³>
<³ 0J="±¬J">90</³>
</h°>
5C}ýÝ6¼××ß::¬×Íh!`bËÍDv¸àÝÎ!×Ë0
J«{bFMÄT&3Ø°)ìÎ|WñÝÉAÍ×ÍÎ$Ý
28 Ë©
2tigers.net
2.6 |°
ß
8¬Î9ÎεÎçh7BïTêTÝ}P÷ê'*F
+Ý5·®ï6(ghostwriter)P(h©Îð3£¦[þݵ f«î£ËÍ
<h°>
<(Ì>A¢3 7-11 ç*ç</(Ì>
<®ï ßó="2">P(h, p</®ï>
......
ε9ø
<h°>
<(Ì>A¢3 7-11 ç*ç</(Ì>
<®ï>P(h, p</®ï>
......
. ®ïßó¢ã<FÝóꯧ£]ÝÕÎ
<h°>
<(Ì>A¢3 7-11 ç*ç</(Ì>
<®ï>P(h</®ï>
<®ï>p</®ï>
......
|3Í!5®ï69Í-ôÕ9Î|¨9gÎ3¢×Í <h°>
P¾ XML 29
2 XML +°r
2.7 ¶b5
Windows õ MacOSj(¶PXÛ9F\BÆ©½¥
2.8 CDATA
£óÕ9§ó¶÷:
<![CDATA[
zccc &; ...... zzzzz
²Õ <<<
>>>>>> ê²Õ
]]>
1
XML DTD Ý+°Îà#µY SGML
30 Ë©
2tigers.net
2.9 ×èËè!
5\ 'W9ø Bÿ6
Í@9Ñθ'»úµÎÆ'W9øÞPTÝý03Õt
£ÍÝ
<![cdata[ T <![Cdata[
×"×è2øì*Ý}ݵ=¢3 sRõÝèç
ðC-ôP°¹f´
<![CDATA[&Î sÝÏ×
&ÎÏÞ
]]>
õ
<![CDATA[
&¨3^Õ sÝÏÞÝ :-(
&^ÕÏëÝ
]]>
:ÿÍÝ!Ï¡A
3ZÝNÍ CDATA G9×Íè
ÝÉAbYÌîÝJTà|îÏ×˶°
2.9 ×èËè!
P¾ XML 31
2 XML +°r
3 HTML ZC/|5×è65Ëè6#5ë=è659=
¶W
<®ï>
</®ï>
î×Íèç.ZCõý)âÿ×FÇ
<®ï>
</®ï>
32 Ë©
2tigers.net
2.10 PI ø!d
çKbÍD3ÝÂC©½L
2.10 PI ø!d
Ý PI¶°
P¾ XML 33
2 XML +°r
2.11 ¢¢
ήÕÏ 8 aå\
34 Ë©
2tigers.net
3 Unicode 15
3.1 Unicode +
Unicode Ù×D)(¤LÎ×ÍÞt&îãèËóBÝZC_DJ)3×RÝÄ
æÍK+ÎãY»&é\äXàWÝ Unicode
º¼.êÝ3.Â×Í Unicode
º :
http://www.
t&;Ý_D×ÞXbt&îðàÝZCK
3K&é\¤s»
unicode.org/
²½`XÍÂÕÝ®ÞE&Æ9°ðm3&ËZCD ®»ðÝçß1
Î!å
ÝÞWûî0ÝZCÙÙ[/Õ×Í;Ý_D^×9ì3×)BzÝæJ
*×çƼÂÿÈ5ÝÎUnicode
º 1991 O|¼-õ ISO Ý UCS à
õ ISO10646-1 ¸à8!ÝC0õCD
ô¦CΦÝZCµb°0ÚA^bÝCõ×°
35
3 Unicode 15
Qò¸àøbõ2ZZ°ZãèËÍZC¸àjE9Í®
]n.^8Z«ÝC¼|×ÍD¼»A'C3Ã
Z¦ÕW°ËÍèC¬3ZC^Z©bë ×U
/Unicode E¯9ËÝ-½Xbñb°'ÝC}'×Í
D¬ÎA×ÍC3Ã-½f´½ºE¸àïCWZ§îÝ
æpT-`Unicode º ÃËËÌÍͽ_D»AC^3ÃÎÚ
ËÍ!ÝCD¼××Ã
B Ä 5 ^ 8 Z J ) 6 Ý C 3 Unicode Ì UnihanÙC 3
CAô¦CÎÝ&9C
Big5 ðÝ5n6Cè0
×D
0xF9D8.
A ¥
^b[3 Unicode (2.1, 3.0) ÝýÝ.hÈ
3
ðW®r
Public/UNIDATA/Unihan.txt ìµÊ×
ÝÎ9Í database &ð
ø Ä 16Mb ¢ U Æ ¢ D ¹ × ì Í ¬ â Ý Unicode õ
Big5CNSGB2312-80GB2312-12345SJIS . . . 8!ÝET?=¬Èé D
36 Ë©
2tigers.net
3.2 CÒ*Y
ïmìµ9Í database
3.2 CÒ*Y
ÍhûõJ§9øÝ\ïÆ3å\Õ+«Ýa;`f´ºZ´]'#
Þì×;5||Ý;6Jð®Ä\A
E9ìI5B:ÿbFáX
½HT©Ã:×ìbÍÃFÇ
¶Unicode
º.&¸àÝÎ UTF-8 õ UTF-16 9ËË}PÍÝ “8”
OÝ_D^×Kà쫺Õ
æÏåÅ(.hm»ð¬Í+ZÝ£]JmDÄ
_D
¢!÷Í@-½
øÝà
hJH9\
2
×Í byte ã 8 Í bits XàW8*K©ß
P¾ XML 37
3 Unicode 15
Î|×gE×Íê9ìXbÝjn®M¼»ð9
H]°õ¸à13hµ¥«ìµF http:
//2tigers.net/runpc/xml/runpc_xml_2.html
h ² b × Í ´ 9 ¬ Î ¹ ð Ý UTF-8 » ð
Ì § uniconv b à Ì ì µ http://rosette.
basistech.com/demo.html
¼1@@]-99
38 Ë©
2tigers.net
3.3 ||ÝÞ;
;ðºª×ð(ÍúÝý0G>µÎ×À®rTP°ï]Ý®ï
ÑzZTÝ
Cð1AØ8Ñ@Yî UTF-8¸PµE&ÆbÝ¿àÂ
3.3 ||ÝÞ;
A
-
. XML Ý^©ÎÃö?TÞG§ö¸à¨WÝÌH
à#õDÆø¼£óî«XèºÝÃÍÃFT&µBàݹ#Ç9ì
||ÝI*Þ;QÃ3K´ÌÁ@ϬÎA
¿ðô_×F
Dæ§ÝI5&ð¥¯@î9ìÞ+ÛÝáIJÕ&9ÍÝr½¦ô×øå
P¾ XML 39
3 Unicode 15
ó¸/D
XbÍyì¼ÝCÐÀXbÝZCJ×|ÏëËP¼_4
|
40 Ë©
2tigers.net
3.3 ||ÝÞ;
àëÍ bytes
P¾ XML 41
3 Unicode 15
ÍOÝð}P-^£}§ UTF
çëº&9®Þv©Î 0x00ÍbãÍ©C-ôKõ&
ØÍCÝ&þz[£h²8*Kb9øÝBb`ÎZZØÍ
CTèçC-¨ c
Ý&AÂÕû*ÝCôºrq+×ÇCUnicode ýÝ!`bZ
Fé
42 Ë©
2tigers.net
3.3 ||ÝÞ;
µª×¹\
&Æ'2ì3ÆÝñ¼ôpM&9]t&Ý8¼ïõ'/
Î
ÎzZ
Ý5=]n¸Ý8F«{ÄöþF
°Í bytesf´Bz
R¼§ UTF-16
P¾ XML 43
3 Unicode 15
T&ºMÉQ§EÎ'¼T}μCóUÝm£
%ó¯{
ËÍ bytes ýlôº+««½i
ãO/ÃôºàÕ. §E|²Ý009 B|T}*^9ó
)Ým¼ÑAh&Æ|¿àÍÝ{à 9Îì×;ÝxÞ
3.3.6 {à
Unicode 1ºÝës{à _Ýß|J¼ãºàÍËs3§E
Ý ½6g)§EÝ_D]PÇ UTF-16¼¸àA&ÆÝmàÕ
Unicode ^b[ÝCT©Ðrµ|¿à{à ¼£°CÐ_D
44 Ë©
2tigers.net
4 XML ;õÌ
4.1 CSS á
xml/runpc_xml_3.html
45
4 XML ;õÌ
46 Ë©
2tigers.net
5 (Ìè
2åÕ§×A
ºà Perl T Java £ó
B3¸à(Ìè
áÝ1
V
<V(>
<V> <!-- Vä -->
<(Ì>±Æs</(Ì>
<2ë>...</2ë>
<é>...</é>
<fax>...</fax>
......
</V>
<V> <!-- VØ -->
......
</V(>
Äb°VμÝõñ
¼Ý;ð3õ9°VÝ=]«KÎDÄ&
Z — 5(6
1
39ËÍ+(Ìè ÎDÄ package ¼@¨Ý
47
5 (Ìè
<(>
<> <!-- ä -->
<(>...</(>
<I>¼I</I>
<>Ýõ</>
<`£>36000<`£>
<é>
<5^>...</5^>
<î>...</î>
</é>
<email>...</email>
<fax>...</fax>
......
</>
Ý£]9ø &Æ=ãÝõ¼.ÝV`-|yîá¼0øÝõÆ
<V(>
<V> <!-- Vä -->
<(Ì>±Æs</(Ì>
<2ë>...</2ë>
<é>...</é>
......
<=ß>
<(>...</(>
<é>
<5^>...</5^>
<î>...</î>
</é>
......
</=ß>
......
|Ý.h39˵ì&ÆmÝÎ×ÝÝð°¯^ 3§Ý`
48 Ë©
2tigers.net
5.1
%óm(Ìè
ÎàJ\Ǹ^b¢(ÌîÝ]M&Æ)m×ÍÝ]°¯é
P
Ý-ô( 5(Ì652ë65é6×Cî5V6ËCôµÎ.
¸Æ5½;W5V(Ì65V2ë65Vé6.(ÝÞ@×Fh
5(6õ5é69øµ|ª±(Ì]MÝ^£Ý
KÎã&ÆÏW'Ý2 Î1;µ;µÕË;Ý&ƵP°@1*+º
ÂÕͲ¼Ý!(-ô
XML +V[p.29]K&à×Í}×PÞÝý¼Nv3¸à`.9Íýõ+
VÝ-ôòP(=3×sɸàµEºõÍ+V4zÝ. NÍ+V
X]nõî«èÕÑ;ý)(ÌÝ°b°v«â&ÆÎ.5V6Þ
C3LâWÝ(ÌA52ë65é6G¯5V(69Í+V¦Ý-
ô(ÿf´}©
3KõÍ+VR]MÝ^º(Ìè Ý°Jί_
¶ XML ZÝßZXàÕÝ+V¼ýîD
×Í}©ÝýîD×+V&+VÝ(Ì.&ÿÍXb Ý
2
¯@îµ 8×ø9óߺ$ DTD 'ݺà#¿à¨WÝ DTD XL¼Ý
+VÉAã×Í!¼º×¼Ý
P¾ XML 49
5 (Ìè
5.2 (Ìè Ý
5.2.1 ýîÎ
î«BèÕýîDt¥Ý©PÎ}×PÞ9|¢ã9Ë]P¼¾
gѧ£¬ºÿÆÓvº^[£¸àGÿ¥#ÿ}ð
¢?=ʽ«?(ÝBéKº¥ ;-)
¢à#¿à.Ã3¸îàçë¼(Ìè ÷3 a9aHÁ
3 ç½9ìÝçëTbÝxJX|×6(Ìè ýîDݼ®
+V| â¼øÍçëÿc¥© â¼µ?XàÝçë#
mD3 ¬3hÎÈ
òW?êY — h&ÆÝç½3^Çÿß
homepage 9ìÝçë
3
Java Ý(Ìè ôÎàv«Ý]°à#Úx3 DNS ½(î
4
ïÝ@Äbß9ó
50 Ë©
2tigers.net
5.2 (Ìè Ý
ݯ\ï|§&Ñ3î¸àf´!Ý5çë6×ÞURI (§
RFC 2396ö×ß´
!áÝ URL ×ÞJÎ Uniform Resource Locator Ù RFC 2396 :
http://www.ietf.
×£ÙDݹ¶£ URL õ URI tÝ(²b!÷:% 5.1
org/rfc/rfc2396.
Ý/)nÃÍîURI f´ÂL ½¼Xb|CýîÝç£ÙoÝ txt
%h Ý%hÀê
5
b.®Ý1°
5@ýî£ÙÝãÿH5CѼÝD6
6
çìç°Ý.ú8f
P¾ XML 51
5 (Ìè
5.2.3 (Ìè @»
3D¡(Ìè Ý
×]PG
®Í5W`ï6
ÎàAr.ËÍ(=3×RÝ
52 Ë©
2tigers.net
5.3 (Ìè Ý
×
5.3.1 GHC
Ý-ôòP(Kb ÝF2ºõÍ+VÝ(!«28ð
1CîÝýîDNÍ(µÿ}×PÞ
B×\8×\3®Ý5î«Î1ÕXML óà URI ¼}©Ýý
ëÍCÒÝGHC1º®©àHX|¸àïÝGHC&à9ëÍC
©sì¼'ݵ?ã®%ó(CÅÎÍguÎy¾ QÎt?
CæW¸ÆXÝ URI
£GHCõ¸XÝ(Ìè DÄ%óøÝ ×]P.¸Æ
nÐ3×R÷9ÿDÄ×Ë©½ÝòP¼¾W — 9vòPÝòP(×|
P¾ XML 53
5 (Ìè
ArBó®5âBrb©ÝàX|GHC|àAr×ÍJ
º 3 × ° B Ä ` Ý XML h ° T Z : Õ
A ¥
<?xml:stylesheet ... ?> Ý PI[2.10] ( Ì ¦ « b A
8]M
. (Ìè ΢½òP¼® ×X|Ä6µ!3×Í-ôý)¦«öw
3øÍ-ô¦:@jm&Æ}+ºjE9ͮޮ1
+VÝ(Ìè õGHCL ×?Q+Úm3-ôTòP(GCîÊ
ÝGHCNÞÞï|ArâÇ9ø×¼¬øÍ(̼øÍ+V
5ÿ×zÞ½?àHTºb!(Ý]MbÝ9øÝ^×G«èÕÝ5V(
6õ5(6)¸àÝ®Þ|i2ÿÕXÝ
<k:V( xmlns:k="http://foo.bar.com/xml/customer.dtd"
xmlns:y="http://foo.bar.com/xml/employee.dtd" >
<k:V>
<k:(Ì>±Æs</k:(Ì>
<k:2ë>...</k:2ë>
<k:é>...</k:é>
......
54 Ë©
2tigers.net
5.4 (Ìè Ýo
<k:=ß>
<y:(>...</y:(>
<y:é>
<y:5^>...</y:5^>
<y:î>...</y:î>
</y:é>
<y:email>...</y:email>
</k:=ß>
</k:V>
......
</k:V(>
3î»http://foo.bar.com/xml/customer.dtd Î&Æ5V(6
××Ë ×?Ý|+©Þ&Í-ô(KCîÊ ÝGHCøÍ-ôhòøÍ
+V5ÿzz½½
o (scope) ÝÃFE'&ð¥'&Æ.î«Ý»;¶W B
<k:V(>
<k:V>
<k:(Ì>±Æs</k:(Ì>
......
<k:=ß xmlns:k="http://foo.bar.com/xml/customer.dtd"
xmlns:y="http://foo.bar.com/xml/employee.dtd" >
<y:(>...</y:(>
<y:é>
<y:5^>...</y:5^>
<y:î>...</y:î>
</y:é>
<y:email>...</y:email>
8
C (string) |©âb×Í#ëÍC-èC
P¾ XML 55
5 (Ìè
</k:=ß>
</k:V>
......
</k:V(>
Ý[.˼Ù!Ý-ô 5¬(Ìè XÝo;XbRCI
·ùÝ®ÞÊ
tÝ]° QÎ3t²Ýq-ôý)¦.XbÝ(
Ìè õ¼ÝGHCK×ùL?9ÑÎG×;»Ý°A3Z
màÕ!×Í(Ìè `êÿ¶× ××g
5.5 ï'Ý(Ìè
rõGHC9I5ôµÎW xmlns="URI"ð1&Æ|.ï'(Ìè
ÝGHCWÎèCî«Ýo»A;àï'è Ý°¼¶µWÝ
<V( xmlns="http://foo.bar.com/xml/customer.dtd"
xmlns:y="http://foo.bar.com/xml/employee.dtd">
<V>
<(Ì>±Æs</(Ì>
<2ë>...</2ë>
<é>...</é>
56 Ë©
2tigers.net
5.5 ï'Ý(Ìè
......
<=ß>
<y:(>...</y:(>
<y:é>
<y:5^>...</y:5^>
<y:î>...</y:î>
</y:é>
<y:email>...</y:email>
</=ß>
</V>
......
</V(>
(Kº-®Îòö9Íè
º«G«!(Ý
×ÉA
<V( xmlns="http://foo.bar.com/xml/customer.dtd" >
<V>
<(Ì>ɸ</(Ì>
<2ë>...</2ë>
<é>...</é>
<çë>...</çë>
......
<!¥>
<!-- ;à HTML ¼®ï'è -->
<p xmlns="http://www.w3.org/TR/REC-html40" >
hV8 pv<b>&ð¾</b>õÆTËGt?ÕÝ
<a href="http://jerk.com/boss/">Íßçì</a>::tKÔ%ó
</p>
<!-- Ò HTML (Ìè Ýo -->
</!¥>
......
P¾ XML 57
5 (Ìè
ZÝï'è
58 Ë©
2tigers.net
5.5 ï'Ý(Ìè
¥ÝÎî»à¼ HTML (Ìè Ýçë¶ý
.Õ9¦
TBåÕ(Ìè XèºÝúbÝ(Ìè +&
-ôòP-¬÷ZÝ&©ÎöØ&3Ø+VÝZ}P+V
ô!`¬×W ¦PÝÿs|õÍÝ+Vÿsà)¤gº&
Úx3(Ìè ÝÃîA
à×ÍöZC_ì × 8 Office 2000 Xs
¾¼Ý HTML D
ºsƸ¦«Ý XML I5à(Ìè ôàÿ4
P¾ XML 59
5 (Ìè
60 Ë©
2tigers.net
6 ì×Ý HTML — XHTML
Æ Ä£ó-
XHTML 1.0 9ýÝ3 1999 O 8 ` 24 ^>}
ÈýÝ (proposed recom- XHTML 1.0 :
http://www.w3.org/
mendation)Ía-εA9 t±ÝýݶWÄW
ÈýÝNµù
TR/xhtml1
5¿W
ÑPýݯ@îXHTML 1.0 9 ýÝêGÑk¦2D¡ÊÈ
ÝNF×Î(Ìè ÝÕ®ÞõvÑt+ÝA¢&Æ|áÝ
[5]
ï?»
:×ð XHTML ÙD3\bÍïÝÆNµ?&ƺ3+«×
×ÞÕCÝ\ï|¿àÍÝsà#®Õ8nÝa;×"~b
61
6 ì×Ý HTML — XHTML
Ý XHTML Ý&Í©ÇüQ¥¬Î¤õ×ͱI*ÎÍÌb@²îÝL
bD3ÝÂ
Í®ÞD3 — Lÿ
áá¼çî9óÝ HTML jn}¼ýKÎ)
62 Ë©
2tigers.net
6.3
%óm XHTML
}Ý
Kà Netscape õ IE lãÄH¦ 6
½Hb.éù
Ýç°8*à PC îÝp :ÎP®ÞݬAà
^Ýî¼:÷
5î6
&95ï?*+ãOºb¼9Ýl Ìõ;¸àï
ÞDÄ9°&wîlé\¼:1
6¥Ý!ÝÎÞºb¨×v!Ý^ ²3çîþ
Pilotݷͼ´`ݼÛbîçÝéOݨ33p %ó
5ƺ9óï?
)ýÝ?NÝÎ=×°ç°×®Ì¼Ýç°Kÿ)}3 PC
¾Ýæ5¿2Ó¨¼÷
1
à#Sà XHTML ýÝ
2
Nokia t-sÝμîÝÕl¬[:óéÚ?/ Linux E®Ùõ Mozilla p
¯¸àïÌ*ç
P¾ XML 63
6 ì×Ý HTML — XHTML
îÎÊ)ÄÝ
¹ — ÿs;
Ýz¬Að°+'
64 Ë©
2tigers.net
6.3
%óm XHTML
mà!à)Ý DTD
ª — UP
YÝ©PôµÎUP;"P (eXtensibility)
{^Ýçÿbð°¸x±Ýý)ö×y£K½vNL
P¾ XML 65
6 ì×Ý HTML — XHTML
Þj8F
¼;ÝXMîP¶'G
×MA
Ñ3'×ͱçì?T8ʸà
XHTML
6.4.1 XHTML Q
Æê
66 Ë©
2tigers.net
6.4 XHTML õ HTML 4.0 Ý-½
bø°2]mJ
¨bã4!ú×Æ
ý)6
J ZµC}&¶X|×6 9ø
<p>9Î×Íða
ìÍða4èP×Îý))QWÔWE
</p>
<p></p>
ëzÝý)
P¾ XML 67
6 ì×Ý HTML — XHTML
Õ
<i>EC<b>ÕEC</i></b>
6DøüDÆ
<i>EC<b>ÕEC</b></i>
è-ô XML ;
Ý NP!°×Ý-½Îè-ô©bRQ^bý)¼õ¸gEtð
òPÂ×îSr
F B ÿ 3 Ï 2.5.3 ; Ä Ñ Î C T ó C XML Z Ý ò P Â × à S
width="100"> Än
5
<img> 4/!òPsrc height. . . ¬)ÕÎè-ô
68 Ë©
2tigers.net
6.4 XHTML õ HTML 4.0 Ý-½
òP(a
P`A&Æ¥¸ÝÂÎùݵ.¸Ý(Ìw
ý)¦¬6¯+«Ýr
K©ß9ËòPÂ6¯Ý°©½bÍÌ+§òPt; (attribute
minimization)
3 XML ×׿O׸à5òP(="òPÂ"6Ý°ìî«»
5t;6ÝòPÄ6××;¶
<input checked="checked">
<option selected="selected">
<ul compact="compact">
ôµÎ.òP(J¼ òPÂÆô×ŵÎÝ
6.4.3 l?ßµA
¡£óXHTML ZtÝO}PÑ@²ÎÍôb°ß÷
£ Q
Î } P Ñ @ Ý Z q Í Õ Î XHTML Í © Î ) } Ý XML Z i
P¾ XML 69
6 ì×Ý HTML — XHTML
b°ßÝLX3
ó¥ DTD
¼«¸8(ÉA
ÝZ©à CSS ¼Ó¨¾Xà <font> £9ÎÊ)
Ý DTD
ì©ÿ{½è. <font>
HTML 4.0 Ýýݬ31ZC)
£óÌA
Ýçì 9óçì×ø¸àÕ <font> ý)ÝJ
Frameset 5vi«P A
U¸à <frame> Ý£9Î
ÞÝóC ;-)
7
39Íh×µÕÄ9Í®Þ9ÎÑ@ÝÌF?ñÝ XML Ýß
70 Ë©
2tigers.net
6.4 XHTML õ HTML 4.0 Ý-½
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/transitional.dtd">
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/frameset.dtd">
©½èø
ÝÎ <!DOCTYPE>
×Ä6¨3q-ôý)GÍJÚ
KB:Õq-ôý)ÝQBQá9Í-ôÎòöøÍvl¢øÍ
DTD£µ¼CÝ
Ýá¼
P¾ XML 71
6 ì×Ý HTML — XHTML
®¼Ýç°&ðÝz¨×ÍmEÝ]°Îà#3ç°×Íø=
=Õ http://validator.w3.org/check/refererQ+3p F\9Í=
Ç
Ĩ3Õ?Ý`Î. bã4!ø×ì
6.4.4 Í!¯4
}PÑ@õb°ßÝ®ÞKX+#ì¼Ýµ?ðÝ
-ôòP׶
Xà¶.h»lÕ XHTML£°Äà¶CÒ¼¶Ý-ôòP(
KÿðW¶
¸àÑ@Ýq-ô(Ìè
<html xmlns="http://www.w3.org/TR/html1">
çë¼
72 Ë©
2tigers.net
6.4 XHTML õ HTML 4.0 Ý-½
àHT!(Ýý)ºÆÚÝ
ýøÉÎøÉÎ
¹ \ZÝØ°£]t?Ýð°Î.9°£]w
CDATA
<script language="JavaScript">
<![CDATA[
......
if (i < 3 && ......
]]>
</script>
DT"Ý\ïyî®5bÄ£ójì[XML Îôb¥[v¶°
µÝAì6
P¾ XML 73
6 ì×Ý HTML — XHTML
<script language="JavaScript">
<!--
......
if (i < 3 && ......
//-->
</script>
æ2øì*Ýð1¥/ÎÍÕÿÝp Wÿ:
TK\ÿ;
Í @ © Î j ( \ ï Ý ì (webmaster) Æ K á ¼ Ðb
XHTML Z|¶m'W9ËËvlÍ×ËÇ
74 Ë©
2tigers.net
6.5 XHTML — Õ9 :
ݶ°
ôº9°p |¼Ý¬^bð°
[6.4.4]ݶ°
P¾ XML 75
6 ì×Ý HTML — XHTML
6.6 ¢ìW
\Õ9¦
º5ö9ó94WR¼?jì b9ó9G.Ä
http://www.w3.org/People/Raggett/tidy/
»W XHTML }PA
©Î฼Q
z§×ì HTML D»W XHTML
Kî
AÆÝ Tidys¨íjÎèÝ9Í`ÎÎ
Ý HTML Db
¥Ýý0Tidy P°§
¢¸Ýý0G>:Õ9Î3ÏãÝ2]bý?
Ñ+¥±þ×g Tidy
76 Ë©
2tigers.net
6.7 t+
5¿ÿÕíjN×6Ð)ýÝA
ÝjnàÕÝýÝYî
¬Øp YîÝý)òPý0G>º××ܼĥÝÎ
|ìZ¸àïtàÕÝãÍ¢óó4®¢
¢óó4 1
-f j( .ý0G>DÕ¼Ýjn¦
-m (-modify) à#.Ñ;ÄÝ/D/íáj/ãæ/
ýÝ#åÝý)
-h (-help) XbYîÝó4
6.7 t+
èºÝ×°'n^bÝܲ*>
È
/ÕÍaâÝ2]¿à£¦ÝÙDo»QÃ
××/39a¦
.ÕݱÃF¯é?Ñ
P¾ XML 77
6 ì×Ý HTML — XHTML
78 Ë©
2tigers.net
7 XSLT — XML ÝòÝ»ð+
à¼g)ÓTK Þ@2'²ÌPøÉACÝYwÝH
ð
79
7 XSLT — XML ÝòÝ»ð+
3 IE5 ©3Kî:P°
»AËÍ^nT
¼ | XML ¼FL*>ABh¸àÝ XML }P
jn/J1¹
80 Ë©
2tigers.net
7.1 ¨×Ëø! — XSL +
7.1.3 XSL ª
XSL aB&ðîþYPÝs"¬'nBÄ×ëÝ»Ñ;$ÎW
ÑPýÝÝp¹Î9øs"Ä?alK1¾õDEÝÎ XML Ý
¼ßÿ #Bsß=õDEËp8!§p56à8EÝ#«
XSL ÝÊÈP
ÊÈP²¯@î×I5ô. FO ÝÆÓI58À\-
¥#B¸à5¥ªìÄbKG6ݯªËë0Y- <çî&
Ý8µ??ó
(recommendation)n"µºëLv¯&Ƹê|Íhôº«t±Ý
VÊ`?±
P¾ XML 81
7 XSLT — XML ÝòÝ»ð+
`G¶ÝZa?Î¥ñ;bÍÝ]°|:
Õ£?Î¥a Ý3hÈ.ïEÄ`¬T
ýÝ ¢ÿµ\ª¯¹
7.2 XSLT á
tf´ß×ê9ó8YîÝô©Î9I53ì« àÕ “XSL” 9Í
(Þ`¼ÝôKÎ XSLT
»ð®sßÝ2F¼55
` ê5W
ñÇ»ð HTMLÇÑX3ç°bVP£]Ç`æáT
XML ZÎóA0Ç`ãÿÝ)ìtÊ)9˺®]P.í
82 Ë©
2tigers.net
7.2 XSLT á
X|"Ýçì Ý×)">»ðÝOÄ6¸à{jÝ^
ðÝ®Jµ@jm3üÝ`ð;Æ9óÝ?Î
ðÝ°µêG@àP)8 b§Ä9ÍYÿ3μÎbT@¨Ý
Mozilla i
P¾ XML 83
7 XSLT — XML ÝòÝ»ð+
»ð9Ë°m´{Ý*Ìi¿#m¥xݼ8?KÝ
{jÝ{®+;
J§f§+
×M¿àÉQ XSL ø!õ¸X»ðÝ XML Ù
:% 7.1
XML
W|íÕjn¦;DR¼Tãp 3Kî
9óÕ
E@j»ðÝÞ;ÎÿW½HT 3}+Ýa;&Þ
ñ
5ÉW6@2lÚ XML WÝ;êG©mßé×ÍÃÝÆNµ?
84 Ë©
2tigers.net
7.2 XSLT á
P¾ XML 85
7 XSLT — XML ÝòÝ»ð+
l¼×ùÝõ!vlݤ¼88f??bÄPC?òÝÎÝ
http://www.w3.org/Style/XSL/
7.3 Þ XSLT
ã-Ý]P×M×M.êA×TO"ßËþãaÿ?·h
:×ì XSLT ÙDÕ9ÿ%óøQ+&jEÍÝÌFõÞ;××
ß
1
õx SGI Netscape
¼ James Clark !!(¬×ÍÎz»ß×ÍÎY»ß
2
3 Ì Ý xt ¦ X b B Ä § Ý Z C © | UTF-8 P í . h A Þ í D » /
Big5/GB2312 m9þ×¼»DW9͵3í XML `µQD3¬Î patch
p× XSLT ýÝÑP;Äxt s"××ða+Aµµ&º
¶×Í patch ¯ xt
|à#| Big5/GB PíÄjE 1999 O 3 ` 7 ^ÌÝ xt ¶Ä patch ¬Ä`
à
3
Àÿÿ(Ý Expat | C ¶W>Á" Mozilla p õ perl Python Ý XML
ÿsó®/
86 Ë©
2tigers.net
7.3 Þ XSLT
7.3.1 W`ï
'b×é\{×C¤3çì躮`¨´ÝÆÝóA0B
MÕ
| XML Pí|ìÎ×Þaݨ´
<?xml version="1.0" encoding="GB2312" ?>
<?xsl-stylesheet type="text/xsl" href="search_result.xsl" ?>
<®`¨´>
<`>¨´CEâ "8F0Õ 2 </`>
<®`>
<0r>12478943</0r>
<`(>Wlôâ</`(>
<>$234</>
<1° çë="http://foo.bar/mouse/12478943">î½sº</1°>
</®`>
<®`>
<0r>83424723</0r>
<`(>Æ(??"8</`(>
<>$567</>
<1° çë="http://foo.bar/kbd/83424723">®`©P</1°>
</®`>
</®`¨´>
¼Ó¨¨õÕÝ®`*>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=GB2312">
<title>®`¨õ</title>
</head>
<body>
<h1>®`¨õ</h1>
<p>
<b>`</b>¨´CEâ "8F0Õ 2 </p>
<table>
<tr>
<th>`(</th><th></th><th>1°</th>
</tr>
<tr>
<td>Wlôâ</td><td>$234</td>\continuearrow
<td><a href="http://foo.bar/mouse/12478943">î½sº</a></td>
</tr>
P¾ XML 87
7 XSLT — XML ÝòÝ»ð+
<tr>
<td>Æ(??"8</td><td>$567</td>\continuearrow
<td><a href="http://foo.bar/kbd/83424723">®`©P</a></td>
</tr>
</table>
</body>
</html>
5×| ýî
88 Ë©
2tigers.net
7.3 Þ XSLT
<xsl:template match="/"> C D
<html>
<head>
<title>®`¨´</title>
</head>
<body>
<h1>®`¨´</h1>
<p><b>`</b><xsl:value-of select="*/`"/> E </p>
<xsl:apply-templates select="®`¨´"/> F
</body>
</html>
</xsl:template>
<xsl:template match="®`¨´"> D
<table>
<tr>
<th>`(</th>
<th></th>
<th>1°</th>
</tr>
<xsl:for-each select="®`"> G
<tr>
<td><xsl:value-of select="`("/></td>
<td><xsl:value-of select=""/></td>
<td><a href="{1°/@çë}"> H <xsl:value-of select="1°"/></a></td>
<!-- IE5 ©#å <td><a><xsl:attribute name="href"> ←-
<xsl:value-of select="1°/@çë"/> ←-
</xsl:attribute><xsl:value-of select="1°"/></a></td> -->
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
®
P¾ XML 89
7 XSLT — XML ÝòÝ»ð+
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
à#!3(Ìè çëÝ
GHC¬µA!&Æ3Ï 5 aXèÕÝGHCÎßÝA
à xsl 9ëÍCÒ3 ×;àÍ¢GHCÀZ¼
ìݶ°Îy5y){!ݬÎ9øb^b@²îÝLµã&ßã
TßÏ
<&{·:stylesheet xmlns:&{·="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<&{·:template match="/">
......
</&{·:stylesheet>
7.3.3 ÙW5
bZC/Ý;F£°þ?ÝYiùKÎf;F
90 Ë©
2tigers.net
7.3 Þ XSLT
P¾ XML 91
7 XSLT — XML ÝòÝ»ð+
È
3å\Ý`Î\`ßé99ÙWÝxõW5|¾Õt{Ý.ê[
m/¼9¾9Í%ã¿
7.3.4 q-ôîb×ù
Ý\ïTp
ÿõETP
Ý ® Þ ; G « 1 Õ XSL § ¶ïø!¦Ý'3ÙWî0´)ÊÝ
Ý:Í@»
92 Ë©
2tigers.net
7.3 Þ XSLT
9 Í - ô ¼ L - ô X â Ý / ² Ñ Î XSLT X Û Ý 5 ÿ
Í»ÿP¼ETÝ;FÎ / ôµÎ3ÙWtc·Ýq-ô
XSL § 3R`ºÞXb3ø!ÝÿP:Ä×ÅNnB3TQ
+-lÚÙWvù / ìWNETÕ×Í;Fµ.8nÝÿPÝ
ÿ'× ¼
íÝZ¦
X®ßÝKÄÎ
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<p>×ÍèüÝÿ§ó¼N</p>
</html>
;F+Ǽ
×M+Û
ø XSL § Ý.hAø!¦b¢×ðÀe}PÑ@ÝæJJÍ»ðÄ
P¾ XML 93
7 XSLT — XML ÝòÝ»ð+
¨;Fõ+(
ÝêµWÝ×68E5µÇÝýÝ
Î| / ®¨;F§9ÍÿPÝ'
¨;FTà@» — xsl:value-of
ð
<xsl:template match="/">
<html>
<head>
<title>®`¨´</title>
</head>
<body>
<h1>®`¨´</h1>
<p><b>`</b><xsl:value-of select="*/`"/></p>
......
</body>
</html>
</xsl:template>
ãÙWØ-ôXâÝZC/TÎØÍòPÝÂ
94 Ë©
2tigers.net
7.3 Þ XSLT
ÿPÝjn5î°b°v«39ÍPÏr * ºETÕö¨;Fì×
Fº35 / 6Ý+(쩺ETÕ5®`¨´6
&ÆÝPb×fEa / 93ETP+°Îà¼5â;F·ùݵ /
FÝ-ô;F¸ÝÒ;Fâ?Ψ;FÝ-ô;F
ð
<xsl:template match="/">
......
<h1>®`¨´</h1>
<p><b>`</b><xsl:value-of select="*/`"/></p>
......
º XSLT § »ðW
......
<h1>®`¨´</h1>
<p>
P¾ XML 95
7 XSLT — XML ÝòÝ»ð+
9øÝ
+(ȃ
¼¾Õ9Íêݻɨ;FÝH
ÿá — xsl:apply-templates
F 3&ÆÝo»ETÕ / Ýÿ¦©yì×Íú^ø
<xsl:template match="/">
<html>
<head>
<title>®`¨´</title>
</head>
<body>
<h1>®`¨´</h1>
<p><b>`</b><xsl:value-of select="*/`"/></p>
<xsl:apply-templates select="®`¨´"/>
</body>
</html>
</xsl:template>
XSL § B+ÄÝI5|CºÝø
1. XSL § \áXbÝÿPÀî«9Í
96 Ë©
2tigers.net
7.3 Þ XSLT
3. lÚXbÝÿP::b^bÿPETÕ /
4. s¨×ÍàÝÿP§ÍÝ/
-ôÝZC/pá
é
Ý
9¦»GÆÍÝÿPNvÞ®ßÝã <xsl:apply-templates
.../> 9Fæá×àÕXbETÕÝÿPKƱt+/¼Ææ¼ÿ
ø!'ÿ?J¨PMÆÝ(
M
P¾ XML 97
7 XSLT — XML ÝòÝ»ð+
ETÕ5®`¨´6ÝÿP|¸à
7. s¨×ÍàÝÿPAì
<xsl:template match="®`¨´">
<table>
<tr>
<th>`(</th>
<th></th>
<th>1°</th>
</tr>
<xsl:for-each select="®`">
<tr>
<td><xsl:value-of select="`("/></td>
<td><xsl:value-of select=""/></td>
<td><a href="{1°/@çë}"><xsl:value-of select="1°"/> ←-
</a></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
xsl:for-each /º
select ETPXETÕÝ;Fÿ©b×Íb?ãÍA©
98 Ë©
2tigers.net
7.3 Þ XSLT
`6"8î
&ƨ3|µî×;ÎÝø.yìÝI5ø
ôµï'
W²N ÂÕ <xsl:value-of ... /> ` XSL §
º|ÙWXETÕÝZC/ — 5½Î5Wlôâ65$2346
I5Îì×;ÝxÞõ`Ѹ
ÉÕÏÞÍ5®`6"8A°¼×µ§ÍÝ/
¨´6ÝÿP.×Ʊ§ öÎ/Õæ¼Ý6áFôµÎq-ô /
¸Æï'Õí×W
ôÉA 5®`¨´6Ý5®`6Q¨Ýgó??üNg¨´Ý
¨ã5®`6&ÆÝø!K|BÑ;µÑ@2º9ͥݩPÎ
7.3.6 ?òPÂÿ@
P¾ XML 99
7 XSLT — XML ÝòÝ»ð+
»b9ó×ð
<td><a href="{1°/@çë}"><xsl:value-of select="1°"/></a></td>
ETPNv®ðAPETÿÕÝ39Ío»òPÂÿÎ
Îà¼ETòP(Ý 9ø@ETÝòP(.h)R¼51°/@çë6
ºETÕ¨;F9ì×ͧ51°6-ôÝ5çë6òP
C/¼®ðÄ9gÝPETÕÝÎ-ôÎòP9˵ì XSL
§ º|òPÝòP¼ð.h
<td><a href="{1°/@çë}">......</a></td>
º5½»ðW
<td><a href="http://foo.bar/mouse/12478943">î½sº</a></td>
õ
<td><a href="http://foo.bar/kbd/83424723">®`©P</a></td>
7.3.7 íZCD'
UTF-8
°²ÀÝ×°ÐóèºÃÍÝóCºÕõC§
7.5 ð
Ý — @®Y
.Ð@3hÈ
| xt ®
Ý XSL § A
à IE5 ÝÄ¢
Ï 7.5.2 ;Ý&¥¯4
7.5.1 xt
ETP 1
Ø-ô ETÕ¨;FìXb(
5Ø-ô6Ý-ô
* ETÕ¨;FìXb-ô
*/Ø-ô ETÕ¨;FÕRXb(
5Ø-ô6Ý
;F
@ØòP ETÕ×Í!òö¨;F(
5ØòP6ÝòP
@* ETÕXb!òö¨;FÝòP
text() ETÕ¨;FÝ-ôXbZC;F
. ETÕ¨;F
.. ETÕ¨;Fî×ù
Ø-ô[1] ETÕ¨;FìÏ×ͧ5Ø-ô6Ý-ô
Ø-ô[position()=1] ®à!î
Ø-ô/[@ØòP="ØÂ"] ETÕ¨;FìXb(
5Ø-ô6Ý-ô9
Í-ôÄ6âb×ͧ5ØòP6ÝòPÍò
PÂÄ6
5ØÂ6
-ôä|-ôØ ETÕ¨;FìXb(
5-ôä6õ5-ô
Ø6Ý-ô | 5T6Ýn
.//+t ETÕ¨;F9ìXb(
5+t6Ý-
ô// Ðr¬÷óù
Þ//4 ETÕXb(
546Ý-ô¸ÆÝîùÄ6
b×ͧ5Þ6Ý-ôv5Þ6ÿΨ
;FÝ×Í-ô
Java Ìa^
ÝÈ
óìµ
xt © Î Í XSL § Í Î / ¢ XML . h H xt G
P ê Y î Z Ý ? ? ó 3 h '
. & Sun Ý XML parser ¸
http://developer.java.sun.com/developer/products/xml/ ¹ð쵬
×Àýï
ìµ xt
xt ftp://ftp.jclark.com/pub/xml/xt.zip ìµ
H — 'v½5
xml4j.jar . . . ÝH5
à1gj;ú
xt ÎÍúÝ¢ób°3ANgÆ`KÆ×H^[£Ý9
shell script »
#!/bin/sh
JÍÝ5'A
¸à Windows ¿¬J|¶×Í 9øÝ1g
j (.bat)
@ECHO OFF
SET JAVA=java
¸à]°
3ÙÆj5
xt XMLÙDj( XSLø!j( íjj(
×ÎëÍ¥j(Ý¢ó'
Ý'×6Ñ@ãJÖ+»ð¼ÝT
µºD3íjj( 9Í
X¼Ý±jn¦ÝA^ÿÕíjQ:Õý0
|¶m¼2sìxÞî«èºÝ shell script |Ñ;ÉAá/
7.5.2 ε IE5
6J9°2]KB|¥ýî3o»¦|ì/1Ñ;Ý¥F
(Ìè Ý-²
w3.org/1999/XSL/Transform . h ¯ IE5 Ñ @ § ø ! Ä 6 Ñ ;
ÿ.o»9À*T¥*
IE5 YîòPÂÿ
ï[7.3.1]bn9I5Ý¥NÞ
<td><a href="{1°/@çë}"><xsl:value-of select="1°"/></a></td>
9ð;ð
¥Ý¶°Ç@®`T¶W×
<td><a><xsl:attribute name="href"> ←-
<xsl:value-of select="1°/@çë"/> ←-
</xsl:attribute><xsl:value-of select="1°"/></a></td>
Þ|yîÆ/E]¥FTE]p£]ÝßÑÑ+¥X9øµº.
«Pf§Ý+°`TqÝ^h|+:Õ9Í~ OK T&&;
107
8 DTD — XML +VÝL
µ¯&ÆJ¸®Yê_Í DTD Ï
8.1.1 W`ï
<?xml version="1.0" encoding="GB2312" ?>
<!ELEMENT .&Lh (h°*) > A
<!ELEMENT h° ((Ì, ®ï+, ³*) > B
<!ELEMENT (Ì (#PCDATA)>
<!ELEMENT ®ï (#PCDATA)>
<!ELEMENT ³ (#PCDATA)>
<!ATTLIST ³
0J ( ±¬J | ßÓJ | )J | Y- ) ’±¬J’> C
8.2 -ôv½ ×
A &ÆZÝtÝ-ô½Wã5ãìÕî6ݯ¼59 ZÝ
2ELEMENT +wÝÎ-ô(#½Î¸Ý5/ÿl61Wç
¶!9Í5ÿl6àÀrÀR¼
É
|îëÍ-ôÝ/ÿlK§ó¼N¦©bÝZC/¯@
ôêâZC/Ç #PCDATA9Ë)/Ýhéÿlµf´Þýb:
°Ý
3#½LÍ-G&+ÛãÍ56Ðr
8.2.1 .
DTD ×A3Ñ!¨PbXÛÝquantifierTÌ5Þ6tðàÝb
5?65*6õ5+69ëÍÎà¼Ñø¸G«Ý£Í-ݧó1÷É
A&Æ15?0Ë69Í50Ë6ÑÎ×Í+«¼ÑøÝÞ3 DTD
8.2.2 ¨g
¨3/Õ-ôLÝÞîtÝãÍ-ôXÝ|+&Æ|?îL B
î×·Ý-ôôµÎ <h°>
+&Æ-Eh@|!o
......
<®ï>f«+</®ï>
<®ï>á(Ë</®ï>
......
Ý]P¼ý¥ÏÞë° . . . ®ï9ÑÎî«Ý ×35®ï6+\w×Í
rÝÞb¥¸!`!×Íh^b®ïÍJµº E5³6
9Í-ôÝL×øàÏràr
5£ %ó³×4µbPv|&ËË!ݳ6
. ×Íh^ÑP.}$ÎXh²×Íh|à!Ý0J
¼5½ Q9°K©Î&ÍßÝ:°
|µï
ÝmOõ?Ê
)§Ýçh7 DTD
8.3 òPv½ ×
×:R¼Î9øÝ
<!ATTLIST ³
0J ( ±¬J | ßÓJ | )J | Y- ) ’±¬J’ >
t¥ÝÎ50J . . . 69Ì®5òPL6bëÍ2
Ï×ÍÎòP(ÏÞÍÎòPv½t+Îï'ÂTï' ÝàAòP©
×ÍÝ9ëÍ-|NëÍëÍ9ø×à¥Æì39¦&Æàð
õ¹4.òPLM¼Í@ÙÙ^ÕG×ôWÈNÍ- ©
b×ÍèçC-âµÈÝ
òPLb9Ëø39¦&ÆóàÝÎÊ)&ÆÝfPî°.Xb
&Æ.50J69ÍòP6¯*©¶
<³>120</³>
î«Ý-ôòP ×××'?+&Æ|.¸ÆJ§R¼W×ÍJÝ
Ý!×Íê9ìJÄ6@ýç멶j(5ÍJº0Õ
8.5 +
DTD Z`öíÞâc½\
ÑPýÝ