[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gentoojp-docs 317] DTD,XSLの話題
- Subject: [gentoojp-docs 317] DTD,XSLの話題
- From: Takashi Ota <088@xxxxxxxxxxxxx>
- Date: Wed, 2 Jul 2003 09:29:38 +0900
太田です。
ircの方で話題が出てましたので、備忘録として書いてみます。
----------
最近GentoojpのTopページにもClock画像を使ったplansカテゴリのNewsが登場しました。
この時に変更されたのが、guide.xslです。その時にguide.dtdの変更はありませんでした。
文書型定義(DTD)としては、
<!ATTLIST news gentoo (yes|no) "no"
category (gentoo|main|ibm|linux|moo|nvidia) #REQUIRED>
この行に変更があってもおかしくはありません。
<!ATTLIST news gentoo (yes|no) "no"
category (gentoo|main|ibm|linux|moo|nvidia|plans) #REQUIRED>
でしょうか。
ちなみに、
<?xml version="1.0" encoding="ISO-8859-1"?>も変更した方が気持よさそうなのは
僕だけかな?(^^;
----------
次に、そのニュースの中でdrobbins が書いた最新のドキュメント
management-structure.htmlでは、
<?xml version='1.0' encoding="UTF-8"?>
<?xml-stylesheet href="/xsl/guide.xsl" type="text/xsl"?>
<guide link="/doc/en/management-structure.html">
<author title = "Author">
<mail link = "drobbins@xxxxxxxxxx">Daniel Robbins</mail></author>
(略...)
で始まっており、
文書型定義(DTD)としては、
<!ELEMENT guide (title, subtitle?, author+, abstract, version, date,
newsitems?, chapter+)>
<guilde><title></title><author></author>....</guide>となるはずなのに
なってません。(^^)
----------
というわけで、他にもいろいろあるんでしょうが、
非検証なXML文書が.orgさんの当然の状態となりつつあるようです。
たまたま、時間が無かったからかもしれませんが。
XMLがXSLTを介してHTMLとして見える際に非検証であっても特に
影響は無いわけで、実際、guide.xslの中に<xsl:when>がたくさん
使われて、巧みにエラー回避されているようです。
DTDで先程のmanagement-structure.htmlを検証します。xmlとdtdは
同じ階層においてます。
$ xmllint --dtdvalid guide.dtd --noout management-structure.html
management-structure.html:4: Element guide content does not follow the DTD
Expecting (title , subtitle? , author+ , abstract , version , date ,
newsitems? , chapter+), got (author author version date abstract chapter )
Document management-structure.html does not validate against guide.dtd
ということで違反のようです。(汗
そのうち、DTDが捨てられるかrewriteされるんでしょうね。
xml-guide.htmlにもそのあたりの記述はちょっと見た限りなさそうです。
--
Takashi Ota.<088@xxxxxxxxxxxxx>