全2700文字
(写真:PIXTA)

 経済産業省は5月28日、法人の住所や電話番号の形式の統一を行うソフトウエアの提供を開始し、ソースコードも公開した。電子政府に向けた情報共有基盤の構築を円滑に進めるための取り組みの1つだ。今回のソースコード公開はシビックテックのコミュニティーからは好意的に受け止められていて、ライセンスの明示に関するアドバイスや共同開発への動きが出てきている。

日本政府公式ウェブサイトであることが明記された「IMIコンポーネントツール」は、ソースコードも公開されている

 公開されたソフトウエア「IMIコンポーネントツール」は、法人の住所や電話番号など、入力された情報の形式を統一するツールだ。例えば、このサイト「日経ビジネス」を運営する株式会社日経BPの住所は東京都港区虎ノ門4丁目3番12号だが、アンケートなどで入力してもらう場合、「港区虎ノ門4-3-12」など異なる表記や区切りで書かれることがある。そのデータだけを見るなら問題ないが、他のデータと突き合わせるときに表記の違いが問題になる。その他、地名の省略や半角全角の違い、別の漢字への置き換えなどもある。

 このツールはそうした区切りや表記方法の違いの他、書き方の揺れについても可能な限り統一してくれる。また、電話番号や日付の書式を統一してくれるものなど、いくつかのモジュールが公開されている。

 IMIコンポーネントツールのIMIは、情報共有基盤(Infrastructure for Multilayer Interoperability)の略称だ。その名前の通り、別々のところで作られたシステムをつなげて運用する際は、データ形式の統一が必要になる。このプログラムが置いてある日本政府のサイトgBizINFOは、法人版のマイナンバーである法人番号の導入を進めるためのサイトで、おそらく他にもシステム同士をつなげることを助けるソフトウエアや文書が公開されていくだろう。

ソースコードが公開された効果

 今回公開されたソフトウエアは、電話番号形式変換や住所形式変換などの機能がそれぞれ単体で動作するシンプルなモジュールとして開発されている。そのため、自分のシステムに組み込むなど利用しやすい。例えば、法人向けアンケートのシステムを作る場合に、回答者が入力した住所を、このモジュールを通してからデータベースに格納し、最初から整理されたデータにするといった活用が考えられる。

 そして、ソースコードが公開されているので、どういうデータを基に、どうやってデータを整形・変換しているかを具体的に把握でき、他のシステムに組み込んだり、連携して活用したりといったことも容易だ。また、データ正規化のための基となるデータ(例えば市町村コードなど)も明記されているので、市町村合併などで住所変更があったときにも修正しやすい。

 今の経産省サイトはプログラム改変へのフィードバックを受け付ける仕組みが整っていないが、市民有志の手でGitHubなど共同開発が可能なプラットフォームにプログラムを移すといったコラボレーションも始まっている。Code for Japan代表理事の関治之氏も解説ブログ「行政がオープンソースに投資すべき理由」を公開している。

様々なオープンソースソフトを公開している福野泰介氏はモジュールがより広く使われるように他のプラットフォームに移植。このようなことができるのがソースコード公開の効果だ

「オープンソース」に向けてライセンスの明示を

 「東京都公式の新型コロナ対策サイトはオープンソースで作られた!」などで紹介したソフトウエアはオープンソースだ。再利用の条件や規約、つまりライセンスが明示されている。ソースコードの公開と利用条件の明示は、オープンソース・ソフトウエアとして共同開発を進めていく上で不可欠なものだ。

 この記事を執筆している5月29日時点で、IMIコンポーネントツールはソースコードが公開されてはいるが、ライセンスについての記載が分かりづらい。プログラムを公開しているサイトにも、今回公開されたプログラムのREADME.md(プログラムの利用者に向けた説明文書)の中にもライセンスの説明はない。

 プログラム管理ソフトが読むためのファイル、package.jsonのソースコードにMITライセンスとの表記があるので、それを前提に活用が始まっているが、本来はライセンスについてもうすこし明確に(例えばREADMEファイルに書くなどの形で)説明があるはずだ。また、MITライセンスを適用する場合はライセンスへのリンクか全文掲載が必要だが、それはなされていない。

ソースコードの一部にMITライセンスとの記載はあるが、サイトやREADMEファイルには記載がない

 経産省のサイトには、サイト全体の利用規約があるが、これは資料やデータのためのものでプログラムの開発を念頭に置いて作られたものではない。そのため、今回のプログラム開発に適用するのは少し不自然に感じる。

 現在活用が始まっていることに対して、プログラムの作り手である経産省からクレームが出ることは考えづらいし、ソフトウエアが発展する活動が始まっていることはポジティブに捉えたい。今後もソースコードが公開されたソフトウエアがリリースされるなら、こうしたミスも改善されるだろう。

 今回のソフトウエアが今後オープンソース・ソフトウエアとして広く共同作業されるようになるためには、ライセンス明示の他に、「このソフトウエアは最終的に何を目指していて、今はどういう状態にあり、ソースコードを公開することでどういうフィードバックを期待していて、最終的にはこうしていきたい」という、共同で作業する人たちへの呼びかけや情報共有もあるべきだ。そうした互恵的な協調作業は、いわゆる「お役所仕事」の対極にある。政府の中でそれを進めるのは課題が多そうだ。

 かつて筆者が経産省と仕事をした際も、Google DriveやDropboxといったファイル共有システムは規定で使用不可だった。GitHubのアカウント開設のためにも様々な調整が必要なのかもしれない。しかし、オープンイノベーションとは、まさにそうした作業そのものである。

 Code for Japanのチャットで、IMIコンポーネントのソースコード公開は好意的に受け止められている。「システム開発のやり方」についてのフィードバックは、すでにいくつも開発者に寄せられている。いくつかは、この記事の公開時には改まっていて、ライセンスについても追記されているかもしれない。

 今回のソースコード公開はすばらしいことだ。日本が目指すオープンイノベーションに向けた大きな一歩と言える。新型コロナウイルス対策のための「新しい生活様式」が話題になっている。今回のソースコード公開のような取り組みが広がることで、ソフトウエア開発についての新しい様式が広がり、オープンイノベーションが拡大していくことは、日本の情報技術が発展していくための不可欠な要素だと考えている。