Upgrade to Pro — share decks privately, control downloads, hide ads and more …

来たぞ登記所備付XMLデータ(1) / moj map xml data digest

sakaik
February 17, 2023

来たぞ登記所備付XMLデータ(1) / moj map xml data digest

2023/02/16 オンラインにて「法務省 登記簿備付地図XMLデータ」について、私がここまで学んだこと、試みたことを発表するイベントを開催しました。
手がけてから2週間(その時点でデータ公開から10日ほど過ぎていたので、遅いスタートではありましたが)という短い時間ながら、活発な情報流通の波に乗って膨大な知識(当社比)が貯まりました。いったんそれらを吐き出しておきたく、興味はありながらもまだこのデータに手を出していない人に向けて説明する機会といたしました。 その発表資料です。

■ 来たぞ!登記所備付地図XML (1)
~ sakaik がこれまでに知った範囲の情報と見てきたファイルフォーマットについて解説する回
https://connpass.com/event/275338/

sakaik

February 17, 2023
Tweet

More Decks by sakaik

Other Decks in Technology

Transcript

  1. 来たぞ!
    登記所備付地図XML
    坂井 恵
    @sakaik
    sakaikがこれまでに知った
    範囲の情報と見てきたファ
    イルフォーマットについて
    解説する回
    ハッシュタグ: #amxproject

    View Slide

  2. 登記所備付地図データXMLがやってきた!
    https://www.moj.go.jp/MINJI/minji05_00494.html

    View Slide

  3. 登記所備付地図データXMLがやってきた!
    https://www.moj.go.jp/MINJI/minji05_00494.html

    View Slide

  4. 本日の参加申込者アンケート
    Q:法務省 登記所備付データの公開を知っていましたか
    7 既にデータを利用して開発している
    6 データはダウンロードしてみた段階
    13 知っていて情報収集に努めている
    7 知っていたが特にアクションしていない
    11 今回のイベントで初めて知った

    View Slide

  5. 今日のおしながき
    1. これなんなの
    2. どんな取り組みがなされてるの
    3. ファイルフォーマットの詳解とデータ量の凶暴さについて
    登記所備付地図データXML
    1,2 は、この数週間で先達の皆さんに教えていただいたことや公
    知の情報を私なりに理解した内容をお話します。
    3 は、私が見てきた XMLファイルの中身について紹介をしたい
    と思います。ここが今日の中心です。

    View Slide

  6. 自己紹介
    • 坂井 恵 (さかいけい)
    • @sakaik
    • 有限会社アートライ
    • 日本MySQLユーザ会 副代表
    • OSGeo.JP 運営委員
    • 測量士補
    みんなが このデータを使って地図に載せている中、
    ひたすら、データファイルを見続けている
    今回の地図XMLに関しては、

    View Slide

  7. おことわり
    • 今回、講演者がこの数週間で見聞きしたこと、調査したことを中心
    にお話します。正確性には努めますが、講演者は この道(登記所
    データ)のプロではないので、著しく専門的な話題は期待しないで
    ください。
    • メインの話としては「このデータをどのように活用するか」という
    話は、ありません。データ形式そのものの話が中心となります
    てっとり早く利用する方法の解説ではなく、ファイル理解へ向けての
    話。地味です。ワクワクする人は多いと思う。

    View Slide

  8. 手っ取り早くデータを扱いたい人は
    データを地図に乗せて色々やってみたい人は
    • 1.デジ庁の変換ツールを使って自分で変換して使う
    • 2.amx-aプロジェクトの成果を利用させてもらう

    View Slide

  9. 今回公開されたコレ、なんなの
    登記所備付地図
    • 登記所?
    • 登記?
    • 地図?
    本日の参加申込者アンケート
    Q: 登記所(法務局)に行ったことがありますか(n=44)
    2 日常的に。
    7 何度も。
    12 行ったことはある
    23 一度もない
    事後補足:こんな話をしました
    - 登記所では、法人と不動産(土地など)の情報を管理しているんだよ
    - 法人や不動産の「登記簿謄本」を取得できる(個人の「住民票」みたいなもん)
    - 土地の謄本には、住所や面積等があるだけで、その住所が具体的にドコの場所かどんな形かは記
    されていない
    - 「不動産登記法」で、登記所に別途地図を備え付けることが決められている
    - (その「地図」にも、14条地図とか公図(地図に準ずる)とかあるんだけど今回は説明割愛)
    - 今回公開されたのは、その「備付地図」をデジタル化したもの

    View Slide

  10. 今回公開されたコレ、なんなの
    登記所備付地図
    • 登記所?
    • 登記?
    • 地図?
    • デジタル化していた! すごい!
    • 一般公開してくれるんだ! すごい!

    View Slide

  11. わたしの きっかけ
    • 緊急企画:法務省地図
    XMLハックナイト〜奥深
    き公図の世界にようこそ

    https://peatix.com/event/
    3491178/view

    View Slide

  12. その他のイベントも
    • 地理院地図ファンクラブ 2023
    年2月定例会
    • 「法務省地図データを考える」
    https://peatix.com/event/3496380/

    View Slide

  13. 法務省登記所備付地図データ 公開

    View Slide

  14. 法務省地図XMLアダプトプロジェクト
    • https://github.com/amx-project
    • 配布ファイルをDLしやすくしたり
    • 変換ツールを公開したり、集めたり
    • ベクトルタイルにして配布したり
    • 地図に載せて閲覧できるようにしたり
    • 勝手な集計結果を発表したり

    View Slide

  15. 地図で見る試みのひとつを紹介
    • 今ここ何番地? (法務省地図 on MapLibre)
    • by 土地家屋調査士 白土洋介氏
    • https://office-shirado.github.io/Moj_Maps/
    • MapLibreを使って開発(開発早かった!)
    ※今日は データのビジュアライズ
    例として、「今ここ何番地?」を
    使わせていただきます。
    ありがとうございます。

    View Slide

  16. kuwanauchi
    • kuwanauchiプロジェクトの
    おかげで「まずデータを手元に」
    が、ワンタッチで!
    今までなら「データを集めて満足」し
    ちゃっていたところ、そこは壁ではな
    くなった
    $ git clone https://github.com/amx-project/kuwanauchi12chiba

    View Slide

  17. 登記所備付地図XMLデータを入手しよう
    • 本家は、「G空間情報センター」
    • 欲しい地域のZIPファイル(1)をひとつひとつダウンロード
    • ZIPファイル(1) の中に ZIPファイル(2)がたくさん
    • ZIPファイル(2)の中にひとつの XMLファイル
    • 今回は kuwanauchi からの入手をお勧め
    • 二重ZIPを展開済で扱いやすい
    • 2023年2月初旬時点で全部揃っていることを確認済
    • お手軽に入手: git clone しよう
    • → 坂井のリポジトリ scriptフォルダ内 に clone_kuwanauchi.txt もあるのでよしなに

    View Slide

  18. 登記所備付地図XMLの全体
    • 47都道府県
    • 約31万ファイル
    • ZIP状態で約108GB(展開したXMLファイルを使用します)
    →とにかくでかい。 でかい。 でかい。
    ※各県ごとのファイル数をお見せしましょう

    View Slide

  19. 登記所備付地図XMLに含まれる情報
    • すべては「筆」のため
    ※一旦「ここ何」でいろんな地域を見てみましょう
    事後補足:「今ここ何番地」を
    使って、いろんな地域の「筆」
    を眺めてみました

    View Slide

  20. 登記所備付地図XMLに含まれる情報
    • すべては「筆」のため
    • 境界線が見える
    • それぞれの筆の地番や製作に関する情報が見える
    • 地図上でデータがあるエリアと、ない(ように見える)エリアが
    ある
    • →このあと解説します

    View Slide

  21. 地図XMLファイルを見てみよう
    • XMLファイルの概要
    • 基本情報
    • 空間属性(あとで)
    • 主題属性(あとで)
    • 図郭*
    ※テキストエディタで、実際のファイルを見てみましょう
    事後補足:テキストエディタで実際のXMLファイルを
    開いて、<地図>~地図> および、その中に含まれ
    るXML要素について説明しました。結構階層が深い
    のだということを見てもらえたと思います。

    View Slide

  22. 「位置の情報」ってどうやって表すの?
    • 点を結んで線を作る
    • 線を集めて面(エリア)を作る
    • そのエリアに「筆」として名前をつける
    • ではその最小要素の「点」はどのように?

    View Slide

  23. 「位置の情報」の基本
    • 「緯度経度」
    • 測地系色々
    • 日本は主に JGD2011 (2001年にTokyoからJGD2000に移行)
    • GPSとかは WGS84
    • 「地理座標系」と「平面直角座標系」
    • 地球は丸い → 地理座標系(緯度経度)
    • でも計算大変なので平面で考えるよ→平面直角座標系(メートル)
    ここでちょっと基礎知識注入

    View Slide

  24. 平面直角座標系
    • (細かい話は抜きにして)
    • 前提条件として、
    • 球面を平面で表すのだから、絶対に歪む
    • 要するにメルカトル(横メルカトル)
    • (グリーンランドが大きくなるアレ。ただし筒の向きは横向きにする)
    • 中心から遠くになるほど歪みは大きい
    • 実用上問題がない範囲をひとつのエリアとして定義
    • 日本を19のエリアに分割
    • 中心点から、北に何メートル、東に何メートル、という2つの数字で位
    置を表す

    View Slide

  25. 日本の平面直角座標系

    View Slide

  26. 日本の平面直角座標系
    • 同じ都道府県は同じ座標系で表せるようにしてある
    • 原点は機械的にキリの良い数字にしてあるだけなので、特にそ
    の点自体に強い意味があるわけではない(単なる「決めごと」)

    View Slide

  27. 例:平面直角座標系2系の原点
    • 熊本県の山の中にある
    少し余談

    View Slide

  28. 例:平面直角座標系2系の原点
    • 熊本県の山の中にある
    少し余談
    このへん

    View Slide

  29. 例:平面直角座標系2系の原点
    • 熊本県の山の中にある
    少し余談
    ドラクエウォークでも見渡す限りの森

    View Slide

  30. 例:平面直角座標系2系の原点
    • 2001年に「JGD2000」に移行
    • それまでは「Tokyo」測地系
    同じ座標値であっても、Tokyo → JGD2000 で指し示す先が 数百メートル
    ズレました
    少し余談

    View Slide

  31. 例:平面直角座標系2系の原点 少し余談
    • 2001年に「JGD2000」に移行
    • それまでは「Tokyo」測地系
    熊本の土地家屋調査士の皆さんは
    すばらしい!!(みんなでモニュメント
    を作ってくれた)
    ここから数枚、
    「旧測地系」の2系原点」の風景を
    堪能ください :-)

    View Slide

  32. (旧測地系)2系原点 少し余談

    View Slide

  33. 少し余談
    (旧測地系)2系原点
    事後補足:もうお気づきかと思いますが、本日の資料
    の背景画像。コレです。

    View Slide

  34. 日本の平面直角座標系 まとめ
    • 各エリア(系)の原点から
    「北にXメートル」
    「東にYメートル」
    という単位で表す。
    例「2系 X=-13490, Y=8340」
    https://www.gsi.go.jp/sokuchikijun/jpc.html より
    加工

    View Slide

  35. 平面直角座標系、OK?
    ガッテン!

    View Slide

  36. いま、ここの意味がわかるようになりま
    した!
    • XMLファイルごとに「座標系」が
    示されています。
    • その下の<空間属性>の中に、座
    標値X と 座標値Yのようなものが
    見えます。
    これが、「P00...1は 15系の
    X=22803, Y=20130」の場所を
    示していることを読み取れるで
    しょう。

    View Slide

  37. もうひとつの座標系:任意座標系
    • 外の世界とのつながりを意識せ
    ず、「この図の中の世界」だけ
    で辻褄の合った座標値
    • このままでは、地図上に乗せる
    ことはできない(「外の世界の
    座標」に変換する情報は何も
    持っていない)
    • 歴史的経緯より、これはやむを
    得ないこと
    事後補足:「地租改正」からミャクミャクと続く地図
    データのお話を少ししました。
    事後補足:最初のほうで「データがないように
    みえるエリア」というのは、コレのことでした。

    View Slide

  38. 地図XML:点、線、面、筆
    • 最終的には「筆」の形と名前の情報を得たい
    • ○○1丁目13-26 は (13, -12), (15, -8), (7,-6), (6,-15), (13,-
    12)で囲まれたエリア、のように。

    View Slide

  39. 筆情報
    • <主題属性> の中に<筆>のブロッ
    クがたくさんあります。
    • ひとつの筆の情報は以下のもの
    • 大字 のコードと名前
    • 丁目 のコードと名前
    • 地番 のコードと名前
    • 予備用のコード
    • 座標値種別:「測量成果」or「図上測量」
    • 形状: ポリゴン(面)のID
    その他「精度区分」などがあります

    View Slide

  40. 筆 ~ データを追ってみよう
    • ID "H000000131" の筆情報を
    追いかけてみよう。なお、この
    ファイルは冒頭で「任意座標
    系」であることが示されている
    • 右図のような大字、地番を持つ
    ことがわかる
    • 実際に測量したものではなく図
    上で位置を求めたものであるこ
    とがわかる
    • この筆は "F000000131" とい
    う形らしいぞ

    View Slide

  41. 面 ~ データを追ってみよう
    • F000000131 は、GM_Surface内のPolygon定義であることがわかる
    • このポリゴンは、C832 / C833 / C834 / C835 / C836 の5つの線に囲ま
    れていることがわかる(ゼロ省略表記しました)
    • さしあたって "C000000832" を追ってみよう

    View Slide

  42. 線 ~データを追ってみよう
    • "C000000832" は、GM_Curve 定義だ。筆界線を示している。
    • この線は、点P445 と 点P446 を結ぶ線だ(ゼロ省略表記)
    • この2つの点を追ってみよう

    View Slide

  43. 点 ~データを追ってみよう
    • "P000000445", "P000000446" の定義
    は右のとおり。
    • それぞれ、X=-54.769, Y=102.405、
    X=-59.512, Y=100.760 であることが
    わかる

    View Slide

  44. 仕上げ ~データを追ってみよう
    • 他の線も同様に調べると、線を構成する点は、
    • C000000833 は P000000446, P000000418
    • C000000834 は P000000418, P000000329
    • C000000835 は P000000329, P000000401
    • C000000836 は P000000401, P000000445
    • これらの点は、
    • P000000418 X,Y = -57.300, 96.360
    • P000000329 X,Y = -54.663, 93.782
    • P000000401 X,Y = -52.075, 94.783
    となる。(取り囲む形を表しているので、ひとつ前の線の終点が次の線の視点となっていることに注目)
    このことから、筆 id="H000000131"は、
    (-54.769, 102.405), (-59.512, 100.760), (-57.300, 96.360), (-54.663, 93.782),
    (-52.075, 94.783), (-54.769, 102.405) で囲まれたポリゴンを示していることが分かる
    (ぐるりと回って最初の点に戻っていることに注目)

    View Slide

  45. 地図への表示用データにするには
    • こうして得られたポリゴン情報は、まだこのままでは地図に表示で
    きる座標値にはなっていない
    任意座標系の場合→ 表示無理(何らかの追加情報が必要)
    (逆に言えば、ファイルごとに変換パラメタさえ決めれば当てはめられる
    期待も。 今後のみんなの活躍しだいかな(みんなで工夫))
    平面直角座標系の場合→専用のライブラリを使うなどして緯度経度に
    変換する
    え。ここまで自力でデータを見てきたのに、最後はブラックボックスのライ
    ブラリ使用? 自分で計算したい?? よね。

    View Slide

  46. 平面直角 →経緯度 変換
    • はいどうぞ。
    • 右の式は、平面直角座標から緯度経度を求める
    ことができます。頑張ってください。
    • 出典:
    https://vldb.gsi.go.jp/sokuchi/surveycalc/surv
    eycalc/algorithm/xy2bl/xy2bl.htm

    View Slide

  47. いや。意外と自力で
    計算できるかも?
    • 順に読み解いてみたら、半分く
    らいは定数を作る部分だった
    平面直角座標→緯度経度
    事後補足:イベントの2日前に「こんな複雑な式だから、
    自分でやるの無理でしょ。できる方ははいどうぞ」とい
    う軽い煽りのつもりで1枚前の資料を作っていたので
    すが、印刷して、依存関係にカラーペンで線を引いて
    みたら、意外と「事前準備」がややこしいだけで、式は
    読み解けそうな気がしてきました。
    お絵かきソフトを使って、国土地理院の計算式を切り
    貼り、並べ替えをした結果が、右の図。

    View Slide

  48. できちゃった・・・・
    平面直角座標→緯度経度
    事後補足:式を解読できたので、そりゃ実装したくなり
    ますよね。イベントの前の晩に数時間かけて書いちゃ
    いました(笑)。この関数、後ほど皆さん自由に使っても
    らえるように私のGitHubで公開します。
    一番大変なのがデバッグでした(1カ所数字が間違
    えていたのと、1カ所演算子を間違えていた(*とすべ
    きところ**になっている箇所があった)という、式をひと
    つひとつ見比べながらの地味なデバッグでした)。
    あ、あと。これから自分でも実装しようと思っている方。
    国土地理院の式には、与えられる原点の角度につい
    て、度→ラジアン への変換をわざわざ式の中に書い
    てくれている部分と、その変換がない(ラジアンを前提
    として変数を使用している)箇所が混在しているので、
    注意が必要です。(ρ'' が関係する箇所です)

    View Slide

  49. 実データ追跡、もう一題
    • このカドが丸い筆はどう
    なっているのだろう?

    View Slide

  50. 「浦安市鉄鋼通り2丁目 105-1」
    • 私の手元に、XMLファイルをtsv化したものがあります
    • 今回はそれを使って調べてみます
    • 本当はDBMSに登録したかったのですが、事情あり....
    $ grep '鉄鋼通り' 12chiba_* | grep '105-1'
    12chiba_syudai.csv:12227-0443-27.zip 筆 F000000168 005 002 0000 00 鉄鋼通り2丁目 105-1 測量成果

    View Slide

  51. F000000168
    $ grep 'F000000168' 12chiba_* | grep '12227-0443-27'
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002407
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002408
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002409
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002410
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002411
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002412
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002413
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002414
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002415
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002416
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002417
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002418
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002419
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002420
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002421
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002422
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002423
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002424
    12chiba_surface.csv:12227-0443-27.zip F000000168 C000002425

    View Slide

  52. [email protected]:/mnt/f/work/houm_mapxml/outtsv$ grep -e '12227-0443-27' 12chiba_* | grep -e 'C000002407' -e 'C000002408' -e 'C000002409' -e 'C000002410' -e
    'C000002411' -e 'C000002412' -e 'C000002413' -e 'C000002414' -e 'C000002415' -e 'C000002416' -e 'C000002417' -e 'C000002418' -e 'C000002419' -e 'C000002420' -e
    'C000002421' -e 'C000002422' -e 'C000002423' -e 'C000002424' -e 'C000002425'
    12chiba_curve.csv:12227-0443-27.zip C000002407 P000001478
    12chiba_curve.csv:12227-0443-27.zip C000002407 P000001471
    12chiba_curve.csv:12227-0443-27.zip C000002408 P000001471
    12chiba_curve.csv:12227-0443-27.zip C000002408 P000000704
    12chiba_curve.csv:12227-0443-27.zip C000002409 P000000704
    12chiba_curve.csv:12227-0443-27.zip C000002409 P000000705
    12chiba_curve.csv:12227-0443-27.zip C000002410 P000000705
    12chiba_curve.csv:12227-0443-27.zip C000002410 P000000706
    12chiba_curve.csv:12227-0443-27.zip C000002411 P000000706
    12chiba_curve.csv:12227-0443-27.zip C000002411 P000000707
    12chiba_curve.csv:12227-0443-27.zip C000002412 P000000707
    12chiba_curve.csv:12227-0443-27.zip C000002412 P000000708
    12chiba_curve.csv:12227-0443-27.zip C000002413 P000000708
    12chiba_curve.csv:12227-0443-27.zip C000002413 P000000709
    12chiba_curve.csv:12227-0443-27.zip C000002414 P000000709
    12chiba_curve.csv:12227-0443-27.zip C000002414 P000000710
    12chiba_curve.csv:12227-0443-27.zip C000002415 P000000710
    12chiba_curve.csv:12227-0443-27.zip C000002415 P000000711
    12chiba_curve.csv:12227-0443-27.zip C000002416 P000000711
    12chiba_curve.csv:12227-0443-27.zip C000002416 P000000712
    12chiba_curve.csv:12227-0443-27.zip C000002417 P000000712
    12chiba_curve.csv:12227-0443-27.zip C000002417 P000000713
    12chiba_curve.csv:12227-0443-27.zip C000002418 P000000713
    12chiba_curve.csv:12227-0443-27.zip C000002418 P000000714
    12chiba_curve.csv:12227-0443-27.zip C000002419 P000000714
    12chiba_curve.csv:12227-0443-27.zip C000002419 P000000715
    12chiba_curve.csv:12227-0443-27.zip C000002420 P000000715
    12chiba_curve.csv:12227-0443-27.zip C000002420 P000001472
    12chiba_curve.csv:12227-0443-27.zip C000002421 P000001472
    12chiba_curve.csv:12227-0443-27.zip C000002421 P000001479
    12chiba_curve.csv:12227-0443-27.zip C000002422 P000001479
    12chiba_curve.csv:12227-0443-27.zip C000002422 P000001497
    12chiba_curve.csv:12227-0443-27.zip C000002423 P000001497
    12chiba_curve.csv:12227-0443-27.zip C000002423 P000001496
    12chiba_curve.csv:12227-0443-27.zip C000002424 P000001496
    12chiba_curve.csv:12227-0443-27.zip C000002424 P000001495
    12chiba_curve.csv:12227-0443-27.zip C000002425 P000001495
    登場する
    C0000xxxx

    View Slide

  53. [email protected]:/mnt/f/work/houm_mapxml/outtsv$ grep -e '12227-0443-27' 12chiba_* | grep -e 'C000002407' -e 'C000002408' -e 'C000002409' -e 'C000002410' -e
    'C000002411' -e 'C000002412' -e 'C000002413' -e 'C000002414' -e 'C000002415' -e 'C000002416' -e 'C000002417' -e 'C000002418' -e 'C000002419' -e 'C000002420' -e
    'C000002421' -e 'C000002422' -e 'C000002423' -e 'C000002424' -e 'C000002425'
    12chiba_curve.csv:12227-0443-27.zip C000002407 P000001478
    12chiba_curve.csv:12227-0443-27.zip C000002407 P000001471
    12chiba_curve.csv:12227-0443-27.zip C000002408 P000001471
    12chiba_curve.csv:12227-0443-27.zip C000002408 P000000704
    12chiba_curve.csv:12227-0443-27.zip C000002409 P000000704
    12chiba_curve.csv:12227-0443-27.zip C000002409 P000000705
    12chiba_curve.csv:12227-0443-27.zip C000002410 P000000705
    12chiba_curve.csv:12227-0443-27.zip C000002410 P000000706
    12chiba_curve.csv:12227-0443-27.zip C000002411 P000000706
    12chiba_curve.csv:12227-0443-27.zip C000002411 P000000707
    12chiba_curve.csv:12227-0443-27.zip C000002412 P000000707
    12chiba_curve.csv:12227-0443-27.zip C000002412 P000000708
    12chiba_curve.csv:12227-0443-27.zip C000002413 P000000708
    12chiba_curve.csv:12227-0443-27.zip C000002413 P000000709
    12chiba_curve.csv:12227-0443-27.zip C000002414 P000000709
    12chiba_curve.csv:12227-0443-27.zip C000002414 P000000710
    12chiba_curve.csv:12227-0443-27.zip C000002415 P000000710
    12chiba_curve.csv:12227-0443-27.zip C000002415 P000000711
    12chiba_curve.csv:12227-0443-27.zip C000002416 P000000711
    12chiba_curve.csv:12227-0443-27.zip C000002416 P000000712
    12chiba_curve.csv:12227-0443-27.zip C000002417 P000000712
    12chiba_curve.csv:12227-0443-27.zip C000002417 P000000713
    12chiba_curve.csv:12227-0443-27.zip C000002418 P000000713
    12chiba_curve.csv:12227-0443-27.zip C000002418 P000000714
    12chiba_curve.csv:12227-0443-27.zip C000002419 P000000714
    12chiba_curve.csv:12227-0443-27.zip C000002419 P000000715
    12chiba_curve.csv:12227-0443-27.zip C000002420 P000000715
    12chiba_curve.csv:12227-0443-27.zip C000002420 P000001472
    12chiba_curve.csv:12227-0443-27.zip C000002421 P000001472
    12chiba_curve.csv:12227-0443-27.zip C000002421 P000001479
    12chiba_curve.csv:12227-0443-27.zip C000002422 P000001479
    12chiba_curve.csv:12227-0443-27.zip C000002422 P000001497
    12chiba_curve.csv:12227-0443-27.zip C000002423 P000001497
    12chiba_curve.csv:12227-0443-27.zip C000002423 P000001496
    12chiba_curve.csv:12227-0443-27.zip C000002424 P000001496
    12chiba_curve.csv:12227-0443-27.zip C000002424 P000001495
    12chiba_curve.csv:12227-0443-27.zip C000002425 P000001495
    「浦安市鉄鋼通り2丁目 105-1」まとめ
    • 細かい座標は追っていないけど、たくさんの点によって成立し
    ていて、たぶん、カドマルの部分を細かく打ってるんだろう
    なぁと想像できます。
    事後補足:当該部分拡大写真を載せました。確かにこ
    まかく直線が繋がることで、カーブを表していることが
    わかります。
    一部で線が二重になっている箇所がありますが、これ
    は道路側と敷地側で別々の筆界線を採用しているの
    かなぁ、と想像。

    View Slide

  54. 坂井の取り組み
    • GitHub:
    「登記所備付地図データダイ
    ジェスト」
    • 地図に情報を載せるでもなく、
    ひたすら、データだけを見て何
    か面白い集計とかできないかな
    とやっています。
    • 単にDBに乗せて何かできない
    かなと思っていただけ
    事後補足:集計した結果や抜き出したデータなどは、
    すべて、
    https://github.com/sakaik/kuwanauchi_xml_
    digest/tree/main/text/
    の中で公開しています。

    View Slide

  55. こんな集計をしてみました

    View Slide

  56. View Slide

  57. View Slide

  58. View Slide

  59. View Slide

  60. View Slide

  61. アップロードできなかった情報
    • 実はGitHubに公開しているのは、「基本情報」と「図郭情報」
    のサマリ(csv)だけです
    • 手元には、点、線、面、そして主題(筆や筆界など)のcsv(タ
    ブ区切り)もあります
    • なぜこれらを公開しないのか

    View Slide

  62. どれだけデータがあるの!?
    (Line_Filesize_count.xlsx と
    実際のディレクトリあたりを
    お見せしたいと思います)

    • 単純に全件をそのまま書き出すという発想は、賢くなかった...
    • やってみたから分かることがある
    • ぶっちゃけ、楽しかった:-)
    事後補足:要するに「超でかい」ということを紹介しま
    した。
    1億行越えのファイルがゴロゴロ。

    View Slide

  63. 参考: 処理中のCPUとメモリの様子

    View Slide

  64. こんな感じの事をやっていました
    今後は・・・・
    ファイルの中身をせっかく理解できたし、
    座標変換も自前でできそうだし、
    とりあえずデータ全件舐めるコードは手元にあるし
    ・・・・自前で、GeoJSONか何かの使えるデータ変換へ?
    車輪の再発明、万歳!

    View Slide

  65. 最後に、まとめとメッセージを
    その前に、、時間があれば図界の話も紹介したいが・・・
    事後補足:時間がなかったけど図界の話もしました。
    ひとつの地番はひとつのポリゴンになって欲しい(そ
    れが普通)と思いますが、複数の紙の図に跨がってい
    るものは、それぞれの紙に分かれた状態でデータ化さ
    れています。 例として沖縄の美ら海水族館付近から
    やや南にいった当たりを見ると不自然な「直線」が見
    えます。この直線の左右は、同じひとつの筆なのです
    が、データとしては分断されていることになります。
    データを使用する際には、注意が必要となります。

    View Slide

  66. 事後補足:伝える、習う。
    (1)それを更に伝える
    (2)伝わる(教わる)だけでなく、習う(実践する)ことが大切
    登記所備付データXMLに集うみなさんと一緒に「伝習」していけたら
    いいなと思いました。
    事後補足:amx-projectのメンバの方に教えていただいた言葉です。
    素敵な言葉なので、紹介します。

    View Slide

  67. 楽しい世界へのお誘い
    • ぜひ、ご自身で触ってみてください
    • XMLファイルをダウンロードして何かするもヨシ
    • 他の人が用意してくれたファイルをスタート地点とするもヨシ
    • データの確認をしてみるのもヨシ
    • 何かをまとめてみるのもヨシ
    • (今後出てくるであろう)任意座標データを補正する作業を手伝うもヨシ
    • まずは #amxproject をチェック
    • あなたも#amxprojectで情報発信(あるいは疑問をつぶやく)
    あなたのアウトプットが、
    次のアウトプットを生み出すかもしれません

    View Slide

  68. 今日のキーワード
    •登記所備付XMLデータ
    •amx-project (#amxproject)
    •伝習

    View Slide

  69. 事後補足:今回、自作自演の勝手イベントにたくさんお集まりいただ
    きありがとうございました。 勝手イベントではありましたが、情報や知
    識を伝えるこういう動きがもっと広がったらいいなとの思いを、タイトル
    の「(1)」に込めました。

    View Slide