xml属性を避けて要素を使うのはなぜでしょうか?

XMLスキーマを以下のように定義し、dept = "lab"とid = "001"のsalを取得しなければならないとします。


    
        lab                    
        001                        
        male                 
        5k                         
                                              

別の方法、

                                     
                                               
                                
            male                 
            5k
                               
                                              

私は2番目の方法は解析する方がはるかに優れていると思いますが、属性を避けることをお勧めします。なぜですか?あなたは何を言っていますか?

2
標準的なルールはありませんが、私は単にウェブでグーグルで検索し、ほとんどの人が要素を使用するように提案しています。
追加された 著者 user1010399,
それはお勧めですか?
追加された 著者 abatishchev,
追加された 著者 omegastripes,
これは重複している可能性があります:xml element"> stackoverflow.com/questions/ 33746/xml-attribute-vs-xml-eleme‌ nt
追加された 著者 user764357,

2 答え

属性を気に入らない人もいます。彼らは非常にばかばかしいと言い、Web上でその発言を見つけました。

あなたが同意しない場合は、その人を無視して、あなたが望むすべての属性を使用するようにしてください。 (重要であれば、SGMLとXMLの設計者があなたに同意したと推測できますが、属性を嫌う人には当てはまりません)。

0
追加された

属性を避ける主な理由は3つあります。

  1. 属性は複数の値を含むことはできませんが、子要素は複数の値を持つことができます。
  2. 属性はツリー構造を含むことはできませんが、子要素は可能です。
  3. 属性を簡単に拡張することはできません。将来、属性値を変更したい場合は、複雑になる可能性があります。
  4. 属性は構造を記述することはできませんが、子要素は記述できます。
  5. プログラムコードによって属性を操作することはより困難です。
  6. 属性値は、XML文書の正当な要素を定義するために使用されるDTDに対してテストするのは容易ではありません。

これは、属性ではなく要素を進めることをお勧めしている理由です...

0
追加された