#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ファイルを定義してみました。
※かなり簡単に、単純に、明瞭に。
<?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>