(57)【要約】【課題】装置の利便性を維持しながら安全性を向上させる。【解決手段】  XML抽出部３１は、メモリ２２に保持された、FTP転送されたXML文書を抽出し、構文解析部３２は、そのXML文書のFTPサーバ１の仕様に基づいて構文解析し、FTPサーバ１の機器制限に対して不正であるか否かを判定し、正しい部分のみを抽出し、データ変換部３３は、そのXML文書を内部データ（構造体）に変換し、XMLイニシャライザ２４は、内部データ（構造体）を元のXML文書形式のデータに変換する。FTPサーバ１は、そのXML文書を光ディスク４に記録する。本発明は、例えば、通信機能付き映像機器に適用できる。【選択図】図２
2005242427.tif 000002
【特許請求の範囲】
【請求項１】
他の装置とデータのデータ転送を行う情報処理装置において、
前記他の装置との間で実行される前記データの前記データ転送の授受に関する処理を行うデータ転送手段と、
前記データ転送手段によりデータ転送される、メタ言語を基に記述されたデータであるメタ言語データを構文解析する構文解析手段と、
前記構文解析手段により構文解析された前記メタ言語データに対応する構造体をイニシャライズするイニシャライズ手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記構文解析手段は、前記メタ言語データの構文を、前記情報処理装置の機器制限に基づいて解析する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記構文解析手段は、前記メタ言語データを要素毎に解析する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記構文解析手段は、前記メタ言語データを前記要素毎に解析し、解析の結果不正であると判定した前記要素が最低限必要な要素である場合、前記構文解析を中止し、前記要素が削除可能な要素である場合、前記要素を削除して前記構文解析を継続する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記構文解析手段は、前記要素の属性が不正であるか否かを解析する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記構文解析手段は、前記要素の前記属性を解析し、解析の結果不正であると判定した前記属性が前記要素に対して最低限必要な属性である場合、前記属性の要素が最低限必要な要素であるとき前記構文解析を中止し、前記属性の要素が削除可能な要素であるとき前記要素を削除して前記構文解析を継続し、解析の結果不正であると判定した前記属性が削除可能な属性である場合、前記属性を削除して前記構文解析を継続する
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記構文解析手段は、前記要素の子要素が不正であるか否かを解析する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項８】
前記構文解析手段は、前記要素の前記子要素を解析し、解析の結果不正であると判定した前記子要素が前記要素に対して最低限必要な子要素である場合、前記子要素の要素が最低限必要な要素であるとき前記構文解析を中止し、前記子要素の要素が削除可能な要素であるとき前記要素を削除して前記構文解析を継続し、解析の結果不正であると判定した前記子要素が削除可能な属性である場合、前記子要素を削除して前記構文解析を継続する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記イニシャライズ手段によりイニシャライズされた前記メタ言語データを記録媒体に記録する記録手段とをさらに備える
ことを特徴とする請求項１に記載の情報処理装置。
【請求項１０】
前記データ転送手段は、前記他の装置よりデータ転送されたデータ群を受信し、
前記データ転送手段により受信された前記データ群を保持する保持手段と、
前記保持手段により保持された前記データ群より前記メタ言語データを抽出する抽出手段と
をさらに備えることを特徴とする請求項１に記載の情報処理装置。
【請求項１１】
他の装置とデータのデータ転送を行う情報処理装置の情報処理方法であって、
前記他の装置との間で実行される前記データの前記データ転送の授受に関する処理の制御を行うデータ転送制御ステップと、
前記データ転送制御ステップの処理により制御されてデータ転送される、メタ言語を基に記述されたデータであるメタ言語データを構文解析する構文解析ステップと、
前記構文解析ステップの処理により構文解析された前記メタ言語データに対応する構造体をイニシャライズするイニシャライズステップと
を含むことを特徴とする情報処理方法。
【請求項１２】
他の装置とデータのデータ転送を行う処理を、コンピュータに行わせるプログラムにおいて、
前記他の装置との間で実行される前記データの前記データ転送の授受に関する処理の制御を行うデータ転送制御ステップと、
前記データ転送制御ステップの処理により制御されてデータ転送される、メタ言語を基に記述されたデータであるメタ言語データを構文解析する構文解析ステップと、
前記構文解析ステップの処理により構文解析された前記メタ言語データに対応する構造体をイニシャライズするイニシャライズステップと
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、並びにプログラムに関し、特に、例えば、他の装置より転送されるデータを適切に処理することにより、装置の利便性を維持しながら安全性を向上させることができるようにした情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、撮像や録音等により得られた画像データや音声データ等の素材データは、記録媒体である、ビデオテープ等のテープデバイスに記録されていたが、近年、情報処理技術の向上に伴い、情報のデジタル化が進み、DVD（Digital Versatile Disc）等のディスクを記録媒体として利用するようになってきた。さらに、近年においては、ネットワークを介した素材データの配信等も行われるようになってきた。
【０００３】
特に、例えば、テレビジョン番組の制作等においては、撮像装置、記録装置、編集装置、または再生装置等の様々な映像機器の他に、コンテンツ配信サーバやファイル管理サーバ等の各種サーバ、または、情報の入力や管理を行うパーソナルコンピュータやノート型パーソナルコンピュータ等のコンピュータ等の様々な端末装置がインターネットやWAN（Wide Area Network）等の広域のネットワークを介して接続される大規模な映像制作支援システムが利用されるようになってきた。
【０００４】
このような大規模なシステムにおいては、処理される素材データの数も大量になるので、素材データの管理や運営を補助する目的で、素材データに対応する様々な関連情報が生成され、素材データとともに活用される（例えば、特許文献１参照）。従って、このようなシステムの各装置間においては、素材データだけでなく、例えば、素材データに付加されるXML（eXtensible Markup Language）等の言語で記述されたメタデータ、素材データに対応する低解像度のローレゾデータ、その他の関連データ、またはシステムファイル等、素材データ以外の様々な種類のデータもネットワークを介してFTP（File Transfer Protocol）転送される。
【０００５】
このような大規模なシステムは、装置やデータの仕様が予め規格化されており、各装置は、その仕様がこの規格に準拠するように開発される。このように、各装置が統一の規格に基づいて動作するため、システム上における各装置の互換性が保たれ、互いにデータ伝送を行うことができる。
【０００６】
【特許文献１】特開２０００−１１３６４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、以上のように大規模なシステムにおいては、各装置は、その開発時期や、ベンダ（製造会社または販売会社）が互いに異なる場合があり、その場合、各装置がシステムの規格に準拠するように開発されていても、基本的な仕様は互換性があっても、詳細な部分において互換性が保たれていないこともある。そのような場合、例えば、ある装置において生成されたデータを他の装置にFTP転送しても、その他の装置において、FTP転送されたデータを利用することができない事態が発生し得ることが考えられるだけでなく、例えば、システムの規格外のデータを含むファイルがFTP転送されることにより、そのファイルを受信した装置が保証外の動作を強要される等して、装置故障の原因になってしまう恐れもあった。
【０００８】
特に、メタデータ等で利用されるXMLは、汎用性の高いマークアップ言語であり、スキーマにおいてタグを定義したり、利用する名前空間を定義したりすることができる等、その自由度も他の言語と比較して非常に高く、利用者によって全く異なる使われ方をされることも考えられる。従って、例えば、ある装置で素材データの再生方法等を制御する、XMLで記述されたメタデータを生成し、そのメタデータを他の装置に転送し、他の装置において処理する場合、他の装置がそのメタデータの内容全てを理解することができない場合があるだけでなく、そのメタデータに記述された素材データの制御方法が、装置の仕様外の方法であるような場合も考えられ、装置故障の原因になる恐れもあった。
【０００９】
しかしながら、このような大規模なシステムにおいては、装置やデータの汎用性を確保する必要があり、詳細に仕様を規定するのは好ましくない。例えば、上述した映像制作支援システムの場合、メタデータの内容として、素材データの制作日時や更新日時に関する情報や、作業時の環境に関する情報、使用された装置に関する情報、制作工程の計画表、またはコメント等の情報が考えられるが、番組制作において必要な情報は様々であり、番組の内容や制作会社等によっても異なることが多い。さらに、システムが大規模であるほど、必要な情報は多岐に渡り、システムの規格制定段階において、それら全ての情報を網羅することは不可能である。従って、このようなシステムにおいては、実際に運用する現場において、ある程度フレキシブルに対応できるような規格にするのが望ましい。
【００１０】
また、システムの規格によりその仕様を限定しすぎると、装置の開発が困難になり、開発コストが上昇するだけでなく、技術の向上等に伴って、新たな機能を装置やデータの仕様に追加することが困難になってしまう恐れもあった。すなわち、システム（装置およびデータ）の汎用性が低下することによりその（それらの）利便性も低下してしまう。
【００１１】
以上のように、このようなシステムにおいては、装置等の動作保証範囲を示す安全性と、適応能力を示す汎用性とはトレードオフの関係にあり、安全性を優先しすぎると汎用性が低下し、汎用性を優先しすぎると安全性が低下してしまうという課題があった。特に、本来目的のデータでないXMLで記述されたメタデータ等のために、安全性が低下したり、逆に汎用性が低下したりしてしまうことは望ましくない。
【００１２】
本発明は、このような状況に鑑みてなされたものであり、装置の利便性を維持しながら安全性を向上させることができるようにするものである。
【課題を解決するための手段】
【００１３】
本発明の情報処理装置は、他の装置との間で実行されるデータのデータ転送の授受に関する処理を行うデータ転送手段と、データ転送手段によりデータ転送される、メタ言語を基に記述されたデータであるメタ言語データを構文解析する構文解析手段と、構文解析手段により構文解析されたメタ言語データに対応する構造体をイニシャライズするイニシャライズ手段とを備えることを特徴とする。
【００１４】
前記構文解析手段は、メタ言語データの構文を、情報処理装置の機器制限に基づいて解析するようにすることができる。
【００１５】
前記構文解析手段は、メタ言語データを要素毎に解析するようにすることができる。
【００１６】
前記構文解析手段は、メタ言語データを要素毎に解析し、解析の結果不正であると判定した要素が最低限必要な要素である場合、構文解析を中止し、要素が削除可能な要素である場合、要素を削除して構文解析を継続するようにすることができる。
【００１７】
前記構文解析手段は、要素の属性が不正であるか否かを解析するようにすることができる。
【００１８】
前記構文解析手段は、要素の属性を解析し、解析の結果不正であると判定した属性が要素に対して最低限必要な属性である場合、属性の要素が最低限必要な要素であるとき構文解析を中止し、属性の要素が削除可能な要素であるとき要素を削除して構文解析を継続し、解析の結果不正であると判定した属性が削除可能な属性である場合、属性を削除して構文解析を継続するようにすることができる。
【００１９】
前記構文解析手段は、要素の子要素が不正であるか否かを解析するようにすることができる。
【００２０】
前記構文解析手段は、前記要素の子要素を解析し、解析の結果不正であると判定した子要素が要素に対して最低限必要な子要素である場合、子要素の要素が最低限必要な要素であるとき構文解析を中止し、子要素の要素が削除可能な要素であるとき要素を削除して構文解析を継続し、解析の結果不正であると判定した子要素が削除可能な属性である場合、子要素を削除して構文解析を継続するようにすることができる。
【００２１】
前記イニシャライズ手段によりイニシャライズされたメタ言語データを記録媒体に記録する記録手段とをさらに備えるようにすることができる。
【００２２】
前記データ転送手段は、他の装置よりデータ転送されたデータ群を受信し、データ転送手段により受信されたデータ群を保持する保持手段と、保持手段により保持されたデータ群よりメタ言語データを抽出する抽出手段とをさらに備えるようにすることができる。
【００２３】
本発明の情報処理方法は、他の装置との間で実行されるデータのデータ転送の授受に関する処理の制御を行うデータ転送制御ステップと、データ転送制御ステップの処理により制御されてデータ転送される、メタ言語を基に記述されたデータであるメタ言語データをを構文解析する構文解析ステップと、構文解析ステップの処理により構文解析されたメタ言語データに対応する構造体をイニシャライズするイニシャライズステップとを含むことを特徴とする。
【００２４】
本発明のプログラムは、他の装置との間で実行されるデータのデータ転送の授受に関する処理の制御を行うデータ転送制御ステップと、データ転送制御ステップの処理により制御されてデータ転送されるを構文解析する構文解析ステップと、構文解析ステップの処理により構文解析されたメタ言語データに対応する構造体をイニシャライズするイニシャライズステップとをコンピュータに実行させる。
【００２５】
本発明の情報処理装置および方法、並びにプログラムにおいては、他の装置との間で実行されるデータのデータ転送の授受に関する処理が行われ、データ転送されるメタ言語データが構文解析され、構文解析されたメタ言語データに対応する構造体がイニシャライズされる。
【発明の効果】
【００２６】
本発明によれば、データを処理することができる。特に、例えば、他の装置より転送されるデータを適切に処理することにより、装置の利便性を維持しながら安全性を向上させることができる。
【発明を実施するための最良の形態】
【００２７】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２８】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定したりするものではない。
【００２９】
本発明においては、他の装置（例えば、図１のFTPクライアント３）とデータのデータ転送を行う情報処理装置（例えば、図１のFTPサーバ１）が提供される。この情報処理装置では、他の装置との間で実行されるデータのデータ転送の授受に関する処理を行うデータ転送手段（例えば、図３のFTPインタフェース処理部２１）と、データ転送手段によりデータ転送される、メタ言語を基に記述されたデータであるメタ言語データ（例えば、図３のXML文書Ａ４１）を構文解析する構文解析手段（例えば、図３のXMLパーサ２３）と、構文解析手段により構文解析されたメタ言語データに対応する構造体（例えば、図３の内部データ（構造体）４２）をイニシャライズするイニシャライズ手段（例えば、図３のXMLイニシャライザ２４）とを備える。
【００３０】
前記イニシャライズ手段によりイニシャライズされたメタ言語データ（例えば、図３のXML文書Ｂ４３）を記録媒体（例えば、図１の光ディスク４）に記録する記録手段（例えば、図１の記録処理部１３）とをさらに備えるようにすることができる。
【００３１】
前記データ転送手段は、他の装置よりデータ転送されたデータ群を受信し、データ転送手段により受信されたデータ群を保持する保持手段（例えば、図３のメモリ２２）と、保持手段により保持されたデータ群よりメタ言語データを抽出する抽出手段（例えば、図３のXML抽出部３１）とをさらに備えるようにすることができる。
【００３２】
本発明においては、他の装置（例えば、図１のFTPクライアント３）とデータのデータ転送を行う情報処理装置（例えば、図１のFTPサーバ１）の情報処理方法が提供される。この情報処理方法においては、他の装置との間で実行されるデータのデータ転送の授受に関する処理の制御を行うデータ転送制御ステップ（例えば、図６のステップＳ１）と、データ転送制御ステップの処理により制御されてデータ転送されるメタ言語データ（例えば、図３のXML文書Ａ４１）を構文解析する構文解析ステップ（例えば、図６のステップＳ５）と、構文解析ステップの処理により構文解析されたメタ言語データに対応する構造体（例えば、図３の内部データ（構造体）４２）をイニシャライズするイニシャライズステップ（例えば、図６のステップＳ７）とを含む。
【００３３】
本発明においては、他の装置とデータのデータ転送を行う処理を、コンピュータ（例えば、図４の画像処理装置１００）に行わせるプログラムが提供される。このプログラムは、他の装置との間で実行されるデータのデータ転送の授受に関する処理の制御を行うデータ転送制御ステップ（例えば、図６のステップＳ１）と、データ転送制御ステップの処理により制御されてデータ転送されるメタ言語データ（例えば、図３のXML文書Ａ４１）を構文解析する構文解析ステップ（例えば、図６のステップＳ５）と、構文解析ステップの処理により構文解析されたメタ言語データに対応する構造体（例えば、図３の内部データ（構造体）４２）をイニシャライズするイニシャライズステップ（例えば、図６のステップＳ７）とを含む。
【００３４】
以下に、本発明の実施の形態について図面を参照して説明する。
【００３５】
図１は、本発明を適用した画像データや音声データ（以下において画像データおよび音声データをそれぞれ区別して説明する必要の無い場合、素材データと称する）等をFTP（File Transfer Protocol）転送するネットワークシステム（システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない）の一実施の形態の構成例を示している。
【００３６】
このネットワークシステムは、FTP転送される各種のデータを受け付けるFTPサーバ１がネットワーク２に接続される。また、ネットワーク２には、FTPサーバ１に対して素材データ等を、ネットワーク２を介してFTP転送させるFTPクライアントも接続されている。すなわち、図１のネットワークシステムにおいては、FTPクライアント３がネットワーク２を介してFTPサーバ１に、素材データやメタデータ等の各種のデータをFTP転送する。FTPサーバ１は、FTP転送されたそれらのデータを取得すると、そのデータを記録媒体である光ディスク４に記録する。
【００３７】
FTPサーバ１は、FTP転送を制御するFTP転送処理部１１、受信したデータを符号化する等して、光ディスク４に記録可能なデータに変換する信号処理部１２、並びに、光ディスク４を駆動し、信号処理部４より供給されるデータを光ディスク４に記録する記録処理部１３により構成される。
【００３８】
図２は、図１のFPT転送処理部１１の内部の構成例を示すブロック図である。
【００３９】
図２において、FTP転送処理部１１は、FTPインタフェース処理部２１、メモリ２２、XMLパーサ２３、およびXMLイニシャライザ２４により構成される。
【００４０】
FTPインタフェース処理部２１は、ネットワーク２（図１）に接続され、FTP転送に関するインタフェース処理を行う。すなわち、図１に示されるネットワークシステムにおいて、FTPインタフェース処理部２１は、ネットワーク２を介してFTPクライアント３と通信を行い、FTPクライアント３からのFTP転送に関する要求を受け付け、その要求に対して応答し、FTPクライアント３よりFTP転送される素材データやメタデータ等を受信し、それらをメモリ２２に供給する。また、FTPインタフェース処理部２１は、FTPクライアント３に対する応答として、XMLパーサ２３の構文解析部３２より供給される解析結果に基づいて、FTP転送処理の受信結果に関する情報をFTPクライアント３に供給する。
【００４１】
メモリ２２は、例えば、SDRAM（Synchronous Dynamic Random Access Memory）等の半導体メモリ等により構成され、FTPインタフェース処理部２１により受信されて供給された各種のデータを一時的に保持する。
【００４２】
すなわち、図２の場合、FTPインタフェース処理部２１は、素材データ等の他のデータの他に、メタデータ等のXML文書Ａ４１を受信し、メモリ２２に供給する。メモリ２２は、そのXML文書Ａ４１を一時的に保持する。なお、このXML文書Ａ４１は、FTPサーバ１の外部よりFTP転送されてきたデータであり、通常、FTPサーバ１の外部において生成されたデータである。従って、このXML文書Ａ４１は、FTPサーバ１の仕様を満たす（機器制限に対応している）保証はない。
【００４３】
また、メモリ２２は、保持したXML文書Ａ４１をXMLパーサ２３のXML抽出部３１に供給したり、XMLパーサ２３のデータ変換部３３より供給される内部データ４２を一時的に保持したり、その内部データ４２をXMLイニシャライザ２４に供給したり、XMLイニシャライザ２４より供給されたXML文書Ｂ４３を一時的に保持し、信号処理部１２に供給したりする等、各種のデータを中継する。
【００４４】
XMLパーサ２３は、FTPインタフェース処理部２１において受信されたXML文書（図２の場合XML文書Ａ４１）を構文解析し、FTPサーバ１の仕様に基づいて、内容が不正であるか否かを判定し、その判定結果に基づいて適宜対応する処理部であり、XML抽出部３１、構文解析部３２、およびデータ変換部３３により構成される。
【００４５】
XML抽出部３１は、メモリ２２に保持された、FTPインタフェース処理部２１において受信されたデータの中から、XML文書（図２の場合、XML文書Ａ４１）を抽出し、構文解析部３２に供給する。
【００４６】
構文解析部３２は、XML抽出部３１において抽出され、供給されたXML文書（XML文書Ａ４１）の構文を解析し、FTPサーバ１の仕様に違反しているか否かを判定し、判定結果に基づいて対応処理方法を決定し、その処理を行う。例えば、構文解析部３２は、構文解析を正常に終了した場合、そのXML文書をデータ変換部３３に供給する。また、例えば、XML文書の選択部分（非必須部分）においてエラーが発生した場合、構文解析部３２は、その選択部分を削除する等してから残りのXML文書をデータ変換部３３に共有する。さらに、例えば、必須部分においてエラーが発生する等、致命的なエラーが発生した場合、構文解析部３２は、構文解析処理を中止するとともに、FTPインタフェース処理部２１にエラーを通知し、FTPクライアント３に対してエラー応答させる。
【００４７】
データ変換部３３は、構文解析部３２より供給されたXML文書を内部データ（構造体）に変換し、それをメモリ２２に供給して保持させる。図２の場合、データ変換部３３は、構文解析部３２より供給されたXML文書（XML文書Ａ４１の一部または全部）を内部データ（構造体）４２に変換し、メモリ２２に供給して保持させる。
【００４８】
XMLイニシャライザ２４は、メモリ２２よりXMLパーサ２３が作成した内部データ（構造体）を取得するとそれを元のXML文書形式のデータに変換し、メモリ２２に供給する。図２の場合、XMLイニシャライザ２４は、メモリ２２より内部データ（構造体）４２を取得し、それをイニシャライズ処理により変換して得られたXML文書Ｂ４３をメモリ２２に供給する。
【００４９】
このXML文書Ｂ４３は、XML文書Ａ４３が、XMLパーサ２３の構文解析部３２により、FTPサーバ１の仕様に基づいて構文解析され、FTPサーバ１の機器制限に対応した部分のみにより構成される内部データ４２がイニシャライズされて生成されたものである。従って、XML文書Ｂ４３は、サーバ１が安全に利用することができることが保証されたデータである。
【００５０】
次に、図３乃至図５を参照して、図１に示されるネットワークシステムにおいてFTP転送され、光ディスク４に記録される各データ（ファイル）について説明する。
【００５１】
光ディスク４に記録されたデータを管理するファイルシステムとしては、どのようなファイルシステムを用いてもよく、例えば、UDF（Universal Disk Format）やISO9660（International Organization for Standardization 9660）等を用いてもよい。また、光ディスク１７の代わりにハードディスク等の磁気ディスクを用いた場合、ファイルシステムとして、FAT（File Allocation Tables）、NTFS（New Technology File System）、HFS（Hierarchical File System）、またはUFS（Unix（登録商標） File System）等を用いてもよい。また、専用のファイルシステムを用いるようにしてもよい。
【００５２】
このファイルシステムにおいては、光ディスク４に記録されたデータは図３に示されるようなディレクトリ構造およびファイルにより管理される。
【００５３】
図３において、ルートディレクトリ（ROOT）５１には、画像データや音声データ等の素材データに関する情報、および、素材データの編集結果を示すエディットリスト等が、下位のディレクトリに配置されるPROAVディレクトリ５２が設けられる。なお、ルートディレクトリ５１には、図示は省略するが、構成表データ等も設けられる。
【００５４】
PROAVディレクトリ５２には、光ディスク４に記録されている全ての素材データに対するタイトルやコメント、さらに、光ディスク４に記録されている全ての画像データの代表となるフレームである代表画に対応する画像データのパス等の情報を含むファイルであるディスクメタファイル（DISCMETA.XML）５３、光ディスク４に記録されている全てのクリップおよびエディットリストを管理するための管理情報等を含むインデックスファイル（INDEX.XML）５４、およびインデックスファイル（INDEX.BUP）５５が設けられている。なお、インデックスファイル５５は、インデックスファイル５４を複製したものであり、２つのファイルを用意することにより、ファイルの破損等に対する耐性を強化し、信頼性の向上が図られている。
【００５５】
PROAVディレクトリ５２には、さらに、光ディスク４に記録されているデータ全体に対するメタデータであり、例えば、ディスク属性、再生開始位置、またはReclnhi等の情報を含むファイルであるディスクインフォメーションファイル（DISCINFO.XML）５６およびディスクインフォメーションファイル（DISKINFO.BUP）５７が設けられている。なお、ディスクインフォメーションファイル５７は、ディスクインフォメーションファイル５６を複製したものであり、２つのファイルを用意することにより、ファイルの破損等に対する耐性を強化し、信頼性の向上が図られている。ただし、これらの情報を更新する場合、ディスクインフォメーションファイル５６のみを更新するようにしてもよい。
【００５６】
また、PROAVディレクトリ５２には、上述したファイル以外にも、クリップのデータが下位のディレクトリに設けられるクリップルートディレクトリ（CLPR）５８、および、エディットリストのデータが下位のディレクトリに設けられるエディットリストルートディレクトリ（EDTR）５９が設けられる。
【００５７】
クリップルートディレクトリ５８には、光ディスク４に記録されているクリップのデータが、クリップ毎に異なるディレクトリに分けて管理されており、例えば、図３の場合、３つのクリップのデータが、クリップディレクトリ（C0001）６１、クリップディレクトリ（C0002）６２、および、クリップディレクトリ（C0003）６３の３つのディレクトリに分けられて管理されている。すなわち、光ディスク４に記録された最初のクリップの各データは、クリップディレクトリ６１の下位のディレクトリのファイルとして管理され、２番目に光ディスク４に記録されたクリップの各データは、クリップディレクトリ６２の下位のディレクトリのファイルとして管理され、３番目に光ディスク４に記録されたクリップの各データは、クリップディレクトリ６３の下位のディレクトリのファイルとして管理される。
【００５８】
また、エディットリストルートディレクトリ５９には、光ディスク４に記録されているエディットリストが、その編集処理毎に異なるディレクトリに分けて管理されており、例えば、図３の場合、４つのエディットリストが、エディットリストディレクトリ（E0001）６４、エディットリストディレクトリ（E0002）６５、エディットリストディレクトリ（E0003）６６、およびエディットリストディレクトリ（E0004）６７の４つのディレクトリに分けて管理されている。すなわち、光ディスク４に記録されたクリップの１回目の編集結果を示すエディットリストは、エディットリストディレクトリ６４の下位のディレクトリのファイルとして管理され、２回目の編集結果を示すエディットリストは、エディットリストディレクトリ６５の下位のディレクトリのファイルとして管理され、３回目の編集結果を示すエディットリストは、エディットリストディレクトリ６６の下位のディレクトリのファイルとして管理され、４回目の編集結果を示すエディットリストは、エディットリストディレクトリ６７の下位のディレクトリのファイルとして管理される。
【００５９】
上述したクリップルートディレクトリ５８に設けられるクリップディレクトリ６１の下位のディレクトリには、最初に光ディスク４に記録されたクリップの各データが、図４に示されるようなファイルとして設けられ、管理される。
【００６０】
図４の場合、クリップディレクトリ６１には、このクリップを管理するファイルであるクリップインフォメーションファイル（C0001C01.SMI）７１、このクリップの画像データを含むファイルである画像データファイル（C0001V01.MXF）７２、それぞれ、このクリップの各チャンネルの音声データを含む８つのファイルである音声データファイル（C0001A01.MXF乃至C0001A08.MXF）７３乃至８０、このクリップの画像データに対応する低解像度のデータを含むファイルであるローレゾデータファイル（C0001S01.MXF）８１、このクリップの素材データに対応する、例えば、LTCとフレーム番号を対応させる変換テーブル等の、リアルタイム性を要求されないメタデータであるクリップメタデータを含むファイルであるクリップメタデータファイル（C0001M01.XML）８２、このクリップの素材データに対応する、例えばLTC等の、リアルタイム性を要求されるメタデータであるフレームメタデータを含むファイルであるフレームメタデータファイル（C0001R01.BIM）８３、並びに、画像データファイル１５２のフレーム構造（例えば、MPEG等におけるピクチャ毎の圧縮形式に関する情報や、ファイルの先頭からのオフセットアドレス等の情報）が記述されたファイルであるピクチャポインタファイル（C0001I01.PPF）８４等のファイルが設けられる。
【００６１】
図４の場合、再生時にリアルタイム性を要求されるデータである、画像データ、ローレゾデータ、およびフレームメタデータは、それぞれ１つのファイルとして管理され、読み出し時間が増加しないようになされている。
【００６２】
また、音声データも、再生時にリアルタイム性を要求されるが、7.1チャンネル等のような音声の多チャンネル化に対応するために、８チャンネル用意され、それぞれ、異なるファイルとして管理されている。すなわち、音声データは８つのファイルとして管理されるように説明したが、これに限らず、音声データに対応するファイルは、７つ以下であってもよいし、９つ以上であってもよい。
【００６３】
同様に、画像データ、ローレゾデータ、およびフレームメタデータも、場合によって、それぞれ、２つ以上のファイルとして管理されるようにしてもよい。
【００６４】
また、図４において、リアルタイム性を要求されないクリップメタデータは、リアルタイム性を要求されるフレームメタデータと異なるファイルとして管理される。これは、画像データ等の通常の再生中に必要の無いメタデータを読み出さないようにするためであり、このようにすることにより、再生処理の処理時間や、処理に必要な負荷を軽減することができる。
【００６５】
なお、クリップメタデータファイル８２は、汎用性を持たせるためにXML（eXtensible Markup Language）形式で記述されているが、フレームメタデータファイル８３は、再生処理の処理時間や処理に必要な負荷を軽減させるために、XML形式のファイルをコンパイルしたBIM形式のファイルである。
【００６６】
図４に示されるクリップディレクトリ６１のファイルの構成例は、光ディスク４に記録されている各クリップに対応する全てのクリップディレクトリにおいて適用することができる。すなわち、図３に示される、その他のクリップディレクトリ６２および６３においても、図４に示されるファイルの構成例を適用することができるので、その説明を省略する。
【００６７】
次に、図３のエディットリストルートディレクトリ５９の下位のディレクトリにおけるファイルの構成例について説明する。上述したエディットリストルートディレクトリ５９に設けられるエディットリストディレクトリ６５の下位のディレクトリには、光ディスク１７に記録されたクリップの各データの２回目の編集結果に関する情報であるエディットリストのデータが、図５に示されるようなファイルとして設けられ、管理される。
【００６８】
図５の場合、エディットリストディレクトリ６５には、この編集結果（エディットリスト）を管理するファイルであるエディットリストファイル（E0002E01.SMI）９１、この編集後の素材データ（編集に用いられた全クリップの素材データの内、編集後のデータとして抽出された部分）に対応するクリップメタデータ、または、そのクリップメタデータに基づいて新たに生成されたクリップメタデータを含むファイルであるエディットリスト用クリップメタデータファイル（E0002M01.XML）９２、この編集結果（エディットリスト）に基づいた、素材データの再生手順（プレイリスト）等の情報を含むファイルであるプレイリストファイル（E0002P01.SMI）９３、プレイリストファイル９３に含まれる再生手順に基づいて再生される画像データのフレーム構造（例えば、MPEG等におけるピクチャ毎の圧縮形式に関する情報や、ファイルの先頭からのオフセットアドレス等の情報）が記述されたファイルであるプレイリスト用ピクチャポインタファイル（C0001I01.PPF）９４、プレイリストファイル９３の再生手順（プレイリスト）に基づいた実時間再生を保証するための画像データを含むファイルであるプレイリスト用画像データファイル（E0002V01.BMX）９５、プレイリストファイル９３の再生手順（プレイリスト）に基づいた実時間再生を保証するための音声データを含む４つのファイルであるプレイリスト用音声データファイル（E0002A01.BMX乃至E0002A04.BMX）９６乃至９９、プレイリストファイル９３の再生手順（プレイリスト）に基づいた実時間再生を保証するためのローレゾデータを含むファイルであるプレイリスト用ローレゾデータファイル（E0002S01.BMX）１００、並びに、プレイリストファイル９３の再生手順（プレイリスト）に基づいた実時間再生を保証するためのフレームメタデータを含むファイルであるプレイリスト用フレームメタデータファイル（E0002R01.BBM）１０１等のファイルが設けられる。
【００６９】
図５において、リアルタイム性を要求されないクリップメタデータは、リアルタイム性を要求されるフレームメタデータと異なるファイルとして管理される。これは、再生手順（プレイリスト）を用いて画像データ等を再生中に（編集結果の再現中に）、必要の無いメタデータを読み出さないようにするためであり、このようにすることにより、再生処理の処理時間や、処理に必要な負荷を軽減することができる。
【００７０】
エディットリスト用クリップメタデータファイル９２は、編集結果に基づいて、編集に使用されたクリップのクリップメタデータ（クリップルートディレクトリ５８の下位のディレクトリに存在するクリップメタデータファイル）に基づいて生成された新たなクリップメタデータを含むファイルである。例えば、編集が行われると、図４のクリップメタデータファイル８２に含まれるクリップメタデータから、編集後の素材データに対応する部分が抽出され、それらを用いて、編集後の素材データを１クリップとする新たなクリップメタデータが再構成され、エディットリスト用クリップメタデータファイルとして管理される。すなわち、編集後の素材データには、編集後の素材データを１クリップとする新たなクリップメタデータが付加され、そのクリップメタデータが１つのエディットリスト用クリップメタデータファイルとして管理される。従って、このエディットリスト用クリップメタデータファイルは、編集毎に生成される。
【００７１】
なお、このエディットリスト用クリップメタデータファイル９２は、汎用性を持たせるために、XML形式で記述される。
【００７２】
プレイリスト用画像データファイル９５に含まれる画像データ、プレイリスト用音声データファイル９６乃至９９に含まれる各音声データ、プレイリスト用ローレゾデータファイル１００に含まれるローレゾデータ、並びに、プレイリスト用フレームメタデータファイル１０１に含まれるフレームメタデータは、それぞれ、図４のクリップルートディレクトリ５８の下位のディレクトリにおいて管理されるクリップに対応する画像データ、音声データ、ローレゾデータ、およびフレームメタデータより抽出されたデータであり、編集結果に対応するデータである。これらのデータは、プレイリストファイル９３に含まれる再生手順（プレイリスト）に基づいて再生処理が行われる場合に読み出される。このような編集結果に対応する各データが用意されることにより、プレイリストに基づいた再生処理において、読み出すファイルの数を減らすことができ、その処理時間および処理に必要な負荷を軽減させることができる。
【００７３】
なお、画像データ、ローレゾデータ、およびフレームメタデータは、場合によって、それぞれ、複数のファイルとして管理されるようにしてもよい。同様に、音声データに対応するファイルの数は、３つ以下であってもよいし、５つ以上であってもよい。
【００７４】
なお、プレイリスト用フレームメタデータファイル１０１は、再生処理の処理時間や処理に必要な負荷を軽減させるために、XML形式のファイルをコンパイルしたBIM形式に対応するBBM形式のファイルである。
【００７５】
図５に示されるエディットリストディレクトリ６５のファイルの構成例は、全てのエディットリスト（編集結果）において適用することができる。すなわち、図３に示される、その他のエディットリストディレクトリ６４、６６、または６７においても、図５に示されるファイルの構成例を適用することができるので、その説明を省略する。
【００７６】
図１のネットワークシステムにおいては、このように様々なファイル（データ）がFTP転送される。図２のXML抽出部３１は、これらのファイルの内、各ファイルの拡張子に基づいて、ディスクメタファイル（DISCMETA.XML）５３、インデックスファイル（INDEX.XML）５４、ディスクインフォメーションファイル（DISCINFO.XML）５６、クリップメタデータファイル（C0001M01.XML）８２、または、エディットリスト用クリップメタデータファイル（E0002M01.XML）９２等を抽出し、構文解析部３２は、これらのファイルをFTPサーバ１の使用に基づいて構文解析する。
【００７７】
次に、図２のFTPサーバ１のFTP転送処理部１１の動作について説明する。
【００７８】
図１のネットワークシステムにおいては、FTPクライアント３は、画像データや音声データとともに、図３乃至図５を参照して説明したような様々なデータをFTPサーバ１にFTP転送する。
【００７９】
そして、図２のFTPインタフェース処理部２１は、ネットワーク２を介して、FTPクライアント３と通信を行い、FTPクライアント３よりFTP転送の開始を要求されると、その要求に基づいてFTP転送を許可し、FTP処理を開始する。FTP処理を図６のフローチャートを参照して説明する。
【００８０】
FTP処理を開始すると、FTPインタフェース処理部２１は、最初に、ステップＳ１において、ネットワーク２を介してFTPクライアント３より供給されるFTP転送データの受信処理を行い、ステップＳ２において、その受信したデータをメモリ２２に供給し、保持させ、ステップＳ３に処理を進める。
【００８１】
メモリ２２にデータが格納されたのを確認すると、XML抽出部２４は、ステップＳ３において、メモリ２２内のデータを確認し、メモリ２２内にXML文書が存在するか否かを判定し、FTPクライアント３よりFTP転送されたXML文書が存在すると判定した場合、ステップＳ４に処理を進める。ステップＳ４において、メモリ２２内に保持されているXML文書を抽出し、構文解析部３２に供給する。構文解析部３２は、ステップＳ５において、構文解析処理を実行する。構文解析処理の詳細は図７のフローチャートを参照して説明する。
【００８２】
構文解析処理が終了すると構文解析部３２は、ステップＳ６に処理を進める。ステップＳ６において、FTPインタフェース処理部２１は、構文解析部３２による解析結果に基づいて、応答処理を行い、ステップＳ７に処理を進める。
【００８３】
ステップＳ７において、XMLイニシャライザ２４は、メモリ２２より内部データ（構造体）を取得し、XMLイニシャライズ処理を実行し、XML文書Ｂ４３を生成し、それをメモリ２２に一時的に保持させる。そして、メモリ２２は、ステップＳ８において、データを信号処理部１２に出力し、FTP処理を終了する。
【００８４】
また、ステップＳ３において、FTPインタフェース処理部２１がFTPクライアント３よりXML文書を受信しておらず、メモリ２２に存在しないと判定した場合、XML抽出部３２は、処理をステップＳ９に進める。ステップＳ９において、FTPインタフェース処理部２１は、応答処理を実行した後、ステップＳ８に処理を戻し、それ以降の処理を繰り返す。
【００８５】
次に、図７のフローチャートを参照して、図６のステップＳ５において実行される構文解析処理を説明する。
【００８６】
最初に、XML抽出部３１よりXML文書Ａ４１を供給された構文解析部３２は、ステップＳ２１で、処理するXML文書において、解析する階層をルートに設定する。構文解析部３２は、XML文書を要素毎に解析していく。XML文書の構造は、その要素毎に一般的に階層化されている。従って、構文解析部３２は、上位階層より順に要素を１つずつ解析していく。
【００８７】
次に構文解析部３２は、ステップＳ２２において、現在の階層において解析する要素を選択し、ステップＳ２３において、その要素解析処理をおこなう。そして、要素解析処理が終了すると、構文解析部３２は、ステップＳ２４に処理を進め、要素解析処理の処理結果に基づいて解析処理を中止するか否かを判定する。致命的なエラーが発生しておらず、中止しないと判定した場合、構文解析部３２は、処理をステップＳ２５に進める。
【００８８】
ステップＳ２５において、構文解析部３２は、現在の階層に未解析の要素が存在するか否かを判定する。未解析の要素が存在すると判定した場合、構文解析部３２は、処理をステップＳ２２に戻し、それ以降の処理を繰り返し、次の要素に対して構文解析処理を行う。ステップＳ２２乃至ステップＳ２５の処理を繰り返し、ステップＳ２５において、現在の階層について全ての要素を解析したと判定した場合、構文解析部３２は、ステップＳ２６に処理を進める。
【００８９】
ステップＳ２６において、構文解析部３２は、XML文書Ａ４１の最下位層を解析したか否かを判定し、最下位層を解析していないと判定した場合、処理をステップＳ２７に進め、解析する階層を１つ下げ、処理をステップＳ２２に戻し、それ以降の処理を繰り返す。すなわち、構文解析部３２は、ステップＳ２２乃至ステップＳ２７の処理を繰り返すことにより、全ての階層の要素を解析する。そして、ステップＳ２６において、最下位層の解析が終了し、全ての要素を解析したと判定した場合、構文解析部２６は、構文解析処理を終了し、処理を図６のステップＳ５に戻す。
【００９０】
また、ステップＳ２４において、要素解析処理結果に基づいて、解析処理を中止すると判定した場合、構文解析部３２は、構文解析処理を終了し、処理を図６のステップＳ５に戻す。
【００９１】
次に、図７のフローチャートのステップＳ２３において実行される要素解析処理を図８および図９のフローチャートを参照して説明する。
【００９２】
要素解析処理を開始した構文解析部３２は、ステップＳ４１において、解析処理の対象となる現在の要素の記述において、必須の属性が存在するか否かを判定する。その要素において必須とされる属性が全て存在し、装置の仕様上問題が無いと判定した場合、構文解析部３２は、ステップＳ４２に処理を進め、解析処理の対象となる現在の要素の記述において、未知の属性が存在するか否かを判定する。その要素において未知とされる属性が存在せず、装置の仕様上問題が無いと判定した場合、構文解析部３２は、ステップＳ４４に処理を進める。また、ステップＳ４２において、解析処理の対象となる現在の要素の記述において、未知とされる属性が存在すると判定した場合、構文解析部３２は、その未知の属性が装置の仕様を満たすか否か不明であるため、ステップＳ４３に処理を進め、その未知の属性を削除する。未知の属性を削除した構文解析部３２は、処理をステップＳ４４に進める。
【００９３】
ステップＳ４４において、構文解析部３２は、解析処理の対象となる現在の要素の記述において、必須とされる子要素が存在するか否かを判定する。その要素において必須とされる子要素が全て存在し、装置の仕様上問題が無いと判定した場合、構文解析部３２は、ステップＳ４５に処理を進め、解析処理の対象となる現在の要素の記述において、未知の子要素が存在するか否かを判定する。その要素において未知とされる子要素が存在せず、装置の仕様上問題が無いと判定した場合、構文解析部３２は、ステップＳ４７に処理を進める。また、ステップＳ４５において、解析処理の対象となる現在の要素の記述において、未知とされる属性が存在すると判定した場合、構文解析部３２は、その未知の属性が装置の仕様を満たすか否か不明であるため、ステップＳ４６に処理を進め、その未知の属性を削除する。未知の属性を削除した構文解析部３２は、処理をステップＳ４７に進める。
【００９４】
ステップＳ４７において、構文解析部３２は、解析処理の対象となる現在の要素の記述において、同じ子要素が規定数以上存在するか否かを判定する。その要素において同じ子要素が規定数より少なく、装置の仕様上問題が無いと判定した場合、構文解析部３２は、図９のステップＳ５１に処理を進める。また、ステップＳ４７において、解析処理の対象となる現在の要素の記述において、同じ子要素が規定数以上存在すると判定した場合、構文解析部３２は、仕様上、規定数以上の同一の子要素を処理することができないため、ステップＳ４８に処理を進め、その同一の子要素の内、規定数以上の部分を全て削除する。規定数以上の子要素を削除した構文解析部３２は、処理を図９のステップＳ５１に進める。
【００９５】
図９のステップＳ５１において、構文解析部３２は、解析処理の対象となる現在の要素の記述において、子要素が定義外の値を含むか否かを判定する。解析処理の対象となる現在の要素の記述において、子要素が定義外の値を含まず、装置の仕様上問題が無いと判定した場合、構文解析部３２は、ステップＳ５２に処理を進める。ステップＳ５２において、構文解析部３２は、解析処理の対象となる現在の要素の記述において、子要素のデータ長が規定内であるか否かを判定する。解析処理の対象となる現在の要素の記述において、子要素のデータ長が規定内であり、装置の仕様上問題が無いと判定した場合、構文解析部３２は、ステップＳ５３に処理を進める。
【００９６】
ステップＳ５３において、構文解析部３２は、解析処理の対象となる現在の要素の記述において、不要な子要素が存在するか否かを判定する。解析処理の対象となる現在の要素の記述において、不要な子要素が存在せず、装置の仕様上問題が無いと判定した場合、構文解析部３２は、ステップＳ５５に処理を進める。また、ステップＳ５３において、不要な子要素が存在すると判定した場合、構文解析部３２は、ステップＳ５４に処理を進め、不要な子要素およびその子要素を削除し、ステップＳ５５に処理を進める。
【００９７】
ステップＳ５５において、構文解析部３２は、その要素について解析が終了したか否かを判定する。まだ要素内の全ての記述を解析しておらず、その要素について解析が終了していないと判定した場合、構文解析部３２は、図８のステップＳ４１に処理を戻し、それ以降の処理を繰り返す。また、図９のステップＳ５５において、その要素について解析が終了したと判定した場合、構文解析部３２は、現在残っている記述をデータ変換部３３に供給する。ステップＳ５６において、データ変換部３３は、その記述を構造体に格納し、内部データ４２としてメモリ２２に供給する。ステップＳ５６の処理を終了したデータ変換部３３は、要素解析処理を終了し、図７のステップＳ２３に処理を戻す。
【００９８】
また、図８のステップＳ４１において、解析処理の対象となる現在の要素の記述において、その要素において必須とされる属性が存在しないと判定した場合、図８のステップＳ４４において、必須の子要素が存在しないと判定した場合、図９のステップＳ５１において、子要素の値が定義外の値を含むと判定した場合、または、図９のステップＳ５２において、子要素のデータ長が規定外であると判定した場合、この要素の情報は使用不可能と判断し、構文解析部３２は、処理を図９のステップＳ５７に進める。
【００９９】
図９のステップＳ５７において、構文解析部３２は、この要素が削除可能な選択要素であるか否かを判定する。この要素が必須要素であり、この要素を削除することができないと判定した場合、構文解析部３２は、処理をステップＳ５８に進め、致命的なエラーが発生したと判定し、構文解析処理を中止するように設定し、FTPインタフェース処理部２１を制御して、例えば、図１０Ａに示されるような「５５０  Ｅ００Ｘ：File unrecognized」等のエラーメッセージ１２１をFTPクライアント３に対して供給させる。ステップＳ５８の処理を終了した構文解析部３２は、要素解析処理を終了し、図７のステップＳ２３に処理を戻す。この場合、構文解析処理を中止するように設定されているので、構文解析部３２は、図７のステップＳ２４において、解析処理を中止すると判定し、構文解析処理が終了される。
【０１００】
また、ステップＳ５７において、この要素が選択要素であり、この要素が削除されても、上位階層等にも影響を及ぼさない要素であると判定した場合、構文解析部３２は、この要素の問題については、この要素を削除することにより解決されると判断し、ステップＳ５９に処理を進め、この要素の記述を全て削除する。ステップＳ５９の処理を終了した構文解析部３２は、要素解析処理を終了し、図７のステップＳ２３に処理を戻す。この場合、構文解析処理を中止するように設定されていないので、構文解析部３２は、図７のステップＳ２４において、解析処理を中止しないと判定し、ステップＳ２５に処理を進める。
【０１０１】
解析処理を中止せずに最後まで行った構文解析部３２は、例えば、図６のステップＳ６またはステップＳ９において、FTPインタフェース処理部２１を制御して、例えば、図１０Ｂに示されるような「２２６：Closing data connection. Requested file action successful」等のFTP転送完了メッセージ１２２をFTPクライアント３に対して供給させる。
【０１０２】
以上のように、FTPサーバ１は、FTP転送処理部１１において、FTP転送されたデータ群を光ディスク４に記録する前に、それらのデータ群の中からXML文書を抽出し、FTPサーバ１の仕様に基づいて構文解析を行い、仕様に対応しない部分を削除し、記録しないようにするので、FTPサーバ１の仕様を満たすXML文書、すなわち、FTPサーバ１の仕様による制限に対応した、FTPサーバ１にとって安全なXML文書のみを光ディスク４に記録することができる。これにより、FTPサーバ１は、光ディスク４に記録したXML文書を読み出して処理する場合の危険性を低減させ、装置の安全性を向上させることができる。
【０１０３】
また、XML文書を構文解析する際に発生したエラーが致命的なエラーか否かを判定し、そうでない場合は、仕様に対応しない部分のみを削除することにより、残りのFTPサーバ１にとって安全な部分を採用して記録することができるので、FTPサーバ１の仕様の制限により、光ディスク４に記録するための条件が不要に厳しくなることを抑制することができる。これにより、FTPサーバ１は、装置の利便性を維持したまま、装置の安全性を向上させることができる。
【０１０４】
さらに、FTPサーバ１は、FTP転送されたXML文書を１度構文解析し、それをイニシャライズして元の書式に戻してから光ディスク４に記録するので、XML文書が整形され、光ディスク４に記録されている時のXML文書の改行やスペース等の書式が統一されるので、そのXML文書を利用する際に構文解析してイニシャライズしても、既に整形済みであるので、その書式もデータ量も変化せず、同じ内容のXML文書であるにも関わらずデータ量が変化する等の不都合を抑制することができ、検索処理等が容易かつ正確になる。従って、データの利便性が向上する。
【０１０５】
なお、以上においては、FTP転送されたXML文書を記録媒体に記録する前に、構文解析を行うように説明したが、これ以外にも、例えば、FTPサーバ１がXML文書をFTPにより送信する場合に、その送信前に、XML文書を構文解析し、イニシャライズしてから送信するようにしてももちろんよい。このとき、FTPサーバ１が、送信先の装置の仕様に基づいて構文解析を行うようにすることにより、送信先の装置の安全性を向上させることもできる。
【０１０６】
また、以上においては、図１にネットワークシステムを示したが、ネットワークシステムの構成は、図１に示される以外の構成であってもよい。例えば、ネットワーク２に複数のFTPクライアント３またはFTPサーバ１が接続されるようにしてももちろんよいし、FTPサーバ１とFTPクライアントが複数のネットワークを介して接続されるようにしても良い。また、FTPサーバ１においては、FTP転送処理部１１、信号処理部１２、記録処理部１３が互いに一体化して形成されるように説明したが、それぞれ別体として構成されるようにしてもよいし、各部の内、いずれか１つが別対として構成されるようにしてもよい。さらに、各部の一部が別体として構成されるようにしてもよい。
【０１０７】
また、構文解析を行うデータはXML文書であるように説明したが、XML文書と同様の構成のマークアップ言語であれば、それ以外の文書ファイルであってももちろんよい。また、上述したエラーメッセージおよび応答メッセージは図１０Ａまたは図１０Ｂに示される例以外であってもよい。
【０１０８】
さらに、図１においては、記録媒体として光ディスク４を用いるように説明したが、これに限らず、例えば、テープデバイスや磁気ディスク、光磁気ディスク、または半導体メモリ等であってもよい。
【０１０９】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図１のFTPサーバ１は、図１１に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
【０１１０】
図１１において、パーソナルコンピュータ２００のCPU２０１は、ROM（Read Only Memory）２０２に記憶されているプログラム、または記憶部２１３からRAM２０３にロードされたプログラムに従って各種の処理を実行する。RAM２０３にはまた、CPU２０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１１１】
CPU２０１、ROM２０２、およびRAM２０３は、バス２０４を介して相互に接続されている。このバス２０４にはまた、入出力インタフェース２１０も接続されている。
【０１１２】
入出力インタフェース２１０には、キーボード、マウスなどよりなる入力部２１１、CRT、LCDなどよりなるディスプレイ、並びにスピーカなどよりなる出力部２１２、ハードディスクなどより構成される記憶部２１３、モデムなどより構成される通信部２１４が接続されている。通信部２１４は、インターネットを含むネットワークを介しての通信処理を行う。
【０１１３】
入出力インタフェース２１０にはまた、必要に応じてドライブ２１５が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２２１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部２１３にインストールされる。
【０１１４】
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０１１５】
この記録媒体は、例えば、図１１に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（ＭＤ（Mini-Disk）（登録商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア２２１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM２０２や、記憶部２１３に含まれるハードディスクなどで構成される。
【０１１６】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１１７】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【図面の簡単な説明】
【０１１８】
【図１】本発明を適用したネットワークシステムの一実施の形態の構成例を示すブロック図である。
【図２】図１のFTPサーバの構成例を示すブロック図である。
【図３】FTP転送されるファイルの構成の例を示す図である。
【図４】FTP転送されるファイルの構成の例を示す図３に続く図である。
【図５】FTP転送されるファイルの構成の例を示す図４に続く図である。
【図６】FTP処理の例を説明するフローチャートである。
【図７】構文解析処理の例を説明するフローチャートである。
【図８】要素解析処理の例を説明するフローチャートである。
【図９】要素解析処理の例を説明する、図８に続くフローチャートである。
【図１０】応答メッセージの例を示す図である。
【図１１】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０１１９】
１  FTPサーバ，  ２  ネットワーク，  ３  FTPクライアント，  ４  光ディスク，  １１  FTP転送処理部,  １２  信号処理部，  １３  記録処理部，  ２１  FTPインタフェース処理部，  ２２  メモリ，  ２３  XMLパーサ，  ２４  XMLイニシャライズ，  ３１  XML抽出部，  ３２  構文解析部，  ３３  データ変換部，  ４１  XML文書Ａ，  ４２  内部データ（構造体），  ４３  XML文書Ｂ，  ２００  パーソナルコンピュータ
【図１】
2005242427.tif 000003
【図２】
2005242427.tif 000004
【図３】
2005242427.tif 000005
【図４】
2005242427.tif 000006
【図５】
2005242427.tif 000007
【図６】
2005242427.tif 000008
【図７】
2005242427.tif 000009
【図８】
2005242427.tif 000010
【図９】
2005242427.tif 000011
【図１０】
2005242427.tif 000012
【図１１】
2005242427.tif 000013