2015年12月9日水曜日

OpenStreetMap データの利用

2015-12-09発信

先日、ある方から「FME は OpenStreetMap (OSM) データをサポートしているか?」というご質問をいただきました。
OpenStreetMap サイトの「エクスポート」機能、または、HTTP API によってダウンロードしたデータ(XML形式)は、FME の "OpenStreetMap (OSM) XML" リーダーで読み込むことができます。
「FMEケーススタディ」サイトに OSM 関係の記事を2件追加しましたのでご参照ください。

-----
1. OpenStreetMap データのダウンロードと抽出
http://fme-casestudy.blogspot.com/2015/12/openstreetmap.html

2次メッシュ区画単位での OSM データダウンロードを自動化するワークスペース例です。
HTTPCaller トランスフォーマーを使用して OSM サーバーにリクエストを送信し、レスポンスとしてデータをダウンロード、さらに、ダウンロード後のデータを読み込むところまでを行うデモです。

-----
2. OpenStreetMap データに基づく道路網データの作成
http://fme-casestudy.blogspot.com/2015/12/openstreetmap_9.html

OSM データに基づいて道路網データを作成するワークスペース例です。
OSM データには道路以外の地物データも含まれていますが、この例では道路網を構成するデータのみを抽出し、ネットワークデータとして利用可能な構造に変換する方法を示しています。

----

なお、OSM データをダウンロードする部分については OSMDownloader というカスタムトランスフォーマーも作成し、FME Store で公開しましたので、あわせてご利用ください。
https://store.safe.com/transformers/osmdownloader

以上、なにかのご参考にでもなれば幸いです。

2015年11月30日月曜日

地域メッシュ関係トランスフォーマーの更新

2015-11-30発信

昨年より、FMEによって日本の地域メッシュ関係の処理を行いやすくするために当社が作成したカスタムトランスフォーマーを FME Store で公開しているところですが、それらのバージョンアップを行いましたのでお知らせします。

(1) JpMeshCodeExtractor
入力フィーチャーのジオメトリの最初の頂点が含まれる地域メッシュ区画のメッシュコードを求めます。
旧バージョンではマルチパートジオメトリについて正しいメッシュコードが求められないという制約がありましたが、新バージョンではマルチパートジオメトリにも対応します。

(2) JpMeshCodeReplacer
入力フィーチャーが属性として持っているメッシュコードに基づいて、メッシュ区画(矩形ポリゴン)または位置を表すポイントを作成します。
新バージョンでは、メッシュ区画境界座標値の計算手順を見直すことによって、浮動小数点数の計算誤差を極力小さくしました。

(3) JpStdGridAccumulator
入力フィーチャーのジオメトリ全体をカバーする範囲をメッシュ区画で分割し、各区画の領域を表す矩形ポリゴンまたは位置を表すポイントを作成します。
新バージョンでは、メッシュ区画境界座標値の計算手順を見直すことによって、浮動小数点数の計算誤差を極力小さくしました。
また、JpMeshCodeReplacer と整合性をとって、作成するポリゴンのオリエンテーション(頂点を順番に辿ったときの回転方向)を反時計回りに変更しました。

これらのトランスフォーマーは、標準地域メッシュ(1次~3次)および分割地域メッシュ(1/2, 1/4, 1/8, 1/10)をサポートします。

新バージョン (version 2) は、FME 2015.1.3 以降で利用可能です。
次のページの「カスタムトランスフォーマー」のセクションもご参照ください。
http://www.pragmatica.jp/fme/jpformats.html

2015年11月8日日曜日

ユーザーサポートサイトのリニューアル

2015-11-08発信

Safe Software社の公式ユーザーサポートサイト"FME Knowledge Center"がリニューアルされました。
https://knowledge.safe.com/

質問・回答(Community Answers)、技術解説記事(Knowledge Base)が引き継がれるとともに、これまでは非公式サイトで運営されていたFMEの改良に関する提案・意見交換の場(Ideas Exchange)も統合されました。
エンドユーザーの皆様からのご提案を反映させ、FMEの進化が加速されることが期待されます。

FMEの機能や使用方法に関するご質問は、当社運営の「FMEユーザーフォーラム」でも受け付けております。
あわせてご利用ください。
https://groups.google.com/forum/?hl=ja#!forum/fmers

2015年10月11日日曜日

FME Desktop モニター募集開始 他

2015-10-11発信

1. FME Desktop モニター募集開始

FME Desktop モニターの募集を始めました。内容については次のページをご参照ください。
http://www.pragmatica.jp/fme/monitor.html

モニターにご協力いただける場合、3ヶ月間有効な FME Desktop ライセンスを無償で発行いたします。
まだFMEを使ってみたことがない方、通常の評価版 (30日間) では十分な評価ができなかった方は、是非ご検討ください。

-----
2. UTMポイントとMGRS

国土地理院の「地理院地図 (電子国土Web)」では、選択されている地点の緯度、経度の他に「UTMポイント」というものが表示されることをご存じでしょうか。
http://maps.gsi.go.jp/

これは、国際的にはMGRS (Military Grid Reference System) コードとして知られているものです。

FMEには地理座標 (経度, 緯度) をMGRSコードに変換する LatLongToMGRSConverter トランスフォーマーが標準で用意されていますが、同一座標についてこのトランスフォーマーで変換したMGRSコードと地理院地図で表示されるUTMポイントコードを比較したところ、一致する場合と一致しない場合がありました。
調べたところ、コード中の東距/北距成分の精度未満の桁について、LatLongToMGRSConverter は切り捨て、地理院地図は四捨五入によって丸めるためであることが分かりました。

英語版 Wikipedia (https://en.wikipedia.org/wiki/Military_grid_reference_system) では切り捨てるべきであるという記述がありますが、NGA (National Geospatial-Intelligence Agency: 米国家地球空間情報局) がウェブ上で公開している文書では四捨五入の例が見られるなど、実際の運用としては両方があり得るようです。

Safe Software社には、運用の実態を踏まえて LatLongToMGRSConverter にオプションパラメーターを追加して切り捨て/四捨五入をユーザーが選べるようにしてはどうかという提案をしましたが、当面の「つなぎ」として、地理院地図のUTMポイントコードに準じたMGRSコードを求めるためのカスタムトランスフォーマー "JpLLToUTMPointConverter" を作成しました。
次のページからダウンロードできますので、必要に応じてご利用ください。
FMEサポート | 国内データ変換のサポート > カスタムトランスフォーマー
http://www.pragmatica.jp/fme/jpformats.html
※ダウンロードするには、このメール本文の後に記載しているユーザー名、パスワードによる認証が必要です。

MGRSの仕様についてご存じの方がいらっしゃいましたら、情報をご提供くださるようお願いいたします。

2015年10月6日火曜日

トランスフォーマーリスト

2015-10-06発信

これまでに多くの方より、目的とするデータ変換に使用できるトランスフォーマーを探しやすくしてほしいとのご意見をいただきました。
ご意見を踏まえて、FMEに標準で含まれる全てのトランスフォーマー (追加ライセンス料が必要なものを除く) を網羅した「トランスフォーマーリスト」を作成、当社ウェブサイトで公開しましたので、お知らせいたします。

トランスフォーマーリスト[アルファベット順]
http://www.pragmatica.jp/fme/transformers/TransformersList_Alphabetic.html

トランスフォーマーリスト[カテゴリ別]
http://www.pragmatica.jp/fme/transformers/TransformersList_Categorized.html

どちらのリストも、全トランスフォーマーについて、それぞれの要点と主な機能を掲載しています。
また、主な機能の欄には関連の深いトランスフォーマー名も記載していますので、それをたどることで活用の幅をさらに広げていただけると思います。

「FMEリファレンス」(日本語版ドキュメント)も引き続き拡充していく計画としています。
http://www.pragmatica.jp/fme/references/

あわせてご活用くださるよう、お願いいたします。

2015年8月31日月曜日

FMEリファレンスの拡充

2015-08-31発信

当社ウェブサイトにて今月上旬より公開を始めた「FMEリファレンス」(日本語版ドキュメント)について、FME Workbench によるワークスペース作成の基本的な事項について掲載できましたのでお知らせします。
FMEリファレンス
http://www.pragmatica.jp/fme/references/

このうち「ワークスペースの作成と実行」は、一般的なワークスペースの作成から実行までに必要な事項がひととおり概観できるように、それらの要点をまとめたものです。
http://www.pragmatica.jp/fme/references/BasicWorkspaceBasics.html

ワークスペース作成の参考として利用していただければ幸いです。

「FMEリファレンス」の掲載内容は Safe Software 社の公式ドキュメント "FME Workbench" (英語版) をベースにしていますが、直訳ではなく、分かり易くする観点から修正、補足を加えるとともに構成も一部変更しています。
基本的な事項はほぼカバーしましたが、まだワークスペース作成に関わる全ての事項を網羅しておらず、今後も内容を追加、更新していく予定です。
不備な点や分かりにくい点がありましたら、ご指摘くださるようお願いします。

2015年8月23日日曜日

ウェブ上で公開されているデータの取得

2015-08-23発信

FMEはインターネットとの接続を標準でサポートしており、ウェブサーバーに保存されているファイルは、リーダーなどのソースデータセットとしてそのURLを指定するだけで読み込むことができます。
内部的にはファイルを一時フォルダにダウンロードして(zipならばそれを解凍してから)読み込み、変換が終了したらダウンロードしたファイルを削除するということを行います。
手動でダウンロード、解凍するのと手順は同じですが、多数のファイルがある場合などには便利な機能です。

ウェブ上で公開されているデータはファイルダウンロードの形態によるものばかりではなく、ウェブページ(HTML文書)に埋め込んだテキストとして提供されているものもあります。
その場合には、HTML文書の取得、データ部分の抽出、テーブル形式への変換といった一連の処理を自動化するためのデータフローを定義する必要があります。
HTTPCallerというトランスフォーマーを使うとウェブサーバーに対するGET, POST等のリクエストの発行とレスポンスの取得ができるので、これによってHTML文書を取得することができます。

試験的に防災科学技術研究所が公開している「Hi-net自動処理震源リスト」(HTMLに記述された固定長フォーマットのテーブル)を取得し、任意のフォーマットでの出力が可能なテーブルに変換するまでのワークスペースを作成したところ、良好な結果が得られたので紹介いたします。

FMEケーススタディ > HTML文書の取得と変換
http://fme-casestudy.blogspot.com/2015/08/html.html

Hi-net自動処理震源リストは逐次更新されているので、継続的にデータを取得する必要があるならば、Windows タスクスケジューラによって毎日ワークスペースを実行してデータベースにデータを蓄積していくという仕組みも考えられます。
ソースデータがどこにどんな形態で存在していてもアクセス権限さえあれば取得・変換できることを示した例であり、これもFMEの特長のひとつであると言えます。

2015年8月9日日曜日

ユーザーサポートサイトの拡充

2015-08-09発信

1. FMEリファレンス (当社サイト)

多くのトランスフォーマーのパラメーター設定において使われる演算子や関数の説明など、ワークスペースを作成する際に比較的頻繁に参照されるドキュメントを抜粋して日本語化を進めており、当社ウェブサイトでの公開を始めました。
現時点では次の事項について掲載しています。
・条件判定用の比較演算子
・数学演算子・数学関数
・ジオメトリ間の空間的関係
・パスフィルター用の特殊文字

URLは次のとおりです。ワークスペース作成の参考としてご利用ください。
http://www.pragmatica.jp/fme/references/

-----
2. FME Transformer Gallery (Safe Software社サイト)

Safe Software社ウェブサイトでは、キーワードによるトランスフォーマー検索サイトが新設されました。
検索結果としてトランスフォーマー名だけでなくそれらの概要も一覧表示されるとともに、使用頻度順 (Most Used) でのソートもできるので、より素早く目的とするトランスフォーマーが見つけられると思います。

URLは次のとおりです。
http://www.safe.com/transformers/#/

-----
「FMEケーススタディ」の公開を始めてから1ヶ月が経過しました。この間、閲覧数 (ページビュー) は着実に伸びております。
FMEに関心をお持ちいただいていることに感謝申し上げます。

FMEケーススタディ
http://fme-casestudy.blogspot.com/

今後もFMEサポートサイト、FMEケーススタディの充実に努めていきたいと思います。
ご意見、ご要望などがありましたら、随時お知らせください。

2015年8月2日日曜日

国内データ変換カスタムトランスフォーマーの使用例

2015-08-02発信

当社では、FMEの国内データ変換サポートを充実させるために、カスタムフォーマット、カスタムトランスフォーマー等を作成、公開しているところですが、いくつかのカスタムトランスフォーマーについて使用例 (テンプレート) を公開しましたのでご案内します。

(1) JpMeshCodeReplacer使用例: CreateMeshDemo_Census2010MeshStatistics.fmwt
平成22年国勢調査メッシュ統計(1km, 500m, 250m メッシュ)「男女別人口総数及び世帯総数」(CSV形式テキスト)をShape形式に変換します。

(2) JpKsjPointExtractor使用例: CreateKSJDatasetDemo_KsjKanchoGenkai.fmwt
国土数値情報旧フォーマットC36-60P「感潮限界」(テキスト)を読み込み、国土数値情報GML形式及びShape形式でファイル(全国1ファイル)に出力します。

(3) JpKsjSurfaceExtractor使用例: CreateKSJDatasetDemo_2010CensusAdmin.fmwt
平成22年国勢調査市区町村別人口・世帯数を市区町村ポリゴンに結合し、国土数値情報GML形式及びShape形式で都道府県別のファイルに出力します。

テンプレート(*.fmwt)はワークスペース配布用に圧縮した形式のファイルです。
ワークベンチメニュー: File > Open で開くとワークスペースに展開され、ワークスペースファイル(*.fmw)として保存、カスタマイズ、実行ができます。
テンプレート自体は読み取り専用で、何度でも繰り返し同じワークスペースを作成することができます。

上記各テンプレートは、当社ウェブサイト「FMEサポート|国内データ変換のサポート」ページの「カスタムトランスフォーマー」セクションからダウンロードできます。
http://www.pragmatica.jp/fme/jpformats.html
※ダウンロードするには、このメール本文の後に記載しているサポートリソースアクセス用のユーザー名、パスワードによる認証が必要です。

使用方法等については、ワークベンチでテンプレートを開いた後、Navigator ウィンドウ Workspace Properties セクションの Description, Usage を参照してください。

FME評価版(30日間無償)でも利用可能です。評価版は次のページから入手できますので、是非、お試しください。
Try FME Desktop
http://www.safe.com/fme/fme-desktop/trial-download/

[参考] FME Desktop のライセンシング
http://www.pragmatica.jp/fme/desktop_licensing.html

2015年7月26日日曜日

複数のデータファイルを一括して読み込む方法

2015-07-26発信

変換の対象とするデータは常にひとつのファイルに格納されているとは限らず、むしろ、複数のファイルの集合で与えられる場合の方が多いと思います。
その場合、ディスク内のフォルダの階層構造はデータを作成したシステムやプロジェクトごとに固有のものであり、一般的なルールはありません。

FMEワークベンチでは、Windows標準のファイル選択画面に加えて、Advanced Browser と呼ばれるファイル選択画面が用意されています。
Advanced Browser では複数のフォルダに分散して格納されているファイルも同時に選択できるので、オリジナルのフォルダ階層構造に手を加えることなく、それらを一括して読み込むための設定が可能になります。

Advanced Browser はFMEワークベンチ独自のものなので、これを活用していただくための参考として、基本的な使い方に関する記事を「FMEケーススタディ」に掲載しました。
複数のデータファイルの一括読込
http://fme-casestudy.blogspot.com/2015/07/blog-post_23.html

この記事では、国土数値情報「行政区域」データ(都道府県別Shapeファイル)を例として、次の4ケースについて全国のデータをひとつのソースデータセットとして読み込む方法を説明しています。
ケース1: ひとつのフォルダ内に全てのファイルが保存されている(サブフォルダなし)
ケース2: ひとつのフォルダ内の地方別のサブフォルダに分けて保存されている
ケース3: ひとつの zip ファイルに全てのファイルがアーカイブされている
ケース4: ひとつのフォルダ内に解凍前の都道府県別 zip ファイルが保存されている

フォルダの階層構造を変更するのは面倒なだけでなく、ミスも起こり易い作業です。
細かいところですが、これを避けることができるということもFMEの利点のひとつであると思います。
ワークスペース作成の際の参考としていただければ幸いです。

なお、多数のデータファイルについて、内容は変更せずに、それらが格納されているフォルダの階層構造やファイル名を変更することだけが求められる場合もあります。
広い意味でのデータ変換であると思いますが、ほとんどの場合、これは[PATH]リーダー、[FILECOPY]ライター、及びいくつかのトランスフォーマーを使って解決できます。
[PATH]リーダー、[FILECOPY]ライターについては、別の機会に改めて取り上げたいと思います。

2015年7月21日火曜日

データベースの利用について

2015-07-21発信

データセットの規模が大きい場合や部分的な更新が頻繁に必要な場合など、データベースによってデータを管理することが効果的なことがあります。
FMEではファイルベースのデータセットと同じ感覚でデータベースを取り扱うことができますが、FMEの使用方法とは別に、DBMS(データベース管理システム)によって少しずつ異なるところがあるデータベースの利用方法に関する基礎的な知識は必要になります。
初めてデータベースを扱おうとする場合には、その点で少し難しさを感じるかも知れません。

FMEがサポートするDBMSのうちPostgreSQL/PostGISは、誰でも無償で利用できるとともに、非空間データベース、空間データベースのどちらにも対応しているので、FMEによるデータベースの利用方法を学ぶうえで最適であると思います。
これからPostgreSQL/PostGISを利用しようとする方の導入時の参考としていただけるよう、次の文書を作成・公開しましたので、ご案内します。
・PostgreSQL/PostGIS のインストールとデータベースの作成
http://www.pragmatica.jp/fme/support/documentation/common/postgresinstallation.pdf
※この文書にアクセスするには、このメール本文の後に記載しているユーザー名、パスワードによる認証が必要です。

また、「FMEケーススタディ」にはPostGISデータベースを利用するFMEワークスペースの例も掲載しましたので、あわせて参考にしていただければ幸いです。
・データベースとの連携 - データベースへのデータ移行
http://fme-casestudy.blogspot.com/2015/07/blog-post_19.html
・データベースとの連携 - データベースからのデータ抽出
http://fme-casestudy.blogspot.com/2015/07/blog-post_20.html

FMEとデータベースを連携して利用できるようになると、FME、データベース双方の活用の幅が格段に広がります。
まだデータベースユーザーでない方は、チャレンジなさることをお勧めいたします。

2015年7月12日日曜日

新企画「FMEケーススタディ」サイト開設

2015-07-12発信

1.「FMEケーススタディ」サイトの開設について

前々回、前回と2回続けて具体的なワークスペース例をご紹介しましたが、それらも含めて、さまざまなワークスペース例をご紹介するための専用サイト「FMEケーススタディ」を設けましたのでご案内します。
FMEケーススタディURL:
http://fme-casestudy.blogspot.com/

このサイトでは、原則としてウェブ上で公開されているデータを素材として具体的なデータ変換・統合のシナリオを想定し、それを実現するためのワークスペース例を掲載していくこととします。
良く使われるトランスフォーマーやそれらの組み合わせの基本的なパターンを取り上げることにより、現実の課題を解決するためのワークスペース作成の参考例になるようにしたいと考えています。

各記事で取り上げるシナリオ・ワークスペース例は、データフロー全体が一目で見渡せるようにはできるだけ簡潔なものとするとともに、短時間で読み切れるように説明は要点のみにしています。
詳細についてご不明な点がありましたらお問い合わせいただくか、「FMEユーザーフォーラム」でご質問ください。
FMEユーザーフォーラムURL:
https://groups.google.com/forum/?hl=ja#!forum/fmers

また、ケーススタディのテーマについてのご要望がありましたらお知らせください。
ご要望に沿った記事も追加していきたいと思います。

-----
2. FMEのバージョン表記方法について

FMEは年1回(通常は1月中旬)メジャーバージョンアップが行われるとともに、年4~5回、小規模な改良や累積的なバグ修正を行ったアップグレードバージョンがリリースされます。
FME 2014までは、年内のアップグレードバージョンはSP(サービスパック)番号で表されていましたが(例: FME 2014 SP5)、FME 2015からは、ドットで区切った番号で表されるようになりました(例: FME 2015.1.0.3)。
この"YYYY.A.B.C"形式での表記のうち、"A"は従来のSP番号に相当し、年4回程度更新されます。
"B"は"A"の更新サイクル以外の時期にアップグレード版をリリースしたとき、"C"は主にホットフィクス(迅速なバグ修正)をリリースしたときに更新されます。

インターネットに接続している状態で FME Workbench を開き、メニュー: Help > Check for Updates を選択すると、使用中のFMEがその年の最新版であるかどうかが確認できます。
最新版は次のページからダウンロードでき、FME年間保守(または評価版ライセンス)の有効期間内であればいつでもアップグレードできます。
FMEダウンロードページURL:
http://www.safe.com/support/support-resources/fme-downloads/

"B"と"C"の更新は不定期なので時々チェックし、できるだけ最新版をご利用になることをお勧めします。

2015年7月5日日曜日

テーブル結合を伴うワークスペース例

2015-07-05発信


データ統合 - 既存の複数のデータセットからデータを抽出・統合して新たなデータセットを作成することは、FMEの典型的な用途のひとつです。
多くの場合、データ統合の過程ではデータベースの世界で言うところのテーブル結合に相当する処理が必要になり、それがデータ統合の要(かなめ)であるケースも多いと思われます。
今回は次の例によって、FMEでテーブル結合に相当する処理を行うための基本的な方法を紹介いたします。
=====
平成22年国勢調査の人口、世帯数の市区町村別集計表(CSV形式)と調査時点の市区町村の区域を表すGISポリゴンデータ(Shape形式)に基づき、人口、世帯数を属性として持つ市区町村ポリゴンデータ(KML形式, 都道府県別レイヤ)を作成する。

ソースデータセット
(1) 平成22年国勢調査による市区町村別人口、世帯数集計結果
e-Stat 政府統計の総合窓口からダウンロードした「男女別人口及び世帯の種類(2区分)別世帯数」テーブル(CSV 形式, 全国1ファイル)
e-Stat 政府統計の総合窓口
平成22年国勢調査 > 人口等基本集計(男女・年齢・配偶関係,世帯の構成,住居の状態など)> 全国結果
総人口・総世帯数 表番号2「男女別人口及び世帯の種類(2区分)別世帯数」

(2) 平成22年国勢調査時点(2010年10月1日現在)の市区町村ポリゴンデータ
次のツールによって作成した2010年10月1日現在の市区町村ポリゴン(Esri Shape 形式, 全国1ファイル)
Municipality Map Maker ウェブ版 市区町村区域のGISデータ生成ツール
=====

これらのソースデータセットから読み込まれるCSVレコード、ポリゴンはどちらも市区町村コードを属性として持っているので、それが一致することを条件としてCSVの各レコードを対応する市区町村ポリゴンに結合することができます。
これがテーブル結合に相当するもので、FMEでは、FeatureMerger などのトランスフォーマーによってそれが実現されます。

具体的なワークスペースの例は次のページに掲載しましたので、ご参照ください。
FMEケーススタディ「属性結合の基本的な方法」
-----
FMEが多数のフォーマットをサポートし、多種多様なデータ変換機能を備えているということは、統合前の複数のデータセットの間、あるいは、統合前後のデータセットの間でフォーマットが異なっていたとしても、データ抽出、加工、スキーマ変更といったデータ統合に必要な一連のプロセスをひとつのワークスペースで定義・実行できる可能性が高いということを意味します。
データ統合のための全プロセスがひとつのワークスペースで完結できるならば、いくつかの工程に分割して作業分担するよりもはるかに効率的であり、工程ごとに生じる中間データや全体の進捗を管理するためのコストも不要になります。
データセットの多様性、データ変換の複雑さが増せば当然、ワークスペースも複雑で大規模なものになりますが、それによってもたらされる効果もそれだけ大きくなると考えられます。

2015年6月28日日曜日

FME活用例 - 水系域別河川データセットの作成

2015-06-28発信

一言でいうとFMEは何をするソフトウェアなのか?
この問いには、これまで「データ変換」をするものであると答えてきました。
間違いではないのですが、これに続いて「300以上のフォーマットをサポートしている」と紹介すると、FMEは「フォーマット変換」を目的とするツールであると勘違いされてしまうことが多いように感じています。

FMEが目指しているものを少し丁寧に言うと、「ある用途のために必要なデータセットを作成するうえで、可能な限り既存のデータセットを利用するとともに、データ変換の手順を最大限自動化することにより、そのコストを最小化することである」と言えます。
ここで言う「データセット」とは、ある用途で要求されるスキーマ、フォーマットで作成されたデータの集合のことで、データを格納するファイルの配置やファイル名、あるいはデータベース内のテーブルの構成なども仕様として定められているようなものを指します。
「ある用途」は、データセットが必要とされる場面に応じて、システム、プロジェクト、業務などと言い換えることができます。

FMEが多数のフォーマットをサポートしているのは、フォーマットが異なっていたとしても、既存のデータセットを利用して新たなデータセットを作成する手順を自動化できるようにするためであって、フォーマット変換が最終目的ではありません。
もちろんフォーマット変換のためにFMEは活用できますが、FMEの用途はそれだけではないということをご理解いただきたいと思います。

ここで、フォーマットの変換が伴わなくてもFMEが効果的に利用できる例をひとつ紹介いたします。
あるシステムで、全国の河川について水系域別のデータファイルで構成されたデータセットが必要とされており、国土数値情報の河川データを利用してそのデータセットを構築するというミッションがあったとします。
そのデータセットの要件は次のとおりです。
**********
国土数値情報で提供されている河川データセット: 都道府県別の河川流路(ライン)、流路端点(ポイント)データ(Shape形式)を再編成し、次のようなフォルダ階層で水系域別のデータファイル(Shape形式)を格納したデータセットを作成する。

<水系域別河川データセットルートフォルダ>
  + 端点
    + <サブフォルダ: 水系域コードの先頭2桁>
  + 流路
    + <サブフォルダ: 水系域コードの先頭2桁>

出力先のファイル名は次のように水系域コード(6桁の数字)に流路か端点かを表すサフィクスをつけた名前とし、その先頭2桁が一致するサブフォルダに格納する。
端点ファイル名: "<水系域コード>_N.shp"
流路ファイル名: "<水系域コード>_S.shp"

留意事項
国土数値情報(河川)データは都道府県別ファイルで提供されており、県境付近の流路、端点が複数のファイル間で重複しているところがあるため、水系域別に再編成する際には重複データを削除する。
**********

まず、このミッションをクリアするために、FMEがない場合はどのツールを使い、どんな手順が必要で、どのくらいの時間(コスト)がかかりそうかを想像してみてください。
FMEによるソリューションの概要は次のページに掲げました。
FMEケーススタディ「データセットの再編成 - 水系域別河川データセットの作成」

これは全く架空のミッションですが、ディスクシステム内でのファイルの配置やファイル名の命名法がシステムの仕様として定められているということは、現実にも良くあるのではないでしょうか。
そのようなデータセットを構築する際にも、FMEの利用についてご検討いただければ幸いです。

[事例] 水系域別河川データセットの作成

FMEケーススタディ「データセットの再編成 - 水系域別河川データセットの作成」に移動しました。

2015年6月22日月曜日

正規表現の利用

2015-06-22発信

正規表現 (Regular Expressions) というものをご存じでしょうか。

簡単に言えば、正規表現は文字列のパターンを定義した文字列式です。
多くのプログラミング言語が正規表現をサポートしており、これを使うことにより、ある文字列が一定のパターンに一致するかどうかを判定したり、パターン内のグループごとに分割したりすることができます。

FMEでもいくつかのトランスフォーマーで正規表現が利用でき、それらによってデータ変換・統合における課題が簡単に解決できるケースがあります。
以下の例は全て、これまでに実際に私が出会ったことがあるものです。

例1: 都道府県別の統計表
都道府県名の前後や中間に空白が含まれる(「 千  葉  県  」、「 東  京 都 」など)。
都道府県名をキーとして他のテーブルと結合するために、全ての空白を削除しなければならない。

例2: 現地調査結果の表
調査地点の緯度経度が単位を含んだ60進数表現で記述されている(「35度51分56.1秒」、「139度58分25.2秒」など)。
緯度経度に基づいてポイントジオメトリを作成するために、度単位の数値に変換しなければならない。

例3: 会員名簿
生年月日がまちまちな書式の文字列(日付型データではない)で記述されている(「昭和45年12月5日」、「H3.3.10」、「1986/6/25」など)。
データベースに移行するために、和暦年は西暦年に換算したうえで書式を統一しなければならない

FMEでこれらの課題を解決するのには、正規表現が利用できるトランスフォーマー(StringReplacer, StringSearcher)を使った次のようなアプローチが考えられます。

例1: StringReplacerで都道府県名文字列内で「空白類文字」に一致する文字を全て「空文字列」に置き換える。
例2: StringSearcherで緯度、経度文字列から度、分、秒の数値部分を抽出した後、それらを度単位の値に換算する。
例3: これは数段階の処理になります。
(1) StringSearcherで昭和のパターンに一致するものを選択し、年、月、日の値を抽出する。
(2) 昭和に一致しなかったものについて、StringSearhcer(2) で平成のパターンに一致するものを選択し、年、月、日の値を抽出する。
(3) 平成に一致しなかったものについて、StringSearcher(3) で西暦のパターンに一致するものを選択し、年、月、日の値を抽出する。
(4) 昭和・平成の年を西暦年に換算したうえで、データベース移行用の書式に整える。

Excelの関数を使い、あらかじめ望ましい書式に変換した列を元の表に追加しておくこともできますが、これらのトランスフォーマーで正規表現を利用する利点としては次のようなことが挙げられます。
1. 元の表に列を追加した中間データファイルを作成・管理する必要がない。
2. 書式の変換と本体のデータ変換(テーブル結合、ポイントジオメトリ作成、データベースへの移行)をひとつのデータフローで行える。
3. StringSearcherでは想定される書式と一致しないデータの検出も容易にできる。

Excelで書式を変換するよりもはるかに早く、正確にデータ変換・統合ができますし、元のデータに修正があった場合の対応も楽になります。
例示したものと似たような課題に遭遇したときは、正規表現の利用についてもご検討ください。

2015年6月14日日曜日

国内データ変換のサポート強化について

2015-06-14発信

前々回に国土数値情報を例としたXMLデータ処理、前回は日本語文字列に固有の処理に関してお知らせしました。
それらを含めて FME による国内データ変換に関するサポートを強化する方針としており、その一環として、当社ウェブサイトの関連コンテンツを統合・整理して「国内データ変換のサポート」ページを設けました。

FMEサポート | 国内データ変換のサポート
http://www.pragmatica.jp/fme/jpformats.html

現在、このページでは
・標準のGMLリーダーがサポートする国内データ
・国内のフォーマットをサポートするカスタムフォーマット(リーダー)
・国内のフォーマットや基準に基づく処理や日本語文字列に固有の処理を行うカスタムトランスフォーマー
のリストを掲げています。
当社が開発するカスタムフォーマット等は、FME Store での公開、または、このページからのダウンロードによって提供していく方針としています。
どうぞご利用ください。

XMLやCSVなどの汎用的なファイル形式を利用しているフォーマットの場合、スキーマの仕様とサンプルデータがあればカスタムフォーマットなどを作成することができます。
独自のファイル形式の場合は、その仕様が公開されているか、または、その所有権者から開示についての許諾が得られれば、プラグインの開発について検討できます。

今後、皆様のご意見をうかがいながら国内フォーマットやデータ変換のサポート範囲をさらに拡大していきたいと考えています。
サポートすることが望ましいと思われるフォーマットや汎用的なデータ変換についてのご意見・ご要望がありましたら、お知らせくださるようお願いいたします

2015年6月7日日曜日

日本語文字列に固有の処理について

2015-06-07発信

FMEは空間データ処理だけでなく豊富な文字列処理機能も持っており、データベースの構築や移行などの際の文字列データの検証や修正にも活用することができます。
文字列処理を行うためのトランスフォーマーは日本語文字にも対応しており、特に問題なく使用することができます。

しかし、日本語の文字列に固有の処理(典型的には全角文字と半角文字の間の変換など)がデフォルトの設定で簡単に行えるようなトランスフォーマーはありません。
思うような処理をするには、ユーザーがトランスフォーマーのパラメーターに面倒な入力をしたり、データフローの中にスクリプトを組み込んだりしなければならないこともあり、これには結構手間がかかります。

そこで、これまでに当社が日本語文字列処理を伴うデータ変換用に作成したワークスペースの中から日本語文字列に固有の処理で、かつ、汎用的に使えそうな部分を抽出・再構成してカスタムトランスフォーマーを作成し、公開することにしました。
現在公開中の主なものを掲げます。

JpCaharacterWidthChanger
属性文字列内のひらがな/全角カタカナ/半角カタカナの変換、英数字や記号の全角/半角の変換を行います。

JpWarekiConvertor
日付文字列に含まれる年について和暦と西暦(グレゴリオ暦)の間の変換を行い、変換後の日付文字列を新しい属性に格納します。

JpAddressPartExtractor
都道府県名から始まる住所文字列を、都道府県名、振興局等名、政令市・郡名、市区町村名、その他に分割するとともに、都道府県コードを抽出します。

これらのカスタムトランスフォーマーは次のウェブページからダウンロードできます(ダウンロードするにはメール本文の後に記載しているサポートリソースアクセス用のユーザー名とパスワードによる認証が必要です)。
http://www.pragmatica.jp/fme/jpformats.html

ダウンロードしたファイル(zip圧縮)を解凍して展開される"*.fmx"ファイルを"マイ ドキュメント/FME/Transformers"フォルダに保存してください。
その後FMEワークベンチを起動すると、Transformer Gallery の Categorized/Pragmatica フォルダ内にそのトランスフォーマーが現れ、標準のトランスフォーマーと全く同じ方法でワークスペースに追加して利用できるようになります。
各トランスフォーマーの使用方法についてはそれぞれのヘルプを参照してください。

日本語文字列処理に関してご意見やご要望がありましたら、随時お知らせください。

2015年6月1日月曜日

XMLデータ処理事例 - 国土数値情報

2015-05-30発信

XMLはプラットフォームに依存しないデータ交換用のフォーマットとして広く利用されています。
FMEはXMLおよびGMLなどのXMLベースの標準的なフォーマットをサポートしていますが、あらゆる応用スキーマや仕様をカバーしているわけではありません。
XML文書から読み込んだデータをシステムで利用可能な形態にする、あるいは、他のフォーマットのデータをXML形式に変換するには、応用スキーマ等に従って必要な変換を行うためのデータフローを組み立てる必要があります。

それを行うために多くのトランスフォーマーが用意されていますが、個々の応用スキーマごとにゼロからワークスペースを作成するのは効率的ではありません。
しかし、FMEには、複数のワークスペースで共通するデータフローを部品化する仕組み(カスタムフォーマット、カスタムトランスフォーマー)があります。
その仕組みを利用して、ある分野、用途でのXMLデータ処理における共通のデータフローをあらかじめ部品として用意しておけば、個々の応用スキーマに対応するワークスペースの作成は容易になると考えられます。
その事例として、国土数値情報(JPGIS2.1/GML3.2)に対応する次のような「部品」を作成し、FME Storeで公開しました。

1. カスタムフォーマット

カスタムフォーマットとは、リーダーとして使用できる部品です。
FME Storeで公開されているカスタムフォーマットは、リーダーと全く同じ方法でワークスペースに追加できます(初回の追加時はインターネットに接続している必要があります)。

(1) JPS2_KSJ_VECTOR: Japanese National Land Numerical Information (JPGIS2.1/GML3.2) Vector
国土数値情報ベクターデータ(点、線、面)を読み込み、ジオメトリを作成します。
データの種類ごとに異なる主題属性は標準のXMLリーダーで読み込み、このカスタムフォーマットで読み込んだジオメトリをFeatureMergerなどで結合することにより、ジオメトリと属性を備えた完全なフィーチャーが作成できます。

(2) JPS2_KSJ_MESH: Japanese National Land Numerical Information (JPGIS2.1/GML3.2) Mesh
国土数値情報メッシュデータを読み込み、各メッシュ領域を表す矩形ポリゴン(またはメッシュ中心のポイント)を作成するとともに、メッシュの属性もあわせて抽出します。
属性の数や内容はデータの種類や作成年によって異なりますが、このカスタムフォーマットは、データに記述されている全ての属性を"_data{}"という名前のリスト属性に格納します。
必要に応じて、AttributeRenamerなどでリストの各要素を適切な属性名に変更することができます。

これらのカスタムフォーマットを使用して国土数値情報データを変換するためのワークスペース例(テンプレート)も FME Store で公開しました。
ワークベンチメニュー: File > New で"Create Workspace"画面を開き、左側のペインで FME Store > Pragmatica を選択してください。
画面右上にテンプレートのリスト、右下にリスト内で選択されているテンプレートの説明(英文・和文)が表示されます。
[Choose]ボタンをクリックすると、リスト内で選択されているテンプレートに基づくワークスペースが自動的に作成されます。

2. カスタムトランスフォーマー

カスタムトランスフォーマーとは、標準のトランスフォーマーと同じ方法で使用できる部品です。
FME Storeで公開されているカスタムトランスフォーマーは、標準のトランスフォーマーと全く同じ方法でワークスペースに追加できます(初回の追加時はインターネットに接続している必要があります)。
以下のトランスフォーマーは、Transformer Gallery 内の FME Store / Pragmatica カテゴリに格納されています。

(1) JpKsjPointExtractor
ポイントジオメトリに基づいて、国土数値情報の仕様に準じたXML要素 <gml:Point> を作成します。

(2) JpKsjCurveExtractor
ラインジオメトリに基づいて、国土数値情報の仕様に準じたXML要素 <gml:Curve> を作成します。

(3) JpKsjSurfaceExtractor
ポリゴンジオメトリに基づいて、国土数値情報の仕様に準じたXML要素 <gml:Curve>, <gml:OrientableCurve>, <gml:Surface> を作成します。

これらのトランスフォーマーが作成したジオメトリ部分のXML要素と、応用スキーマに基づいて作成した主題属性のXML要素をひとつのXML文書に書き出せば、国土数値情報データファイルができあがります。
主題属性のXML要素を作成するためのデータフローは応用スキーマごとに定義する必要があります。

-----
国土数値情報は一事例に過ぎません。上記のような手法は、どのような分野、用途においても、XMLデータ処理を効率化するために応用できるものであると考えています。
XMLデータ処理が課題になっている場合は、FMEもひとつの選択肢としてご検討ください。


なお、基盤地図情報に関しては、
- 基本項目は標準のGMLリーダーで読み込めます。
- 数値標高モデル(DEM)はカスタムフォーマット"Japanese Fundamental Geospatial Data (FGD) DEM" (JP_FGD_DEM) でラスターとして読み込めます。

2015年4月30日木曜日

【速報】FME 2015.1 リリース

2015-04-30発信

4月29日(日本時間30日)、FME 2015.1がリリースされました。
いくつかの新機能の追加、性能の改善、累積的なバグフィクスなどがなされています。

製品ライセンスをお持ちで年間保守を継続している方、評価版ライセンスの有効期間中の方はアップグレードできます。
パワーアップしたFMEをご活用ください。

FMEインストーラーダウンロード
http://www.safe.com/support/support-resources/fme-downloads/
※インストール先フォルダを別にすれば以前のバージョンのFMEも引き続き利用できます。

FME 2015.1の新機能等の詳細については次のページをご参照ください。
Safe Blog > What's Great in FME 2015.1
http://blog.safe.com/2015/04/whats-great-fme-2015-1/
FME 2015.1 "what's new" list
http://downloads.safe.com/fme/2015/whatsnew_2015-1.txt


2015年4月29日水曜日

FMEユーザーフォーラムの開設 他

2015-04-29発信

1. FMEユーザーフォーラムの開設

これまでに多くの方々から、FMEの機能や使い方について気軽に質問できるコミュニティサイトがあると良い、というご意見をいただきました。

Safe Software社は従来より"Community Answers"を運営していますが、ほとんどの投稿は英語であるため、やや敷居が高いのは確かです。
FME Knowledge Center > Community Answers
https://knowledge.safe.com/communityanswers?feedtype=RECENT&dc=All&criteria=ALLQUESTIONS

そこで、国内のユーザー間でFMEに関する知識や技術を共有する場として、次のフォーラムサイトを設けました。
FMEユーザーフォーラム
https://groups.google.com/forum/?hl=ja#!forum/fmers

[サンプル](質問・回答の例)として、FAQ(よくある質問)もいくつか掲載してあります。
どうぞお気軽にご利用ください。

-----
2. FME World Tour 2015 in Beijing (北京)

毎年4月~6月の間、世界の主要都市でFME World Tour(ユーザーカンファレンス)が行われています。
http://www.safe.com/worldtour/

今年は日本での開催はありませんが、最も近い中国では3箇所(北京、上海、成都)で開催され、そのうち北京のカンファレンス(4月20日)に参加しました。
会議では、大規模なデータベースシステムの構築・管理、土地の使用権管理、建築物の3Dモデル作成、油田・パイプラインの管理などの多彩な分野におけるFME活用例についてのユーザー発表がありました。
中国では日本よりも早くFMEの普及が始まっており、先進的な事例も数多くあるようです。

今後も世界中のパートナーと交流を深め、より広範なFMEの活用方法を学んでいきたいと考えています。

2015年4月16日木曜日

Safe Software社ユーザーサポートサイトのリニューアル

2015-04-16発信

Safe Software社のユーザーサポートサイト"FME Knowledge Center"(旧"FMEpedia")がリニューアルされました。
FME Knowledge Center ホームページURL
https://knowledge.safe.com/

Articles: FMEの機能や使用方法に関する技術解説記事などの検索、閲覧ができます。
Documentation: FMEに関するSafe Software社の公式ドキュメントが閲覧できます。
Community Answers: FMEユーザー同士で技術や知識の交換・共有ができます。閲覧は自由ですが投稿するには"sign up"(利用者情報の登録)が必要です。
Request Support: Safe Software社によるテクニカルサポートがリクエストできます。

FME Webinar、FME Youtube Channelは次のURLで引き続き閲覧できます。
FME Webinar
http://www.safe.com/webinar/
FME YouTube Channel
https://www.youtube.com/user/FMEchannel

これらのサポートリソースは全て無料で利用できますのでご活用ください。

-----
当社でもFMEの一般的な使用方法に関してメールを通じてサポートいたします。
どうぞお気軽にお問い合わせください。
http://www.pragmatica.jp/fme/support.html

-----
FMEの最新情報やTipsについては次のブログもご参照ください。
Safe Software社の公式ブログ
http://blog.safe.com/
FME Memorandum: 飯嶋個人のブログ
http://fme-memorandum-takashi.blogspot.jp/

2015年1月16日金曜日

FME 2015.0 リリース

2015-01-16発信

本日未明(日本時間)、FME 2015.0 がリリースされました。

サポートするフォーマット、トランスフォーマーが追加されたほか、FME ワークベンチにもたくさんの改良が施されており、ワークスペースの開発がより一層、効率的にできるようになりました。
また、これまでに当社が調査・指摘してきた日本語文字処理に関する問題点もほぼ全て解消されており、日本語環境においてもより安心・快適に使えます。

ライセンスをお持ちで年間保守を継続されている方、評価版ライセンスで試用されている方はアップグレードすることができます。
パワーアップしたFMEを是非ご活用ください。

FMEインストーラーダウンロードページ
http://www.safe.com/support/support-resources/fme-downloads/
※インストール先フォルダを別にすれば以前のバージョンのFMEも引き続き利用できます。

次のページもご参照ください。
safe.com > What's New in FME?
http://www.safe.com/fme/new/?#FME2015
blog.safe > What’s Great in FME Desktop 2015
http://blog.safe.com/2015/01/whats-great-fme-2015/

=====
昨年までは1月に新バージョンがリリースされた後、定期的なサービスパックリリース(SP1~SP4, 2014のみSP5まで)がありましたが、今年からはFMEのバージョンはドットで区切った番号によって表されます。
関連技術の進歩やユーザー要望に対応して適時にアップグレードされていくことと思います。
このFME情報メールでも随時、最新の情報をお伝えしていきます。

今年もよろしくお願いいたします。