楽譜をXMLで保存できたらいいなぁと思った。今のところ楽譜そのものが持つ情報を記述するフォーマットはないようなので。
MIDIで音楽を記述することは出来るけどそれは楽譜が持つ情報そのものではないし、PDFで楽譜を書くことは出来るけどそれはあまりにも冗長だし。
楽譜のもつ構造をそのまま何らかの形で保存できたら楽譜データの蓄積が楽なんじゃないかと思った。で、XMLで書いて、フリー(というかタダw)の楽譜記号フォントとXSLTCSSを駆使すればブラウザで表示できるんじゃないかと…… ダメ?w

んで、まぁ適当にDTDやらXML Schemaやらのサイトをちらちら見たりしたわけです。ややこしいですねw
とりあえず見ていて、楽譜の構造解析が先だと思ったのでXML Schema文法は後回し。

考えてみたのはこんな感じ。

root要素-+-ヘッダ-+-曲名
         |        +-作曲者
         |        +-編曲者
         |        +-発表年次
         |        +-委嘱奏者・楽団
         +-本体---+-テンポ
                  +-発想記号
                  +-パート---------+-楽器名(1st Clarinet in Bbとか)
                  +-  ・           +-音部記号(ト音記号など)
                  +-  ・           +-拍子(4/4, 6/8など)
                  +-  ・           +-調(ハ長調イ短調、無調、など)
                                   +-音符(属性値に長さ、アーティキュレーションなど)
                                   +-休符(属性値に長さ、フェルマータなど)
                                   +-旗--------------------音符
                                   +-クレッシェンドなど--+-旗
                                   |                     +-音符
                                   |                     +-休符
                                   +-小節線
                                   +-フォルテやピアノ

でもこれだと

  • テンポチェンジどーすんだ
  • パート譜表示はいいけどスコア表示すんならある程度の長さずつ切って各パート順番に書いたほうがいいんだろうな
  • セクション区切りの記号は?
  • パーカスの楽器チェンジ
  • 2つ以上同時に鳴らす音(ピアノとかの場合)はどうやって書くんだ?

とかいろいろ問題が。難しいのぉ(;´д`)