2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

XMLのフォーマットを決める時の判断基準

Posted at

#XMLのフォーマットを決める時にどうすればいいか
動画を管理するツールを作ろうと思い、アプリケーションではXMLで情報を管理しようと思ったが、
XMLのフォーマットをどうしようか、と迷いました。
具体的には、、、

  • この情報は、要素? 属性?
  • 要素名は、大文字? 小文字?

方針を決めるべく、調べてみることに。

##参考になる情報がほしい
W3Cのサイトを見ればいいのかもしれないが、期待するものはなさそうなので、こういう時はGoogleに頼ろう。
なんと、GoogleがXMlスタイルガイドを公開していたので、これを元に「決まり」を考えることにしました。

Google XML Document Format Style Guide
https://google.github.io/styleguide/xmlstyle.html

どうやら2008年から存在しているドキュメントのようだ。(古い)
英語を読むのは疲れるので、Google翻訳の結果を掻い摘んで、自分用に必要なところだけまとめる。

##XMLフォーマットを決める判断基準はこうしよう
XMLのフォーマットに関するあれこれは、ドキュメントをみればいいとして(フォーマットを知りたいのではないので)、
要素と属性の判断基準はこうしようと思った。

  • 命名規則は「lowerCamelCase」にする→「sample」や「sampleData」や「sampleDataList」ね
  • 要素にする→項目が10個を超える場合
  • 要素にする→改行が必要なデータがある、複数行になる場合
  • 要素にする→繰り返し出てくるデータの場合
  • 要素にする→ユーザーに表示するデータの場合
  • 要素にする→独立したデータにできる場合
  • 要素にする→サブ要素が必要になる情報
  • 属性にする→XML内で固有のもの、XMLで変わらないもの(IDとか管理コードなど)
  • 属性にする→データの処理方法などの定義情報

##参考にXMLを作った
上記をベースに、動画を管理するためのXMLファイルを定義してみました。
※かなり簡単に、単純に、明瞭に。

video_list.xml
<?xml version="1.0" encoding="UTF-8"?>
<video id="hogehoge">
    <item>
        <fileName>動画1.mp4</fileName>
        <fileSize>1024000</fileSize>
        <length>1:23</length>
    </item>
    <item>
        <fileName>Movie_hogehoge.mp4</fileName>
        <fileSize>82876258</fileSize>
        <length>10:59</length>
    </item>
</video>
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?