テクノロジーによる教育支援への挑戦

テクノロジーによる学びの支援へのチャレンジについて書いていきます

PHPでXSL, XML

今日の午後は、PHPXMLファイルを処理する方法を調べていた。

IMSやADLなどでeラーニングリポジトリなどに関する標準化が進められているが、その多くはXMLベースでのデータ交換方式を採用している。たとえば、コースサイトをアーカイブするためのDTDを規定している。

今、取り組んでいるのは、WebCTやBlackboardなどIMS互換のコースサイトアーカイブを、Moodle独自の形式に変換するプログラム。これができると、WebCTやBlackboardの多言語版で開発したコースサイトをMoodleのコースサイトに変換できる。

それから、逆ができるなら、Moodleのコースサイトを定期的にIMS Content Packaging互換フォーマットに変換して、EduCommonsに格納すれば、自動的オープンコースウェアサイトが構築できる。もちろん、いきなり公開するのではなく、コンプライアンスなどのチェックをするプロセスを入れたほうがよいが、手作業で変換をするよりはずっと負担が少ない。こんなことはみんな考えているので既にXSLを書いている人がいるかもな、とも思う。

PHP4以降にはExpatやSablotronのライブラリを使うことができるし、PEARライブラリにはSOAPによるデータ交換をサポートするモジュールも含まれている。コース管理システムやポータルシステムなどの相互運用性を高めるために、XMLライブラリはなかなか重宝しそうだ。

また、別件で異なる学校の生徒同士が交流するプログラムを考えているのだが、Google Maps APIを使って、同じ地図上に歴史上のできごとや、調べたことをマッピングしたりしたら楽しいんじゃないか、という話をしていて、そういう場合にも役立ちそうだ。

以前は、XMLというとeマーケットプレイス上でのオークションや、受発注データの交換などビジネス的な文脈での利用が注目されてきた。だが、Web 2.0などへの注目により、XMLを取り巻く開発環境がこなれてきたこと。それゆえ、必ずしも基幹系システムとオープン系システムの連携だけでなく、もう少し汎用的な用途でも役立つようになってきたのだと思う。