JP2004178602A - 階層構造化データをインポートし、エクスポートする方法及びコンピュータ可読媒体 - Google Patents

階層構造化データをインポートし、エクスポートする方法及びコンピュータ可読媒体 Download PDF

Info

Publication number
JP2004178602A
JP2004178602A JP2003396397A JP2003396397A JP2004178602A JP 2004178602 A JP2004178602 A JP 2004178602A JP 2003396397 A JP2003396397 A JP 2003396397A JP 2003396397 A JP2003396397 A JP 2003396397A JP 2004178602 A JP2004178602 A JP 2004178602A
Authority
JP
Japan
Prior art keywords
data
computer
identified
electronic document
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003396397A
Other languages
English (en)
Inventor
Walter David Pullen
デビッド ピューレン ウォルター
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2004178602A publication Critical patent/JP2004178602A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Communication Control (AREA)
  • Credit Cards Or The Like (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Collating Specific Patterns (AREA)
  • Devices For Executing Special Programs (AREA)
  • Television Systems (AREA)
  • Photoreceptors In Electrophotography (AREA)

Abstract

【課題】 電子文書内のデータを選択的にインポート及びエクスポートする方法及びコンピュータ可読媒体を提供すること。
【解決手段】 インポートアプリケーションプログラムインターフェース(API)を実施して、XMLファイルなどの階層構造化文書から内容をインポートすることができる。インポートAPIは、パーサと共に働いて、文書をスキャンし、選択された要素、ノード、属性、及びテキストを抽出する。インポートAPIでは、抽出された内容を処理するのにコールバックコンポーネントも使用される。エクスポートAPIを実施して、XMLファイルなどの階層構造化文書を作成するためにデータを抽出することもできる。エクスポートAPIは、ライタと共に働いて、データを受け取り、階層構造化文書内の要素、ノード、属性、及びテキストとしてデータをエクスポートする。
【選択図】 図4

Description

本発明は、階層構造化データのインポート及びエクスポートの方法及びコンピュータ可読媒体に関する。
コンピュータソフトウェアアプリケーションを用いると、インターネットなどのコンピュータネットワーク上で、他のユーザと交換を行うスプレッドシート、カレンダ、定期的勘定通知、製品リスト、アウトラインなどの階層構造に編成されたデータを含む文書を、ユーザが作成することができる。例えば、ユーザは、XMLプログラムを使用して文書を作成することにより、異なるフォーマットを用いているコンピュータシステム間で、階層データを交換することができる。XML文書は、それに含まれるデータに隣接するユーザが定義できる記述的タグを有しているので、データがさまざまなコンピュータによって理解可能になる。記述を担うタグを単純に解析することによって、ユーザが見るために文書からデータをインポートすることができる。データを見た後に、ユーザは、そのデータを、新しい又は編集された階層フォーマットの文書にエクスポートして、他のユーザに送ることができる。
しかし、文書の解析は、複数のステップを必要とする、遅く複雑な処理である。Simple API for XML(SAX)などの現在のパーサの一部は、イベントベースパーサであり、XMLタグが、一時にシーケンシャルに読み取られる。しかし、ユーザは、全ファイルの終わりまで状態を保ったままにして検索することにより、所望のXMLタグを見つける必要がある。Document Object Model(DOM)などの他のパーサは、ツリーベースパーサであり、XMLファイル全体がメモリにロードされ、ランダムアクセスが可能にされ、所望のXMLタグを見つけるのが、イベントベースパーサよりも簡単になっている。しかし、ツリーベースパーサでは、所望のXMLタグを見つけるために、「ツリー」をナビゲートする必要がある。さらに、そのようなパーサは、かなりの量の時間及びメモリを必要とし、大きいXMLファイルの解析には非実用的である。
したがって、現在、階層構造化文書からデータをインポートする簡単な手法はない。すなわち、ユーザが関心を持つ可能性があるデータを含む、特定のタグ又はセクションに関する文書を選択的に検索する簡単な手法はない。即ち、SAXなどのイベントベースパーサを用いて文書全体を終わりまで検索する必要なしに、又はDOMなどのツリーベースパーサを用いて、かなりの時間及びメモリリソースを使用しながら、ツリーを終わりまでナビゲートする必要なしに検索する簡単な手法はない。
同様に、DOM(文書全体をメモリに格納する)などのツリーベースパーサは、サブツリー又は他の階層データをエクスポートすることができるが、そのようなパーサは、パーサに固有の、時間及びメモリリソースの大量の使用によって制限される。
したがって、階層構造化文書の内容を選択的にインポートし、エクスポートする方法及びシステムが当技術分野には必要である。実施化される本発明は、これら及び他の考慮すべき事項に関するものである。
本発明は、電子文書内のデータを選択的にインポートし、エクスポートする方法及びシステムを提供する。一実施形態では、電子文書から内容を選択的にインポートする方法が提供される。階層ファイル構造でデータを配置された電子文書を受け取る。階層ファイル構造は、XMLとすることができる。電子文書内のデータは、データに関連する内容が含まれる。データに、XMLの要素、属性、ノード、及びテキストを含めることができる。文書からの特定のデータが、インポートされるように識別され、アクションが、識別されたデータについて実行されて、関連する内容がインポートされる。アクションには、識別されたデータについて文書を解析すること、及び、識別されたデータに関連する内容の項目を抽出することが含んでいる。
本発明のもう1つの実施形態では、コンピュータシステム内のソースからデータをエクスポートする方法を提供して、電子文書を作成する。コンピュータシステム内のソースから受け取られたデータが、エクスポートされて、電子文書が作成される。作成される電子文書は、XMLなどの階層ファイル構造を有することができる。作成される文書に、XMLの要素、属性、及びノードを含めることができる。ソースは、コンピュータシステム内のクライアント又はサーバとすることができる。データを、データストリーム、メモリバッファ、又はファイルにエクスポートすることができる。
本発明の実施形態によって、電子文書内のデータを選択的にインポートし、エクスポートするコンピュータ可読媒体も提供される。本発明のさまざまな態様に関する追加の詳細は、以下の本発明の詳細な説明から明白になる。
本発明の以下の記述は、図面に関して説明される。本発明は、電子文書内の階層構造化データをインポートしエクスポートする方法及びシステムを対象とする。
図1及び以下の説明は、本発明を実施することができる適当なコンピューティング環境の簡潔で一般的な記述を提供することを意図されたものである。本発明を、パーソナルコンピュータと共同してオペレーティングシステム上で実行するアプリケーションプログラムインターフェースの一般的な状況で説明するが、当業者であれば、本発明を他のプログラムモジュールと共に実施することもできることを理解するであろう。一般に、プログラムモジュールには、特定のタスクを実施するか特定の抽象データ型を実施する、ルーチン、プログラム、コンポーネント、データ構造など、が含まれる。さらに、当業者は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベース又はプログラマブルな民生用電子機器、セル電話機、ミニコンピュータ、メインフレームコンピュータ、及び類似物を含む他のコンピュータシステム構成と共に本発明を実践できることを理解するであろう。本発明は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境でも実践することができる。分散コンピューティング環境では、プログラムモジュールを、ローカルとリモートの両方のメモリストレージデバイスに配置することができる。
図1に関して、本発明を実施する典型的なシステムに、処理ユニット21、システムメモリ22、及びシステムメモリを処理ユニット21に結合するシステムバス23を含む普通のパーソナルコンピュータ20が含まれる。システムメモリ22には、読取専用メモリ(ROM)24及びランダムアクセスメモリ(RAM)25が含まれる。スタートアップ中など、パーソナルコンピュータ20内の要素の間で情報を転送するのを助ける基本ルーチンを含む基本入出力システム26(BIOS)が、ROM24に格納される。パーソナルコンピュータ20には、さらに、ハードディスクドライブ27、たとえば取外し可能ディスク29から読み取り、これに書き込む磁気ディスクドライブ28、たとえばCD−ROMディスク31から読み取るか、他の光学媒体から読み取るか書き込む、光学ディスクドライブ75が含まれる。ハードディスクドライブ27、磁気ディスクドライブ28、及び光学ディスクドライブ75は、それぞれハードディスクドライブインターフェース32、磁気ディスクドライブインターフェース33、及び光学ディスクドライブインターフェース34によってシステムバス23に接続される。ドライブ及びそれに関連するコンピュータ可読媒体によって、パーソナルコンピュータ20の不揮発性ストレージが提供される。上のコンピュータ可読媒体の説明では、ハードディスク、取外し可能磁気ディスク、及びCD−ROMディスクに言及したが、磁気カセット、フラッシュメモリカード、ディジタル多用途ディスク、ベルヌーイドライブ、及び類似物など、コンピュータによって可読の他のタイプの媒体も、典型的なオペレーティング環境で使用できることを、当業者は理解するであろう。
オペレーティングシステム35、ワードプロセッサプログラム(又は他のタイプのプログラム)などの1つ又は複数のアプリケーションプログラム100、インポートAPI30、エクスポートAPI40、及び他のプログラムモジュール(図示せず)など、複数のプログラムモジュールを、ドライブ及びRAM25に格納することができる。
ユーザは、キーボード76及び、マウス42などのポインティングデバイスを介して、パーソナルコンピュータ20にコマンド及び情報を入力することができる。他の入力デバイス(図示せず)に、マイクロホン、ジョイスティック、ゲームパッド、衛星放送受信用アンテナ、スキャナ、又は類似物を含めることができる。これら及び他の入力デバイスは、しばしば、システムバスに結合されたシリアルポートインターフェース46を介して処理ユニット21に接続されるが、ゲームポート又はuniversal serial bus(USB)などの他のインターフェースによって接続することができる。モニタ47又は他のタイプのディスプレイデバイスも、ビデオアダプタ48などのインターフェースを介してシステムバス23に接続される。モニタのほかに、パーソナルコンピュータには、通常、スピーカ又はプリンタなどの他の周辺出力デバイス(図示せず)が含まれる。
パーソナルコンピュータ20は、リモートコンピュータ49などの1つ又は複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境で動作することができる。リモートコンピュータ49は、サーバ、ルータ、ピアデバイス、又は他の一般的なネットワークノードとすることができ、図1にはメモリストレージデバイス50だけが図示されているが、リモートコンピュータ49には、通常は、パーソナルコンピュータ20に関して説明された要素の多く又はすべてが含まれる。図1に示された論理接続には、ローカルエリアネットワーク(LAN)51及び広域ネットワーク(WAN)52が含まれる。そのようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、及びインターネットでありふれたものである。
LANネットワーキング環境で使用される時に、パーソナルコンピュータ20は、ネットワークインターフェース53を介してLAN51に接続される。WANネットワーキング環境で使用される時に、パーソナルコンピュータ20に、通常は、インターネットなどのWAN52を介する通信を確立するモデム54又は他の手段が含まれる。モデム54は、内蔵又は外付けとすることができるが、シリアルポートインターフェース46を介してシステムバス23に接続される。ネットワーク化された環境では、パーソナルコンピュータ20に関して説明したプログラムモジュール又はその一部を、リモートメモリストレージデバイスに格納することができる。図示のネットワーク接続が、典型的であり、コンピュータの間で通信リンクを確立する他の手段を使用できることを理解されたい。
動作
図2は、本発明の実施形態と共に使用される、典型的なソフトウェアアーキテクチャ200を示すブロック図である。このアーキテクチャには、データを階層ファイル構図に編成された電子文書から内容をインポートするインポートアプリケーションプログラムインターフェース(API)30が含まれる。一実施形態では、電子文書が、内容のさまざまな項目に関連するタグ、属性、及びノード(サブツリー)からなるXML文書である。本明細書に記載の発明の、制限ではなく例としてのみ、下に、API30を実践することができる典型的なXMLファイルを示す。
<SOAP-ENV:Envelope xmlns:SOAP-
ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<CancelResponse xmlns="http://schemas.microsoft.com/billing">
<Services>
<Service Name="Some service"/>
<!-- ほかのサービスをここに記入 -->
</Services>
<Subscriptions>
<Subscription ID="Subscription ID">
<BalanceImpacts>
<BalanceImpact ImpactType="Type of impact">
<Amount>Non-zero amount of impact</Amount>
</BalanceImpact>
<!-- ほかのバランスインパクトをここに記入 -->
</BalanceImpacts>
</Subscription>
<!-- ほかのサブスクリプションをここに記入 -->
</Subscriptions>
<Currency>Account Currency type</Currency>
<Amount>Total balance impact</Amount>
</CancelResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
図2からわかるように、インポートAPI30は、上で図1で説明したクライアントコンピュータ20から電子文書を受け取る。代替実施形態では、電子文書を、リモートコンピュータサーバ49などのサーバから受け取ることもできる。インポートAPI30は、電子文書及び関連する内容の階層構造を定義するデータ(すなわち、要素、属性、ノード、及びテキスト)について電子文書を解析するパーサ60と通信する。インポートAPI30は、文書から解析される特定のデータの識別に関してパーサ60を管理する。一実施形態では、パーサ60を、米国ワシントン州レッドモンドのMICROSOFT CORPORATION社のOFFICE XML PARSERなどのイベントベースのパーサとすることができる。パーサ60は、DOMパーサなどのツリーベースのパーサとすることもできる。API30は、イベントベースのパーサ及びツリーベースのパーサを直接に使用するより有利である。というのは、ユーザが、文書から抽出したい特定のデータを識別できるからである。当業者に既知の通り、イベントベースのパーサでは、一時に1行ずつ文書をスキャンし、一時に1つずつデータの項目(タグなど)を提供し、ユーザが、望みのデータを見つけるために、状態を保つことを必要とする。ツリーベースのパーサでは、文書全体がメモリにロードされるが、それでも、ユーザは、望みのデータを見つけるために、ロードされた文書をナビゲートする必要がある。前述した長所は、図4に関して以下に詳細に説明する。
インポートAPI30は、コールバックコンポーネント50とも通信する。コールバックコンポーネント50は、インポートAPI30と通信して、第1のデータが抽出された後に電子文書からインポートされる内容の追加項目を判定する。たとえば、電子文書の要素又はノードが、内容の複数の項目に関連する(たとえば名前のリストなど)場合に、インポートAPI30は、最初の名前を抽出し、その後、コールバックコンポーネント50にアクセスして、リストのすべての名前が抽出されるまで、次の名前を抽出する。項目のリストの他の単語について、インポートAPI30は、コールバックコンポーネント50に順番にリストの各項目を渡すことができ、API30のクライアント20は、その項目について望んでいることを行うことができる。クライアント20は、コールバックコンポーネント50を使用して、インポート処理中にAPI30に通信して、残りのデータを処理する方法を変更することもできる。さまざまな実施形態で、API30によってインポートされた内容70は、データストリーム、メモリバッファ、又はファイルであるかもしれない。
図3を参照すると、本発明の実施形態と共に使用される典型的なソフトウェアアーキテクチャ300を示すブロック図が示されている。このアーキテクチャには、電子文書90を作成するためにソースからデータをエクスポートするエクスポートアプリケーションプログラムインターフェース(API)40が含まれる。一実施形態では、作成される文書90が、XML文書などの階層ファイル構造を有する。図3からわかるように、エクスポートAPI40は、クライアントコンピュータ20からデータを受け取る。もう1つの実施形態では、データを、リモートコンピュータサーバ49などのサーバから受け取ることができる。エクスポートされるデータは、他のタイプのデータの中のテキストストリング又は決まった変数リストを含めることができる。
エクスポートAPI40は、エクスポートAPI40によって識別されるエクスポートされたデータを受け取り、そのデータを使用して、作成される電子文書90に要素、ノード、属性、又はテキストを書き込むために、ライタ80と通信する。エクスポートAPI40は、エクスポートされる特定のデータを識別するためにライタ80を管理する。一実施形態では、ライタ80を、米国ワシントン州レッドモンドのMICROSOFT CORPORATION社のOFFICE XML EXPORTERなどのXMLエクスポータコンポーネントとすることができる。エクスポートAPI40を用いると、複数のデータ(XML内容など)又はファイル全体を単一のAPI呼出しで書き込めるようになる。これは、ライタ80にアクセスするより有利である。というのは、ライタ80が、一時に1つのデータの書込しか許容しないからである。エクスポートAPI40を実施する構文が、インポートAPI30の構文に非常に似る可能性があることを理解されたい。したがって、本発明の実施形態で、ユーザは、エクスポートAPI40及びインポートAPI30を使用して、ユーザ自身のデータを書き込み、後に読み取ることができるが、ユーザが両方のAPIを使用する必要はない。エクスポートAPI40の前述の長所を、図5に関して以下に記述する。
図4は、本発明の実施形態によるコンピュータシステムで、XML文書などの電子文書から内容を選択的にインポートする典型的なルーチン400を示す流れ図である。説明のために、図1及び2を参照しながら図4を説明する。
ルーチン400は、ブロック410から始まり、ここで、インポートAPI30によって、パーソナルコンピュータ20又はリモートコンピュータサーバ49から電子文書を受け取る。ブロック415で、インポートAPI30によって、文書内の、インポートされるデータが識別される。ユーザは、アプリケーションプログラム100(ワードプロセッサとすることができる)内で、インポートされる特定のデータを識別することができ、このアプリケーションプログラム100が、この情報をインポートAPI30に通信する。たとえば、上に示した典型的なXML文書では、ユーザが、<Service>要素の内容、<Subscription>ノードの内容、<Currency>要素の内容(たとえば、Account Currency type)、及び<Amount>要素の内容(たとえば、Total balance impact)に関心を持つが、<SOAP−ENV>要素及びユーザにとって有用な情報を伝えない属性には関心を持たない場合がある。特定のノード及び要素を選択することによって、ユーザは、その中に含まれる要素のすべても選択する。たとえば、<Subscription>ノードには、<BalanceImpacts>ノードが含まれ、<BalanceImpact>は、要素の任意の長さのリストである。<Services>要素にも、Service Nameの任意のリストが含まれる。
ルーチン400は、ブロック420で継続し、ここで、パーサ60によって、インポートAPI30によって識別されるデータ(すなわちノード及び要素)について電子文書を検索する。ブロック425で、インポートAPI30によって、解析された文書内のデータから内容が抽出される。上で簡潔に記述したように、一実施形態では、パーサ60が、イベントベースのパーサであり、文書内の各要素が、スキャンされ、それに含まれる内容が、インポートAPI30によって抽出される。たとえば、パーサ60が、ユーザによって前に識別された<Services>要素について文書をスキャンし、インポートAPI30が、<Service>要素の「Name」属性からテキストストリング「Some service」を抽出する。類似する形で、識別された要素に関連する内容のすべてが文書から抽出されるまで、すべての要素がスキャンされる。
ルーチン400は、ブロック430で継続し、ここで、インポートAPI30によって、インポートを識別された要素に含まれる内容の追加項目があるかどうかが判定される。内容の追加項目がない場合には、ルーチン400が終了する。クライアント20は、抽出された内容を用いて新しい文書を作成することを選択することができる(たとえば、エクスポートAPI40を使用して)。逆に、インポートを識別された要素に含まれる内容の追加項目がある場合には、このルーチンは、ブロック425に戻り、API30によって、内容の次の追加項目を抽出する。たとえば、インポートAPI30が、<Service>要素の「Name」属性から「Some service」ストリングを抽出した後に、API30は、「Name」属性に追加の<Service>属性があるかどうかを判定し、その内容を1つずつ抽出し、所望のストリングのプリントアウトのためにコールバックコンポーネント50に渡す。
API30の使用について図4に示されたルーチンは、下の典型的なコードサンプルに示されたXMLデータを処理するコンピュータコードで実施することができる。
インポートAPIの例示的な使用:
MsoFImportXML(pistm, FMyCallback(), NULL, "o CancelResponse;o Services;(*o
Service;a0 Name;c;p1;)c;o Subscriptions;(*o Subscription;a1 ID;o
BalanceImpacts;p2;(*o BalanceImpact;a2 ImpactType;e3 Amount;c;p3;)c;c;)c;e4
Currency;e5 Amount;p4;f;", NULL, msoffixSOAP);
上で示したインポートAPI30の例示的な使用では、クライアント20が、所望の内容(たとえば、<Service>要素の1つ又は複数の「Name」属性)を識別するアクションストリングを渡す。アクションストリングとは、検索する内容又は特定の点で期待される内容を示す個々のアクションのシーケンスである。上の例では、「o CancelResponse」アクションが、XML文書の<CancelResponse>の次のオープン要素に進むことを意味し、「a1 ID」アクションが、クライアントがそのコールバックで又はインポートAPIが終了した後に見ることができる抽出されたストリングの組のエントリ#1に現在の要素の「ID」属性をコピーすることを意味し、「p2」アクションが、コールバックの第2ケースを呼び出すことを意味する。アクションストリングに、アクショングループを含めることができ、アクショングループは、ある形で扱われるアクションのシーケンスをマークする形である。上の例では、アクショングループが、括弧で囲まれた関連するアクションによって示され、アスタリスクでマークされたアクショングループは、示されたアクションの組が0回以上繰り返され、リストを形成することを意味する。アクショングループのもう1つの例(上で使用した例には示されていない)によって、XML文書の所与の位置に現れると期待されるアクション又は内容の組が示される。
例示的なコールバック関数:
BOOL FMyCallback(void *pvClient, MSOHISD *phisd, MSOXPS *rgxps, int
iState)
{
switch (iState) {
case 1: // <Services>リストの処理
printf("<Service> Name attribute = %s\n", rgxps[0].wz);
break;
case 2: // <Subscriptions>外側リストの処理
printf("<Subscription> ID attribute = %s\n", rgxps[1].wz);
break;
case 3: // <BalanceImpacts>内側のネストしたリストの処理
printf("<BalanceImpact> ImpactType attribute = %s\n", rgxps[2].wz);
printf("<Amount> element text = %s\n", rgxps[3].wz);
break;
case 4: // 上のリストの後の最後の項目の処理
printf("Final <Currency> element text = %s\n", rgxps[4].wz);
printf("Final <Amount> element text = %s\n", rgxps[5].wz);
break;
}
return TRUE;
}
文書にリスト又は繰り返される要素が含まれない時など、クライアント20がコールバック関数を識別する必要なしに、インポートAPI30を使用することもできることを理解されたい。たとえば、XMLファイルに1つの<Service>要素、1つの<BalanceImpact>ノード、及び1つの<Subscription>ノードだけが含まれる場合に、インポートAPI30は、下に示された1行のコードでそのファイルをインポートすることができる。
WCHAR wzServiceName[255], wzSubscriptionID[10],
wzBalanceImpactImpactType[255], wzBalanceImpactAmount[20],
wzCurrency[20], wzTotalAmount[20];
MSOXPS rgxps[6];

MsoInitXpsBuffer(&rgxps[0], wzServiceName, 255);
MsoInitXpsBuffer(&rgxps[1], wzSubscriptionID, 10);
MsoInitXpsBuffer(&rgxps[2], wzBalanceImpactImpactType, 255);
MsoInitXpsBuffer(&rgxps[3], wzBalanceImpactAmount, 20);
MsoInitXpsBuffer(&rgxps[4], wzCurrency, 20);
MsoInitXpsBuffer(&rgxps[5], wzTotalAmount, 20);

MsoFImportXML(pistm, NULL, NULL, "o CancelResponse;o Services;o
Service;a0 Name;c;c;o Subscriptions;o Subscription;a1 ID;o BalanceImpacts;o
BalanceImpact;a2 ImpactType;e3 Amount;c;c;c;c;e4 Currency;e5 Amount;f;",
rgxps, msoffixSOAP);

printf("<Service> Name attribute = %s\n", wzServiceName);
printf("<Subscription> ID attribute = %s\n", wzSubscriptionID);
printf("<BalanceImpact> ImpactType attribute = %s\n",
wzBalanceImpactImpactType);
printf("<Amount> element text = %s\n", wzBalanceImpactAmount);
printf("Final <Currency> element text = %s\n", wzCurrency);
printf("Final <Amount> element text = %s\n", wzTotalAmount);
したがって、インポートAPI30を用いると、有利なことに、ユーザが、単一行のコードを用いて階層構造化文書から、単一行のコード及びコールバックステートメントを用いてリストを含む階層構造化文書から、内容を選択的にインポートできるようになる。上で簡潔に記述したように、API30によって、データストリームとして、メモリバッファとして、又はファイルとして内容をインポートすることができる。
図5は、本発明の実施形態によるコンピュータシステムで、XMLファイルなどの電子文書を作成するために内容を選択的にエクスポートする例示的なルーチン500を示す流れ図である。説明のために、図1及び3を参照しながら図5を説明する。
ルーチン500は、ブロック510で開始され、ここで、エクスポートAPI40によって、エクスポートされるデータが識別される。上で簡潔に記述したように、データに、テキストストリング又は変数の固定されたリストを含めることができる。ユーザは、アプリケーションプログラム100(ワードプロセッサとすることができる)内で、エクスポートされる特定のデータを識別することができ、このアプリケーションプログラム100が、この情報をエクスポートAPI40に通信する。エクスポートされるデータを識別する際に、ユーザは、作成される文書でデータをどのように表現するかも識別する。たとえば、ユーザは、テキストストリング「Services」を要素として表し、「Name」を「Service」要素の属性として表すことを識別することができる。エクスポートAPI40は、識別されたデータをライタ80に送り、ライタ80は、ブロック515で、識別されたデータを使用して文書を作成する。
図5に示されたルーチンは、下に示された例示的コードサンプルを使用して、上で示した例示的なXMLファイルを作成する関数呼出しとして実施することができる。
エクスポートAPIの例示的な使用:
MsoFExportXML(pistm, "n o;o CancelResponse;o Services;e Service ;a Name
"Some service";c;o Subscriptions;o Subscription;a ID "Subscription ID";o
BalanceImpacts;o BalanceImpact;a ImpactType "Type of impact";e Amount "Non-
zero amount of impact";c;c;c;c;e Currency "Account Currency type";e Amount
"Total balance impact";c;", msogrffexSOAP)
上で示したエクスポートAPIの例示的な使用では、クライアント20が、インポートAPI30の例示的な使用でのアクションストリングと類似する形でフォーマットされたアクションストリングを渡す。ここでは、アクションストリングが、XML文書に書き込まれる内容を示す個々のアクションのシーケンスである。上の例では、「e Amount ‘Total balance impact’」アクションが、テキスト「Total balance impact」を含むXML要素<Amount>の書込を意味し、「c」アクションが、現在のスコープに一致するクローズ要素の書込を意味する。上のコードの例示的な行を使用して、リストなしのXML文書全体を生成することができる。生成される文書は、上の図4の説明で示された非リストインポートコードサンプル(コールバック関数なし)に対応し、それによってインポートすることができる。
MSOHEXS hexs;
MsoFInitExportXML(pistm, &hexs);
MsoFExportXMLContents(&hexs, "n o;o CancelResponse;o Services;");
while (FSomeItemsLeftInMyList(wzServiceName)) // 現在のサービスストリングをwzServiceNameに書き込む
MsoFExportXMLContents2(&hexs, "e Service ;a Name %0;", &wzServiceName); //
Write: <Service Name="Some service">
MsoFExportXMLContents(&hexs, "c;");
// タグの残りについても同様
MsoFFinishExportXML(&hexs);
上の例示的なコードの行を使用して、リストを有するXMLファイルを作成することができる。作成されるファイルは、上の図4の説明で示したリストインポートコードの例(すなわち、コールバック関数あり)に対応し、それによってインポートすることができる。したがって、エクスポートAPI40を用いると、有利なことに、ユーザが、複数の要素及び属性を含むコンテキストを一度に選択的にエクスポートして、コードの単一行を用いて階層構造化文書を、数行のコードを用いてリストを含む階層構造化文書を作成できるようになる。
上で説明したように、アプリケーションプログラムインターフェース(API)を実施して、XMLファイルなどの階層構造化文書から内容をインポートすることができる。APIは、パーサと共に動作して、文書をスキャンし、選択された要素、ノード、属性、及びテキストからデータを抽出する。APIでは、抽出された(たとえばリストから)内容を処理するコールバックコンポーネントも使用される。インポートAPIを用いると、文書から抽出される特定のデータを識別できるようになる。これは、文書からデータの項目を一時に1つずつ順次提供するイベントベースのパーサ、及び所望のデータを見つけるためにロードされたファイルの直接のナビゲーションを必要とするツリーベースのパーサの使用に対して有利である。
APIを実施して、XMLファイルなど階層構造化文書を作成するためにデータをエクスポートすることができる。このAPIは、ライタと共に働いて、データを受け取り、そのデータを、階層構造化文書内の要素、ノード、属性、及びテキストとしてエクスポートする。エクスポートAPIを用いると、複数のデータ(XML内容など)又はファイル全体を単一のAPI呼出しで記述できるようになる。これは、一時に1つのデータしか書き込むことができないライタ(XMLライタなど)の使用より有利である。インポートAPI30及びエクスポートAPI40を、管理されたコード又は管理されないコードで実施できることを理解されたい。本発明の他の実施形態は、本明細書の熟考及び本明細書に開示された発明の実行から、当業者にとって自明なことである。
本発明の典型的なオペレーティング環境を提供するコンピュータと、関連する周辺デバイス及びネットワーク化されたデバイスを示すブロック図である。 本発明の実施形態による、電子文書をインポートする典型的なアーキテクチャを示すブロック図である。 本発明の実施形態による、電子文書を作成するためのデータのエクスポートの典型的なアーキテクチャを示すブロック図である。 本発明の実施形態による、電子文書をインポートする典型的なルーチンによって実行されるステップを示す流れ図である。 本発明の実施形態による、電子文書を作成するためにデータをエクスポートする典型的なルーチンによって実行されるステップを示す流れ図である。
符号の説明
20 クライアント
30 インポートAPI
40 エクスポートAPI
50 コールバックコンポーネント
60 パーサ
70 内容
80 ライタ
90 電子文書
200、300 ソフトウェアアーキテクチャ

Claims (42)

  1. 電子文書から内容を選択的にインポートする方法であって、
    階層ファイル構造に編成された、データ及び該データに関連する内容の項目を有する電子文書を受信することと、
    電子文書内の内容の少なくとも1つの項目に関連する特定のデータを識別することと、
    内容をインポートするために特定のデータに対する動作を実行することと
    を含むことを特徴とするインポートする方法。
  2. 前記内容をインポートするために特定のデータに対する動作を実行することは、
    識別されたデータについて電子文書を解析することと、
    電子文書から識別されたデータに関連する内容の最初の項目を抽出することと
    を含むことを特徴とする請求項1に記載のインポートする方法。
  3. 前記内容をインポートするために特定のデータに対する動作を実行することは、
    電子文書から識別されたデータに関連する内容の最初の項目を抽出した後に、識別されたデータに関連する内容の追加項目があるかどうかを判定することと、
    識別されたデータに関連する内容の追加項目がある場合に、電子文書から識別されたデータに関連する内容の次の項目を抽出することと
    を含むことを特徴とする請求項2に記載のインポートする方法。
  4. 前記階層ファイル構造は、XMLであることを特徴とする請求項1に記載のインポートする方法。
  5. 前記識別された内容は、XML要素であることを特徴とする請求項1に記載のインポートする方法。
  6. 前記識別された内容は、XML属性であることを特徴とする請求項1に記載のインポートする方法。
  7. 前記識別された内容は、XMLノードであることを特徴とする請求項1に記載のインポートする方法。
  8. 前記識別された内容は、テキストであることを特徴とする請求項1に記載のインポートする方法。
  9. 前記内容が、データストリームからインポートされることを特徴とする請求項1に記載のインポートする方法。
  10. 前記内容が、メモリバッファからインポートされることを特徴とする請求項1に記載のインポートする方法。
  11. 前記内容が、ファイルからインポートされることを特徴とする請求項1に記載のインポートする方法。
  12. コンピュータシステム内で電子文書の内容をインポートするコンピュータ実行可能なコンポーネントを有するコンピュータ可読媒体であって、コンピュータ実行可能なコンポーネントは、
    コンピュータシステム内のソースから内容を含むデータを有する電子文書を受け取り、電子文書は階層ファイル構造を有し、
    電子文書内の内容の少なくとも1つの項目に関連する特定のデータを識別し、
    電子文書から識別されたデータに関連する内容の項目を抽出するインポートコンポーネントを含むことを特徴とするコンピュータ可読媒体。
  13. 前記識別されたデータについて電子文書を解析し、インポートコンポーネントに識別されたデータを送るパーサコンポーネントを含むさらなるコンピュータ実行可能なコンポーネントを有することを特徴とする請求項12に記載のコンピュータ可読媒体。
  14. 前記パーサコンポーネントは、イベントベースであることを特徴とする請求項13に記載のコンピュータ可読媒体。
  15. 電子文書からの識別されたデータに関連する内容の抽出された項目を処理するコールバックコンポーネントを含むさらなるコンピュータ実行可能なコンポーネントを有することを特徴とする請求項12に記載のコンピュータ可読媒体。
  16. 内容の少なくとも1つの項目は、テキストストリングであることを特徴とする請求項12に記載のコンピュータ可読媒体。
  17. 前記階層ファイル構造は、XMLであることを特徴とする請求項12に記載のコンピュータ可読媒体。
  18. 前記識別される内容は、XML要素であることを特徴とする請求項12に記載のコンピュータ可読媒体。
  19. 前記識別される内容は、XML属性であることを特徴とする請求項12に記載のコンピュータ可読媒体。
  20. 前記識別される内容は、XMLノードであることを特徴とする請求項12に記載のコンピュータ可読媒体。
  21. 前記識別される内容は、テキストであることを特徴とする請求項12に記載のコンピュータ可読媒体。
  22. 前記ソースは、コンピュータシステム内のクライアントであることを特徴とする請求項12に記載のコンピュータ可読媒体。
  23. 前記ソースは、コンピュータシステム内のサーバであることを特徴とする請求項12に記載のコンピュータ可読媒体。
  24. 電子文書を作成するためにソースからデータをエクスポートする、コンピュータシステム内のエクスポートする方法であって、
    ソースからデータを受け取ることと、
    電子文書にエクスポートされる複数のデータを識別することと、
    電子文書を作成するために識別された複数のデータをエクスポートすることと
    を含むことを特徴とするエクスポートする方法。
  25. 前記作成される文書が、階層ファイル構造を有することを特徴とする請求項24に記載のエクスポートする方法。
  26. 前記階層ファイル構造が、XMLであることを特徴とする請求項24に記載のエクスポートする方法。
  27. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、少なくとも1つのXML要素を作成することを含むことを特徴とする請求項24に記載のエクスポートする方法。
  28. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、少なくとも1つのXML属性を作成することを含むことを特徴とする請求項24に記載のエクスポートする方法。
  29. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、少なくとも1つのXMLノードを作成することを含むことを特徴とする請求項24に記載のエクスポートする方法。
  30. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、テキストを作成することを含むことを特徴とする請求項24に記載のエクスポートする方法。
  31. 前記識別された複数のデータが、データストリームにエクスポートされることを特徴とする請求項24に記載のエクスポートする方法。
  32. 前記識別された複数のデータが、メモリバッファにエクスポートされることを特徴とする請求項24に記載のエクスポートする方法。
  33. 前記識別された複数のデータが、ファイルにエクスポートされることを特徴とする請求項24に記載のエクスポートする方法。
  34. コンピュータシステム内で電子文書を作成するためにソースからデータをエクスポートするコンピュータ実行可能なコンポーネントを有するコンピュータ可読媒体であって、コンピュータ実行可能なコンポーネントが、
    ソースからデータを受け取り、
    電子文書にエクスポートされる複数のデータを識別するエクスポートコンポーネントと、
    エクスポートコンポーネントから識別された複数のデータを受け取り、電子文書を作成するために識別された複数のデータをエクスポートする、ライタコンポーネントと
    を含むことを特徴とするコンピュータ可読媒体。
  35. 前記作成される電子文書が、階層ファイル構造を有することを特徴とする請求項34に記載のコンピュータ可読媒体。
  36. 前記階層ファイル構造が、XMLであることを特徴とする請求項35に記載のコンピュータ可読媒体。
  37. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、少なくとも1つのXML要素を作成することを含むことを特徴とする請求項34に記載のコンピュータ可読媒体。
  38. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、少なくとも1つのXML属性を作成することを含むことを特徴とする請求項34に記載のコンピュータ可読媒体。
  39. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、少なくとも1つのXMLノードを作成することを含むことを特徴とする請求項34に記載のコンピュータ可読媒体。
  40. 前記電子文書を作成するために識別された複数のデータをエクスポートすることは、テキストを作成することを含むことを特徴とする請求項34に記載のコンピュータ可読媒体。
  41. 前記ソースは、コンピュータシステム内のクライアントであることを特徴とする請求項34に記載のコンピュータ可読媒体。
  42. 前記ソースは、コンピュータシステム内のサーバであることを特徴とする請求項34に記載のコンピュータ可読媒体。

JP2003396397A 2002-11-27 2003-11-26 階層構造化データをインポートし、エクスポートする方法及びコンピュータ可読媒体 Pending JP2004178602A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/306,022 US7191186B1 (en) 2002-11-27 2002-11-27 Method and computer-readable medium for importing and exporting hierarchically structured data

Publications (1)

Publication Number Publication Date
JP2004178602A true JP2004178602A (ja) 2004-06-24

Family

ID=32312191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003396397A Pending JP2004178602A (ja) 2002-11-27 2003-11-26 階層構造化データをインポートし、エクスポートする方法及びコンピュータ可読媒体

Country Status (17)

Country Link
US (1) US7191186B1 (ja)
EP (1) EP1426877B1 (ja)
JP (1) JP2004178602A (ja)
KR (1) KR101067398B1 (ja)
CN (1) CN100527121C (ja)
AT (1) ATE481683T1 (ja)
AU (1) AU2003262290B2 (ja)
BR (1) BR0306749A (ja)
CA (1) CA2448787C (ja)
DE (1) DE60334185D1 (ja)
HK (1) HK1066304A1 (ja)
MX (1) MXPA03010779A (ja)
MY (1) MY134408A (ja)
PL (1) PL363561A1 (ja)
RU (1) RU2338245C2 (ja)
TW (1) TWI334551B (ja)
ZA (1) ZA200308722B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2230599A1 (en) 2009-03-17 2010-09-22 Ricoh Company, Ltd. Information processing apparatus

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040205216A1 (en) * 2003-03-19 2004-10-14 Ballinger Keith W. Efficient message packaging for transport
US8296354B2 (en) * 2004-12-03 2012-10-23 Microsoft Corporation Flexibly transferring typed application data
EP1729235A1 (en) * 2005-06-03 2006-12-06 Agfa Corporation Structured reporting report data manager
US8711142B2 (en) * 2005-08-11 2014-04-29 International Business Machines Corporation Visual model importation
CN1979479B (zh) * 2005-12-09 2010-06-02 北京书生国际信息技术有限公司 文档处理系统和文档处理方法
JP5530101B2 (ja) 2005-12-05 2014-06-25 サーセン コーポレイション 文書処理システム及びその方法
EP1965309A4 (en) * 2005-12-05 2009-04-01 Sursen Corp SYSTEM AND METHOD FOR HIERARCHISTIC PROCESSING OF DOCUMENTS
CN1979478B (zh) * 2005-12-09 2010-05-26 北京书生国际信息技术有限公司 文档处理系统和文档处理方法
CN100547590C (zh) * 2005-12-05 2009-10-07 北京书生国际信息技术有限公司 文档处理系统
CN102043821B (zh) * 2005-12-09 2013-03-27 北京书生国际信息技术有限公司 一种显示文档的方法
US7836055B2 (en) * 2006-01-31 2010-11-16 Microsoft Corporation XNA relationship management
US20070177583A1 (en) * 2006-01-31 2007-08-02 Microsoft Corporation Partial message streaming
US20070266309A1 (en) * 2006-05-12 2007-11-15 Royston Sellman Document transfer between document editing software applications
CN100458786C (zh) * 2006-06-15 2009-02-04 Ut斯达康通讯有限公司 基于应用定制解析xml文档的方法及装置
US8732661B2 (en) * 2007-02-01 2014-05-20 Microsoft Corporation User experience customization framework
US9621649B2 (en) * 2007-09-28 2017-04-11 Xcerion Aktiebolag Network operating system
US8370735B2 (en) * 2008-06-27 2013-02-05 Microsoft Corporation Efficient, non-blocking mechanism for incrementally processing arbitrary sized XML documents
US10943030B2 (en) * 2008-12-15 2021-03-09 Ibailbonding.Com Securable independent electronic document
US10114840B2 (en) * 2009-09-29 2018-10-30 Sap Se Customer data separation in a service provider scenario
CN101706779B (zh) * 2009-10-12 2013-05-08 南京联创科技集团股份有限公司 基于oracle的伞状数据导入导出方法
CN102122280B (zh) * 2009-12-17 2013-06-05 北大方正集团有限公司 一种智能提取内容对象的方法及系统
US8380753B2 (en) * 2011-01-18 2013-02-19 Apple Inc. Reconstruction of lists in a document
JP5760493B2 (ja) * 2011-02-18 2015-08-12 村田機械株式会社 中継通信システム
US9760549B2 (en) 2012-07-18 2017-09-12 Software Ag Usa, Inc. Systems and/or methods for performing atomic updates on large XML information sets
US9922089B2 (en) * 2012-07-18 2018-03-20 Software Ag Usa, Inc. Systems and/or methods for caching XML information sets with delayed node instantiation
US10515141B2 (en) 2012-07-18 2019-12-24 Software Ag Usa, Inc. Systems and/or methods for delayed encoding of XML information sets
CN103714062B (zh) 2012-09-28 2017-05-31 国际商业机器公司 基于依赖关系导入实体‑联系模型数据的方法和系统
CN104753891B (zh) * 2013-12-31 2019-04-05 中国移动通信集团湖南有限公司 一种xml报文解析方法及装置
US9635089B2 (en) * 2014-12-31 2017-04-25 Verizon Patent And Licensing Inc. Auto suggestion in search with additional properties
EP3462334A1 (en) 2017-09-27 2019-04-03 Fomtech Limited System and method for data aggregation and comparison
US10678777B2 (en) 2017-09-27 2020-06-09 Fomtech Limited System and method for data aggregation and comparison

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09269940A (ja) * 1996-03-29 1997-10-14 Sharp Corp 日時等を抽出する装置
JP3896702B2 (ja) 1998-09-18 2007-03-22 富士ゼロックス株式会社 文書管理システム
US6427123B1 (en) * 1999-02-18 2002-07-30 Oracle Corporation Hierarchical indexing for accessing hierarchically organized information in a relational system
US6862710B1 (en) * 1999-03-23 2005-03-01 Insightful Corporation Internet navigation using soft hyperlinks
US6549916B1 (en) * 1999-08-05 2003-04-15 Oracle Corporation Event notification system tied to a file system
US6947953B2 (en) * 1999-11-05 2005-09-20 The Board Of Trustees Of The Leland Stanford Junior University Internet-linked system for directory protocol based data storage, retrieval and analysis
US6529905B1 (en) * 2000-01-11 2003-03-04 Frontline Solutions, Inc. Method and system for allowing multiple users to edit a hierarchical data structure
US6819339B1 (en) * 2000-02-24 2004-11-16 Eric Morgan Dowling Web browser with multilevel functions
JP2002094472A (ja) 2000-05-30 2002-03-29 Matsushita Electric Ind Co Ltd データ取得装置及びその方法
JP2002140350A (ja) 2000-11-02 2002-05-17 Toshiba Corp 入力データの履歴管理装置及び管理方法及び該管理方法が記憶された情報記憶媒体
GB2373698A (en) * 2001-03-20 2002-09-25 Copyn Ltd Storage of a portion of a web-page containing a link
JP3842573B2 (ja) * 2001-03-30 2006-11-08 株式会社東芝 構造化文書検索方法、構造化文書管理装置及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2230599A1 (en) 2009-03-17 2010-09-22 Ricoh Company, Ltd. Information processing apparatus

Also Published As

Publication number Publication date
MXPA03010779A (es) 2005-04-19
CN100527121C (zh) 2009-08-12
RU2003134278A (ru) 2005-05-10
KR20040047657A (ko) 2004-06-05
CN1504925A (zh) 2004-06-16
TW200422881A (en) 2004-11-01
AU2003262290B2 (en) 2009-09-17
EP1426877A3 (en) 2007-09-12
RU2338245C2 (ru) 2008-11-10
KR101067398B1 (ko) 2011-09-27
PL363561A1 (en) 2004-05-31
TWI334551B (en) 2010-12-11
ATE481683T1 (de) 2010-10-15
DE60334185D1 (de) 2010-10-28
US7191186B1 (en) 2007-03-13
MY134408A (en) 2007-12-31
EP1426877A2 (en) 2004-06-09
AU2003262290A1 (en) 2004-06-10
CA2448787C (en) 2012-01-17
HK1066304A1 (en) 2005-03-18
BR0306749A (pt) 2004-10-13
CA2448787A1 (en) 2004-05-27
ZA200308722B (en) 2004-10-08
EP1426877B1 (en) 2010-09-15

Similar Documents

Publication Publication Date Title
CA2448787C (en) Method and computer-readable medium for importing and exporting hierarchically structured data
JP5787963B2 (ja) コンピュータプラットフォームのプログラミングインターフェース
US7519903B2 (en) Converting a structured document using a hash value, and generating a new text element for a tree structure
US6662342B1 (en) Method, system, and program for providing access to objects in a document
US6938204B1 (en) Array-based extensible document storage format
US6990632B2 (en) Method and system for inferring a schema from a hierarchical data structure for use in a spreadsheet
US7877366B2 (en) Streaming XML data retrieval using XPath
US7337177B2 (en) Method and apparatus for information transformation and exchange in a relational database environment
US6658624B1 (en) Method and system for processing documents controlled by active documents with embedded instructions
US7409636B2 (en) Lightweight application program interface (API) for extensible markup language (XML)
US20030110177A1 (en) Declarative specification and engine for non-isomorphic data mapping
EP2211277A1 (en) Method and apparatus for generating an integrated view of multiple databases
US20050273703A1 (en) Method of and system for providing namespace based object to XML mapping
JPH11272667A (ja) 構造化文書作成方法、構造化文書作成装置及び構造化文書作成用プログラムを格納した記憶媒体
KR20050056123A (ko) 소프트웨어 애플리케이션에서의 네임스페이스 또는 스키마라이브러리 지원을 위한 프로그램 가능한 객체 모델
WO2002005106A1 (en) Method and apparatus for providing process-container platforms
US20040205552A1 (en) Method and system for mapping between markup language document and an object model
JP2002196967A (ja) Html文書に表示されるデータオブジェクトのソースをリダイレクトする方法
JP2006178944A (ja) 文書を表すファイル・フォーマット、その方法、およびコンピュータ・プログラム製品
US20040205584A1 (en) System and method for template creation and execution
US6772395B1 (en) Self-modifying data flow execution architecture
JP2002534741A (ja) 半構造化テキストデータを処理する方法及び装置
WO2001082121A2 (en) Pre-computing and encoding techniques for an electronic document to improve run-time processing
Wright et al. Introducing System. Xml
Thomas Share: document annotation and version control for the Internet

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090206

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090731