(57)【要約】【課題】省メモリでＤＯＭと同等のＸＭＬ構文解析機能を実現し、リソース制限によりＤＯＭを搭載できない組み込みシステムへ搭載する。【解決手段】外部から入力されたＸＭＬデータ（ＳＯＡＰデータＳＤ）の構文を解析し、ＸＭＬデータ（ＳＯＡＰデータＳＤ）を構成する各要素のポインタを取得する要素解析部（ＳＯＡＰパーサ６２）と、ポインタ毎に逐次、ポインタが指し示すＸＭＬデータの要素の情報を取得する逐次情報取得部（イベント駆動パーサ６３）と、を含むＸＭＬ構文解析システム６０。【選択図】図１
2009087285.tif 000002
【特許請求の範囲】
【請求項１】
上位アプリケーションと、
要素解析部と、
逐次情報取得部と、
を含み、
前記上位アプリケーションは、外部から入力されたＸＭＬデータの解析指示を前記要素解析部に送信し、前記要素解析部から前記解析指示に対する解析結果を受信し、前記解析結果に基づいて所定の処理を行い、
前記要素解析部は、前記上位アプリケーションから前記解析指示を受信して前記逐次情報取得部に解析を指示し、前記上位アプリケーションからの前記解析指示に対する前記解析結果を得るまで解析の指示を繰り返し、
前記逐次情報取得部は、前記要素解析部からの前記解析指示を受信して前記ＸＭＬデータを解析し、前記解析結果を前記要素解析部に送信する、
ことを特徴とするＸＭＬ構文解析システム。
【請求項２】
請求項１に記載のＸＭＬ構文解析システムにおいて、
前記ＸＭＬ構文解析システムは、前記上位アプリケーションの前記解析結果に基づき前記ＸＭＬデータを構成する要素同士の階層構造を記録した階層構造データを生成し、
前記要素解析部は、前記逐次情報取得部へ送信した前記要素が前記上位アプリケーションから要求された要素より前方にあるかどうか前記階層構造データに基づいて判断し、前方にあると判断した場合には、前記逐次情報取得部に対して前記ＸＭＬデータの先頭から処理をする指示を送る、
ことを特徴とするＸＭＬ構文解析システム。
【請求項３】
上位アプリケーション工程と、
要素解析工程と、
逐次情報取得工程と、
を含み、
前記上位アプリケーション工程は、外部から入力されたＸＭＬデータの解析指示を前記要素解析工程に送り、前記要素解析工程から前記解析指示に対する解析結果を受け取り、前記解析結果に基づいて所定の処理を行い、
前記要素解析工程は、前記上位アプリケーション工程から前記解析指示を受け取って前記逐次情報取得工程に解析を指示し、前記上位アプリケーション工程からの前記解析指示に対する前記解析結果を得るまで解析の指示を繰り返し、
前記逐次情報取得工程は、前記要素解析工程からの前記解析指示を受信して前記ＸＭＬデータを解析し、前記解析結果を前記要素解析工程に送る、
ことを特徴とするＸＭＬ構文解析方法。
【請求項４】
上位アプリケーションステップと、
要素解析ステップと、
逐次情報取得ステップと、
を含み、
前記上位アプリケーションステップは、外部から入力されたＸＭＬデータの解析指示を前記要素解析ステップに送り、前記要素解析ステップから前記解析指示に対する解析結果を受け取り、前記解析結果に基づいて所定の処理を行い、
前記要素解析ステップは、前記上位アプリケーションステップから前記解析指示を受け取って前記逐次情報取得ステップに解析を指示し、前記上位アプリケーションステップからの前記解析指示に対する前記解析結果を得るまで解析の指示を繰り返し、
前記逐次情報取得ステップは、前記要素解析ステップからの前記解析指示を受信して前記ＸＭＬデータを解析し、前記解析結果を前記要素解析ステップに送る、
ことを特徴とするＸＭＬ構文解析プログラム。
【請求項５】
請求項１または２に記載のＸＭＬ構文解析システムまたは請求項４に記載のＸＭＬ構文解析プログラムを含むことを特徴とする電子機器。
【請求項６】
請求項５に記載の電子機器を複数含み構成されていることを特徴とするＷｅｂサービス。
【請求項７】
請求項６に記載のＷｅｂサービスにおいて、前記Ｗｅｂサービスは、前記ＸＭＬデータをベースとしたＳＯＡＰにより情報交換を行うことを特徴とするＷｅｂサービス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、組み込みプログラム向けのＸＭＬ構文解析システム、ＸＭＬ構文解析方法、ＸＭＬ構文解析プログラム、電子機器及びＷｅｂサービスに関する。
【背景技術】
【０００２】
近年、Ｗｅｂサービスなどの普及により、ネットワーク上のクライアント、サーバ間での通信手段としてＸＭＬ（eXtensible Markup Language）データを用いた通信が主流となっている。ネットワーク対応のプリンタやスキャナなどのデバイスに関しても例外でなく、ＰＣなどのクライアントからの要求をＸＭＬデータで受け、その要求に対するレスポンスをＸＭＬデータで行うという通信が普及している。
【０００３】
また、Ｗｅｂサービス同士の連携を図るためのメッセージ交換やリモートプロシージャの呼び出しをＸＭＬベースで行うためのＳＯＡＰ（Simple Object Access Protocol）というプロトコル仕様が提案されている。ＳＯＡＰは、ネットワーク上のアプリケーション間（オブジェクト間）の情報を交換し合うための単純で軽量なプロトコルの仕様である。
【０００４】
デバイスは、クライアントから送られてくるＳＯＡＰデータからクライアントの要求がどういった内容であるのかを確認するために、ＳＯＡＰデータを構成するＸＭＬ構文を解析し処理を行う必要がある。それを解決する仕組みとして、ＤＯＭ（Document Object Model）があるが、ＤＯＭはシステムに大きなプログラムサイズとＲＡＭサイズを要求する。プリンタやスキャナなどのデバイスは、プログラムサイズやＲＡＭサイズ（デバイス起動時使用できるメモリサイズ）に制限があるため、なるべく省プログラムサイズ、省メモリで動作する仕組みでなくてはならないため、ＤＯＭを適用できないケースが多い。
【０００５】
この問題を解決するために、例えば特許文献１には、パース処理と妥当性検証とを同時に行うことにより高速化を実現する方法が記載されている。
【０００６】
【特許文献１】特開２００５−２４２９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の方法では、プログラムサイズは減らせるがＲＡＭサイズは大きいままという課題がある。
【課題を解決するための手段】
【０００８】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００９】
［適用例１］
上位アプリケーションと、要素解析部と、逐次情報取得部と、を含み、前記上位アプリケーションは、外部から入力されたＸＭＬデータの解析指示を前記要素解析部に送信し、前記要素解析部から前記解析指示に対する解析結果を受信し、前記解析結果に基づいて所定の処理を行い、前記要素解析部は、前記上位アプリケーションから前記解析指示を受信して前記逐次情報取得部に解析を指示し、前記上位アプリケーションからの前記解析指示に対する前記解析結果を得るまで解析の指示を繰り返し、前記逐次情報取得部は、前記要素解析部からの前記解析指示を受信して前記ＸＭＬデータを解析し、前記解析結果を前記要素解析部に送信する、ことを特徴とするＸＭＬ構文解析システム。
【００１０】
この構成によれば、省メモリでＤＯＭと同等のＸＭＬ構文解析機能を実現できるため、リソース制限によりＤＯＭを搭載できない組み込みシステムへ搭載することでＸＭＬ構文解析機能を実現できる。
【００１１】
［適用例２］
上記に記載のＸＭＬ構文解析システムにおいて、前記ＸＭＬ構文解析システムは、前記上位アプリケーションの前記解析結果に基づき前記ＸＭＬデータを構成する要素同士の階層構造を記録した階層構造データを生成し、前記要素解析部は、前記逐次情報取得部へ送信した前記要素が前記上位アプリケーションから要求された要素より前方にあるかどうか前記階層構造データに基づいて判断し、前方にあると判断した場合には、前記逐次情報取得部に対して前記ＸＭＬデータの先頭から処理をする指示を送る、ことを特徴とするＸＭＬ構文解析システム。
【００１２】
この構成によれば、階層構造データによりＸＭＬデータにおける現在の要素の位置関係を把握できるので、従来、ＸＭＬデータの途中の要素にポインタがあった場合、その上の要素にたどり着くためには、ＸＭＬデータの最後までポインタを移動後、先頭に戻っていたために費やしていた時間を大幅に節約することができる。
【００１３】
［適用例３］
上位アプリケーション工程と、要素解析工程と、逐次情報取得工程と、を含み、前記上位アプリケーション工程は、外部から入力されたＸＭＬデータの解析指示を前記要素解析工程に送り、前記要素解析工程から前記解析指示に対する解析結果を受け取り、前記解析結果に基づいて所定の処理を行い、前記要素解析工程は、前記上位アプリケーション工程から前記解析指示を受け取って前記逐次情報取得工程に解析を指示し、前記上位アプリケーション工程からの前記解析指示に対する前記解析結果を得るまで解析の指示を繰り返し、前記逐次情報取得工程は、前記要素解析工程からの前記解析指示を受信して前記ＸＭＬデータを解析し、前記解析結果を前記要素解析工程に送る、ことを特徴とするＸＭＬ構文解析方法。
【００１４】
［適用例４］
上位アプリケーションステップと、要素解析ステップと、逐次情報取得ステップと、を含み、前記上位アプリケーションステップは、外部から入力されたＸＭＬデータの解析指示を前記要素解析ステップに送り、前記要素解析ステップから前記解析指示に対する解析結果を受け取り、前記解析結果に基づいて所定の処理を行い、前記要素解析ステップは、前記上位アプリケーションステップから前記解析指示を受け取って前記逐次情報取得ステップに解析を指示し、前記上位アプリケーションステップからの前記解析指示に対する前記解析結果を得るまで解析の指示を繰り返し、前記逐次情報取得ステップは、前記要素解析ステップからの前記解析指示を受信して前記ＸＭＬデータを解析し、前記解析結果を前記要素解析ステップに送る、ことを特徴とするＸＭＬ構文解析プログラム。
【００１５】
この構成によれば、省メモリでＤＯＭと同等のＸＭＬ構文解析機能を実現できるため、リソース制限によりＤＯＭを搭載できない組み込みシステムへ搭載することでＸＭＬ構文解析機能を実現できる。
【００１６】
［適用例５］
適用例１または２に記載のＸＭＬ構文解析システムまたは適用例４に記載のＸＭＬ構文解析プログラムを含むことを特徴とする電子機器。
【００１７】
この構成によれば、省メモリでＤＯＭと同等のＸＭＬ構文解析機能を実現できるため、リソース制限によりＤＯＭを搭載できない組み込みシステムへ搭載することでＸＭＬ構文解析機能を実現できる。
【００１８】
［適用例６］
上記に記載の電子機器を複数含み構成されていることを特徴とするＷｅｂサービス。
【００１９】
［適用例７］
上記に記載のＷｅｂサービスにおいて、前記Ｗｅｂサービスは、前記ＸＭＬデータをベースとしたＳＯＡＰにより情報交換を行うことを特徴とするＷｅｂサービス。
【００２０】
この構成によれば、様々なプロトコルにバインディングして使用できるＳＯＡＰを使うことにより、環境に依存しないアプリケーションの作成ができる。
【発明を実施するための最良の形態】
【００２１】
以下、ＸＭＬ構文解析システムの実施形態について図面に従って説明する。
【００２２】
（第１実施形態）
＜ＸＭＬ構文解析システムの構成＞
先ず、第１実施形態に係るＸＭＬ構文解析システムの構成について、図１を参照して説明する。図１は、第１実施形態に係るＸＭＬ構文解析システムの構成を示すブロック図である。図１に示すように、ＸＭＬ構文解析システム６０は、電子機器の一例としてネットワークプリンタ１００に組み込まれている。また、ネットワークプリンタ１００は、ネットワークケーブル（ＬＡＮ：Local Area Network）３００を介してクライアントＰＣ２００と接続され、Ｗｅｂサービスを利用した印刷システムを構成している。
【００２３】
ネットワークプリンタ１００は、内部バス１０にＣＰＵ２０と、ＲＯＭ３０と、ＲＡＭ４０と、プリントエンジン５０と、が接続されている。ＸＭＬ構文解析システム６０は、ＲＯＭ３０に格納され、プログラム実行時にＲＡＭ４０にロードされる。ＸＭＬ構文解析システム６０は、上位アプリケーション６１と、要素解析部であるＳＯＡＰパーサ６２と、逐次情報取得部であるイベント駆動パーサ６３と、から構成されている。
【００２４】
クライアントＰＣ２００からの印刷要求項目を記載したＳＯＡＰデータＳＤは、ＬＡＮ３００を介してネットワークプリンタ１００のＲＡＭ４０に格納される。上位アプリケーション６１は、ＳＯＡＰパーサ６２を使用してＲＡＭ４０に格納されたＳＯＡＰデータＳＤを解析し、プリントエンジン５０に印刷命令を送る。上位アプリケーション６１は、ＳＯＡＰパーサ６２へのＳＯＡＰデータＳＤの解析指示送信およびＳＯＡＰパーサ６２からの解析結果受信のための各種ＡＰＩ（Application Program Interface）をＳＯＡＰパーサ６２に送る。
【００２５】
ＳＯＡＰパーサ６２は、ＡＰＩに基づき上位アプリケーション６１から子要素又は兄第要素への移動指示を受信し、イベント駆動パーサ６３に対してはイベント駆動パーサ６３の解析単位であるノードの解析をポインタＰＴで指示する。イベント駆動パーサ６３は、ＲＡＭ４０に格納されたＳＯＡＰデータＳＤ上のポインタ位置から逐次データＥＶをノード単位毎取得し、該取得したノードの種類を判定する。ここで、ノードとは”<“から”>“までのデータ列または”>“から”<”までのデータ列を１ノードとする。例えば、図２では<soap:Header>、Message dataがそれぞれ１ノードであり、改行、空白も１ノードとして扱われる。また、ノード種類とは<>で括られたデータは開始ノードであり、</>で括られたデータは終了ノード、それ以外は値である。
【００２６】
イベント駆動パーサ６３は、上述したようにＳＯＡＰデータＳＤの解析を行い、解析したノードの種類をＳＯＡＰパーサ６２に応答すると共にポインタＰＴをノード終端まで移動する。ＳＯＡＰパーサ６２は、イベント駆動パーサ６３から受信したノード種類に基づいて上位アプリケーション６１から指示された子要素又は兄弟要素までポインタが移動したか否かを判断し、移動していれば上位アプリケーション６１に対して移動の完了を応答する。上位アプリケーション６１は、ＳＯＡＰパーサ６２からの移動完了通知を受信すると所望の子要素又は兄弟要素まで移動したか否かを判断し、移動していなければ所望の子要素または兄弟要素に移動するまで、ＳＯＡＰパーサ６２に移動の指示を繰り返す。
【００２７】
＜ＳＯＡＰデータの構成＞
次に、ＳＯＡＰデータの構成について図２を参照して説明する。図２は、ＳＯＡＰデータの構成の概略を示すリストである。
【００２８】
図２に示すように、ＳＯＡＰデータＳＤは、ＸＭＬ構文により記載されている。ＳＯＡＰデータＳＤは、１行目のエンベロープ<soap:Envelope>、２行目のヘッダ<soap:Header>そして１７行目のボディ<soap:Body>の各要素で構成されている。
【００２９】
ヘッダ<soap:Header>は、複数の子要素である、３行目の<wsa:MessageID>、４行目の<wsa:Action>、５行目の<wsa:To>、６行目の<wsa:RelatesTo>、７行目の<wsa:ReplyTo>、１４行目の<ext:AAA>、１５行目の<ext:BBB>、を含む。またこれら複数の子要素は、互いに兄弟要素と呼ばれる。
【００３０】
７行目の<wsa:ReplyTo>は、さらに子要素として８行目の<wsa:Address>、９行目の<wsa:ReferenceParameters>、を含んでいる。また、９行目の<wsa:ReferenceParameters>は、さらに子要素として１０行目の<ext:DDD>DDD data</ext:DDD>、１１行目の<ext:EEE>EEE data</ext:EEE>、を含んでいる。
【００３１】
３行目の<wsa:MessageID>は、Message dataという値を含み、４行目の<wsa:Action>は、Action dataという値を含み、５行目の<wsa:To>は、To dataという値を含み、６行目の<wsa:RelatesTo>は、RelatesTo dataという値を含んでいる。
【００３２】
＜ＸＭＬ構文解析システムの動作＞
次に、ＸＭＬ構文解析システムの動作について図３を参照して説明する。図３は、ＸＭＬ構文解析システムの動作を示すフローチャートである。現在のポインタはＳＯＡＰデータＳＤの２行目の<soap:Header>の直前に位置するものとし、上位アプリケーション６１は３行目<wsa：MessageID>の値Message dataの取得を行いたいものとする。
【００３３】
上位アプリケーション６１は、所望のＳＯＡＰデータＳＤの値を取得するためにＳＯＡＰパーサ６２に対しＳＯＡＰ解析を次の子要素に解析を移動するように指示を行う。
【００３４】
ＳＯＡＰパーサ６２は、上位アプリケーション６１から子要素への解析移動指示を受信すると、イベント駆動パーサ６３に対してＳＯＡＰデータＳＤの解析を進めるように指示を行う。
【００３５】
先ず、ステップＳ１００では、イベント駆動パーサ６３は、ＳＯＡＰデータＳＤのヘッダ<soap:Header>のポインタを取得する。
【００３６】
次に、ステップＳ１０２では、イベント駆動パーサ６３は、ＳＯＡＰデータＳＤから逐次データＥＶを取得し、データとして２行目の<soap:Header>を取得したことによりデータがヘッダであることを認識し、ＳＯＡＰパーサ６２にヘッダを取得したことを通知すると共に、ポインタＰＴを<soap:Header>の後端に移動する。
【００３７】
ＳＯＡＰパーサ６２は上位アプリケーション６１から指示を受けた子要素に解析が移動したと判断し、上位アプリケーション６１に子要素の解析結果を通知する。
【００３８】
上位アプリケーション６１は、子要素の解析結果を受信すると受信した解析結果が所望の解析結果であるかを判断し、所望の解析結果ではないと判断すると、解析を次の子要素に進めるようにＳＯＡＰパーサ６２に指示を行う。
【００３９】
ＳＯＡＰパーサ６２は、上位アプリケーション６１から子要素への解析移動指示を受信すると、イベント駆動パーサ６３に対してＳＯＡＰデータＳＤの解析を進めるように指示を行う。
【００４０】
イベント駆動パーサ６３は、ＳＯＡＰデータＳＤのポインタを取得しポインタ位置からＳＯＡＰデータＳＤの取得を行い、<soap:Header>直後の改行および<wsa:MessageID>直前の空白を取得すると取得したノードの種類が値であると判断してＳＯＡＰパーサ６２に値である旨を通知すると共に、空白の後ろすなわち<wsa:MessageIDの直前にポインタを移動する。
【００４１】
ＳＯＡＰパーサ６２は、イベント駆動パーサ６３から解析結果が値であること受信すると、イベント駆動パーサ６３に対して解析した値が空白であるか否かを問い合わせる。
【００４２】
イベント駆動パーサ６３は、値が空白であることをＳＯＡＰパーサ６２に応答する。ＳＯＡＰパーサ６２は解析結果が空白であることが分かると、解析が子要素に達していないと判断できるため、解析結果を上位アプリケーション６１に応答することなく、解析を進めるようにイベント駆動パーサ６３に指示を行う。
【００４３】
上記フローを所望の要素の解析結果が得られるまで繰り返す。
【００４４】
次に、ステップＳ１０４では、現在の要素に子要素があるか否かを判定し、子要素がある場合はステップＳ１１０に移行し、子要素がない場合はステップＳ１０６に移行する。
【００４５】
次に、ステップＳ１０６では、次の要素があるか否か判定し、次の要素がある場合はステップＳ１０８に移行し、次の要素がない場合は処理を終了する。
【００４６】
次に、ステップＳ１０８では、現在の要素と同じ階層の次の要素の値を取得し、ステップＳ１０４に移行する。
【００４７】
一方、ステップＳ１１０では、子要素の値を取得し、ステップＳ１０４に移行する。
【００４８】
以上に述べた本実施形態によれば、以下の効果が得られる。
【００４９】
本実施形態では、ＳＯＡＰパーサ６２がＡＰＩに基づきＲＡＭ４０に格納されたＳＯＡＰデータＳＤから各要素のポインタＰＴを取得し、イベント駆動パーサ６３に要素のポインタＰＴを逐次送り、イベント駆動パーサ６３によりポインタＰＴが指し示す要素の情報を取得し、上位アプリケーション６１に返すので、省メモリでＤＯＭと同等のＸＭＬ構文解析機能を実現できるため、リソース制限によりＤＯＭを搭載できない組み込みシステムへ搭載することでＸＭＬ構文解析機能を実現でき、Ｗｅｂサービスの搭載などが可能となる。
【００５０】
（第２実施形態）
第１実施形態では、解析開始前にポインタを現在の位置から移動させることは出来なかったが、本第２実施形態ではＳＯＡＰデータＳＤの階層構造データであるノード構成管理データを作成し、該ノード構成管理データに基づいてポインタを先頭に移動させることができる点が第１実施形態と異なる。特にＳＯＡＰデータＳＤサイズが大きく、上位アプリケーション６１が現在のポインタの直前のノードの解析結果を要求した場合には、イベント駆動パーサ６３の解析は一方向に逐次解析を進めることしか出来ないため、所望の解析結果を得るのに多大な時間を要した。
【００５１】
本第２実施形態では、ＳＯＡＰデータＳＤのノード構成データを作成し、該ノード構成データを参照することによって、現在のポインタの位置と所望のノードの位置関係が分かるため、先頭から所望のノードまでの距離と現在のポインタから所望のノードまでの距離を比較して、先頭から所望のノードまでの距離の方が短い場合には、ポインタを先頭に移動してＳＯＡＰデータＳＤの解析時間を短縮することができる。
【００５２】
以下、第２実施形態におけるＸＭＬ構文解析システムの動作を解説する。本第２実施形態では、ポインタが図２の１２行目の</wsa:ReferenceParameters>の直前に存在し、上位アプリケーション６１が図２の９行目の<wsa:ReferenceParameters>の子要素への移動を要求するものとする。
【００５３】
図４は、ＳＯＡＰデータのノード構成管理データを示すブロック図である。先ず、クライアントＰＣ２００からＳＯＡＰデータＳＤを受信した時点で、ＲＡＭ４０にＳＯＡＰデータＳＤを格納すると共に、図４に示すようなＳＯＡＰデータＳＤのノード構成管理データ４００を作成し、イベント駆動パーサ６３が解析するたびに更新するものとする。
【００５４】
ここで、図４について説明する。現在の要素４０１は、現在のポインタが位置する要素を表す。現在のポジションの種類４０２は、現在のポインタが位置しているノードの種類を表す。現在の階層数４０３は、ポインタが位置している要素の階層を意味する。現在の要素が属する親要素４０４は、ポインタが位置する子要素が属する全ての親要素を表す。各階層の先頭要素４０５は、現在ポインタが位置する要素に達するまでに、各階層で最初に現れるノードを示す。解析した総要素数４０６は、現在のポインタに達するまでに解析した要素の総数を表す。
【００５５】
ＳＯＡＰパーサ６２は、上位アプリケーション６１から<wsa:ReferenceParameters>の子要素への移動の要求を受信すると、ノード構成管理データ４００の解析した総要素数４０６を取得する。
【００５６】
解析した総要素数４０６が１１であるため、ＳＯＡＰパーサ６２は<wsa:ReferenceParameters>の子要素は既に解析済みであると判断し、イベント駆動パーサ６３の初期化を行う。
【００５７】
イベント駆動パーサ６３の初期化によってポインタはＳＯＡＰデータＳＤの先頭に戻るため、<wsa:ReferenceParameters>の子要素に達するまで第１実施形態と同様に解析を行う。
【００５８】
以上に述べた本実施形態によれば、以下の効果が得られる。
【００５９】
本第２実施形態では、ノード構成管理データ４００によりＳＯＡＰデータＳＤにおける現在のポインタの位置関係を把握できるので、従来、ＳＯＡＰデータＳＤの途中にポインタがあった場合、その上の要素にたどり着くためには、ＳＯＡＰデータＳＤの最後までポインタを移動後、先頭に戻っていたために費やしていた時間を大幅に節約することができる。
【００６０】
以上、ＸＭＬ構文解析システムの実施形態を説明したが、こうした実施の形態に何ら限定されるものではなく、趣旨を逸脱しない範囲内において様々な形態で実施し得ることができる。以下、変形例を挙げて説明する。
【００６１】
（変形例１）電子機器の変形例１について説明する。前記第１実施形態では、電子機器としてネットワークプリンタ１００の場合について説明したが、他に、ネットワークスキャナ、ネットワークプロジェクタ、ファックス、ネットワークストレージ、などのネットワーク機器に利用することができる。
【図面の簡単な説明】
【００６２】
【図１】第１実施形態に係るＸＭＬ構文解析システムの構成を示すブロック図。
【図２】ＳＯＡＰデータの構成の概略を示すリスト。
【図３】ＸＭＬ構文解析システムの動作を示すフローチャート。
【図４】ＳＯＡＰデータのノード構成管理データを示すブロック図。
【符号の説明】
【００６３】
１０…内部バス、２０…ＣＰＵ、３０…ＲＯＭ、４０…ＲＡＭ、５０…プリントエンジン、６０…ＸＭＬ構文解析システム、６１…上位アプリケーション、６２…ＳＯＡＰパーサ、６３…イベント駆動パーサ、１００…ネットワークプリンタ、２００…クライアントＰＣ、３００…ＬＡＮ。
【図１】
2009087285.tif 000003
【図２】
2009087285.tif 000004
【図３】
2009087285.tif 000005
【図４】
2009087285.tif 000006