#?SuikaWiki/0.9 -[1] ''ToyFish.Net'' -[2] ''TR List/J_Tpc'' - [3] ''どら猫本舗のリファレンスカウンター'' - [4] ''XML'' は機械部品系で[[登録商標]] (登録3334400) の他、出版系の会社?が登録申請中です (商願2001-090297)。後者は謎のロゴを含めた登録で、 [[W3C]] XML に関係する書籍のロゴでないかと思われます。 - [5] [[W3C]] XML [[Activity]]: ''Extensible Markup Language (XML)'' - [6] ''Extensible Markup Language (XML) 1.0'' - [7] ''Extensible Markup Language (XML) 1.0'' : First Edition - [8] XML 氏んじゃの一部の人達って [[SGML]] 的構文 ([[DTD]] とか。) を毛嫌いしている嫌いがありますけど、たしかに XML の実装を作ってみるとわかります。 XML では文書インスタンスは[[完全タグ付き]]だから随分簡単に実装できちゃうんですけど、[[マーク宣言]]や[[マーク区間]]はそれが通用しない茨の道というか。 - [9] SGML から XML にしたときに文書インスタンス本体は完全タグ付きで単純にしたのに、 DTD は SGML 構文で取り残された形だから、 SGML ではどっちも似たようなものだったのに、 XML ではやけに複雑なきがしてしまうんだよね、 DTD とかが。 - [10] もうこうなってしまうと、マーク宣言もマーク区間も、 SGML 的な (XML からみたら) 「特殊」な構文を使うのではなく、 (XML からみたら) 一般的な[[タグ]]の構文にしちまえ、 [[XML名前空間]]だってあるんだしさ〜、という気持ちになってくる。 - [11] ''Errata in REC-xml-20001006'' - [12] ''To XML from HTML'' : [[SGML]] 側からみた [[XML]], というか [[ISO/IEC]] や 「「JIS]] の動向。 - [13] ''XMLの現状'' - [14] [WEAK[2004-02-05 12:07:54 +00:00]] ''[[名無しさん]]'': XML 1.0 TE, XML 1.1, XML Names 1.1, XML 情報集合 1.1 が一気に W3C 勧告になりました。 - [15] XML 1.0 TE, XML 1.1 は前規格との diff がありますけど、 Names と Infoset はなし。ひどいなあ。 XML も PR と REC の diff がないのは嬉しくない。仕方ないから [[XMLspec]] 版の diff 取ったら、ソース整形が一杯あって嫌になります。。。 で、 diff の結果ですが、 XML 1.1 PR→REC は細々した修正が多々と、 charmod WD への参照をやめて一部抜粋附属書化。技術的には大体 PR と同じでしょう。 (大違いだったら REC にはならんわな。) Names PR→REC も細々が多々。 1.0 TE PER→CR と Infoset は見てませんけど、どうせ同じような感じでしょう。 [16] XML 1.0 TE の変更点: - SE に対する errata の適用 - [[RFC2119]] 見出し語の採用 -- [CODE[[[[may]]]], [CODE[[[must]]]] の定義の削除 -- 見出し語 [CODE[[[MUST]]]], [CODE[[[REQUIRED]]]], [CODE[MUST NOT]], [CODE[[[SHALL]]]], [CODE[SHALL NOT]] への違反が (特に言及がない限り) [[誤り]]であるとされた [WEAK[([CODE[must]] は以前から誤りだったが、他は新規)]] - [CODE(char)[<]] を含む[[内部実体]]を宣言しても意味がないという注記に「一般」(実体) と補われる。 - [CODE(char)[&]] や [CODE(char)[<]] が[[注釈宣言]]や[[処理指令]]などでのみ生で出現できるから、それらを除いて出現しては'''ならない'''に改められた - 注釈宣言で[[引数実体参照]]が認識されないから認識'''してはならない'''に修正された - [[処理指令]]で引数実体参照が認識されないから認識'''してはならない'''に修正された - [[内部部分集合]]の引数実体参照について、マーク宣言外にのみ出現できるから、マーク宣言外では出現しても'''よい'''、マーク宣言外では出現しては'''ならない'''に改められた - 内部部分集合の後に[[外部部分集合]]があるものと考えるから、そう考えないと'''ならない'''に改められた - [Q[一つの開始タグ中で複数回現れても良い属性名はない]]から、[Q[現れては'''ならない''']]に改められた - [[属性値表記]]が[[外部非解析実体]]への[[実体参照]]を含めることはできないから'''ならない'''に改められた - 複数回[[要素型宣言]]に現れても良い[[要素型名]]はないから、要素型名は複数回現れては'''ならない'''に改められた - [[属性指定]]は[[開始タグ]]にのみ出現できるから、開始タグ以外に出現しては'''ならない'''に改められた - 複数の[[識別子属性]]を持てる要素型はないから、要素型は複数持っては'''ならない'''に改められた - [[列挙属性]]は値並びから一つ取れるから、取らなければ'''ならない'''に改められた - 複数の[[記法属性]]を持てる要素型はないから、要素型は複数持っては'''ならない'''に改められた - [[条件区間]]でマーク区間の内容が DTD の一部とみなされる・無視されるがみなさなければ'''ならない'''・無視しなければ'''ならない'''に改められ、 引数実体参照がこの過程では認識されないからしては'''ならない'''に改められた - 「解析実体の内容」が、 [Q[a parsed entity's contents]] から [Q[the contents of a parsed entity]] に改められた - [Q[引数実体参照は DTD 内にだけ現れても良い]]から、 [Q[DTD 外に現れては'''ならない''']]に改められた - [Q[外部解析実体の頭以外に現れても良い[[文宣言]]はない]]から、 [Q[現れては'''ならない''']]に改められた - [Q[[[置換文]]はその場にあったかのように処理する]]から[Q[しなければ'''ならない''']]に、[Q[置換文中の引用符は通常データ文字として扱い、[[表記]]の終端とはしない]]から[Q[扱わなければ'''ならず、終端としては'''ならない''']]に改められた - [Q[迂回してそのままにする]]から[Q[しなければ'''ならない''']]に改められた - [Q[前後に[[間隔]]を補って展開する]]から[Q[しなければ'''ならない''']]に、 [Q[ただし[[実体値]]中ではそうしない]]から[Q[しては'''ならない''']]に改められた - [CODE(XML)[[[gt]]]] などの二重[[逃避]]は[Q[不必要]]から[Q['''[[任意選択]]''']]に改められた - [Q[一つの[[記法宣言]]だけがある[[名前]]を宣言できる]]から、 [Q[ある名前が複数の記法宣言で宣言されては'''ならない''']]に改められた - 参考文献で当該文書へのリンクの始点が URI 文字列から文書名に改められた - [Q[XML 作業部会の構成員]]が[Q[関係者]]に改められた - XML 中核作業部会の章が第2版のものから第3版のものに改められた - [[XMLspec]] についての章が書き改められた SE に対する errata で既に修正された部分は大きな変更が幾つかあるのでそれはそれで重要なのですが、 他の言い回しの変化も重要かもしれません。 たとえば、[Q[一つの開始タグ中で複数回現れても良い属性名はない]]から、[Q[現れては'''ならない''']]に改められていますが、 以前は以前は[Q[ない]]と断定されていた以上、そうであるとしか言えませんでしたが、 TE では[Q['''ならない''']]ので、不適合文書ではそうではないことがあり得ます。 そして適合解析器は[Q['''ならない''']]ときにこれを誤りと見なすので、 回復しても'''構いません'''。 単なる言葉尻のことに過ぎないというのなら、それはそれで構いませんけど。 [17] XML 1.0 TE から XML 1.1 の変更点: → [[XML 1.1]>>17] 参照。