Developerサイトに移行します。見た目やトピックエリアなど更新されますが、開発者に必要とされるコンテンツを引き続き提供していきます。したテクニックを活用するための基本的なステップについて説明します。使ったプロジェクトに利用できるいろいろなツールが急速に開発されてきました。以上のツール、ライブラリー、モジュールを紹介ます。操作のためのパワフルなツールキットを揃えることができます。ツリーを生成し、データベースとのインターフェースを行う方法について説明します。この中で、いくつかの役立つテクニックをご紹介しましょう。文書をツリー構造に解析すると、データのツリー構造を操作できるようになります。他のスクリプト言語で同じテクニックを利用することも可能です)。勧告になろうとしています。限界を克服することを目的とするものです。文書の最も基礎的な構成ブロックであるエレメントの定義方法を示します。アタイプ)を規定しています。インターネット上でXMLを利用するためには、このようなメディアタイプが常に必要になります。規定しているか、どのように制定されたのかを解説します。Mertzが示します。XML文書処理に関して、それぞれのエディターの安定度、弱点、および機能性を比較します。一般的文章のXML文書を作成、変更、保守するうえでの実際の問題にも答えます。2001/1/01XSLTのコーディングを改善する5つの方法CSSをXSLスタイル・シートと併用する方法、クライアント側のJavaScriptとの統合、複数の入力文書の処理、およびXSLTを使ってスタイル・シートを自動生成する方法が取り上げられています。サンプル・コードも活用して下さい。Ogbuji氏は、XSLTを使ってアンカーと内部リンクをHTMLまたはXHTML出力に取り込む方法を、順を追って説明します。内部リンクは、長いHTMLコンテンツを編成するために役立ちます。XSLTは、これらの内部リンクを生成する機能を備えていますが、そのいくつかのメソッドはあまり知られていません。このヒントと、再使用可能なサンプル・コードによって、このプロセスの2つのアプローチを詳しく説明します。実際に機能する方法を説明します。2001/2/01XSLTはどのような言語かXSLTはどのような言語で、何のために存在し、なぜこのように設計されたのでしょうか?これらの質問にはさまざまな答えがあり、初心者は、この言語が慣れ親しんできたどの言語とも異なっているため、しばしば混乱します。この記事では、XSLTを一連の流れの中でとらえようとしています。XSLTスタイル・シートを作成するように勧める代わりに、この言語がどのように生じたのか、どこが優れているのか、なぜ使うべきなのかを説明しています。演台にして立ち上がり、なぜSOAPが彼の心をつかんだかを語っています。SOAPのセールス・ポイントはその単純さにあるとMarchal氏は言います。新しいプロトコルがなじみ深いテクノロジーの上に構築されているため、特にWebサーバーとXMLにおいて、SOAPサーバーを設計して配備することは開発者にとって比較的簡単なことです。第7回XML文書型の指定として、XMLスキーマが間もなくDTDに取って代わると多くの開発者は考えています。MertzはXMLスキーマが開発者にとって非常に価値のあるツールだと考えますが、これがDTDに取って代わるかどうかについては、懐疑的です。「XMLの論考」の今回のコラムでは、スキーマとDTDの比較という難題に取り組み、XMLスキーマの世界で今何が起きているかを明らかにします。DOMノードの移動この記事では、DOMノードを移動しようとする際にしばしば発生する例外について考察します。そのような例外の発生する原因を明らかにし、さらに重要なこととしてDOMプログラミングでそのような事態を回避する方法について説明します。生成するコードとはどのようなものか、そのような問題が発生しない正しいコードを書くにはどうしたらよいかが示されています。この記事は、DOMの動作に関する基本的な知識が前提になっています。技術情報のオーサリング、生成、および配布に使用する、XMLベースのアーキテクチャーです。この記事では、このアーキテクチャーを紹介し、トピック・レベルで情報タイプの付いたモジュールを作成したり、そのコンテンツをオンライン・ヘルプやWeb上の製品サポート・ポータルなどの配布モードで使用したりするための一連の設計原理を示します。Architectureへのロードマップであり、DITAがいったい何であるか、またDITAはどのように技術文書に適用されるかを示します。代表的なソース・コードにリンクされています。Mertzは、階層、リレーショナル、オブジェクト指向のそれぞれのデータ・モデルの枠組みにXMLがどう適合するかを説明します。DOMからの変換このヒントでは、DOMを使用していないアプリケーションと交信するために、DOM構造をSAXおよびJDOMへ変換する方法について学びます。本稿でリストしているコードには、SAXで使用するためにDOMを出力ストリームへ変換する方法、およびDOMをJDOMへ変換する方法を示してあります。入門編1つのアプリケーションの85-90%、あるいはそれ以上の部分は、純粋なXMLベースのツールによってインプリメント可能です。(Tcl、Perl、Python、あるいはその他どのようなものでも)、アプリケーションを構築するためのいくつかの局面で重要な役割を果たします(特にB2Bアプリケーションの場合には重要です)。インプリメントする際は、XSLTおよびXMLスキーマが使用されることが多くなってきました。従来は、Tclが使用されるのはそのあたりまででしたが、今では一連のロジックにまで用途が広がりつつあります。JDOMからの変換JDOMの使い方を勉強中ですか?どのAPIも別個のものではありません。この解説記事では、JDOMからSAXおよびDOMにデータを簡単に変換して、3つのAPIすべてを駆使し、縦横無尽にXMLアプリケーションをプログラミングできる方法を説明します。コード・サンプルでは、JDOMからSAXへの変換とJDOMからDOMへの変換の例を示します。クライアントについて説明します。(またはテキスト・エディター)を使用して、要求を作成することが可能です。行っていることを包み隠さずに教えてくれます。応答を読み込むというプロセスを見せてくれます。2001/5/01ebXMLの理解ebXMLは多くの部分からなる大きなプロジェクトです。Mertzは、この記事で、これらの部分がどのように組み合わさっているかについて説明しています。ebXMLの概念についてのご紹介、それから、ebXMLインプリメンテーションの重要な開始点となるビジネス・プロセスの概念がもう少し細かく検討されています。DTDとコラボレーションのパッケージをデモンストレーションしています。第1回と第2回で、PythonにおけるXML処理の概要を説明しました。当初の記事から1年経過する間に、Python用XMLツールの状況は大きく進歩しました。残念ながら、こうした進歩のほとんどには下位互換性がありません。今回の特別号の記事で、著者はXMLツールに関する以前の説明を再考し、最新のコード例を紹介しています。EntityResolverインターフェースを使用する方法を説明します。XMLによるXLinkの使用法XML関連仕様であるXLinkを使用すれば、XML文書に劇的なリンク効果をもたらすことができます。この小さなヒント記事では、XLinkを使って他のXML文書の一部をあなたのXMLに組み込む方法を学びます。コード例でその技法を示します。第2版のプレビューであり、SAXへの心強い入門記事です。SAXは、XMLを処理するための、イベント・ベースのAPIであって、いまや事実上の標準になっています。SAXインターフェースの概要を述べます。Javaをベースとするアプリケーションを用いて詳しい例を、多くのコード・サンプルと共に提供します。Publishingの許可を得て使用しています。XMLスキーマの参照XML文書からXMLスキーマを参照する方法について説明します。今回は、XML文書の圧縮方法を調べます。技法のサンプル・コードも掲載しています。複数のスタイル・シートに対するサポートをXMコンテンツ・マネージメント・プロジェクトに追加します。開発に備えて集めておくべきツールの概要を説明します。ツールの概要を表にまとめています。使用可能な、あるいは実際にそれらの言語で書かれた他のライブラリーなどです。用語を収めた簡単な用語集も含まれています。DOM、SAX、およびXSLTの限界を超えるXMLデータを処理する際に、HaskellとHaXmlライブラリーを使用することを提唱しています。2001/10/01PerlでDOMとXPathを用いた効果的なXML処理いくつかの大規模なXMLプロジェクトの分析に基づき、DOMを有効かつ効率的に使う方法を検討します。XML文書を印刷用に加工する必要がある場合にぴったりのツールです。軽量でトランスポート・プロトコルに依存しない、XMLベースのメッセージ・サーバーを書く方法について示します。要素にするか属性にするかデータを表すときにタグ属性を使用すべき場合と、サブ要素を使用すべき場合について紹介します。2001/11/01JavaでDOMとXPathを使って効果的にXMLを処理するDOMを堅固で使いやすくするためのJavaの使用パターンと関数のライブラリーをご紹介します。オブジェクト・モデルとしてのXML-RPCオブジェクト・データをモデル化する方法としてXML-RPCを調べます。XML-RPCを比較します。世界にとってどんな意味を持つのかを考えます。多対多関係のモデル化このコラムでは、XMLによって多対多関係をモデル化するためのいくつかの方法を紹介し、それぞれのメリットとデメリットについて説明します。Schema小売店を支援するITシステム間でのXMLメッセージ交換を標準化するために発表された、幅広い分野で採用できるXML使用法を17項目にわたってご紹介します。コンパイラー、HCの作業をします。今回はコンパイル・アルゴリズムについて説明し、また、JUnitの自動化テストにも触れていきます。txt2dwユーティリティーXMLを書くことは(マシンにとっては簡単でも)人間にとっては常に手間のかかる作業です。「ヒューマン・インターフェース」の問題を解決する1つの方法として、著者が自分の記事に利用しているパブリック・ドメインtxt2dwユーティリティーをご紹介します。Queryのワーキング・ドラフトの現状をご紹介します。FLWR文節の使い方について、およびデータ・リレーションのピボットとして役立つdistinct-values関数について説明します。XMLに変換する方法をご紹介します。XMLファイルに対するリンクを含むWebページを生成する、というプログラムを容易に記述できます。いう、Rubyの機能を活用してXML処理を実行するライブラリーを紹介します。2002/3/01XML暗号化の方法を探る:第1回XML暗号化は、構造化データを安全に交換する必要のあるアプリケーションのために、エンドツーエンドのセキュリティーを提供します。XMLはデータ構造化のテクノロジーとして最も広く使用されているものであり、XMLベースの暗号化は、データ交換アプリケーションでの複雑なセキュリティー要件を処理する自然な方法と言えます。この記事は2回にわたるシリーズの第1回です。Bilal氏が、W3CのXML暗号化のワーキング・ドラフトを踏まえて、XMLとセキュリティーの問題をどう処理できるかを説明します。Castorによるデータ・バインディングこの記事では、データ・バインディングを紹介し、この手法の魅力について説明しています。それからJavaデータ・バインディングにオープン・ソースCastorフレームワークを使用して、ますます複雑になる文書を処理する方法を紹介します。XSLTスタイル・シートからJavaScriptを呼び出すXSLTスタイル・シートを利用すると、元のXML文書にあるデータを操作する面で大幅に自由度が上がります。いえ、実際にプログラミングが必要な場合もあります。それを可能にするため利用する拡張機能は、関数および要素の形を取り、XSLTプロセッサーがサポートしている任意の言語で記述できます。1つの方法は、スタイル・シート内に直接、または外部ファイルとしてJavaScriptを埋め込むことです。DTDを活用して情報の新しいドメインを記述する方法を説明します。要素を使って、その違いから生まれる問題を解決する方法を紹介します。2002/5/01J2ME/MIDPアプリケーションを保護するこの記事では、XMLディジタル署名の重要性と、そのアプリケーションについて説明します。Castle暗号パッケージのディジタル署名APIについても説明し、J2ME/MIDPワイヤレス・フロントエンドとJSPページ・バックエンド間のセキュアなXMLメッセージングに関連した例を示します。必要なデータの処理が終わったらSAXパーサーを止めるSAXパーサーは、文書の途中で止めても、すでに収集されているデータを失わないようにすることができます。このことはSAXパーサーがDOMパーサーよりも優れている点の1つです。このヒントでは、最近更新されたweblogsのリストを構文解析しますが、特定の時間範囲のものが見つかったら構文解析を停止します。NIOへの取り組みこのコラムは、XIプロジェクトを次のステップへと進めるものです。このコラムでは、新規JavaテクノロジーのAPIに関する新しい発見について報告しています。XIはまだ作動可能にはなっていませんが、近い将来にどのような姿で登場するのかをかいま見ることができます。XSLTパラメーターを使用して実行時に選択を行うXSLTは、データをある形式から別の形式へ変換する場合に、高度な操作を可能にします。実行時にパラメーターを指定することによって、さらに高度な変換が可能になります。この記事では、XSLTスタイル・シートでパラメーターと条件ステートメントを使用する基本的な方法を紹介します。第1回XMLエディター商用ツールの進歩を2回連載で調べていきます。これらのツールは、概してテキスト・エディターの表面的なラッパーであったものから、XML指向のテクノロジーを使う作業プロセスをかなり簡単にできる具体的な開発環境へと進歩しています。この第1回の記事では、JavaおよびMacOSアプリケーションを調べます。APIに送り込む方法が、Readerを入力として使う方法に比べいかに効果的で安全であるかということを説明します。この方法を選択したときに生じる国際化対応への効果についても簡単に触れます。インターフェースが備わっています。classpathを使用してこのインターフェースでエンティティーを解決する方法について説明します。第2回シリーズ2回目のこの記事では、ユース・ケースのシナリオをもとにXML暗号化の使用法のモデルを考察します。XMLファイル全体の暗号化、XMLファイルの要素の暗号化、およびXML要素の内容の暗号化といったXML暗号化の各タイプも例を使って説明します。2002/8/01QuickによるJavaオブジェクトとXMLの変換Quickは、実行時の変換に重点を置いた、オープン・ソースのデータ・バインディング・フレームワークです。この記事では、他のデータ・バインディング・フレームワークで必要になるクラス生成セマンティクスを使わずに、このフレームワークを使用してすばやく問題なくJavaデータをXML文書に変える方法について示します。2.0の機能のいくつかの例を取り上げます。例は、XMLとXPathで提供されています。連載第2回目のこの記事では、Windowsベースの製品を調べます。Pro、そしてCorelのXMetalを取り上げます。2002/9/01文書形式におけるローカリゼーション国際化対応へのサポートはXMLの主要な長所の1つです。残念ながら、内容をローカライズするためのメカニズムを用意しているXML形式は少な過ぎます。このヒントでは、ローカライズを考慮したXML形式の作成方法を説明します。2002/9/01大文字小文字を区別しない列挙この記事では、大文字小文字を区別しない表記を定義するための自動化されたソリューションを紹介します。このソリューションは、理解しやすく、規格に準拠しており、デベロッパーが行う作業はわずかです。YAMLはXMLに改良を加えるこの記事では、YAMLを紹介します。これは、人間にとって読みやすいデータ直列化フォーマットであり、動的なプログラム言語で使用されるデータ型をエンコードするのにうってつけです。2002/10/01XSLで再帰処理を効果的に使用するこの記事では、再帰処理の基本的な考え方を取り上げ、XSLで再帰処理を使用するためのテクニックを紹介します。XML変換を最適化してエラーを回避するためのテクニックについても見ていきます。導入され、文書ツリーのナビゲーションの信頼性が高まりました。このヒント記事では、TreeWalkerを使用できるかどうか判別する方法と、これを使って文書から情報を取り出す方法を示します。PRISMを解明するPRISMは、出版に関連した標準メタデータです。これを使用すると、拡張性メカニズムが提供されるため、コンテンツおよび参考文献の正式な記述を行うことができます。このコラムでは、例を使用してPRISMを紹介しています。XSLTスタイルシートの空白を制御するXSLT変換におけるスタイルシートとソース文書とでは、空白を除去する規則が異なるため、空白および改行の生成が何の根拠もなく行なわれているように見えます。この記事では、変換で生じる空白を制御することにより、ユーザーが望むものに近い形に文書を整形する方法を示します。第1回この記事では、まず文法、パーサー、およびBNFについて説明し、それから有名なパーサー生成ツールであるJavaCCを使ってカスタム・パーサーを作成する方法を紹介します。連載第2回のこの記事では、第1回で取り上げたサンプル・コードを修正して、もう1つのツールであるJJTreeによって同じ構文解析のツリー表現を生成する方法を示します。MusicBrainzを使用したメタデータ管理この記事では、ディジタル・メディアのメタデータを管理するためのプロジェクトであるMusicBrainzを紹介します。MusicBrainzでは中心となるデータ・フォーマットとしてRDFを使用しています。1.0に対する標準化された拡張機能であるEXSLTについて簡単に紹介します。EXSLT拡張機能によって提供される重要な機能のいくつかを調べ、それらを利用するにあたっての指針を検討します。パフォーマンスシリーズ第2回目のこの記事では、JavaのXMLデータ・バインディング用の各種フレームワークの処理速度とメモリー使用量をチェックします。DTDの保管ファイル・フォーマットの利点を備えています。この記事では、OpenOfficeファイル・フォーマットを紹介します。開発動向についていつでもどこでもデータを活用できるようにする方法を追求してやまないXML開発者である著者が、SyncMLの調査と実装の旅に出ます。実体参照による簡略化XMLは、そもそも静的な言語です。実体参照を使用することにより、限定的とはいえ動的な置換を実行できます。このヒントでは、実体参照を使用する方法と、それがどのように便利かについて説明します。Baseによって制御する方法を示します。2003/2/01実例で学ぶEXSLTこの記事では、実際的なサンプルによって、便利なEXSLT関数のいくつかについて紹介し、その使用方法を示します。LaTeX、HTML、およびPDFなどの他の有用なフォーマットに変換する方法を示します。ボキャブラリーを作成する実践的な手法を説明します。NGを初めて取り上げます。Schemaのスキーマよりも強力で、厳密で、意味の記述が直接的です。回この記事では、巨大なXML文書を出力するときの問題点について詳しく述べます。XML出力のさまざまなオプションについて見た後、DOMとXML出力について、DOMを拡張的に利用する場合のメモリー使用量の解決方法について見ていきます。XMLボキャブラリーの中で内部参照を使う場合によっては、1つのフィールドから別のフィールドへの内部参照を使用することにより、同じデータ・フィールドの繰り返しを避けることができます。この記事では、その方法について説明します。基本要件SyncMLを利用していつでもどこでもデータを活用できるようにする方法を追究するシリーズの第2回です。取り上げ、SyncMLサーバーに最低限必要な機能について調べます。EclipseとXMを用いたプロジェクトのビルドEclipseとXMについての今回の記事では、ファイルを追加または変更したときに自動的にプロジェクトを再コンパイルするビルダーを実装します。XMの今後の機能強化についても説明します。NGを処理するためのツールを紹介します。JiBXのアーキテクチャーJavaアプリケーションにおけるXMLデータ・バインディング用のJiBXフレームワークについてのシリーズ第3回目となるこの記事では、JiBXの設計について詳しく解説します。回この記事は、巨大なXML文書の出力に関する全5回のヒントの最終回です。クラスを使用してXMLを出力するいくつかの実用的な例をご紹介します。N-Triplesの紹介W3Cにより、特に試験用スイート(テスト用データセット)に適しているRDF表現のフォーマットであるN-Triplesが開発されました。この記事では、RDF/XMLから変換した例を使用するN-Triplesを紹介しましょう。開発サポートの概要を取り上げます。回この記事では、前回取り上げたXMLフィルターの使い方をさらに掘り下げてみます。それぞれ除去するユーティリティーなど、実用的なフィルターのサンプルも用意しました。Eclipseにおけるレイアウト、プロパティー、およびプリファレンス今回の記事では、ユーザー・インターフェースの考慮事項に焦点を当て、パブリッシュ用プラグインのためのEclipseのプロパティーとプリファレンスの管理などを行います。