* Data Resource


[1] [CITE@en-US[Data Resource | Data Package (v1)]], [TIME[2024-01-29T13:09:50.000Z]], [TIME[2024-03-21T04:59:18.936Z]] <https://specs.frictionlessdata.io/data-resource/>

[2] 
[[Tabular Data Resource]]

[3] [CITE@en-US[Patterns | Data Package (v1)]], [TIME[2024-01-29T13:09:50.000Z]], [TIME[2024-03-21T05:06:40.676Z]] <https://specs.frictionlessdata.io/patterns/#json-data-resources>

- [6] [CITE[Data Packages — Open Data Protocols - Simple Open Standards for Open Data]], [TIME[2024-04-14T12:29:29.000Z]], [TIME[2013-07-27T18:26:20.582Z]] <https://web.archive.org/web/20130727182032/http://www.dataprotocols.org/en/latest/data-packages.html>

[7] >>6 この時代には [[Data Packages]] の一部として規定されていました。

- [8] [CITE@en[Data Package - CKAN]], [TIME[2024-04-14T12:30:08.000Z]], [TIME[2011-09-02T09:50:29.540Z]] <https://web.archive.org/web/20110902095023/http://wiki.ckan.net/Data_Package>

[9] >>8 ここまで遡ると urls としか書かれていなくてよくわかりません。

* CKAN 資源

[4] [[CKAN API]] における[[資源]]は [[Data Resource]] と縁戚関係にありますが、
まったく同じではありません。
[SEE[ [[CKANパッケージ]] ]]

[5] [[Data Resource]] は [[RFC 4627]] [[JSONオブジェクト]]でなければ[MUST[なりません]]。
[SRC[>>1]]
[[CKAN]] でも[[資源]]は [[JSONオブジェクト]]です。

[FIG(list members)[

:[F[[CODE[attr_str]]]]:
[[CKAN API]]
で[[空文字列]]が指定されていることがあります。
[CODE[fiware-ngsi]] 関係と思われます。
:[F[[CODE[auth_type]]]]:
[[CKAN API]]
で
[CODE[oauth2]]
が指定されていることがあります。
[CODE[fiware-ngsi]] 関係と思われます。
:[F[[CODE[cache_last_update]]]]:
[[CKAN API]] で [CODE[null]] が指定されていることがあります。
:[F[[CODE[cache_url]]]]:
[[CKAN API]] で [CODE[null]] が指定されていることがあります。
:[F[[CODE[bytes]]]]:
[[Data Resource]] にあり、[[資源]]の[[バイト]]長とされます。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。かわりに [F[[CODE[size]]]] が使われます。
:[F[[CODE[created]]]]:
[[CKAN API]] で[[地方日時文字列]]が指定されていることがあります。
[[CKAN]] サイト上の「作成日」に当たります。
サイト日付との比較から、 [[UTC]] の[[日時]]であることがわかります。
:[F[[CODE[data]]]]:
[[Data Resource]] では [F[[CODE[path]]]] と選択的な[MUST[必須]]とされています。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。
:[F[[CODE[data_crs]]]]
[[GKAN]]
で[[空文字列]]のことがあります。
:[F[[CODE[datastore_active]]]]:
[[CKAN API]] で [CODE[1]] が指定されていることがあります。
:[F[[CODE[description]]]]:
[[Data Resource]] にあり、[[資源]]の説明とされます。 [SRC[>>1]]
[[CKAN API]] では[[人間可読]]の説明文に使われています。
[[Markdown]] のことがあります。
:[F[[CODE[encoding]]]]:
[[Data Resource]] にあり、[[資源]]の[[文字符号化]]を表します。
値は[[IANA charset]]で、省略時の既定値は [[UTF-8]] です。 [SRC[>>1]]
しかし処理方法の規定がなく、 
[F[[CODE[mediatype]]]]
との相互作用などは不明です。
[[CKAN API]] では[[空文字列]]のこと,
[CODE[utf-8]] ([F[[CODE[mimetype]]]] = [CODE[text/csv]])
のことがあります。
:[F[[CODE[entity]]]]:
[[CKAN API]]
で[[JSON配列]]が指定されていることがあります。
[CODE[fiware-ngsi]] 関係と思われます。
:[F[[CODE[expression]]]]:
[[CKAN API]]
で[[空文字列]]が指定されていることがあります。
[CODE[fiware-ngsi]] 関係と思われます。
:[F[[CODE[format]]]]:
[[Data Resource]] では[[資源]]の型の標準的な[[ファイル拡張子]]が期待されるとなっています。
[CODE[csv]], [CODE[xls]], [CODE[json]] が例示されています。 [SRC[>>1]]
[[CKAN API]] では[[空文字列]],
[CODE[CSV]],
[CODE[GeoJSON]],
[CODE[HTML]]
のような値が使われています (>>10)。
[F[[CODE[format]]]] が[[空文字列]]かつ
[F[[CODE[mimetype]]]]
が [CODE[null]]
のこともあります。
:[F[[CODE[hash]]]]:
[[Data Resource]] にあり、[[資源]]の[[MD5]]ハッシュを表すとされます。
しかし他の[[算法]]も[[算法]]名の[[小文字]]をハッシュ値の前に付けることで使えるとされます。
実例として、 [CODE[sha1:]] の後に[[十六進数]]列を続けた、[[SHA-1]] ハッシュ値と思われるものが示されています。
[SRC[>>1]]
[[CKAN API]] では[[空文字列]]が指定されていることがあります。
:[F[[CODE[id]]]]:
[[CKAN API]] で [[UUID]] が指定されていることがあります。
:[F[[CODE[last_modified]]]]:
[[Data Packages]] 時代の[[資源]]にあり、[[資源]]の[[最終修正時刻]]を
[[ISO 8601]]
形式 (具体的には不明) で表すとされていました。 [SRC[>>1]]
[[CKAN API]] では[[空文字列]]のことがあります。
[[GKAN]] では
[CODE[null]]
や[[地方日時文字列]]のことがあります。
[F[[CODE[created]]]] より[[秒の小数部]]単位で微妙に古いことがあります。
:[F[[CODE[licenses]]]]:
[[Data Resource]] にあります。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。
:[F[[CODE[mediatype]]]]:
[[Data Resource]] にあり、[[資源]]の[[MIME型]]を表すとされます。 [SRC[>>1]]
[[引数]]が指定できるのかは不明です。
[[CKAN API]] での利用は未見です。
:[F[[CODE[metadata_modified]]]]:
[[CKAN API]]
で[[地方日時文字列]]が指定されていることがあります。
指定されないこともあります。
[[CKAN]] サイト上の「メタデータ最終更新日」に当たります。
サイト日付との比較から、 [[UTC]] の[[日時]]であることがわかります。
:[F[[CODE[metadata_type]]]]:
[[GKAN]] の [[CKAN API]]
で[[空文字列]]のことがあります。
:[F[[CODE[mimetype]]]]:
[[CKAN API]] で [CODE[null]] や
[[MIME型]]が指定されていることがあります。
かわりに [F[[CODE[format]]]] に[[文字列]]が指定されていることも、
両方が指定されていることもあります。
(>>10)
:[F[[CODE[mimetype_inner]]]]:
[[CKAN API]] で [CODE[null]] が指定されていることがあります。
:[F[[CODE[name]]]]:
[[Data Resource]]
では[[資源]]の名前あるいは識別子を指定することになっており、
[MUST[必須]]とされています。
[[ASCII小文字]]等のみで構成され、普通は[[ファイル名]]の[[拡張子]]以外の部分になるとされています。
[[Data Package]] 内で固有の値でなければ[MUST[なりません]]。
[SRC[>>1]]
実際の [[CKAN API]] ではこれらの制約は適用されていないように見えます。
[[人間可読]]な[[資源]]の短い説明が入っていることが多いようです。
[[拡張子]]つきのファイル名 ([[非ASCII文字]]を含む。)
が入っていることもあります。
:[F[[CODE[openspending_hint]]]]:
[[CKAN API]] で [CODE["None"]] が指定されていることがあります。
:[F[[CODE[package_id]]]]:
[[CKAN API]] で [[CKANパッケージ]]の [F[[CODE[id]]]] が指定されていることがあります。
:[F[[CODE[path]]]]:
[[Data Resource]] では [F[[CODE[data]]]] と選択的な[MUST[必須]]とされ、
[[url-or-path]]
またはその[[配列]]を指定することになっています。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。
:[F[[CODE[payload]]]]:
[[CKAN API]]
で[[文字列]] (中身は [[JSON]]) が指定されていることがあります。
[CODE[fiware-ngsi]] 関係と思われます。
:[F[[CODE[position]]]]:
[[CKAN API]] で [[CKANパッケージ]]の [F[[CODE[resources]]]]
[[配列]]における[[索引]] ([[0はじまり]]) の[[整数]]が指定されていることがあります。
:[F[[CODE[profile]]]]:
[[Data Resource]] にあり、指定が推奨されています。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。
:[F[[CODE[resource_group_id]]]]:
[[CKAN API]] で [CODE["None"]] が指定されていることがあります。
:[F[[CODE[resource_private_flag]]]]:
[[CKAN API]] で [CODE[0]]
が指定されていることがあります。
:[F[[CODE[resource_type]]]]:
[[CKAN API]] で [CODE[null]],
[[文字列]] [CODE[image/jpeg]]
が指定されていることがあります。
:[F[[CODE[revision_id]]]]:
[[CKAN API]] で [[UUID]] が指定されていることがあります。
[F[[CODE[id]]]] とは違う値です。
:[F[[CODE[schema]]]]:
[[Data Resource]] にあります。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。
:[F[[CODE[service_path]]]]:
[[CKAN API]]
で [[URL path]] が指定されていることがあります。
[CODE[fiware-ngsi]] 関係と思われます。
:[F[[CODE[size]]]]:
[[CKAN API]] で[[整数]]が指定されていることがあります。
[[資源]]の[[バイト]]長と思われます。
[CODE[null]]
のこともあります。
:[F[[CODE[state]]]]:
[[CKAN API]] で [CODE["active"]] が指定されていることがあります。
:[F[[CODE[sources]]]]:
[[Data Resource]] にあります。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。
:[F[[CODE[tenant]]]]:
[[CKAN API]]
で[[空文字列]]が指定されていることがあります。
[CODE[fiware-ngsi]] 関係と思われます。
:[F[[CODE[title]]]]:
[[Data Resource]] にあり、[[資源]]の題名や名札を表します。 [SRC[>>1]]
[[CKAN API]] での利用は未見です。
[F[[CODE[name]]]] がこれに相当する意味で使われています。
:[F[[CODE[url]]]]:
[[Data Packages]] 時代の[[資源]]にあり、[[資源]]の [[URL]]
とされていました。 [SRC[>>1]]
[[CKAN API]] では[[資源]]の[[絶対URL]] ([[HTTP(S) URL]], [CODE[data:]]) が入っています。
:[F[[CODE[url_type]]]]:
[[CKAN API]] で [CODE[null]] が指定されていることがあります。
[[文字列]]
[CODE[upload]] ([F[[CODE[url]]]] が [[CKAN]] システム管理のファイルであることを表す?)
のことがあります。
:[F[[CODE[webstore_last_updated]]]]:
[[CKAN API]] で [CODE["None"]] や [CODE[null]] が指定されていることがあります。
:[F[[CODE[webstore_url]]]]:
[[CKAN API]] で [CODE["None"]] や [CODE[null]] が指定されていることがあります。



]FIG]


[11] 
[F[[CODE[size]]]] が [CODE[null]] で実際にはギガバイト級で、
説明文に人間向けにはそのことが書いてあるみたいな厄介なケースが...
[TIME[2024-04-17T13:44:23.600Z]]

[12] >>11 どうやら [[CKAN]] にアップロードされたファイル ([F[[CODE[url_type]]]] = [CODE[upload]])
だと自動で [F[[CODE[size]]]] が付き、外部の [[URL]] を登録した場合にはそれがつかないらしい。

- [31] [CITE@ja[令和4年度加古川市統計書 - 名無しのリソース - 加古川市オープンデータAPI]], [TIME[2024-05-01T05:46:41.000Z]] <https://opendata-api-kakogawa.jp/ckan/dataset/r4toukeisyo-/resource/de1b86d6-86cb-4f26-a892-de94a5cb9b54>
- [30] 
[TIME[2024-05-01T05:46:06.000Z]] <https://opendata-api-kakogawa.jp/ckan/api/action/package_show?id=r4toukeisyo->

[32] >>31 は [[URL]] もその他の情報もない謎の空の[[資源]]が含まれる事例。
「名無しのリソース」は [[CKAN]] が補った題名で [[API]] のデータには入っていない。

[53] 
>>52 や同じサイトの他の[[パッケージ]]は[[資源]]の
[F[[CODE[description]]]]
が定型化していて (機械的に生成されたものが登録されているのでしょう)、
末尾に
「: ファイルサイズは 4.85 MB です。」
のようにファイルサイズが入っています。
[F[[CODE[size]]]] は [CODE[null]] なのですが...


** URL

[18] [F[[CODE[url]]]] には[[資源]]の [[URL]] が指定されます。

[22] 
大抵は [[HTTP(S) URL]] が指定されています。

[27] 
[[CKAN]] 本体、 [[CKAN API]] と[[同じ起源]]の [[URL]] のこともあれば、
そうでないこともあります。

[EG[

[28] 
例えば本サイトと [[CKAN]] サイトが別にあって本サイトの [[URL]]
が指定されていることや、ファイル配布用サーバーが別にあってその [[URL]]
が指定されていることがあります。

[29] 
また、他の [[CKAN]] サイトから複製した 
[[CKANパッケージ]]を配布しているようなサイトだと、
まったく異なる[[起源]]のこともあります。


]EG]

[23] 
[[非保安輸送路]] ([CODE[http:]]) が指定されることもしばしばあります。
[[CKAN]] サイトもリンク先の [[URL]] も、
未だに[[非保安輸送路]]でしか接続されないことがしばしばあります。
[SEE[ [[CKAN]] ]]


[20] 
[[URL]] にアクセスすると[[HTTPリダイレクト]]が返される場合があります。

[25] 
[CODE[http:]] [[URL]] が入っていて、アクセスすると [CODE[https:]]
[[URL]] に[[リダイレクト]]されることがしばしばあります。


[19] 
[[素片識別子]]付きの[[絶対URL]]が入っていることがあり、
[[HTML]] ファイルの一部分を[[資源]]とみなしているようです。
そのような[[CKANパッケージ]]には、
[[素片識別子]]以外が同じで[[素片識別子]]だけが違う [[URL]]
が指定された[[CKAN資源]]がいくつか入っている場合があるようです。

-*-*-

[26] 
稀に [CODE[data:]] [[URL]] が入っていることがあります。

-*-*-

[24] 
[[空文字列]]になることがあり、ダウンロード可能なファイルがないことを表しているようです。

[33] 
>>32 のような事例もあります。

-*-*-

[21] 
[[GKAN]] では [F[[CODE[format]]]] が [CODE[XYZ]]
のとき、
[F[[CODE[url]]]] に[[絶対URL]]に [CODE[{x}]], [CODE[{y}]], [CODE[{z}]]
が入った[[URL雛形]]のことがあります。
[SRC[>>50]]

[54] 
[[GKAN]] では [F[[CODE[format]]]] が [CODE[WMS]]
のとき、
[F[[CODE[url]]]] が [CODE[?]] で終わる ([[URL query]] が[[空文字列]]の)
[[URL]] のことがあります。
[SRC[>>50]]
[[URL query]] を付けることで [[WMS]] の [[HTTP(S) URL]] として使えるもので、
そのままアクセスしてもエラーになるだけです。

-*-*-

[35] 
[[FIWARE-NGSI]] [[API]] 情報が入っているケースがあります。
[SRC[>>34]]

[36] 
[F[[CODE[format]]]] が [CODE[fiware-ngsi]]
となる他に、いくつか関連情報が入っています。
[F[[CODE[url]]]] は[[絶対URL]]ですが、それだけで [CODE[GET]]
アクセスしても意味がありません。

[REFS[

- [34] [CITE@ja[中学校区 - データセット - 加古川市オープンデータAPI]], [TIME[2024-05-01T06:19:33.000Z]] <https://opendata-api-kakogawa.jp/ckan/dataset/juniorhighschool>

]REFS]

-*-*-

- [55] [CITE@ja[姫路市・播磨圏域連携中枢都市圏オープンデータカタログサイト]], [TIME[2024-07-14T07:55:17.000Z]] <https://city.himeji.gkan.jp/gkan/dataset/himetyari>
- [56] [TIME[2024-07-14T07:55:30.000Z]] <https://city.himeji.gkan.jp/gkan/api/action/package_show?id=himetyari>

[57] >>55 >>56 これは一例で、このサイトの他の[[パッケージ]]も同じですが、
[[HTML]] では 
<https://city.himeji.gkan.jp/gkan/dataset/f56d226f-eaaf-4c03-835a-35ccf8d6a12a/resource/a9dfbd33-27a3-41a0-9b4d-8f1d2000bec5/download/282014_himetyari.geojson>
のような
[[URL]] にリンクしており、
[[CKAN API]]
では
<https://city.himeji.gkan.jp/admin/gkan/dataset/f56d226f-eaaf-4c03-835a-35ccf8d6a12a/resource/a9dfbd33-27a3-41a0-9b4d-8f1d2000bec5/download/282014_himetyari.geojson>
のような
[[URL]] にリンクしています。
[[API]] の方は [CODE[/admin]] が余分に入っています。
アクセスすると [CODE[401]]
エラーになります。
[CODE[/admin]] を削れば正常にアクセスできます。
[TIME[2024-07-14T07:57:06.800Z]]

;; [58] 同じ [[GKAN]] でも >>50 のサイトは正常なので、このサイトの構築上の問題と思われます。

** MIME 型


[10] 
ファイル形式の指定例

[FIG(table)[

:f:[F[[CODE[format]]]]
:m:[F[[CODE[mimetype]]]]
:h:[F[[CODE[url]]]] の [[HTTP]] [CODE[Content-Type]]
:note:メモ
:p: より適切な [[MIME型]]
:src:実例

:f: [CODE[application/postscript]]
:h: [CODE[application/postscript]]
:m: [CODE[application/postscript]]
:note: [CODE[.ai]]。
:p: [CODE[application/illustrator]]

:f: [CODE[ai]]
:m: [CODE[application/postscript]]
:note: [CODE[.ai]]。
:p:[CODE[application/illustrator]]

:f: [CODE[application/postscript]]
:h: [CODE[application/octet-stream]]
:note: [CODE[.ai]] が入った [[ZIPファイル]]
:src:>>38


:f: [CODE[apk]]
:h: [CODE[application/vnd.android.package-archive]]
:m: [CODE[application/vnd.android.package-archive]]
:src:>>49


:f: [CODE[BVF]]
:h: [CODE[application/zip]]
:m: [CODE[application/zip]]
:note:
[[ZIP]] ファイルに入った [[BVF]] ファイル。
これを [CODE[BVF]] というのは適切ではないが...
:p:[CODE[application/bvf+zip]]

:f: [CODE[CSV]]
:m:[CODE[text/csv]]
:h:[CODE[text/csv]]

:f: [CODE[CSV]]
:m: [CODE[text/csv; charset=utf-8]]

:f: [CODE[CSV]]
:h: [CODE[text/csv]]
:src:>>43

:f: [CODE[CSV]]
:h: [CODE[text/csv;charset=UTF-8]]

:f: [CODE[CSV]]
:m:[CODE[text/csv]]
:h: [CODE[application/octet-stream]]

:f: [CODE[.csv]]
:m:[CODE[text/csv]]
:h:[CODE[text/csv]]

:f:[CODE[CSV[ASIS[(][全角]]UTF-8[ASIS[)][全角]]]]
:m:[CODE[application/zip]]
:h:[CODE[binary/octet-stream]]
:note:[[CSV]]が入った[[ZIP]]
:src:>>64

:f:[CODE[CSV[ASIS[(][全角]]Shift-JIS[ASIS[)][全角]]]]
:m:[CODE[application/zip]]
:h:[CODE[binary/octet-stream]]
:note:[[CSV]]が入った[[ZIP]]
:src:>>64


:f: [[空文字列]]
:h: [CODE[application/octet-stream]]

:f: [CODE[csv]]
:note:[SRC[>>1]] 実例未見

:f: [CODE[dBase]]
:m: [CODE[application/vnd.dbf]]
:note:
[[シェイプファイル]]形式を構成する
[[DBF]] ファイル。
[CODE[application/vnd.dbf]]
はその意味。
[[DBF]] ファイルの実態は
[[dBASE]] 形式のデータベースファイル。
[CODE[dBase]] と呼ぶのは誤ってはいないが最適でもない。

:f: [CODE[application/vnd.oma.drm.message]]
:m: [CODE[application/vnd.oma.drm.message]]
:h: [CODE[application/vnd.oma.drm.message]]
:note:
[[DM]] ([[国土交通省]]の[[数値地図]]ファイル形式)。
[CODE[application/vnd.oma.drm.message]]
は[[拡張子]]衝突の別形式
[WEAK[([[CKAN]] で使われるとは考えられず、読み替えるべき)]]。
:p:[CODE[application/dm]]

:f:[CODE[dm]]
:h: [CODE[application/octet-stream]]
:note:
[[DM]] ([[国土交通省]]の[[数値地図]]ファイル形式)。
:p:[CODE[application/dm]]


:h:[CODE[application/octet-stream]]
:f: [CODE[image/vnd.dxf]]

:f: [CODE[dxf]]
:m:[CODE[image/vnd.dxf]]
:h:[CODE[image/vnd.dxf]]

:f: [CODE[XLSX]]

:f: [CODE[XLSX]]
:h: [CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]

:f:[CODE[XLSX]]
:m:[CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]
:h:[CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]

:f: [CODE[XLSX]]
:m: [CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]
:h: [CODE[application/octet-stream]]

:f: [CODE[[ASIS[xlsx][全角]]]]
:m:[CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]
:h:[CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]

:f:[CODE[XLSX]]
:m:[CODE[application/vnd.ms-excel]]
:p:[CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]
:note:誤りとは言い切れないが最適ではない。

:f: [CODE[XLSX]]
:m: [CODE[application/zip]]
:h: [CODE[application/zip]]
:note: [CODE[XLSX]] が正しい
[WEAK[([[xlsx]] の実態は[[ZIP]])]]
:p:[CODE[application/vnd.openxmlformats-officedocument.spreadsheetml.sheet]]

:f:[CODE[XLSX[ASIS[(][全角]]Shift-JIS[ASIS[)][全角]]]]
:m:[CODE[application/zip]]
:h:[CODE[application/zip]]
:note:[[XSLX]]が入った[[ZIP]],
なにが[[Shift-JIS]]なのか不明
:src:>>65


:f: [CODE[.xls]]
:m: [CODE[application/zip]]
:h: [CODE[application/zip]]
:note:
[[XLSX]]?

:f: [CODE[.xls]]
:m: [CODE[application/vnd.ms-excel]]
:h: [CODE[application/vnd.ms-excel]]

:f: [CODE[XLS]]
:m: [CODE[application/vnd.ms-excel]]
:h: [CODE[application/vnd.ms-excel]]

:f: [CODE[xls]]
:note:[SRC[>>1]] 実例未見

:f: [CODE[XLSM]]
:m: [CODE[application/vnd.ms-excel.sheet.macroEnabled.12]]
:h: [CODE[application/vnd.ms-excel.sheet.macroEnabled.12]]

:f: [CODE[XLSM]]
:h: [CODE[application/vnd.ms-excel.sheet.macroEnabled.12]]
:src:>>61

:f:[CODE[GeoJSON]]
:m:[CODE[application/geo+json]]
:h:[CODE[application/geo+json]]

:f:[CODE[GeoJSON]]
:m:[CODE[application/json]]
:h:[CODE[application/json]]
:p:[CODE[application/geo+json]]

:f: [CODE[GeoJSON]]
:h: [CODE[application/json;charset=UTF-8]]
:p:[CODE[application/geo+json]]

:f: [CODE[GeoTiff]]
:src:>>52
:m: [CODE[application/zip]]
:h: [CODE[application/zip]]
:note:一式入った[[ZIP]]ファイル

:f: [CODE[GeoTiff]]
:src:>>51
:m:[CODE[image/jpeg]]
:h:[CODE[image/jpeg]]
:note:誤り? それとも [[GeoTiff]] から生成した[[JPEG]]?

:f: [CODE[GeoTiff/KML]]
:src:>>50
:m:[CODE[application/zip]]
:h:[CODE[application/zip]]

:f: [CODE[GeoTiff/KML]]
:m:[CODE[application/zip]]
:h:[CODE[application/x-zip-compressed]]
:src:>>51

:f: [CODE[GIF]]
:h: [CODE[image/gif]]
:m: [CODE[image/gif]]

:f: [CODE[gml]]
:h:[CODE[application/zip]]
:m:[CODE[application/zip]]
:note:[[GML]]ファイルの入った [[ZIP]]。

:f:[CODE[GTFS]]
:h:[CODE[application/zip]]
:m:[CODE[application/zip]]
:p:[CODE[application/zip]] ([[GTFS]])
:src:>>42

:f:[CODE[GTFS-JP]]
:h:[CODE[application/zip]]
:m:[CODE[application/zip]]
:p:[CODE[application/zip]] ([[GTFS]] ([[GTFS-JP]]))

:f:[CODE[gtfs-jp]]
:h:[CODE[application/zip]]
:m:[CODE[application/zip]]
:p:[CODE[application/zip]] ([[GTFS]] ([[GTFS-JP]]))

:f: [CODE[GTFS/GTFS-JP]]
:h:[CODE[application/zip]]
:m:[CODE[application/zip]]
:p:[CODE[application/zip]] ([[GTFS]] ([[GTFS-JP]]))

:f: [CODE[HTML]]
:h:[CODE[text/html]]
:m:[CODE[text/html]]

:f: [CODE[HTML]]
:h:[CODE[text/html]]
:src:>>47
:note:説明ページ (画像データ (パッケージに含まれず。) へのリンクあり)

:f:[[空文字列]]
:h:[CODE[text/html]]
:src:>>62
:note:説明ページ

:f:[[空文字列]]
:h:[CODE[text/html; charset=UTF-8]]
:src:>>64
:note:説明ページ

:f: [CODE[LINK]]
:h: [CODE[text/html; charset=UTF-8]]
:src:>>44
:note:[[動的生成]]ページ

:f: [CODE[JPEG]]
:m: [CODE[image/jpeg]]
:h: [CODE[image/jpeg]]
:src:>>41

:f: [CODE[JPEG]]
:m: [CODE[image/jpeg]]
:h: [CODE[image/jpeg]]
:note:[F[[CODE[resource_type]]]] [CODE[image/jpeg]]

:f: [CODE[JPEG]]
:src:>>46
:h:[CODE[image/jpeg]]

:f: [CODE[JSON]]
:m: [CODE[application/json]]
:h: [CODE[[[application/json]]; [[charset]]=[[utf-8]]]]

:f: [CODE[json]] 
:note:[SRC[>>1]] 実例未見

:f:[CODE[JSON[ASIS[(][全角]]UTF-8[ASIS[)][全角]]]]
:m:[CODE[application/zip]]
:h:[CODE[application/zip]]
:src:>>65
:note:[[JSON]]が入った[[ZIP]]

:f: [CODE[jsonld]]
:h:[CODE[application/octet-stream]]

:f: [CODE[KML]]
:m: [CODE[application/vnd.google-earth.kml+xml]]
:h: [CODE[application/vnd.google-earth.kml+xml]]

:f: [CODE[KML]]
:m:[CODE[application/zip]]
:h:[CODE[application/zip]]
:note:[[KML]] ファイルの入った [[ZIP]]。 [[KMZ]] (とも限らない?)
:p:[CODE[application/vnd.google-earth.kmz]]

:f:[CODE[KMZ]]
:m:[CODE[application/vnd.google-earth.kmz]]
:h:[CPDE[application/octet-stream]]
:src:>>50

:f: [CODE[MP3]]
:h: [CODE[audio/mpeg]]

:f: [CODE[mp3]]
:src:>>43
:h: [CODE[audio/mpeg]]

:f: [CODE[MP4]]
:h: [CODE[video/mp4]]

:f: [CODE[MP4]]
:h: [CODE[video/mp4]]
:m: [CODE[video/mp4]]

:f: [CODE[mp4]]
:m: [CODE[video/mp4]]

:f: [CODE[[ASIS[mp4][全角]]]]
:h: [CODE[video/mp4]]
:m: [CODE[video/mp4]]

:f:[CODE[ODS[ASIS[(][全角]]Shift-JIS[ASIS[)][全角]]]]
:m:[CODE[application/zip]]
:h:[CODE[application/zip]]
:note:[[ODS]]が入った[[ZIP]],
何が[[Shift-JIS]]なのか不明
:src:>>65

:f: [CODE[PDF]]
:m:[CODE[application/pdf]]
:h:[CODE[application/pdf]]

:f: [CODE[PDF]]
:h: [CODE[application/octet-stream]]
:p: [CODE[application/pdf]]
:src:>>38

:f: [CODE[.pdf]]
:m:[CODE[application/pdf]]
:h:[CODE[application/pdf]]

:f: [CODE[PNG]]
:m: [CODE[image/png]]
:h: [CODE[image/png]]

:f: [CODE[RDF]]
:m: [CODE[application/rdf+xml]]
:h: [CODE[application/rdf+xml]]

:f: [CODE[RDF]]
:h: [CODE[text/xml]]
:p: [CODE[application/rdf+xml]]

:f: [CODE[XML]]
:h: [CODE[text/xml; charset=utf-8]]
:note: [[RDF/XML]]
:p: [CODE[application/rdf+xml]]
:src:>>45

:f:[CODE[XML]]
:m:[CODE[application/xml]]
:h:[CODE[application/rdf+xml]]
:src:>>62
:note:[[RDF/XML]] ([[DCAT]] (参照している[[CKANパッケージ]]の劣化コピー))

:f: [CODE[PPTX]]
:m: [CODE[application/vnd.openxmlformats-officedocument.presentationml.presentation]]
:h: [CODE[application/octet-stream]]

:f: [CODE[PPTX]]
:m: [CODE[application/vnd.openxmlformats-officedocument.presentationml.presentation]]

:f: [CODE[PPT]]
:m: [CODE[application/vnd.ms-powerpoint]]

:f: [CODE[sfc]]
:h: [CODE[application/vnd.nintendo.snes.rom]]

:f: [CODE[SHP]]
:m: [CODE[application/zip]]
:h: [CODE[application/x-zip-compressed]]

:f: [CODE[SHP]]
:m: [CODE[application/zip]]
:h: [CODE[application/zip]]
:src:>>59
:note:[[SHPファイル]]等一式が入った[[ZIPファイル]]

:f: [CODE[shape]]
:m: [CODE[application/zip]]
:h: [CODE[application/zip]]


:f: [CODE[SHP]]
:m: [CODE[application/x-qgis]]

:f: [CODE[SHP-ZIP]]
:h: [CODE[application/zip]]

:f: [CODE[SHP]]
:h: [CODE[application/octet-stream]]
:src:>>37
:note: [[SHPファイル]]が入った[[ZIPファイル]]

:f: [CODE[SHP]]
:m: [CODE[application/zip]]
:h: [CODE[application/octet-stream]]
:src:>>50
:note: [[SHPファイル]]が入った[[ZIPファイル]]

:f: [CODE[shx]]
:m: [CODE[application/x-qgis]]

:f: [CODE[TIFF]]
:h: [CODE[application/octet-stream]]
:src:>>40
:p:[CODE[image/tiff]]

:f: [CODE[TopoJSON]]
:h: [CODE[application/json]]
:m: [CODE[application/json]]

:f: [CODE[TTL]]
:h:[CODE[text/turtle]]
:m:[CODE[text/turtle]]
:src:>>40

:f: [CODE[ttl]]
:h:[CODE[text/turtle]]
:m:[CODE[text/turtle]]

:f: [CODE[turtle]]
:h:[CODE[text/turtle]]
:m:[CODE[text/turtle]]
:src:>>48

:f: [CODE[ttl]]
:h: [CODE[application/octet-stream]]
:src:>>45
:p:[CODE[text/turtle]]

:f: [CODE[RDF]]
:h: [CODE[application/rdf+xml]]
:src:>>45
:p:[CODE[text/turtle]]

:f: [CODE[TXT]]
:h: [CODE[text/plain]]
:m: [CODE[text/plain]]

:f: [CODE[TXT]]
:h: [CODE[text/plain]]
:m: [CODE[text/plain]]
:src:>>50
:note:[[UTF-8]]

:f: [CODE[JSON]]
:src:>>50
:note:[F[[CODE[name]]]] 末尾が「[ASIS[(][全角]]TileJSON[ASIS[)][全角]]」
:m:[CODE[application/json]]
:h:[CODE[application/json; charset=utf-8]]

:f: [CODE[DOCX]]
:m: [CODE[application/vnd.openxmlformats-officedocument.wordprocessingml.document]]
:h: [CODE[application/vnd.openxmlformats-officedocument.wordprocessingml.document]]

:f: [CODE[DOCX]]
:m: [CODE[application/vnd.openxmlformats-officedocument.wordprocessingml.document]]
:h: [CODE[application/octet-stream]]

:f: [CODE[DOC]]
:h: [CODE[application/msword]]

:f: [CODE[DOC]]
:h: [CODE[application/msword]]
:m:[CODE[application/msword]]

:f:[CODE[XBRL[ASIS[(][全角]]UTF-8[ASIS[)][全角]]]]
:src:>>63
:h:[CODE[binary/octet-stream]]
:m:[CODE[application/zip]]
:note:[[XBRL]]ファイルが入った[[ZIP]]

:f: [CODE[XML]]
:src: >>60
:h: [CODE[text/xml]]
:m: [CODE[null]]

:f:[CODE[XML[ASIS[(][全角]]UTF-8[ASIS[)][全角]]]]
:src:>>62
:h:[CODE[application/octet-stream]]
:note:[[XML]]ファイルが入った[[ZIP]]

:f:[CODE[XML[ASIS[(][全角]]UTF-8[ASIS[)][全角]]]]
:src:>>65
:h:[CODE[application/zip]]
:m:[CODE[application/zip]]
:note:[[XML]]ファイルが入った[[ZIP]]

:f: [CODE[ZIP]]
:h: [CODE[application/zip]]

:f: [CODE[ZIP]]
:m: [CODE[application/zip]]
:h: [CODE[application/zip]]

:f: [CODE[ZIP]]
:m: [CODE[application/zip]]
:h: [CODE[application/octet-stream]]

:f: [CODE[ZIP]]
:h: [CODE[application/octet-stream]]
:p: [CODE[application/zip]]
:src:>>38

:f: [[空文字列]]
:m: [CODE[application/zip]]
:h: [CODE[application/zip]]

:f: [CODE[JSON,DAT,DAT_OLD,MCA,TOML,LOCK]]
:m:[CODE[application/zip]]
:h:[CODE[application/zip]]
:src:>>39
:note:[[ZIP]]内の[[ファイル]]の[[拡張子]]の列挙

:f: [[空文字列]]
:h: [CODE[application/octet-stream]]
:note:
[CODE[.mcworld]] ([[Minecraft]] データファイル)
:src:>>39


:f: [CODE[text/markdown]]
:h: [CODE[text/markdown]]
:note:[F[[CODE[url]]]] が [CODE[data:]] で
[F[[CODE[description]]]] と同文

:f: [CODE[XYZ]]
:m:[CODE[null]]
:src:>>50
:note:[F[[CODE[url]]]] は[[URL雛形]]

:f: [CODE[fiware-ngsi]]

:f: [CODE[WMS]]
:src:>>50
:m:[CODE[null]]
:note:[[WMS]], [F[[CODE[url]]]] は[[URL query]]を[[空文字列]]にしたもの

]FIG]

[14] 
[[MIME型]]というものは[[インターネットメール]]でも [[Web]] でもあまりまともに使われていないのですけど、
[[CKAN]] でもかなり酷いですね...

[15] 
[F[[CODE[format]]]] と [F[[CODE[mimetype]]]] と [F[[CODE[url]]]] の [[HTTP]]
[CODE[Content-Type]]
と、3つもあって、しかもそのどれが信じられるともいえないところがまた...


[13] [F[[CODE[url_type]]]] が [CODE[upload]] だからといって
[F[[CODE[mimetype]]]] と [[HTTP]] [CODE[Content-Type]] が一致するとは限らないらしい。


[16] 
[F[[CODE[format]]]] に[[全角英字]]が入っているところは手入力してるの???

[17] 
[[ZIP]] の場合、多くは [F[[CODE[format]]]] も [[ZIP]] にしているが、
たまに中身のファイル形式を書いていることもある。
ややこしいのは便宜上 [[ZIP]] 圧縮しているだけでなく、業界慣習的に
[[ZIP]] に入れて配布する[[事実上の標準]]が成立しているファイル形式もあるっぽいところで。
その場合確かに [[ZIP]] と書くよりファイル形式を書いてくれた方が嬉しい、
ただし中身のファイル形式ではなく「中身+ZIP」と書く方が正確なのだろうけど、
そんな書き方は誰もしていなくて...

[REFS[

- [37] 
[CITE@ja[札幌市内の公園緑地 - データセット - CKAN]], [TIME[2024-05-15T12:49:42.000Z]] <https://ckan.pf-sapporo.jp/dataset/sapporo_parks_and_green_spaces>
- [38] 
[CITE@ja[新型コロナウイルス感染対策普及啓発ポスター(飲食店向け) - データセット - CKAN]], [TIME[2024-05-15T12:56:37.000Z]] <https://ckan.pf-sapporo.jp/dataset/covid19-poster>
- [39] [CITE@ja[札幌市Minecraftワールドデータ - データセット - CKAN]], [TIME[2024-05-15T13:01:25.000Z]] <https://ckan.pf-sapporo.jp/dataset/minecraft>
- [40] 
[CITE@ja[札幌市現況図 - データセット - CKAN]], [TIME[2024-05-15T13:11:31.000Z]] <https://ckan.pf-sapporo.jp/dataset/present_situation_maps>
- [41] [CITE@ja[観光スポット一覧(都心部) - データセット - CKAN]], [TIME[2024-05-15T13:14:58.000Z]] <https://ckan.pf-sapporo.jp/dataset/sapporo_kankou_spot>
- [42] 
[CITE@ja[金沢市 ふらっとバス情報 - データセット - 金沢市オープンデータポータル]], [TIME[2024-05-16T09:19:19.000Z]] <https://catalog-data.city.kanazawa.ishikawa.jp/dataset/172014-flatbus>
- [43] 
[CITE@ja[ウォーキングマップの音声ガイド NO.21有里町・青山台を巡るコース - データセット | 生駒市オープンデータポータルサイト]], [TIME[2024-05-16T09:40:40.000Z]] <https://data.city.ikoma.lg.jp/data/dataset/1601965403>
- [44] 
[CITE@ja[生駒市イベント情報一覧 - データセット | 生駒市オープンデータポータルサイト]], [TIME[2024-05-16T09:43:00.000Z]] <https://data.city.ikoma.lg.jp/data/dataset/1500445721>
- [45] 
[CITE@ja[施設情報 - データセット | 生駒市オープンデータポータルサイト]], [TIME[2024-05-16T09:44:33.000Z]] <https://data.city.ikoma.lg.jp/data/dataset/1487394316>
- [46] 
[CITE@ja[マンガでわかるオープンデータ - データセット | 生駒市オープンデータポータルサイト]], [TIME[2024-05-16T09:59:26.000Z]] <https://data.city.ikoma.lg.jp/data/dataset/1632873214>
- [47] 
[CITE@ja[マンホールふたデザイン - データセット | 生駒市オープンデータポータルサイト]], [TIME[2024-05-16T10:01:57.000Z]] <https://data.city.ikoma.lg.jp/data/dataset/1521508127>
- [48] 
[CITE@ja[公園 - データセット - 神奈川県オープンデータカタログサイト]], [TIME[2024-05-16T12:55:57.000Z]] <https://catalog.opendata.pref.kanagawa.jp/dataset/d1dd79afd3bcfe4ae56b139f5f7f7bb3>
- [49] 
[CITE@ja[かこがわアプリ - データセット - 加古川市オープンデータAPI]], [TIME[2024-06-22T07:57:20.000Z]] <https://opendata-api-kakogawa.jp/ckan/dataset/kakogawa_app>
- [50] 
[CITE@ja[GSJカタログサイト]], [TIME[2024-07-13T11:50:01.000Z]] <https://data.gsj.jp/gkan/dataset/gsj_map_576>
- [51] 
[CITE@ja[GSJカタログサイト]], [TIME[2024-07-13T12:07:40.000Z]] <https://data.gsj.jp/gkan/dataset/gsj_map_1426>
- [52] 
[CITE@ja[GSJカタログサイト]], [TIME[2024-07-13T12:17:15.000Z]] <https://data.gsj.jp/gkan/dataset/gsj_map_1341>
- [59] 
[CITE@ja[姫路市・播磨圏域連携中枢都市圏オープンデータカタログサイト]], [TIME[2024-07-14T08:40:06.000Z]] <https://city.himeji.gkan.jp/gkan/dataset/sidouninteirosen>
- [60] 
[CITE@ja[防災関連データ - データセット - 横浜市オープンデータポータル]], [TIME[2024-07-14T09:19:22.000Z]] <https://data.city.yokohama.lg.jp/dataset/somu_data>
- [61] 
[CITE@ja[横浜市公共建築物マネジメント白書 - データセット - 横浜市オープンデータポータル]], [TIME[2024-07-14T09:21:19.000Z]] <https://data.city.yokohama.lg.jp/dataset/zaisei_manejiment_hakusho>
- [62] 
[CITE@ja[法令種別/行政手続 - データセット - レジストリカタログ]], [TIME[2024-12-07T02:42:04.000Z]] <https://catalog.registries.digital.go.jp/rc/dataset/eg000022>
- [63] 
[CITE@ja[訂正四半期報告書 - データセット - レジストリカタログ]], [TIME[2024-12-07T02:54:24.000Z]] <https://catalog.registries.digital.go.jp/rc/dataset/ed000150>
- [64] 
[CITE@ja[法人番号 - データセット - レジストリカタログ]], [TIME[2024-12-07T03:03:49.000Z]] <https://catalog.registries.digital.go.jp/rc/dataset/cn000001>
- [65] 
[CITE@ja[MJ文字情報一覧表 / MJ文字情報一覧表 変体仮名編 / MJ縮退マップ - データセット - レジストリカタログ]], [TIME[2024-12-07T03:17:45.000Z]] <https://catalog.registries.digital.go.jp/rc/dataset/im000001>



]REFS]

* 関連

[SEE[ [[CKANパッケージ]] ]]

* メモ