ワープロ文書の互換性問題からHTMLによる文書管理を思いついた。

※高い技術力を持つ人にとって、結論はしょうもない話です。

MS入ってないから文書が作りにくかったです問題。

今通っている実習先のマシンには、Microsoft Officeが入っていません。必要なときはOpenOfficeを使っています。
今日、議事録を書いていたところ、「フォーマットあるよ」ということでファイルを送ってもらったのですが、Word文書であり、こちらに入っているOpenOfficeのバージョンが古いせいもあり、表の中身が表示されないというちょっと残念なことに。
正しい状態のものをpdfで再度もらい(とはいえpdf直接編集もできなかったのですが)、表の中身を埋めていったのですが、やはりレイアウトは残念な状態のまま、修正も(OpenOfficeを使い慣れていないため)うまくいかず。

そこで思い出したのが、ISO-HTMLについて調べているときに知ったHTMLの始祖であるところのSGML
「電子文書をワープロで行っていては、ソフト間の互換性の問題もあるし、将来そのワープロがなくなったらデータも失われてしまう。ゆえにどんな時代が来ようとも文書の意味が継承される仕組みを作ろう。」
という思想の下に生まれたSGMLは、現在XHTMLの形で続いているわけです。

ちなみにワタクシ、実習始まった当初、「勉強になるからサイト分析やってて」と指示され、分析結果をHTMLでガシガシ書き上げていったら、担当社員に呆れられたです。「こんな実習生は初めてだ。」って。
だって見栄えを記録したいと思ったらキャプチャとるわけだし、キャプチャしたものをWordなんぞに貼っつけるなんて面倒くさいし、ファイルサイズがどうなることやら。CSSでimg要素の縦横を指定しちゃえば、あとは貼り付ける画像を指定するだけで、サイズ変更なんて必要ないわけですし、効率的なんですよ。閲覧してもらうだけなら、ブラウザがあれば事足りるし。

そもそもMS Officeですらバージョン間の互換性の問題があるわけで。

特にExcel。2003でベクター画像を作りますよね、すると2007ではその画像、崩れるんですよ。水平垂直の線が斜めになり、編集困難に陥ります。上位互換性はどこ行った、ってなもんで。あのメニューバーがリボンに化けたせいで、どこに何があるのか分かりにくいし、目的の機能にアクセスするまでのクリック回数が増えるし。マイクロソフトなんてユーザビリティ規格の爪の垢でも煎じて飲みやがれなのです。

文書管理するなら、ブラウザでもいけるよなと。

そんなわけで、不肖akinori、思いついたとです。作る技術も無いのに思いついたとです。
「formとJavaScriptを使えば、社内文書みたいな規格化された文書を管理するのは楽だよな。」
と。
もともとは2週間ほど前に思いついたこと、
「formとJavaScriptを使えば、プレーンテキストの入力でマークアップされた文書を吐き出せるよなぁ。」
から始まっています。
具体的にはですね、

  1. HTMLのform要素でテキスト入力欄をたくさん作ります。
  2. このとき、「記入者」「議題」「出席者」「会議場所」「会議開始時刻/終了時刻」「目的」「議論」「決定事項」などの項目をそれぞれ振り分けます。日付は、JavaScriptで自動入力させます。そうすれば会議のあったその日のうちに書かないといけなくなります。
  3. 入力されたテキストデータの両端に、適切なHTMLタグをつけて出力させます。
  4. 吐き出された文書にCSSをつければ、整形された文書が出来上がります。
  5. その文書を保存します。

吐き出された文書自体にはマークアップがなされているので、このタグを解析してデータベースにぶち込むなり、あるいはマークアップされた文書を出力すると同時にフォームのデータをデータベースに入力するなりすれば、検索性の高い社内文書データベースが出来上がるはずです。

まあ、現状の私の技術力では、

  • テキスト入力欄の改行をマークアップに反映させることができるのか?
  • データベースとの連携ってどうやんの?
  • 出力結果をボタン一つで保存するのは、どうやるの?別窓に表示、メニューから保存、では面倒。ボタン一つでファイルを保存したい。

っていう問題が横たわっているわけですが。
しかし、このやり方なら、HTMLがこの世に存在する限りデータは継承されますし、ワープロソフトも不要です。ディスプレイでの表示、検索、紙での出力にもCSSで対応可能。外出中の上司の携帯にメールで送るのだって容易になるはずです。それどころか、外出先から入力フォームにアクセスして、会議をしながら入力、なんてのもできるはずです。もちろん、会議後、移動中に携帯からの入力して仕上げることだって可能です。

週末あたりに基本的なところを試しに作ってみましょうかね?データベース連携はできないけど。