実装設計でHTML5の仕様をDBへロードした後気が付いたのですが、それまで
言語の仕様やAPIのインターフェースは、単なるローカルオントロジー(OTG)だと
考えていました。しかし考えが間違っていて、タクソノミー(TXM)として考えた方が
適していると考えを改めました。
勝手に根拠みたいなことを考えてみました。
*言語やSWの規格等はそもそもHWとやり取りする為にある。理解してもらう相手
が人間ではなくて、機械であること。
*ほとんど日常生活では関係がないような、パラメータである場合がほとんどで
あること。
*従ってプロトコル定義そのものであること。
こんな対象のデータをOTGでは扱いにくいので、TXMで扱うべきだと考えました。
このように考えると、TXMなので意味を追及しないで言語の習慣になれれば、
プログラム言語も習得し易くなりました。
例えば、Prolog+Erlang習得をすれば関数型言語の仕様が半分程度理解ができる。
Haskellのモナドをフレームワークと捉える(IIJの山本和彦氏)
以上の、ことが素直に理解できるようになった気がしています。
話が脱線しましたが、HTML5の言語仕様のような場合は、メタデータを多次元で
構造化して、DBのテーブルを定義すれば、比較的簡単にデータをDBへロード
することができます。
では言語仕様をDBへ入れ込んで何が嬉しいのかピント来ないかもしれませんが、
言語の構造がどうなっていて、構造を正規化して持つことが重要だと考えています。
言語には文法をBNFで定義することが一般的ですが、パーサを掛ける時はBNF
からパーサを作成して解析すれば、シンタックスまでは解析できます。
しかし、セマンテックな部分までは殆ど理解できません。
プログラムコードをセマンティクな部分まで解析が必要な場合は
APIやフレームワークの部分をTXMを使い構造化する必要があります。
XBRLはタクソノミーを利用している技術ですが、ここで指向していることは
データフォーマットにあたるところのタクソノミーではなくて、プログラム
側でのコンテキストに対する、タクソノミーの適用を指しています。
システム開発手法では、情報資源管理(IBM,1982年)を再度TXMで取り組むことを
検討してみてもいい時期に来ていると考えています。
将来プログラム言語のベンダーがAPIの情報をXML化して提供してくれる
ことを切に願う今日この頃です。
0 件のコメント:
コメントを投稿