データ交換は、ソーススキーマに基づいて構造化されたデータを取得し、それをターゲットスキーマに変換して、ターゲット データがソース データを正確に表現するプロセスです。データ交換により、異なるコンピューター プログラム間でデータを共有できます。
これは、データ統合の関連概念に似ていますが、データ交換時にデータが実際に再構築される (コンテンツが失われる可能性あり) という点が異なります。すべての制約を考慮すると、インスタンスを変換する方法がない場合があります。逆に、インスタンスを変換する方法は多数 (おそらく無限) ある場合があり、その場合は「最善」のソリューションの選択を特定して正当化する必要があります。
単一ドメインデータ交換
ドメインによっては、数十種類の異なるソース スキーマとターゲット スキーマ (独自のデータ形式) が存在する場合があります。多くの場合、単一のドメインに対して「交換」または「交換形式」が開発され、その後、交換形式を中間ステップとして使用して、すべてのソース スキーマをすべてのターゲット スキーマに (間接的に) 変換/翻訳するために必要なルーチン (マッピング) が記述されます。これにより、すべてのソース スキーマをすべてのターゲット スキーマに直接翻訳するために必要な数百の異なるルーチンを記述してデバッグするよりも、はるかに少ない作業で済みます。
これらの変換交換形式の例は次のとおりです。
- 地理空間データの標準交換フォーマット。
- スプレッドシート データのデータ インター チャンス形式。
- スプレッドシート、グラフ、プレゼンテーション、ワードプロセッサ文書用のオープン ドキュメント フォーマット。
- GPS データを記述するための GPS eXchange Format または Keyhole Markup Language。
- 集積回路レイアウト用の GDSII。
データ交換方法
データ交換には、ブロードキャストデータ交換とピアツーピア(ユニキャスト)データ交換の2種類があります。[1]
ブロードキャストネットワークでは、データはすべての参加者に同時に送信されます。電話会議と同様に、すべての参加者はスピーカーから同時にまったく同じ情報を受け取ります。[2]
ピアツーピア(ユニキャスト)データ交換モデルでは、データは特定のアドレスで定義されたターゲット受信者にのみ送信されます。電話や電子メールと同様に、情報は2つのネットワーク参加者間でのみ流れます。[3]
データ交換言語
データ交換言語/フォーマットは、ドメインに依存せず、あらゆる分野のデータに使用できる言語です。[4]これらは、「マークアップと表示指向から進化し、情報の構造的属性を記述するメタデータのエンコードをさらにサポートするようになりました。」[5]
実践では、特定の種類の形式言語が他の言語よりもこのタスクに適していることがわかっています。これは、それらの仕様が特定のソフトウェア実装のニーズではなく形式プロセスによって駆動されるためです。たとえば、 XMLは方言(ドメイン固有のサブ言語の定義)の作成を可能にするために設計されたマークアップ言語です。 [6]ただし、ドメイン固有の辞書やファクトタイプは含まれていません。信頼性の高いデータ交換には、標準的な辞書、分類法、およびパーサー、スキーマ検証、変換ツールなどのツールライブラリが利用できることが役立ちます。 [要出典]
データ交換に使用される一般的な言語
以下は、複数のドメインでのデータ交換に使用される一般的な汎用言語の一部です。
命名法
- スキーマ – 言語定義がコンピュータが解釈可能な形式で利用可能かどうか
- 柔軟性 – 言語がスキーマを変更することなくセマンティック表現機能を拡張できるかどうか
- 意味検証 – 言語定義が言語内の表現の正しさの意味検証を可能にするかどうか
- 辞書-分類法 – 言語に辞書と、継承を伴う概念の分類法(サブタイプ-スーパータイプの階層)が含まれているかどうか
- 同義語と同音異義語 – 言語が表現に同義語と同音異義語の使用を含み、サポートしているかどうか
- 方言 – 言語定義が複数の自然言語または方言で利用できるかどうか
- WebまたはISO標準 - 言語を標準として承認した組織
- 変換 – 言語に他の標準への翻訳が含まれているかどうか
- 軽量版 – フルバージョンに加えて軽量版が利用可能かどうか
- 人間が読めるかどうか – 言語の表現が人間が読めるかどうか(訓練を受けなくても人間が読めるかどうか)[7]
- 互換性 – 言語を使用する際に使用できる、または必要な他のツールは何か
注:
- ^ RDF はスキーマに柔軟な言語です。
- ^ XML のスキーマには、非常に限られた文法と語彙が含まれています。
- ^ 拡張機能として利用可能です。
- ^ コンパクトな構文ではなく、デフォルトの形式です。
- ^ 構文はかなり単純です(言語は人間が読めるように設計されています)。方言にはドメイン知識が必要になる場合があります。
- ^ 標準化されたファクト タイプは標準化された英語のフレーズで示されますが、その解釈と使用にはある程度のトレーニングが必要です。
- ^ Parse 方言は、 方言を指定、検証、および変換するために使用されます。
- ^ 英語版には、標準化された事実タイプ (= 関係の種類) も含まれる Gellish English Dictionary-Taxonomy が含まれています。
データ交換のためのXML
ワールドワイドウェブ上のデータ交換にXMLが普及している理由はいくつかあります。まず、XMLは既存の標準であるSGML( Standard Generalized Markup Language)やHTML(Hypertext Markup Language)と密接に関連しているため、これら2つの言語をサポートするように書かれたパーサーは、XMLもサポートするように簡単に拡張できます。たとえば、XHTMLは正式なXMLですが、ほとんどの(すべてではないにしても)HTMLパーサーによって正しく理解される形式として定義されています。[6]
データ交換のためのYAML
YAML は人間が読めるように設計された言語です (したがって、標準的なテキスト エディターで簡単に編集できます)。その概念はreStructuredTextや Wiki 構文によく似ていますが、これらも人間とコンピューターの両方が読めるようにしようとしています。YAML 1.2 には JSON と互換性のある省略形の概念も含まれており、そのため、JSON ドキュメントはすべて有効な YAML でもあります。ただし、逆は当てはまりません。[8]
データ交換のためのREBOL
REBOL は、人間が読みやすく、標準的なテキスト エディターを使用して簡単に編集できるように設計された言語です。これを実現するために、句読点を最小限に抑えたシンプルな自由形式の構文と豊富なデータ型を使用します。URL、電子メール、日付と時刻の値、タプル、文字列、タグなどの REBOL データ型は、共通の標準を尊重します。REBOL は、メタ循環方式で設計されているため、追加のメタ言語を必要としません。言語のメタ循環性は、たとえば、REBOL 方言の定義と変換に使用される (排他的ではない) Parse 方言自体も REBOL の方言である理由です。[9] REBOL は、JSON のインスピレーションの源として使用されました。[10]
データ交換のためのGellish
ゲリッシュ英語は自然英語の形式化されたサブセットで、簡単な文法と、一般用語とドメイン固有の用語(概念の用語)を定義する大規模で拡張可能な英語辞書タクソノミーが含まれています。一方、概念はサブタイプとスーパータイプの階層(タクソノミー)に配置されており、知識と要件の継承をサポートしています。辞書タクソノミーには、標準化された事実タイプ(関係タイプとも呼ばれる)も含まれています。用語と関係タイプを一緒に使用して、事実、知識、要件、およびその他の情報の表現を作成および解釈できます。ゲリッシュは、SQL、RDF/XML、OWL、およびその他のさまざまなメタ言語と組み合わせて使用できます。ゲリッシュ標準は、ISO 10303-221(AP221)とISO 15926の組み合わせです。[11]
参照
参考文献
- ^ Heidarzadeh, A.; Sprintson, A. (2017-03-30). 「ブロードキャストネットワークを介した敵対者との最適なデータ交換」2016 情報理論と応用ワークショップ (ITA)。ISBN 978-1-5090-2529-9– IEEE経由。
- ^ 「放送とは何か?」IONOSデジタルガイド。2023年3月20日。 2024年4月3日閲覧。
- ^ 「ユニキャスト」. IONOSデジタルガイド. 2023-03-23 . 2024-04-03閲覧。
- ^ Billingsley, FC (1988). 「一般データ交換言語」. ISPRS アーカイブ. 27 (B3): 80–91 . 2018 年5 月 25 日閲覧。
変換ルーチンは、分野やマシンに依存しない言語と構文を構成します。
- ^ Nurseitov, N.; Paulson, M.; Reynolds, R.; Izurieta, C. (2009). 「JSON と XML データ交換フォーマットの比較: ケーススタディ」。シナリオ: 157–162。
- ^ ab Lewis, J.; Moscovitz, M. (2009). AdvancED CSS. APress. pp. 5–6. ISBN 9781430219323. 2018年5月25日閲覧。
- ^ 「human-readable」。オックスフォード辞書。オックスフォード大学出版局。2018年5月30日時点のオリジナルよりアーカイブ。 2018年5月29日閲覧。
- ^ Bendersky, E. (2008年11月22日). 「JSONはYAMLですが、YAMLはJSONではありません」。Eli Benderskyのウェブサイト。 2018年5月29日閲覧。
- ^ Sassenrath, C. (2000). 「REBOLスクリプト言語」. Dr. Dobb's Journal . 25 (314): 64–8 . 2018年5月29日閲覧。
- ^ Sassenrath, C. (2012 年 12 月 13 日). 「JSON と REBOL について」. REBOL.com . 2018 年5 月 29 日閲覧。
- ^ van Renssen, A.; Vermaas, PE; Zwart, SD (2007). 「ゲル語英語の機能の分類」。国際工学デザイン会議2007の議事録:DS42_P_230 。 2018年5月29日閲覧。
