東京メトロ オープンデータ活用コンテストについての懸念

以下はFacebook上での議論をまとめたものです.

東京メトロさんは以前から”オープンデータ”を行うという宣伝をしていたのですが,昨日やっと概要が公開されました.企業がオープンデータを出してその活用コンテストも行うというのは大変素晴らしいことで,何より多くの人が興味を持ちやすいデータですので是非応援したいし,できれば何かアプリを作りたいなとも思っています.

しかし,現在の応募規約について様々な疑問がでており,これはオープンデータではなく単なるAPIコンテストになっているのではないかという懸念があります.ちなみにこの規約のページは何故かPCのブラウザからは404 Not Foundですが,スマフォのブラウザからは見られるようになっています (PCからもヘッダ変えると見られます)

上から順番に見ていきますが,まず,“応募作品は、応募者が考案・開発したものであり、全ての著作権を有しているものに限ります。”とありますが,オープンデータを活用するのが前提である以上,データの部分の著作権は応募者が有していないことが殆どであるかとおもいます.ソフトウェア部分の著作権について述べていると解釈するのであればわかります.(追記: ソフトウェア部分もオープンソースのライブラリ等使ったら駄目ということですかね.)

次に“オープンフリーで利用できる他データの組み合わせは可能とします。(例、twitter API、yahoo API、など)”とありますが,オープンフリーの定義がわかりません.例として挙げられているtwitter APIやyahoo APIは少なくともオープンデータではありませんので,オープンフリーが何を指すのか明らかにして頂かないと応募者はわからないのではないでしょうか.

3つ目として,これが一番重要ですが,“応募者は、データ等を本コンテストへの応募作品の開発及び本コンテストの応募以外の目的で使用してはならないものとします。”とあります.オープンデータと謳うのであれば,このような目的外利用の制限はおかしいです.“応募者は、データ等及び本コンテストへの応募作品を、有償か無償かに係らず商業目的には利用できないものとします。”というのも同様です.

繰り返しますが,試み自体は大変素晴らしいことですので,東京メトロさんには是非オープンデータという単語を誤用せずに正しく理解した上でコンテストを行なって頂ければと切に願います.

Tags:

OS Linked Dataの行政区画は,Office for National Statistics(日本の統計局か統計センター?)のONS linked data portalにつながっています.例えばBoundary-Line Linked Dataの記事で取り上げた Haggerston のデータには,以下のリンクがあります.

<http://data.ordnancesurvey.co.uk/id/7000000000011110> <http://www.w3.org/2002/07/owl#sameAs> <http://statistics.data.gov.uk/id/statistical-geography/E05000239> .

ONS linked dataでは,統計上の区画を全てstatistical-geographyクラスのインスタンスとしています.これはOS Linked Dataとは異なる設計です.ここでは,OS Linked Dataから見て,HaggerstonとONS linked dataにおけるHaggerstonが同じである(owl:sameAs)というリンクをしています.以下の図は前回の図からONS linked data portalへのリンクを追加したものです.

OS Linked DataからONS linked dataへ
OS Linked DataとONS linked data

基本的にはONS linked data portal上にも各行政区画に相当するstatistical-geographyが記述されており,その包含関係も記述されています.一つ面白いのはLondonです.Londonには行政区画としてのLondonとEuropean RegionとしてのLondonが記述されており,OS Linked DataのLondonからのowl:sameAsリンクはEuropean RegionとしてのLondonにされていますが,ONS linked data portal上での行政区画の包含関係は行政区画としてのLondonを使うようになっています.これは意図して行っているのかが不明でもしかしたらミスかもしれませんが,意図しているのであれば明示的に役割によってLondonをURIで区別して利用している例だと言えます.

Tags: , ,

以前のOS Linked Dataについての記事.

郵便番号EC2A 4JEのデータを見ると,その郵便番号がある行政区画へのリンクがあります.

Boundary Line Linked Data   OS Linked Data
EC2A 4JEの行政区画

Ward: Haggerstonを見てみると,行政区画についてのデータとその境界線の表示をしてくれます.

Boundary Line Linked Data   OS Linked Data
Haggerston
% curl -LH 'Accept: text/turtle' http://data.ordnancesurvey.co.uk/id/7000000000011110
.......
<http://data.ordnancesurvey.co.uk/id/7000000000011110>
        a           <http://data.ordnancesurvey.co.uk/ontology/admingeo/LondonBoroughWard> ;
        rdfs:label  "Haggerston" ;
        <http://data.ordnancesurvey.co.uk/ontology/admingeo/gssCode>
                "E05000239" ;
        <http://data.ordnancesurvey.co.uk/ontology/admingeo/hasAreaCode>
                "LBW" ;
        <http://data.ordnancesurvey.co.uk/ontology/admingeo/hasUnitID>
                "11110" ;
        <http://data.ordnancesurvey.co.uk/ontology/admingeo/inCounty>
                <http://data.ordnancesurvey.co.uk/id/7000000000041441> ;
        <http://data.ordnancesurvey.co.uk/ontology/admingeo/inDistrict>
                <http://data.ordnancesurvey.co.uk/id/7000000000011199> ;
        <http://data.ordnancesurvey.co.uk/ontology/admingeo/inEuropeanRegion>
                <http://data.ordnancesurvey.co.uk/id/7000000000041428> ;
        <http://data.ordnancesurvey.co.uk/ontology/geometry/extent>
                <http://data.ordnancesurvey.co.uk/id/geometry/11110-241> ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/easting>
                533455.5 ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/northing>
                "182927"^^<http://www.w3.org/2001/XMLSchema#decimal> ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/touches>
                <http://data.ordnancesurvey.co.uk/id/7000000000011193> , <http://data.ordnancesurvey.co.uk/id/7000000000041879> , <http://data.ordnancesurvey.co.uk/id/7000000000010856> , <http://data.ordnancesurvey.co.uk/id/7000000000010854> , <http://data.ordnancesurvey.co.uk/id/7000000000010855> , <http://data.ordnancesurvey.co.uk/id/7000000000011112> , <http://data.ordnancesurvey.co.uk/id/7000000000011196> , <http://data.ordnancesurvey.co.uk/id/7000000000011111> ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/within>
                <http://data.ordnancesurvey.co.uk/id/7000000000011199> ;
        <http://www.georss.org/georss/point>
                "51.529489 -0.07749" ;
        <http://www.w3.org/2002/07/owl#sameAs>
                <http://statistics.data.gov.uk/id/statistical-geography/E05000239> ;
        <http://www.w3.org/2003/01/geo/wgs84_pos#lat>
                51.529489 ;
        <http://www.w3.org/2003/01/geo/wgs84_pos#long>
                -0.07749 ;
        <http://www.w3.org/2004/02/skos/core#prefLabel>
                "Haggerston" .

データで使われている語彙のURIが長いので以下のprefixで省略して書きます.

@prefix geometry: <http://data.ordnancesurvey.co.uk/ontology/geometry/>
@prefix spatialrelations: <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/>
@prefix admingeo: <http://data.ordnancesurvey.co.uk/ontology/admingeo/>

境界線データはgeometry:extentの<http://data.ordnancesurvey.co.uk/id/geometry/11110-241>に含まれています.GMLが直接埋め込んである形になっています.

% curl -LH 'Accept: text/turtle' http://data.ordnancesurvey.co.uk/id/geometry/11110-241
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix foaf:  <http://xmlns.com/foaf/0.1/> .
@prefix dct:   <http://purl.org/dc/terms/> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

<http://data.ordnancesurvey.co.uk/id/geometry/11110-241>
        a       <http://data.ordnancesurvey.co.uk/ontology/geometry/AbstractGeometry> ;
        <http://data.ordnancesurvey.co.uk/ontology/geometry/asGML>
                "<gml:Polygon xmlns:gml=\"http://www.opengis.net/gml\" srsName=\"http://www.opengis.net/def/crs/EPSG/0/27700\"><gml:exterior><gml:LinearRing><gml:posList srsDimension=\"2\">533259.9 183282.5 533263 183333.5 533338.9 183342.6 533438.8 183351.7 533469 183358.5 533470.5 183413 533472.6 183487.2 533475.4 183547.4 533479.4 183742 533478.1 183844.1 533479.6 183921.1 533557.9 183928.4 533667 183934.9 533714.4 183937.9 533735.2 183943.8 533719.7 183956 533700.9 183973.5 533684.8 183989 533663.3 184013.4 533693 184012.1 533723.7 184009.8 533736.6 184009.2 533779.7 184006.5 533807.9 184004.5 533827.5 184002.8 533882.3 183999.2 533882.4 184005.2 533930.4 184003.1 533928.4 183932.1 533925.2 183860.9 533928.2 183828.2 533937.5 183695.1 533942.4 183648.7 534044 183636.2 534094.3 183632.5 534105.3 183632.1 534116.1 183631.6 534164.2 183631.8 534223.2 183630.1 534330.8 183632.6 534431.4 183629.5 534479.5 183624.7 534466.7 183600.3 534458.1 183577.8 534454.7 183565.6 534456.6 183526 534463.6 183481.6 534466.6 183466.6 534477.6 183432.5 534486 183413 534496.6 183388.5 534502.3 183372.8 534472.2 183365 534431.7 183352.2 534313.1 183329.2 534303.3 183359.6 534301.1 183364.2 534286.4 183332.5 534269.8 183279.2 534252.2 183229.3 534234.1 183171.7 534225.6 183140.6 534156.8 183129.2 534109.3 183122.7 534019.3 183113.4 533976.4 183111.8 533933.7 183108 533885.2 183101.7 533857.5 183097.1 533837.3 183091.4 533813.9 183086.7 533778.1 183069.1 533768.9 183064 533753.4 183055 533710.8 183028.4 533692.3 183013.8 533683.8 183005.7 533670.1 182990.9 533651.6 182965.8 533633.1 182923.5 533608.1 182854.9 533597.6 182831.7 533587.2 182813.2 533584.2 182808.4 533560.1 182777.7 533539.3 182749.6 533503 182707.2 533478.3 182683.6 533543.8 182668.6 533541.7 182638 533530.1 182597.5 533523.8 182583.7 533523.8 182571 533524 182557.9 533525.4 182539.7 533532.1 182466.3 533543.3 182350.4 533579.8 182355.2 533590.8 182303.7 533595.6 182273.9 533595.3 182262.5 533593.2 182228.3 533590.5 182212.8 533589.1 182204.9 533587.6 182196.7 533578.1 182158.2 533574.1 182138.8 533568.8 182118.9 533567.3 182113.4 533549.2 182097.4 533530.3 182119.1 533501.9 182107.5 533447.5 182086.9 533426 182076.5 533411.9 182041.6 533410.7 182037.9 533320.2 182053.4 533250.9 182075.9 533230.5 182082.5 533215.8 182024.1 533198.6 181978 533184.6 181948.2 533182.4 181945.4 533167.5 181925.3 533146.8 181897.9 533119.2 181869.8 533078.9 181840.5 532946.1 181894.9 532955.7 181928 532965.8 181968.7 532978.1 182037.3 532989.2 182089.3 532993.7 182136 532998.2 182237.5 532999.2 182259.8 533004.7 182293.3 532983.6 182292.4 532941.1 182294.3 532941.6 182350.2 532918.3 182359 532920.4 182368.1 532929.3 182396.8 532944.9 182436.9 532963.7 182460.8 532942.7 182547.9 532938.5 182560.8 532968.5 182570.5 533030.4 182589.1 533033.1 182616.6 533034.4 182629.4 533033.9 182758.8 533098.2 182759.6 533130.9 182761.2 533172.8 182761.8 533179.8 182763.4 533188.1 182763.8 533220.3 182765.5 533225.7 182770.9 533274.9 182774.5 533279.2 182853.1 533280.3 182885 533279.7 182897.7 533277.3 182923.3 533263.6 182979.3 533261.1 182990.3 533259.6 183009.1 533259.8 183032.7 533261.9 183069.2 533260.6 183164.1 533260.9 183204 533259.9 183282.5</gml:posList></gml:LinearRing></gml:exterior></gml:Polygon>"^^rdf:XMLLiteral ;
        <http://data.ordnancesurvey.co.uk/ontology/geometry/hectares>
                124.25 .
.......

行政区画には隣接関係と包含関係があります.隣接関係は spatialrelations:touchesというプロパティです.包含関係は郵便番号と同様にspatialrelations:within, spatialrelations:containsプロパティが使われていますが,admingeo:county, admingeo:districtあるいはadmingeo:inCounty, admingeo:inDistrictのように直接の上下以外も明示的に個記述されています.

Boundary Line Linked Data   OS Linked Data
Administrative Region
Tags: , ,

OS Linked Dataの続きです.今回はCode-Point Open Linked Dataについて.Code-Pointはイギリスの郵便番号(Postcode)に関するデータですが,基本的な項目をCode-Point Openでオープンデータとして公開しています.詳細なデータを使うには別途メンバーシップ契約が必要です(How to buy, 実際の手続きはやったことないので不明).Code-Point Open Linked DataはCode-Point Openの部分についてLinked Dataにしています.

フォームでは郵便番号文字列の検索ができます.例えば”EC2A”で検索すると,EC2Aを含んだ郵便番号が返ってきます.

Code Point Open Linked Data   OS Linked Data
EC2Aの検索結果

地名と同様に,郵便番号もURIで識別されます.EC2AのURIはhttp://data.ordnancesurvey.co.uk/id/postcodedistrict/EC2Aです.Webブラウザで見ると以下のようになります.

Code Point Open Linked Data   OS Linked Data
http://data.ordnancesurvey.co.uk/id/postcodedistrict/EC2A

text/turtleを要求すると以下のような結果が返ってきます.

% curl -LH 'Accept: text/turtle' http://data.ordnancesurvey.co.uk/id/pozstcodedistrict/EC2A
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix foaf:  <http://xmlns.com/foaf/0.1/> .
@prefix dct:   <http://purl.org/dc/terms/> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

<http://data.ordnancesurvey.co.uk/ontology/postcode/PostcodeDistrict>
        rdfs:label  "Postcode District"^^<http://www.w3.org/2001/XMLSchema#string> .

<http://data.ordnancesurvey.co.uk/id/postcodearea/EC>
        rdfs:label  "EC" .

<http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A3>
        rdfs:label  "EC2A 3" .

<http://data.ordnancesurvey.co.uk/doc/postcodedistrict/EC2A>
        a                  foaf:Document ;
        rdfs:seeAlso       <http://sameas.org/rdf?uri=http://data.ordnancesurvey.co.uk/id/postcodedistrict/EC2A> ;
        dct:title          "Description of http://data.ordnancesurvey.co.uk/id/postcodedistrict/EC2A" ;
        foaf:primaryTopic  <http://data.ordnancesurvey.co.uk/id/postcodedistrict/EC2A> .

<http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A1>
        rdfs:label  "EC2A 1" .

<http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A4>
        rdfs:label  "EC2A 4" .

<http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A2>
        rdfs:label  "EC2A 2" .

<http://data.ordnancesurvey.co.uk/id/postcodedistrict/EC2A>
        a           <http://data.ordnancesurvey.co.uk/ontology/postcode/PostcodeDistrict> ;
        rdfs:label  "EC2A" ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/contains>
                <http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A4> , <http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A3> , <http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A2> , <http://data.ordnancesurvey.co.uk/id/postcodesector/EC2A1> ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/within>
                <http://data.ordnancesurvey.co.uk/id/postcodearea/EC> .

ここで面白いのは,イギリスの郵便番号の記法には体系があって,その包含関係がデータとして記述されています.具体的にはhttp://data.ordnancesurvey.co.uk/ontology/spatialrelations/withinhttp://data.ordnancesurvey.co.uk/ontology/spatialrelations/containsという二つのプロパティを使ってその関係を記述しています.地域によって桁数等は異なりますが,全体として必ず4階層になるようになっています.以下はOpen Data Instituteの郵便番号である EC2A 4DJ の例です.左の青丸が郵便番号のリソースで,右の茶丸は属するクラスです.図を簡略化するためにURIは省いてあります.

Code Point Open Linked Data   OS Linked Data
Postcode Model

一番下のPostcodeUnitが実際に使われている郵便番号に相当します.http://data.ordnancesurvey.co.uk/id/postcodeunit/EC2A4JEを見ると,PostcodeUnitのデータには行政区や統計上の区分との関係が記述されるようになっています.これは別エントリで書きます.

Code Point Open Linked Data   OS Linked Data
http://data.ordnancesurvey.co.uk/id/postcodeunit/EC2A4JE
Tags: , ,

Ordnance Surveyは日本の国土地理院に当たる組織であり,様々なオープンデータをOS Open Dataとして公開しています.

この中で,一部のデータはLinked Dataとしても公開しています.サイトはOS Linked Dataです.
具体的には地名辞典郵便番号境界線データを公開しています.これら全てのデータが混ざっているEndpointも公開しています.

まず50K Gazetteer Linked data (5万分の1地図の地名辞典)について.イギリスには”Little London”という地名がたくさんあります.フォームで検索すると34件のヒットがあることがわかります.ちなみにこの文字列検索もAPIです.50K Gazetteer Linked Data   OS Linked Data

結果を見ると,どの項目もtitleやlabelは”Little London”ですが,”link”に入っているURIがhttp://data.ordnancesurvey.co.uk/id/50kGazetteer/140011, http://data.ordnancesurvey.co.uk/id/50kGazetteer/140012のように異なります.まさにURIを地名の識別子として利用しています.これらのURIにブラウザでアクセスすると,各々の”Little London”についての情報が表示されます.

50K Gazetteer Linked Data   OS Linked Data
http://data.ordnancesurvey.co.uk/id/50kGazetteer/140011

50K Gazetteer Linked Data   OS Linked Data
http://data.ordnancesurvey.co.uk/id/50kGazetteer/140012

また,text/turtleやapplication/json等を要求すると303 Redirectでデータが返ってきます.

% curl -LH 'Accept: text/turtle' http://data.ordnancesurvey.co.uk/id/50kGazetteer/140011
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix foaf:  <http://xmlns.com/foaf/0.1/> .
@prefix dct:   <http://purl.org/dc/terms/> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

<http://data.ordnancesurvey.co.uk/ontology/50kGazetteer/Other>
        rdfs:label  "Other" .

<http://data.ordnancesurvey.co.uk/doc/50kGazetteer/140011>
        a                  foaf:Document ;
        rdfs:seeAlso       <http://sameas.org/rdf?uri=http://data.ordnancesurvey.co.uk/id/50kGazetteer/140011> ;
        dct:title          "Description of http://data.ordnancesurvey.co.uk/id/50kGazetteer/140011" ;
        foaf:primaryTopic  <http://data.ordnancesurvey.co.uk/id/50kGazetteer/140011> .

<http://data.ordnancesurvey.co.uk/id/50kGazetteer/140011>
        a           <http://data.ordnancesurvey.co.uk/ontology/50kGazetteer/NamedPlace> ;
        rdfs:label  "Little London" ;
        <http://data.ordnancesurvey.co.uk/ontology/50kGazetteer/featureType>
                <http://data.ordnancesurvey.co.uk/ontology/50kGazetteer/Other> ;
        <http://data.ordnancesurvey.co.uk/ontology/50kGazetteer/mapReference>
                <http://data.ordnancesurvey.co.uk/id/OSLandrangerMap/95> ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/easting>
                "232500" ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/northing>
                "486500" ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/oneKMGridReference>
                <http://data.ordnancesurvey.co.uk/id/1kmgridsquare/SC3286> ;
        <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/twentyKMGridReference>
                <http://data.ordnancesurvey.co.uk/id/20kmgridsquare/SC28> ;
        foaf:name   "Little London" .

<http://data.ordnancesurvey.co.uk/ontology/50kGazetteer/NamedPlace>
        rdfs:label  "Named Place" .

また,SPARQLによるクエリも可能です.50K Gazetteer Linked Dataのページの”Find things using a query powered by SPARQL”というのをクリックするとフォームが出てきます.Endpointはhttp://data.ordnancesurvey.co.uk/datasets/50k-gazetteer/apis/sparqlです.

例えば,5万分の1地図はOS Landranger Mapsと呼ばれていますが,以下のように特定のLandrangerに含まれる”Little London”を得るクエリを書くことができます.

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX spatial: <http://data.ordnancesurvey.co.uk/ontology/spatialrelations/>
PREFIX gaz: <http://data.ordnancesurvey.co.uk/ontology/50kGazetteer/>

SELECT ?uri ?label ?easting ?northing ?featureType 
WHERE {
  ?uri a gaz:NamedPlace; 
    gaz:mapReference <http://data.ordnancesurvey.co.uk/id/OSLandrangerMap/143>;        
    rdfs:label "Little London";
    spatial:easting ?easting;
    spatial:northing ?northing;
    gaz:featureType ?featureType.
}

OS Linked Dataのもう一つ素晴らしい点は,OpenRefineReconciliation Service APIも提供しているところです.フォームは”Turn labels into identifiers powered by RECONCILIATION”というところ.APIはhttp://data.ordnancesurvey.co.uk/datasets/50k-gazetteer/apis/reconciliation.例えばAsh coppiceで検索すると,その補完候補として2つのAsh Coppiceと1つのBelt Ash Coppiceという地名をid(URI)やマッチのスコアを含めて返してくれます.このAPIを通して,OpenRefine上でデータの補完をしたり,RDF Refine用にURIを追加したりすることができます.

50K Gazetteer Linked Data   OS Linked Data
Reconciliation Service API
Tags: , , , ,

(2014-05-19追記) 5/16に無事本家サイトが復活したようです.また関連ニュース記事を追加しています.

4/9に datago.jpというサイトを立ち上げました.おかげ様で色々反響がありました.データカタログサイトの問題やdatago.jpについてはdatago.jpについてや下記のメディア等の記事を読んでいただくとして,ここには事の顛末を記録として書いておきます.

私がデータカタログサイト(試行版)(以下,本家サイト)が動いていないことを知ったのは4/2のことでした.その後twitterで植原先生が本家サイトで公開されていたメタデータのCSVを再公開してくださっていることを知ったので,それを使ってデータカタログ部分だけでもクローンサイトを作れないかと考えました.本家サイトのデータカタログ部分が使用しているのはCKANというFLOSSであり,適切なダンプデータがあれば簡単にクローンを作れるからです.データのライセンスもCC BYなので問題ありません.

ところが,ここで公開されているCSVは,私が知る限りCKANが直接吐くことができるファイルではありませんでした.今は植原先生がデータの出処について追記してくださっていますが,このファイルがどう生成されていたのか知りたいところです.この時点で少しやる気がなくなったのですが,翌日4/3にLODI内とOKFJ側双方から,”このデータを使ってサイトを作れないか”という話が出てきました.そこで,その時点で検討していたこと,標準のデータではないので一件ずつ処理してAPI経由で入れないといけないのですぐできるわけではないという旨を説明をした上で,サイトの準備を始めました.

API経由でインポートできるように処理を書いてデータ投入をしましたが,データとしては以下の問題がありました.

  1. 不足部分: 組織データ,リソースのID
  2. CKAN標準でない項目名: publisher, frequency_of_update, release_day, language, copyright, supplementation
  3. タグ: 空のタグや,API経由でインポートできない文字(具体的には%)
  4. 謎文字: ^\-

1の不足部分について,組織データはInternet Archiveに保存されていたページからデータを作りました.また,リソースのIDは知る方法がなかったので諦めました.このためリソースのURIも異なるものになるので,今後本家サイトが復活したときに,例えばリダイレクトして本家サイトに流すという対処はできません.

2のCKAN標準でない項目名について,publisherはmaintainerと解釈しました.また,frequency_of_updateとrelease_dayはextrasに入れてあります.language, copyright, supplementationは入れていません.これらもextrasにいれればよかったのかもしれません.

3のタグと4の謎文字はインポート時に発生していた問題ですが,単純に問題文字を削除しました.具体的には2020年30%というタグがあったのですが,これは2020年30として入れてあります.タグの文字列として記号を受け付けないのはもしかしたらAPI側のバグかもしれません.

知ったのが4/2で公開日が4/9なので,1週間作業していたことになりますが,殆どはデータインポートに費やした時間です.実際には公開した時点では処理が終わっておらず,一旦処理が終了したのは4/10でした.その後うまくデータインポートできていなかった分を追加するなど,まだデータ作業は行っています.

クローンサイトを作るにあたって,我々が有志で行っているData for Japanに入れるという案もありました.Data for Japanは日本のオープンデータのハブという名目で行っているので,本家サイトのデータを入れることは検討すべきことでした.しかし,ここまで述べたようにもとにしたデータが不完全だったことで,今後本家サイトが復活したときにそちらのデータを入れるのにまた苦労をすることが容易に想像できたので,別の一時的なサイトを立ち上げるという判断をしました.

そもそもの話をするとData for Japanに本家サイトのデータを予め取り込んでおけば良かったのですが,旧サイト(http://data.linkedopendata.jp)からData for Japanへの移行を行ったのがそもそも3月末でしたので,そこまでできなかったというのが現状でした.CKANには他のCKANからカタログデータを取り込む仕組みがいくつかあるため,取り込む事自体はそんなに難しくないはずですので,本家サイトが復活したらその方向も考えたいと思っています.

サイト作り自体にはそんなに時間を掛けていません.ソースコードはhttps://github.com/fumi/ckanext-fake-datagojpに置いてあります.少し悲しいのはソース見て何か言ってくる人がいないことですね.こういうところで協働できる人が増えてきて欲しいなとおもいます.

なお,今回の件を受けて,データカタログサイトは行政側がやるのではなく,民間側がやるべきという意見を受けるときがありますが,行政側がデータカタログサイトを運営することには明確な意味があります.それはそのサイトが一次ソースになるということです.当然,民間側でもそのミラーサイト等を作ることはできますが,それは二次ソースでしかありません.

追記: 4/8は裏でHeartbleed対応というイベントもありました.

Tags: , ,

WikidataWikimediaのプロジェクトの一つで,人間と機械が同じように参照・編集可能なフリーな知識ベースです.誰もが簡単に構造化データを作れます.WikidataはすでにWikipediaの言語間リンク等に利用されています.

技術的に見ると,WikidataはLinked Dataを基盤としています.まず,http://ja.wikipedia.org/wiki/森薫のWikidataページはhttp://www.wikidata.org/wiki/Q433255になります.DBpediaと異なり,一つのアイテム毎にユニークなid (Qの後のXXXXX)があり,それに多言語のラベルが付くようになっています.WikipediaとWikidataの対応関係を知るためにはリゾルバがあります.リゾルバのURI設計はhttp://www.wikidata.org/wiki/Special:ItemByTitle/{site}/{title}です.森薫の例だと,http://www.wikidata.org/wiki/Special:ItemByTitle/jawiki/森薫となります.

一方で,アイテム自体を識別するためのURIはhttp://www.wikidata.org/entity/Q{id}となっています.Q433255を識別するためのURIはhttp://www.wikidata.org/entity/Q433255です.Linked DataとしてのURI設計は以下の通りになります.connegはhttp,https両方受け付けるみたい.

  • Item URI: http://www.wikidata.org/entity/Q{id}
  • データURI: http://www.wikidata.org/wiki/Special:EntityData/Q{id}
  • HTMLページ URI: http://www.wikidata.org/wiki/Q{id}
  • JSON URI: http://www.wikidata.org/wiki/Special:EntityData/Q{id}.json
  • Turtle URI: http://www.wikidata.org/wiki/Special:EntityData/Q{id}.ttl
  • RDF/XML URI: http://www.wikidata.org/wiki/Special:EntityData/Q{id}.rdf
  • N-Triples URI: http://www.wikidata.org/wiki/Special:EntityData/Q{id}.nt
$ curl -LH 'Accept: text/turtle' http://www.wikidata.org/entity/Q433255
@prefix data: <http://www.wikidata.org/wiki/Special:EntityData/> .
@prefix schema: <http://schema.org/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix entity: <http://www.wikidata.org/entity/> .
@prefix cc: <http://creativecommons.org/ns#> .
@prefix wikibase: <http://www.wikidata.org/ontology#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

data:Q433255
  schema:version 103373967 ;
  schema:dateModified "2014-01-19T13:20:45Z"^^xsd:dateTime ;
  a schema:Dataset ;
  schema:about entity:Q433255 ;
  cc:license <http://creativecommons.org/publicdomain/zero/1.0/> .

entity:Q433255
  a wikibase:Item ;
rdfs:label "森薰"@zh-hans, "森薰"@zh-hant, "森薰"@zh-hk, "森薰"@zh-cn, "森薰"@zh-sg, "森薰"@zh-tw, "Kaoru Mori"@de, "森薫"@ja, "Kaoru Mori"@fr, "Мори, Каору"@ru, "모리 카오루"@ko, "Kaoru Mori"@en, "Kaoru Mori"@sv, "Kaoru Mori"@nl, "Kaoru Mori"@es, "Kaoru Mori"@pl, "森薰,"@zh ;
  skos:prefLabel "森薰"@zh-hans, "森薰"@zh-hant, "森薰"@zh-hk, "森薰"@zh-cn, "森薰"@zh-sg, "森薰"@zh-tw, "Kaoru Mori"@de, "森薫"@ja, "Kaoru Mori"@fr, "Мори, Каору"@ru, "모리 카오루"@ko, "Kaoru Mori"@en, "Kaoru Mori"@sv, "Kaoru Mori"@nl, "Kaoru Mori"@es, "Kaoru Mori"@pl, "森薰,"@zh ;
  schema:name "森薰"@zh-hans, "森薰"@zh-hant, "森薰"@zh-hk, "森薰"@zh-cn, "森薰"@zh-sg, "森薰"@zh-tw, "Kaoru Mori"@de, "森薫"@ja, "Kaoru Mori"@fr, "Мори, Каору"@ru, "모리 카오루"@ko, "Kaoru Mori"@en, "Kaoru Mori"@sv, "Kaoru Mori"@nl, "Kaoru Mori"@es, "Kaoru Mori"@pl, "森薰,"@zh ;
  schema:description "japanische Manga-Zeichnerin"@de, "japońska mangaka"@pl ;
  skos:altLabel "森薫"@zh, "Mori Kaoru"@de, "森薫"@de, "県文緒"@ja, "森薫"@fr, "Mori Kaoru"@fr, "Fumio Agata"@fr, "Agata Fumio"@fr, "県文緒"@fr, "Мори Каору"@ru, "Каору Мори"@ru, "모리 가오루"@ko, "Mori"@sv .

<http://zh.wikipedia.org/wiki/%E6%A3%AE%E8%96%B0>
  a schema:Article ;
  schema:about entity:Q433255 ;
  schema:inLanguage "zh" .
....

参考

Tags: , , , ,