パスワードを忘れた? アカウント作成

XML誕生から20年」記事へのコメント

  • 書き方1

    <sample>
        <item option="abc">
            <name>ABC</name>
        </item>
    </sample>

    書き方2

    <sample>
        <item>
            <name>ABC</name>
            <option>abc</option>
        </item>
    </sample>

    どっちが正しいのか分からず、数名と議論して、結局「書き方2」の方を選びましたけども。

    • by Anonymous Coward on 2018年02月12日 17時46分 (#3360246)

      私なら次のように考えますね。

      option の内容は複雑か(階層化した方が良いか)
      →YES なら書き方 2
      →No なら、option の数は 0..1 か 0..* か
       →0..1 なら書き方 1
       →0..* なら書き方 2

      初期値ないし単一のバインディングで済む書き方 1 で済むなら、そちらの方が楽です。
      ただし、それで表現できないケースは書き方 2 にせざるを得ません。

      まぁチーム開発で混乱したり議論になったり、後で書き方 1 → 2 になって面倒だ、ってなるぐらいなら 2 に統一で良いと思いますよ。

      • by Anonymous Coward

        大体同意。
        自分はぶっちゃけ、属性で済むデータ構造なら数がいくらあろうと属性で完結させてしまう。
        属性で表現できない構造を要素に展開していく。まあノードの意味も低優先で考慮はするけど。

        #3360237は、

        <sample>
            <item
              name="ABC"
              option="abc"
            />
        </sample>

        こうしたい。

      • by Anonymous Coward

        ついでに長い文字列になる可能性があるなら2にしない?
        改行とか"とか含まれることが想定される場合も2の方が見やすいと思う。

        • by Anonymous Coward

          現場レベルだとそういう判断は要るんだけど、
          理想を言うとテキストエディタの編集都合のためにXMLのフォーマットを変えるのは本道じゃ無いんだよなと思う。
          本当はスタンダードなXMLエディタというものが存在して、そのツール上では属性値も改行や引用符がそのまま使えるという姿であるべきだった。
          テキストエディタでXMLを編集するのは、ある意味テキストをバイナリエディタで編集するのと同じ行為で、
          メタ情報までいじれてしまうのはあんま良い形ではない。

          まあ結局、今日に至るまで支持されるXMLエディタは生まれていないのが現実なのだけれど。

私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike

処理中...