e-Govのデータが使いづらかった思い出。
2014-03-08自作サイトについて
Githubに法律のXMLファイルを公開した時に連ツイした、個人的な苦労話的なものを…。
e-govの法令HTMLデータを元に法律XMLを作成するまでの思い出を、申し訳ないですが連ツイで…。全11ツイートあります。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
e-govでは法令間でリンクが貼られており、号レベルでname属性が指定されています。なので、号単位で他条文を参照できるようになっているのですが、name属性がちょっとすごいことになっています。条文の構造が複雑になっても十分対応できるように…だとは思うけれど。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
他の法令へリンクをする時、ジャンプ先の法令ファイルの指定が「平一七法九八」みたいな指定方法になっています。法ならまだいいけど(先の例なら平成17年法律第98号と分かる)、府省令へのリンクだと「昭二七運輸省01000九七」みたいになっています…
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
府省令のファイルの命名規則は、年+F+数字3文字+数字8文字みたいになってて(人事院規則を指す場合は違う)、運輸省の省令=F039みたいなマッピングは別に用意しないといけません。昭二七運輸省01000九七ならS27F03901000097。法令システム内ではどうなってるんだろ…
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
号の中に号がある時は入れ子構造になっていないません。号の中に号というのは、例えば建築基準法第2条9の2号の中のイの(2)の(i)のような。e-govではCSSでインデントを指定しているから見た目には正しくは見えるのだけど、号の構造を機械的に把握するのはちょっと工夫が必要です。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
法令HTMLではFONTタグなど、結構見た目重視のタグを使っています。また、MATHタグとか、COMPOSEタグもあります。MATHタグはHTML3.0にはあったけど、COMPOSEタグは、これまで発行されたHTMLの規格の中には1度も存在していません。そして、お尻P…。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
条文が1条しかなくて、「第一条」と振る必要のない法律には、不必要な閉じDIVがあります。たとえば http://t.co/fuNZacpBsA おそらく、「第一条」と振る場合に挿入されるべきDIVがあるのですが、「第一条」と振られなかったため、タグのミスマッチが起きたのでしょう。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
細かいタグのミスは8000以上ファイルが有れば、やはりそこそこあります。義務教育諸学校等の施設費の国庫負担等に関する法律施行令 http://t.co/Ld1FIxTDzo ソースの321行目、MATHの終了タグがあるべき所が開始タグになっていたり…。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
データのミス?の例だと、日本郵政株式会社法施行規則 http://t.co/sX22XTIUmM の第13条、第5項の次が第3項、第5項の下に第5号が来ています。抄録でもないし…?
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
また、条文全体に言えるのですが、枝番号孫番号の嵐がすごいです。その分、条文の改正などには柔軟に対応できるのですが…。機械的な処理をするときは単純なパターンマッチで処理しようとすると上手くいかなかったことはたくさんありました。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
このような処理を経て、ようやくそれなりのXMLにすることができました。今後、定期的にアップデートしていきたいな…、とは思いますが、果たして…。e-govの検索画面、使いづらいですね…。IPDL(特許電子図書館)も使いづらいですね…。うーむ。
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
特許公報検索とかもしてみたいのですが、特許文書をそのまま扱うことは著作権の関係でできなさそうです。著作権法第47条の9より解析結果を提供するだけなら大丈夫そうですが、特許文書は法律の数と比べてずっと多いのでクローリングは現実的ではありません。広報DVD買うのもなあ…。おしまいです
— S.Nakamura(Tokusa-P) (@_nika) 2014, 2月 14
法律のXMLファイルはhttps://github.com/nikaido/law_xmlsで公開していますですー。