Home. 
.

transparent

transparent

transparent

XML スキーマによるコード生成

XMLSpy® 2012 には XML スキーマコンポーネントに対応したプログラムコードを Java、C++、または Microsoft C# の形式で生成する機能が搭載されています。



コードジェネレーター

XMLSpy® 2012 には XML スキーマで定義されているデータ要素をもとに Java、C++、または Microsoft C# クラスファイルを生成する機能が含まれています。生成された C++ ファイルは Linux 上でも使用することができます。

以下の図にコード生成のための概要である2つのステップを示します :

Code Generation

(1) XMLSpy® 2012 スキーマエディターを使用して XML スキーマにあるデータ要素をモデリング
(2) XMLSpy® 2012 によりデータモデル内の要素に対応するクラスファイル(データバインディング)が自動生成される

データ型やオブジェクト指向型のコンセプトをサポートしている XML スキーマは、最近のソフトウェアアプリケーションのデータモデリングには理想的な形式であるといえるでしょう。このため、リレーショナルデータベースモデルと現在のオブジェクト指向のソフトウェアデザイン手法の間の橋渡しを行うために XML スキーマを使用することができます。

Download ここをクリックして、使用できる機能に制限のない30日間トライアル版Altova XMLSpy をダウンロード!

XML データバインディングとは?

XML データバインディングとは1つ以上の XML データ要素を、関連するソフトウェアオブジェクトにマッピングすることを言います。XML はそれ自体をコンパイル、またはスタンドアロンの実行を行うことが可能なプログラミング言語では無いため、XML データ要素に対するデータバインディングの実装が必要になります。XML ドキュメントはむしろ、B2B (企業間)アプリケーションやウェブサービスのような、外部ソフトウェアアプリケーションまたは実行環境に関連付けられたドキュメントとして使用されます。

XML データバインディングにより、ソフトウェアアプリケーション(プログラム)上からシンプルなオブジェクトを経由して XML データの処理を行うことができるようになります。バインディングを XML ドキュメントとお使いのアプリケーション(ビジネスロジック)との間にある抽象的なレイヤーとして考えることもできます。XML の API により開発者は技術的に入り組んだ XML ドキュメントのロード、編集、そして保存といった処理を意識すること無く XML を扱うことができます。

以下の図はウェブサービスアプリケーション内のデータバインディングアプリケーションの典型的な例で、内部的な XML とビジネスロジックとの間を取り持っている状態を示しています :

XML Data Binding

今日、SOAP 「配管」を作成するツールは世の中に数多く出回っています(例: XML ドキュメントをプロセスごとに整理するために必要なクライアント/サーバのスタブとスケルトン)。しかしそれでも、SOAP エンベロープ内にある内部 XML ドキュメントを処理するためのデータバインディングを自分で書き、適切な XML 応答メッセージを作成する必要がありました。XMLSpy® 2012 のコード生成を使えばデータバインディングの実装という煩雑な作業を自動的に行い、開発者はビジネスロジックだけに専念することができます。



XML データバインディングの実装

XML データバインディングを実装するには、メモリ上で XML データドキュメントを作成、読み込み、更新、そして削除するために、低レベルな XML 処理 API (例: Simple API for XML Parsing (SAX) または Document Object Model (DOM))を使用するコードを書かなければなりません。これらのベーシックなメソッドに加えて、データバインディングは XML ドキュメントを検証、処理、変換、そしてその他メモリ上で行われる処理のための関数/メソッドを含まなければなりません。XMLSpy® 2012 では以下にあるように、XML スキーマをベースにしたプログラムコードを生成するためのシンプルなメニューアイテムを提供し、これらのタスクを自動化しています :



Generate Code

Demo of code generation XMLSpy におけるコード生成のフラッシュデモを観る

XML データバインディングの実装は煩雑でエラーが混入しやすい作業で、数十、場合によっては数百という数のクラスファイルを必要とします。例えば、オフィス、部門、人物、住所などのデータ要素により構成される以下の会社組織図のデータモデルを考えてみてください(スクリーンショットをクリックすることでデータモデルの全体図が表示されます)

Generate Code

この例では、24のクラスと、数千行にもなるコードがプログラムコードデータバインディングとして生成されました。



XMLSpy® 2012 コード生成機能

XMLSpy® 2012 コード生成機能の概要を以下に示します :

  • 宣言された全ての要素または XML スキーマ内の複合系を再定義する複合系に対応するクラス定義を自動生成するデフォルトテンプレート。
  • XML スキーマ内で派生クラスを複合系の拡張として定義し、保存。
  • Java、C++、そして Microsoft C# プログラムコードの出力。
  • Microsoft MSXML、Java API for XML Processing (JAXP)、そして Microsoft System.XML を含む業界標準 XML 処理 API のサポート。
  • 生成された C++ 出力のオプションとして Visual C++ 6.0 ならびに Visual Studio プロジェクトファイルが含まれます。生成された Java 出力には Apache Ant ビルドファイルならびに Eclipse のプロジェクトファイルを含めることができます。Microsoft C# 出力には Visual Studio そして Borland C#Builder のプロジェクトファイルを付与することができます。
  • シンプル、しかしパワフルなテンプレート言語を使うことで XML スキーマの内蔵データ型を特定のプログラミング言語のプリミティブ型への変換を行うことが可能で、出力コードを完全にカスタマイズすることができます。
  • 使用する分析ならびに検証エンジンを変更したり、社内のコード規約に従ってコードを変更、または Microsoft Foundation Classes (MFC) や Standard Template Library (STL) といった異なるベースライブラリを使用することもできます。
  • 独自のテンプレートを作成し、考えられる全ての言語(例: SQL スクリプト、ASP、または WML コードなど)でコードの生成を行うことができます。
  • Borland C# Builder または(MONO を含む)その他のサードパーティー IDE プロジェクトファイルの生成。

以下のスクリーンショットでは XMLSpy® 2012 Enterprise Edition を使った XML データバインディングの生成がどれほど簡単なのかを示しています :



Generating Code



XMLSpy コード生成の利点

XMLSpy のグラフィカルな XML スキーマエディターは優れたソフトウェアモデリングそしてプロトタイプ作成ツールで、高品質 XML アプリケーションのプロトタイプを素早く簡単に生成します。アプリケーションの XML スキーマコンテンツモデルに対する変更は、コードの生成を再度行うだけで簡単に調整することができます。内蔵のコード生成機能によりソフトウェア開発者は低レベルのインフラコードを書く煩わしさから開放され、より重要なビジネスロジックの実装に集中することができます。プログラミング言語バインディングを自動生成することで、 XMLSpy® 2012 は最初のデザインから最後の実装までのプロジェクト開発時間を短縮し、本質的な開発コストと期間の縮小、そしてマーケットに対する優位性を提供します。



拡張カスタマイズオプション

XMLSpy のコード生成では Apache Xerces (一般的な XML パーサー)や Standard Template Library (STL) の使用をサポートし、Java/C#/C++ 内の生成された XML スキーマ単純型のサポートも行っております。

Customization options

Customization options

30日無料トライアル版 XMLSpy をダウンロード


Altova MapForce® 2012 を使えばカスタムデータ統合プロジェクトんおプログラムコードを自動生成できることをご存知でしたか?MapForce では、マッピング、そして XML、データベース、フラットファイル、EDI、Excel 2007、そしてウェブサービスのデータを自由に変換することができます。MapForce と XMLSpy は高度に補完的になっています - 両者を使うことで、ソフトウェア開発者は XML が有効になっているアプリケーションのためのコードの殆どを(異なるソースから整理されたデータも含めて)自動生成することができます。



transparent
Download
Pricelist
Buy
Video
Comparison
Datasheet
Print
Mail
Like It
利用可能な言語
.

Altova XMLSpy は英語、ドイツ語、そして日本語版がダウンロードページからご利用になれます。

.
XML マッピングが簡単に
.

Altova は XML マッピングを行うための数々のツールを提供しています。XML マッピングとコードの生成がどれほど簡単に行えるか試してみてください!

.
.

2006 SQL Server Magazine Editors’ Choice Awards

.

XMLSpy は 2006 SQL Server Magazine Editors’ Choice Awards にてプラチナ賞を受賞しました。

.
.
.

transparent

transparent