プロが教える店舗&オフィスのセキュリティ対策術

タグの属性の後にスラッシュを付ける表記がXMLに存在している事情を知りましたが、
それに関する疑問が残りました。

タグの属性の後にスラッシュを付ける遣り方と、そのタグ自体を省く遣り方とは、
効果が違うのでしょうか?

A 回答 (4件)

補足に在る通りだとすると、



やはり、と言う感じか。XMLなど全く興味が無く、まったく知らない方が、リストに従って、質問をねじりだした。

と言う感じですかね。

他の方が説明している通り、XML、SGML、HTMLなど規定されているマークアップランゲージでは属性は、タグの属性であり、

<属性 /> なんて書式は無い。これはすでに、質問者が示されている通り、エセ質問である。

この部分を指すなら、「タグ名」であり、ノードネームである。ただ、SGML的に言えば、DTDやその元を規定しているSGML宣言(文字コードなど規定している)ファイルからすると、確かに属性と言う表現もあるが、質問の趣旨からは、そぐわない。

それさえ、認めないで、補足で「属性」なんて表現している。

質問者はまず、

http://www.systemk.co.jp/products/xml/xml-secind …
http://search.yahoo.co.jp/search?b=1&n=10&ei=UTF …

などから、もう一度、勉強しなおして、投稿する事をお勧めする。

>そのタグ自体を省く遣り方とは、

読むだけなら10分程度。

理解するなら1時間もあれば、質問の回答も理解できるでしょう。

なお、XMLを理解する上で、最初に目を通しておくと理解が早くなるのがSGML関連知識。

http://search.yahoo.co.jp/search?p=SGML%E3%81%A8 …
http://yamanjo.net/knowledge/internet/internet_2 …

となるか。

そこには

<要素></要素>

などと説明している、SGMLからの呼び方としては「要素名」が正しいが、HTMLから入る人に対しては、「タグ名」として説明するのがいいでしょう。ただ、これをプログラミング(JavaScriptなど)の世界へ入ると、教則本で、XMLを扱う箇所へ行くと、突然「要素をしていする」とか、「要素名を取得する」「ノード名の取得」なんて突然でてくる。

混乱する方がたくさんいます。最初からマークアップランゲージについて、基本を学びましょう。

>タグの属性の後にスラッシュを付ける遣り方と、そのタグ自体を省く遣り方とは、 効果が違うのでしょうか?

この誤りは、教則本の最初の50ページまでに代々記載されています。

XML、SGMLのインスタンスには、2種類あり、

http://ykr414.com/xml/xml02.html

に記述されている。これらを理解しないと、理解できないと思います。質問する前に検索して、ちゃんと理解してから投稿しようね。

まあ、警告しても無駄だと思いましたが、とりあえす説明しておきましたよ。

この回答への補足

御丁寧に有り難う御座います。

学ぶ機会が全く無いからと申しましても、譬えを使う権利は無い、
という事を思い知りました。

補足日時:2011/06/21 06:54
    • good
    • 0

・XMLでは「attribute(属性)」という「専門用語」を定めているので、同じ単語を別の意味に使うのは混乱のもと。


・タグの名前なしにattributeだけがくることは無いので、<属性/> というもの自体が無意味
・<tag />というのは、XMLでは省略ができなくなった終了タグ(閉じタグ)を特定の条件下で省略して記述する方法であって、タグ自体を省略するものでは無い。
特定条件: 要素が空の時、 <tag></tag>→<tag/>tお書ける。

・挙動は、そのXMLを解釈するプログラム次第。
例えば、xhtmlの<br/>だったら、ブラウザは
<br/>と記述する→改行される
<br/>自体を省略する→改行されない
と明らかに違う動作をする。

また、別な例として、 <data><data1 a="0" /></data> のような形式を期待していて、
<data1 a="0"/>があるとき→a=0として処理
となるだろうが、
<data1 a="0"/>を省略したとき
→あるプログラムでは、aのデフォルト値として0が用意されていて、a=0として処理、と同じ動作になるかもしれない。
→別のプログラムでは、aのデフォルト値として1が用意されていて、a=1として処理、と別の動作になるかもしれない。
→さらに別なプログラムでは、aの設定が無いのでエラーになるかもしれない。

この回答への補足

有り難う御座います。

良く分かりました。

補足日時:2011/06/21 06:57
    • good
    • 0

空集合自体の有無の格差についての質問なのかな?

    • good
    • 0

>タグの属性の後にスラッシュを付ける遣り方と、そのタグ自体を省く遣り方



具体的にどのようにするか回答してください。

それと、日本語的におかしくないですか?

「タグを省く」とは、どのような事を指しているのかわかりませんが、そのままの意味を取れば、

存在しない

する

ですよ。全く違いますよね??????????

もし、そのような記事があるサイトがあれば、それらのURLも示してください。

200%誤解しています

なお「<属性/> 」

とありますが、表記も間違っています。意味不明なものです。属性とは何を指していますか?

この回答への補足

すいません。

欠落させても悪影響を及ぼさない種類のタグの有無を知りたい、
と考えております。

ちなみに、「属性」という表現は全ての属性を指しています。

補足日時:2011/06/18 16:37
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!