Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

< A href>

8 views
Skip to first unread message

ka...@sra-tohoku.co.jp

unread,
Jul 23, 2002, 7:45:42 AM7/23/02
to
ふつータグ類は <A href=...>と書きますが、
< A href> と識別子の前にスペースを空けると

・タグとして認知する
ぷららブラウザー(WorldTALK)

・知らんタグとして無視する
MSIE/1.5, 2.0 (Win)
Spyglass Mosaic
links
SurfACE
www (笑
busaic (笑

・そのまんま "< A href>" と表示する(!)
lynx
XMosaic-l10n
w3m
Mozilla/1.22, 2, 3, 4
MSIE/2.1 (Mac)
MSIE/3, 4
HotJava/1, 3
Lite
Cyberdog


SGML(JIS X 4151) を見る限り、「タグとして認知する」が正しい
よーな気がしますがどうなんでしょ。

5.2 SGML実体

構文解析は、それぞれのSGML文字に対して、出現の順に次の(1)-(4)の
とおりに行う。

(2)区切り子の一部でもなく短縮参照でもなければ、その文字が
分離子であるかどうかを検査する。分離子の場合は、その
文字を無視する。

5.2.1 分離子s
s = SPACE | RE | RS | SEPCHAR

6.4 開始タグ
開始タグ = (stago, 文書型指定, 共通識別子指定,
属性指定並び, s*, tagc) | 最小化開始タグ

------------------------------------------------------------------------------
かべ@sra-tohoku.co.jp VEGA Systems MCMXCI
「自分はレーサーだっていうのかい? たいしたことないじゃないか。」
------------------------------------------------------------------------------

Masayasu Ishikawa

unread,
Jul 24, 2002, 5:04:18 AM7/24/02
to
私の記憶が確かならば、JST 時間2002年07月23日(火) 20時45分42秒頃、
fj.net.www.authoring の <ahjfl6$e3l$1...@yagi.ecei.tohoku.ac.jp> の記事において
ka...@sra-tohoku.co.jp さんは書きました。

>ふつータグ類は <A href=...>と書きますが、
>< A href> と識別子の前にスペースを空けると

<snip/>
>・そのまんま "< A href>" と表示する(!)

これが正しい挙動でしょう。以下の記事が参考になるかも。

http://lists.w3.org/Archives/Public/www-validator/2001Sep/0021

もちろんこの場合開始タグが認識されずに終了タグだけが存在することになって
おかしなことになりますが。

>SGML(JIS X 4151) を見る限り、「タグとして認知する」が正しい
>よーな気がしますがどうなんでしょ。

<snip/>


> 6.4 開始タグ
> 開始タグ = (stago, 文書型指定, 共通識別子指定,
> 属性指定並び, s*, tagc) | 最小化開始タグ

ここで stago と文書型指定の間に s が認められていない点からも開始タグとして
認知されないのは明らかかと。

--
Masayasu Ishikawa

# XHTML の場合はもちろん well-formedness error。

ka...@sra-tohoku.co.jp

unread,
Jul 24, 2002, 10:36:09 AM7/24/02
to
<ahlqii$ok3$1...@news.sfc.keio.ac.jp>の記事において
mim...@sfc.keio.ac.jpさんは書きました。

>> >SGML(JIS X 4151) を見る限り、「タグとして認知する」が正しい
>> >よーな気がしますがどうなんでしょ。

>> <snip/>


>> > 6.4 開始タグ
>> > 開始タグ = (stago, 文書型指定, 共通識別子指定,
>> > 属性指定並び, s*, tagc) | 最小化開始タグ
>>

>> ここで stago と文書型指定の間に s が認められていない点からも開始タグとして
>> 認知されないのは明らかかと。

そーすか?

SGMLに限らずですが、この手の言語仕様の記述では
トークン間の空白をいちいち書くと煩雑なので、トークン区切りの方法を
あらかじめ策定した上でトークン間の空白は省略して書くことが
非常に多く、SGML(X4151)もその流儀に従ってるんだと思いましたが。
実際 5.2 に書かれている構文解析の各項はこの空白省略記述が
できるようにするためのお約束のように見えます。
(空白がない場合の解釈は 8.6 区切り子の認知 に従う)

snipされてしまった


>> (2)区切り子の一部でもなく短縮参照でもなければ、その文字が
>> 分離子であるかどうかを検査する。分離子の場合は、その
>> 文字を無視する。

てのはここでは使われないんすか?
(この部分は文法に s* が明示されていることは要求してない…はず)

後半では ps* やら ts* が出てきますが、これは前後が区切り子ではない
ことがあるので改めて明示してるんだと思います。(注釈をはさめるとかもあるが)

あー、もしかして
< A href>
^ stago (すぐ後の文字から照合開始)
^^ 文書型指定,共通識別子指定 (照合失敗)
てことすか?
(これでも stago 自体は認知されているはずだが…)
そすると「誤り」なのであとは勝手にすれ、でも可ですかね
開始タグとしては認知されませんが、
別に全部データ文字として扱わなきゃならん理由もなさそうな…

HotJavaが "A href>" と表示するので、一番それっぽい挙動なのかも

0 new messages