JP4072293B2 - データ処理方法及び装置及び記憶媒体 - Google Patents

データ処理方法及び装置及び記憶媒体 Download PDF

Info

Publication number
JP4072293B2
JP4072293B2 JP18963699A JP18963699A JP4072293B2 JP 4072293 B2 JP4072293 B2 JP 4072293B2 JP 18963699 A JP18963699 A JP 18963699A JP 18963699 A JP18963699 A JP 18963699A JP 4072293 B2 JP4072293 B2 JP 4072293B2
Authority
JP
Japan
Prior art keywords
data
metadata
data processing
binary data
reading
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.)
Expired - Fee Related
Application number
JP18963699A
Other languages
English (en)
Other versions
JP2001022615A (ja
JP2001022615A5 (ja
Inventor
幸 榎田
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP18963699A priority Critical patent/JP4072293B2/ja
Priority to US09/595,882 priority patent/US6629101B1/en
Publication of JP2001022615A publication Critical patent/JP2001022615A/ja
Publication of JP2001022615A5 publication Critical patent/JP2001022615A5/ja
Application granted granted Critical
Publication of JP4072293B2 publication Critical patent/JP4072293B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/81Indexing, e.g. XML tags; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • 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/912Applications of a database
    • Y10S707/913Multimedia
    • Y10S707/915Image
    • 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/912Applications of a database
    • Y10S707/913Multimedia
    • Y10S707/916Audio
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Television Signal Processing For Recording (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はバイナリデータとメタデータを扱うデータ処理方法及び装置及び記憶媒体に関する。
【0002】
【従来技術の説明】
メタデータ(meta-data)とは、「データに関する付属データ」であり、画像データや音声データ等のバイナリデータを説明するデータとして用いられている。しかし、バイナリデータとこれに対応するメタデータが別々のファイルで存在した場合、ファイルの移動やコピーの際に、ユーザはバイナリデータとメタデータとを同時に管理しなければならず、非常にわずらわしいことになる。
【0003】
そこで一般に、バイナリデータとメタデータの管理を容易にするために、バイナリデータとメタデータを記述する様々な方法が提案されてきた。この種の従来技術は、新しいバイナリフォーマットを規定する方法と、データベースで管理する方法の2つに分けることができる。
【0004】
まず、新しいバイナリフォーマットを規定する方法の一例をあげると、画像フォーマットではTiff、Exif、Flashpixなどがある。図9は、バイナリデータにメタデータを埋め込んだフォーマットの概観を示す図である。バイナリデータとしては、例えば画像データが挙げられる。図9に示されるように、画像のヘッダ部分にメタデータを記述する枠組みを設け、そこにユーザがメタデータを記述するというのが一般的な方法である。このようにメタデータを記述することにより、データの検索・分類が容易になる。また、バイナリデータ内にメタデータを含むようになるので、1つのファイルで管理でき、ファイルの管理は比較的容易になる。
【0005】
次に、バイナリデータとメタデータをデータベースで管理する方法を説明する。図10はバイナリデータとメタデータをデータベースで管理する方法を概念的に示した図である。図10に示されるような、別々のファイルで存在するバイナリデータとメタデータをデータベース等を用いて管理するという方法も広く行われているものである。この場合は既存のバイナリデータが、既存のアプリケーションでそのまま使えるという利点がある。
【0006】
【発明が解決しようとする課題】
しかしながら、上述したようなメタデータを記述する新フォーマットを規定する方法とデータベースを用いてメタデータを管理する方法のそれぞれに問題がある。
【0007】
まず、メタデータを記述する新フォーマットを規定した場合には、既存のバイナリデータを当該新フォーマットに変換し、なおかつその新フォーマット内にメタデータを記述しなけれなばならない。更に、その新フォーマット内のメタデータを用いて検索するためには、当該新フォーマット対応のアプリケーションが必要となる。すなわち、メタデータを記述したり利用したりするために、非常に多くのステップと専用の環境が必要になるという問題がある。また、このような新フォーマットのバイナリデータを処理する(例えば画像データであれば画像の出力)ためには、当該フォーマットに対応したアプリケーションが必要であり、既存のアプリケーションでは対応できなくなる。
【0008】
そのうえ、メタデータの記述方法も新フォーマットにおいて独自に決められたものであり、新フォーマット内のメタデータを利用するアプリケーションを作成するためには、新規にメタデータの検索ルーチンをつくらなければならないという問題もある。さらに、新しい枠組みのメタデータを記述するにはフォーマットの規定を変更しなければならないという問題点もあった。
【0009】
一方、データベースを用いてバイナリデータとメタデータを同時に管理する場合、データベースソフトが無ければメタデータの登録も利用もできないという問題があった。また、登録したメタデータを表示するためにも専用のソフトウェアが必要である。更に、バイナリデータをデータベース外に持っていくと、メタデータは付加されず、メタデータのないバイナリデータとなってしまうという問題点もあった。
【0010】
さらに、メタデータを管理するための情報の中に、バイナリデータのフォーマット上での予約語あるいは、特別な意味をなすコードが入っていた場合、既存のアプリケーションが誤動作する可能性があった。
【0011】
本発明はメタデータの記述・検索に関する上記の問題点に鑑みてなされたものであり、既存のアプリケーションに影響を与えずに、バイナリデータにメタデータを登録可能とすることを目的とする。
【0012】
また、本発明の他の目的は、メタデータが登録されたバイナリデータを、既存のアプリケーションで処理することが可能な形態で提供可能とすることにある。
【0013】
また、本発明の他の目的は、メタデータの記述に一般的なデータ記述言語を用いることにより、データ記述言語用の既存のツールを利用することを可能とし、対応アプリケーションの開発を容易にすることにある。
【0014】
さらに、本発明の他の目的は、メタデータが記述されたバイナリデータからメタデータを抽出し、例えば検索、参照、変更等の処理に供することを可能とすることにある。
【0015】
さらに、本発明の他の目的は、メタデータが記述されたバイナリデータを容易に判別する方法を提供することも目的とする。
【0016】
【課題を解決するための手段】
上記の目的を達成するために、本発明の一態様によるデータ処理方法はたとえば以下の工程を備える。すなわち、
バイナリデータにメタデータを登録するデータ処理方法であって、
メタデータの付与対象のバイナリデータを読み込む第1読込工程と、
前記バイナリデータに付与すべきメタデータを読み込む第2読込工程と、
前記第1読込工程で読み込まれたバイナリデータの後に、前記第2読込工程で読み込まれたメタデータを接続する第1接続工程と、
前記第1接続工程で接続されたメタデータの後に、前記バイナリデータに対応する終端コードを接続する第2接続工程と、
前記第1及び第2接続工程によって得られたデータの全体を一つのファイルとして出力する出力工程とを備える。
【0017】
また、上記の目的を達成するための本発明の他の態様によるデータ処理方法はたとえば以下の工程を備える。すなわち、
メタデータが登録されたバイナリデータにおいてメタデータを判別する方法であって、
データを読み込む読込工程と、
前記読込工程で読み込まれたデータを末尾より検査し、終端コードに続いて予め定められたデータ記述言語における適正な形式で記述されたデータが存在するか否かを判定することにより、該データに含まれるメタデータを判別する判別工程とを備える。
【0018】
また、本発明の他の態様によれば、上記のデータ処理方法を実現するデータ処理装置が提供される。さらに本発明の他の態様によれば、上記のデータ処理方法をコンピュータに実現させるための制御プログラムを格納した記憶媒体が提供される。
【0019】
【発明の実施の形態】
以下、添付の図面を用いて本発明の実施形態を説明する。
【0020】
<第1の実施形態>
本実施形態では、バイナリデータの後ろに、所定のデータ記述言語(本実施形態ではXMLを用いる)で記述されたメタデータを接続することによりメタデータの付加されたバイナリデータを生成する。このとき、接続されたメタデータの中に、バイナリデータのフォーマット上での予約語、あるいは、特別な意味をなすコードが入っていた場合、既存のアプリケーションが誤動作してしまう場合がある。以下では、まずこの点を説明し、その後で本実施形態のデータ処理装置について説明することにする。
【0021】
たとえば、バイナリデータがJPEG方式で符号化されている場合、ファイルの最後にEOI(End Of Image)コードが存在するか否かを判断する場合がある。図2は、EOIマーカーコード検索の手順を示すフローチャートである。
【0022】
図2において、まずステップS200で、変数POSにJPEG符号化データのファイルのバイト数をセットする。ステップS201で変数POSから2を引く。ステップS202で、変数POSの位置にファイル読み出し位置をシークする。次にステップS203で2バイトリードする。
【0023】
ステップS204にて、読み込んだ2バイトのデータがEOIコードか否かを判断し、EOIコードの場合はステップS205に移動し、EOIコードがあったと判断する。一方ステップS204で、2バイトのデータがEOIコードではない場合は、ステップS206に移動する。ステップS206では、JPEG符号化データ内にある可能性があるマーカーコードか否かを判断する。このステップでマーカコードであると判断すると、ステップS207に移動し、このJPEGファイにルの中には、EOIコードがなかったと判断する。一方ステップS206にて、マーカコードではないと判断した場合は、ステップS208に移る。ステップS208では、現在の変数POSの値から1を引く。次にステップS209で、変数POSが0か否かを判断する。0の場合は、当該ファイルの先頭まで読み込んだことになるので、処理をステップS207に移動し、EOIマーカコードはなかったと判断する。一方ステップS209で変数POSが0ではない場合は、ステップS202に戻り、上記の処理を繰り返す。
【0024】
以上の処理により、これから処理を行おうとしているJPEGファイルが、完全なJPEGファイル(例えば途中でコードが終わっていないかどうか等)か否かを判断することができる。そして、例えば、EOIコードが存在しないJPEGファイルに対しては、デコード処理を行わないといった処理を行うことができるようになる。
【0025】
以上の様な処理が実行された場合、JPEG符号化データの後ろにメタデータが接合されていると、図2で説明したEOIの存否判断において誤動作する可能性がある。また、EOIコードをファイルの最後から探す場合でも、接合したメタデータのデータ量分コードの判断を繰り返す必要が生じてしまい、処理時間がかかるという問題点もあった。
【0026】
本実施形態ではこれらの不具合を解決するデータ処理装置を説明する。
【0027】
図1は第1の実施形態によるデータ処理装置の構成を示すブロック図である。図1において、100は読込部であり、スキャナ装置などを用いて画像を読み込む。101は入力部であり、ユーザからの指示やデータを入力するもので、キーボードやポインティング装置を含む。102は蓄積部であり、バイナリデータやメタデータを蓄積する。蓄積部102としては、ハードディスクを用いるのが一般的である。103は表示部であり、蓄積部102に蓄積されたバイナリデータを表示したり、読込部100で読み込まれた画像データを表示する。表示部103としては、CRTや液晶表示装置が一般的である。
【0028】
104はCPUであり、上述した各構成の処理のすべてに関わり、ROM105とRAM106はその処理に必要なプログラムやデータを格納する領域、或いは作業領域をCPU104に提供する。なお、図3のフローチャートを参照して後述する本実施形態の処理手順を実現するための制御プログラムもROM105に格納されているものとする。もちろん、蓄積部102にその制御プログラムを格納しておき、CPU104による実行に応じてその制御プログラムがRAM106上へロードされるような構成であってもよい。
【0029】
なお、第1の実施形態のデータ処理装置には上記以外にも、種々の構成要素が設けられているが、本発明の主眼ではないので、その説明については省略する。
【0030】
つぎに、以上のように構成されたデータ処理装置において、メタデータをバイナリデータに登録する処理について説明する。図3は、第1の実施形態によるメタデータの登録処理を説明するフローチャートである。
【0031】
図3において、まず、ステップS301で、ユーザによって指定されたバイナリデータをメモリ(RAM106)上に読み込む。これは例えば所望のバイナリデータファイル名をキーボードから入力したり、ポインティング装置(例えばマウス)によって当該バイナリデータのアイコンを指示することによりなされる。次にステップS302において、ユーザによって指定された、メタデータが記述されているXMLファイルをメモリ(RAM106)上に読み込む。このXMLファイルの指定も、キーボードからファイル名を入力したり、ポインティング装置(例えばマウス)で対応するアイコンを指示する等によって行われる。
【0032】
次にステップS303で、メタデータを記述したXMLファイルが適正形式のXMLデータであるかを調べる。この適性形式の判定では、XMLファイルの記述フォーマットを満足しているか(例えば、タグの左右の括弧が正しく対をなしているか、タグ付けの形式が正しいかどうか等)がチェックされる。なお、適性形式のXMLデータであるか否かの判定は、正当なXMLデータであるか否かを含めたチェックであってもよい。ここで、正当なXMLデータか否かの判定は、例えば、XMLデータがDTD(Document Type Definition)等のスキーマに従って記述されているかどうか等のチェックを行うことでなされる。
【0033】
ステップS303において適正形式のXMLデータでないと判定された場合にはステップS305に進む。ステップS305では、XMLデータにエラーがある旨を表示部103に表示し、本処理を終了する。
【0034】
一方、ステップS303においてXMLファイルが適正形式のXMLデータであると判定された場合には、処理はステップS304に進む。ステップS304では、ステップS301でメモリ上に読み込まれたバイナリデータの後ろに当該メタデータを接続することにより、メタデータの登録を行う。
【0035】
次にステップS306で、当該バイナリデータ(ステップS301で読み込んだバイナリデータ)の種類を判断する。この判断は、たとえばバイナリデータが、JPEG符号化データでるとか、MPEG1符号化データあるとかを判断する。そしてその結果を基にステップS307で、ステップS304にて追加/登録したメタデータの最後にバイナリデータの終端コードを追加するか否かを判断する。この判断は、例えば画像データファイルフォーマットの仕様から、終端コードが存在するバイナリデータであるか否かを判断することにより行う。すなわち、終端コードを有するバイナリデータである場合は、追加すると判断され、ステップS308にて終端コードを追加した後にステップS309に進む。一方、終端コードを追加しないと判断された場合は、ステップS307から直接ステップS309に進む。
【0036】
その後、ステップS309において、メタデータを追加/登録したバイナリデータを出力し、処理を終了する。なお、ステップS309におけるデータ出力により、図4に示されるデータ構造を有するデータが1つのファイルとして蓄積部102に格納されることになる。
【0037】
なお、本実施形態の場合の終端コードとは、バイナリデータがJPEG符号化方式で符号化されている場合は、EOIコードを、あるいはバイナリデータがMPEG1符号化方式で符号化されている場合にはSECコードを入れる。また、バイナリデータファイルフォーマットに終端コードが無い場合は、メタデータの最後に終端を示すコードを接合しないように制御される。
【0038】
以上説明したように、第1の実施形態によれば、メタデータをXMLで記述し、バイナリデータの最後に接合することにより、既存のバイナリデータにメタデータを登録することができる。
【0039】
図4は本実施形態によるバイナリデータへのメタデータの登録状態を説明する図である。図4に示されるように、メタデータをXMLで記述し、このXMLデータをバイナリデータの最後に接続し、さらにこのメタデータの最後に所定のコードを付加することにより、既存のアプリケーションに影響を及ぼすことなく、既存のバイナリデータにメタデータを登録することが可能となる。すなわち、メタデータが登録されたバイナリデータを、既存のアプリケーションで処理することが可能な形態で提供することができる。例えば、図4の場合、EOIコードを検索して処理が行われる場合であっても、確実にEOIコードを検出でき、正しく処理が行われることになる。
【0040】
また、メタデータとして既存のデータ記述言語を用いれば、メタデータの編集、参照等に際して、当該データ記述言語用の既存のツールをそのまま用いることができ、開発に関する手間も省くことができる。
【0041】
例えば、本実施形態では、メタデータはXMLで記述されているため、このXMLデータ部分を抽出しておくことにより、XMLデータを理解するツールがあれば、メタデータの追加・変更・参照が可能であり、非常に汎用性に優れている。なお、XMLデータ部分の抽出については第2の実施形態で詳しく説明する。
【0042】
<第2の実施形態>
第1の実施形態では、バイナリデータのフォーマットに合わせて、そのバイナリデータの終端コードを、接合したメタデータの後ろに接合することを説明した。第2の実施形態では、予め、サポートする画像データファイルフォーマットを設定しておき、その画像データファイルフォーマットのサポート上必要な終端コード全てをメタデータの最後に接合する場合を説明する。
【0043】
たとえばJPEGとMPEG1の画像データファイルフォーマットをサポートするときは、JPEGのEOIコードと、MPEG1のSECコードの両方をメタデータの最後に追加する。図8は第2の実施形態によるメタデータが追加/登録されたバイナリデータのデータ構成を示す図である。図8では、JPEGの終端コードであるEOIコードと、MPEG1の終端コードであるSECコードの2つのコードが入っている。このときの挿入順は、図8に示される順序に限らないことは言うまでもない。また、対象となるバイナリデータフォーマットは、JPEGやMPEGだけでなく、その他のフォーマットのバイナリデータであっても良い。
【0044】
なお、第2の実施形態によるメタデータの登録処理は、図3に示したフローチャートにおいてステップS306とステップS307を省略して無条件でステップS308を実行するようにし、ステップS308では、上述のようにサポートするフォーマットの終端コードを付加するようにすることで実現できる。このため、第1の実施形態におけるステップS306に示す、バイナリデータのフォーマットを判断する処理を省略でき、高速に処理することが可能となる。
【0045】
<第3の実施形態>
第1及び第2の実施形態においてバイナリデータにメタデータを登録する方法を説明した。第3の実施形態では、バイナリデータにメタデータが登録されているかどうかを判別し、登録されている場合にはそのメタデータを抽出する処理について説明する。なお、第3の実施形態におけるデータ処理装置の構成は第1の実施形態(図1)と同様であるのでここでは説明を省略する。
【0046】
以下、指定されたファイルのデータに第1或いは第2の実施形態で説明した如きメタデータが登録されているか否かの判定と、登録されたメタデータを抽出する動作について説明する。図5は第3の実施形態による登録されたメタデータの判別及び抽出手順を示すフローチャートである。なお、本実施形態では、抽出されたメタデータを表示部103に表示するが、出力の形態はこれに限らない。例えば、抽出したメタデータを検索処理に提供するように構成してもよいことは当業者には明らかであろう。
【0047】
図5によれば、まず、ステップS501で、ユーザの指示により、メタデータが登録されているかを判別したいファイル、即ち処理対象データを指定する。ステップS501における、処理対象データの指定は、キーボードから当該バイナリデータのファイル名を入力したり、対応するアイコンをポインティング装置(マウス)で指示することにより行われる。
【0048】
次にステップS502において、指定されたファイルのデータにXMLで記述されたメタデータが登録されているかどうかを判別する。以下、ステップS502における判別処理の詳細について図6のフローチャートと、図7の概略図にしたがって説明する。図6は第2の実施形態によるメタデータの判別処理の詳細を説明するフローチャートである。また、図7はメタデータとしてXMLデータが登録されたバイナリデータのデータ構成例を示す図である。
【0049】
第1の実施形態で説明したように、メタデータとしてのXMLデータが登録されている処理対象データのデータ構成は図7のようになっている。したがって、メタデータの有無の判別は以下のように行われる。
【0050】
図6に示されるように、まず、ステップS601で、ステップS501で指定されたファイルのデータ全体(処理対象データの全体)をメモリ(RAM106)上に読み込む。なお、第1の実施形態のステップS306によって出力されたデータは一つのファイルとして管理されるので、一般的なファイル管理システムによってこのデータの全体を読出すことが可能である。
【0051】
次にステップS602において、ステップS601で読み込んだデータの最後に、終了コードに続いて“</PhotoXML>”という文字列があるか調べる。存在しなかった場合はステップS605に進む。
【0052】
一方、読み込んだ処理対象データの最後に、終了コードに続いて“</PhotoXML>”という文字列が存在した場合はステップS603に進む。ステップS603では“</PhotoXML>”という文字列の前方に“<PhotoXML>”という文字列が存在するかどうかを調べ、さらにそれらの文字列で囲まれたデータが、XMLの適正形式で記述されているかを確認する。なお、このとき、XMLの正当なデータであるか否かの判定を含めて行うようにしてもよい。適性形式か否かの判定、正当なデータか否かの判定は、第1の実施形態(ステップS303)で説明したとおりである。
【0053】
ステップS603において適正形式であることが確認された場合は、ステップS604にすすむ。ステップS604においては、メタデータが登録されているものと結論づけ、本処理を終了する。一方、ステップS603において適正形式であることが確認されなかった場合には、処理はステップS605に進む。ステップS605においては、メタデータは登録されていないものと結論づける。すなわち、ステップS602で、当該バイナリデータの最後に文字列“</PhotoXML>”が存在しない場合、ステップS603で文字列“<PhotoXML>”が存在しない場合、或いはステップS603で内部の記述が適正でないと判定された場合には、処理はステップS605にすすみ、当該処理対象データにメタデータは登録されていないものと結論づける。
以上で、メタデータの判別を終了する。
【0054】
次に、図5のフローチャートにもどる。図6のフローチャートで示される処理によってメタデータが登録されていると結論づけられた場合には、処理はステップS503に進む。ステップS503では、文字列“<PhotoXML>”と“</PhotoXML>”で囲まれた部分のXMLデータに基づいて登録されているメタデータの内容を表示し、処理を終了する。一方、ステップS502でメタデータが登録されていないと判定された場合にはそのまま処理を終了する。
【0055】
以上説明したように、第3の実施形態によれば、メタデータ付きのバイナリデータと通常のバイナリデータとの判別を、データの末尾にXMLデータが適正形式で記述されているか否かによって判別することが可能となる。また、メタデータが判別された場合には、そのメタデータを表示することが可能となる。
【0056】
すなわち、第3の実施形態によれば、メタデータが登録されたバイナリデータとメタデータが登録されていないバイナリデータとを判別するとともに、登録されたメタデータを抽出することが可能となる。従って、メタデータとして既存のデータ記述言語を用いれば、メタデータを用いた検索に際して、当該データ記述言語用の既存のツールをそのまま用いることができ、開発に関する手間も省くことができる。
【0057】
なお、上記各実施形態では、メタデータとしてXMLデータを用いたがこれに限られるものではない。例えば、SGMLやHTML等のデータ記述言語であってもよい。また、バイナリデータとしては静止画像データ、動画像データ、音声データ等が挙げられる。
なお、第3の実施形態では、第1の実施形態の手順で提供されるデータ(図7)に対する処理を説明したが、第2の実施形態の手順で提供されたデータ(図8)を処理対象とすることももちろん可能である。この場合、ステップS602で認識される終了コードが複数個(第2の実施形態では2つ)となる。
【0058】
なお、本発明は、複数の機器(例えばホストコンピュータ,インタフェイス機器,リーダ,プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用してもよい。
【0059】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0060】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0061】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0062】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0063】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0064】
【発明の効果】
以上説明したように、本発明によれば、メタデータをデータ記述言語で記述し、バイナリデータの最後に接合することにより、既存のバイナリデータにメタデータを登録することができる。
また、メタデータが登録されたバイナリデータと通常のバイナリデータも容易に判別することが可能であり、さらに、メタデータの登録や検索に際しても、既存のデータ記述言語専用のツールをそのまま用いることができ、開発に関する手間も省くことができる。
また、メタデータの最後にバイナリデータの終端コードを入れることにより、バイナリデータの完全性を判断する部分も高速に処理することができる。
【図面の簡単な説明】
【図1】第1の実施形態によるデータ処理装置の構成を示すブロック図である。
【図2】EOIマーカーコード検索の手順を示すフローチャートである。
【図3】第1の実施形態によるメタデータの登録処理を説明するフローチャートである。
【図4】本実施形態によるバイナリデータへのメタデータの登録状態を説明する図である。
【図5】第3の実施形態による登録されたメタデータの判別及び抽出手順を示すフローチャートである。
【図6】第2の実施形態によるメタデータの判別処理の詳細を説明するフローチャートである。
【図7】メタデータとしてXMLデータが登録されたバイナリデータのデータ構成例を示す図である。
【図8】第2の実施形態によるメタデータが追加/登録されたバイナリデータのデータ構成を示す図である。
【図9】バイナリデータにメタデータを埋め込んだフォーマットの概観を示す図である。
【図10】バイナリデータとメタデータをデータベースで管理する方法を概念的に示した図である。

Claims (28)

  1. バイナリデータにメタデータを登録するデータ処理方法であって、
    メタデータの付与対象のバイナリデータを読み込む第1読込工程と、
    前記バイナリデータに付与すべきメタデータを読み込む第2読込工程と、
    前記第1読込工程で読み込まれたバイナリデータの後に、前記第2読込工程で読み込まれたメタデータを接続する第1接続工程と、
    前記第1接続工程で接続されたメタデータの後に、前記バイナリデータに対応する終端コードを接続する第2接続工程と、
    前記第1及び第2接続工程によって得られたデータの全体を一つのファイルとして出力する出力工程とを備えることを特徴とするデータ処理方法。
  2. 前記バイナリデータが終端コードを有するか否かを判定する判定工程をさらに備え、
    前記第2接続工程は、前記判定工程で終端コードを有すると判定された場合に、前記第1接続工程で接続されたメタデータの後に、前記バイナリデータに対応する終端コードを接続することを特徴とする請求項1に記載のデータ処理方法。
  3. 前記第2接続工程は、予め決められた終端コードを前記第1接続工程で接続されたメタデータの後に接続することを特徴とする請求項1に記載のデータ処理方法。
  4. 前記第2接続工程は、予め決められた複数種類の終端コードを前記第1接続工程で接続されたメタデータの後に接続することを特徴とする請求項1に記載のデータ処理方法。
  5. 前記第2読込工程で読み込まれたメタデータが、予め定められたデータ記述言語における適正な形式で記述されているか否かを判定する判定工程を更に備え、
    前記第1接続工程は、前記判定工程で適正な形式で記述されていると判定された場合に、前記メタデータを前記バイナリデータの後に接続することを特徴とする請求項1に記載のデータ処理方法。
  6. 前記判定工程は、前記メタデータが前記予め定められたデータ記述言語としての正当性を満足するか否かを含めて判定することを特徴とする請求項5に記載のデータ処理方法。
  7. メタデータが登録されたバイナリデータにおいてメタデータを判別する方法であって、
    データを読み込む読込工程と、
    前記読込工程で読み込まれたデータを末尾より検査し、終端コードに続いて予め定められたデータ記述言語における適正な形式で記述されたデータが存在するか否かを判定することにより、該データに含まれるメタデータを判別する判別工程とを備えることを特徴とするデータ処理方法。
  8. 前記判別工程においてメタデータが判別された場合、判別されたメタデータを抽出して出力する出力工程を更に備えることを特徴とする請求項7に記載のデータ処理方法。
  9. 前記出力工程は、前記抽出されたメタデータに基づく表示を行うことを特徴とする請求項8に記載のデータ処理方法。
  10. 前記出力工程は、前記抽出されたメタデータを、前記予め定められたデータ記述言語を処理するためのツールに提供することを特徴とする請求項8に記載のデータ処理方法。
  11. 前記バイナリデータは画像データであることを特徴とする請求項1乃至10のいずれかに記載のデータ処理方法。
  12. 前記バイナリデータは音声データであることを特徴とする請求項1乃至10のいずれかに記載のデータ処理方法。
  13. 前記バイナリデータは動画像データであることを特徴とする請求項1乃至10のいずれかに記載のデータ処理方法。
  14. 前記予め定められたデータ記述言語がXMLであることを特徴とする請求項1乃至10のいずれかに記載のデータ処理方法。
  15. 前記予め定められたデータ記述言語がSGMLであることを特徴とする請求項1乃至10のいずれかに記載のデータ処理方法。
  16. 前記予め定められたデータ記述言語がHTMLであることを特徴とする請求項1乃至10のいずれかに記載のデータ処理方法。
  17. バイナリデータにメタデータを登録するデータ処理装置であって、
    メタデータの付与対象のバイナリデータを読み込む第1読込手段と、
    前記バイナリデータに付与すべきメタデータを読み込む第2読込手段と、
    前記第1読込手段で読み込まれたバイナリデータの後に、前記第2読込手段で読み込まれたメタデータを接続する第1接続手段と、
    前記第1接続手段で接続されたメタデータの後に、前記バイナリデータに対応する終端コードを接続する第2接続手段と、
    前記第1及び第2接続手段によって得られたデータの全体を一つのファイルとして出力する出力手段とを備えることを特徴とするデータ処理装置。
  18. 前記バイナリデータが終端コードを有するか否かを判定する判定手段をさらに備え、
    前記第2接続手段は、前記判定手段で終端コードを有すると判定された場合に、前記第1接続手段で接続されたメタデータの後に、前記バイナリデータに対応する終端コードを接続することを特徴とする請求項17に記載のデータ処理装置。
  19. 前記第2接続手段は、予め決められた終端コードを前記第1接続手段で接続されたメタデータの後に接続することを特徴とする請求項17に記載のデータ処理装置。
  20. 前記第2接続手段は、予め決められた複数種類の終端コードを前記第1接続手段で接続されたメタデータの後に接続することを特徴とする請求項17に記載のデータ処理装置。
  21. 前記第2読込手段で読み込まれたメタデータが、予め定められたデータ記述言語における適正な形式で記述されているか否かを判定する判定手段を更に備え、
    前記第1接続手段は、前記判定手段で適正な形式で記述されていると判定された場合に、前記メタデータを前記バイナリデータの後に接続することを特徴とする請求項17に記載のデータ処理装置。
  22. 前記判定手段は、前記メタデータが前記予め定められたデータ記述言語としての正当性を満足するか否かを含めて判定することを特徴とする請求項21に記載のデータ処理装置。
  23. メタデータが登録されたバイナリデータにおいてメタデータを判別する方法であって、
    データを読み込む読込手段と、
    前記読込手段で読み込まれたデータを末尾より検査し、終端コードに続いて予め定められたデータ記述言語における適正な形式で記述されたデータが存在するか否かを判定することにより、該データに含まれるメタデータを判別する判別手段とを備えることを特徴とするデータ処理装置
  24. 前記判別手段においてメタデータが判別された場合、判別されたメタデータを抽出して出力する出力手段を更に備えることを特徴とする請求項23に記載のデータ処理装置。
  25. 前記出力手段は、前記抽出されたメタデータに基づく表示を行うことを特徴とする請求項24に記載のデータ処理装置。
  26. 前記出力手段は、前記抽出されたメタデータを、前記予め定められたデータ記述言語を処理するためのツールに提供することを特徴とする請求項23に記載のデータ処理装置。
  27. バイナリデータにメタデータを登録するデータ処理をコンピュータに実行させるための制御プログラムを格納する記憶媒体であって、前記データ処理が、
    メタデータの付与対象のバイナリデータを読み込む第1読込工程と
    前記バイナリデータに付与すべきメタデータを読み込む第2読込工程と
    前記第1読込工程で読み込まれたバイナリデータの後に、前記第2読込工程で読み込まれたメタデータを接続する第1接続工程と
    前記第1接続工程で接続されたメタデータの後に、前記バイナリデータに対応する終端コードを接続する第2接続工程と
    前記第1及び第2接続工程によって得られたデータの全体を一つのファイルとして出力する出力工程とを備えることを特徴とする記憶媒体。
  28. メタデータが登録されたバイナリデータからメタデータを判別する処理をコンピュータに実行させるための制御プログラムを格納する記憶媒体であって、前記データ処理が、
    データを読み込む読込工程と
    前記読込工程で読み込まれたデータを末尾より検査し、終端コードに続いて予め定められたデータ記述言語における適正な形式で記述されたデータが存在するか否かを判定することにより、該データに含まれるメタデータを判別する判別工程とを備えることを特徴とする記憶媒体。
JP18963699A 1999-07-02 1999-07-02 データ処理方法及び装置及び記憶媒体 Expired - Fee Related JP4072293B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP18963699A JP4072293B2 (ja) 1999-07-02 1999-07-02 データ処理方法及び装置及び記憶媒体
US09/595,882 US6629101B1 (en) 1999-07-02 2000-06-20 Data processing method and apparatus, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18963699A JP4072293B2 (ja) 1999-07-02 1999-07-02 データ処理方法及び装置及び記憶媒体

Publications (3)

Publication Number Publication Date
JP2001022615A JP2001022615A (ja) 2001-01-26
JP2001022615A5 JP2001022615A5 (ja) 2006-08-03
JP4072293B2 true JP4072293B2 (ja) 2008-04-09

Family

ID=16244625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18963699A Expired - Fee Related JP4072293B2 (ja) 1999-07-02 1999-07-02 データ処理方法及び装置及び記憶媒体

Country Status (2)

Country Link
US (1) US6629101B1 (ja)
JP (1) JP4072293B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1045315A3 (en) * 1999-04-13 2011-03-02 Canon Kabushiki Kaisha Data processing method and apparatus
JP4810009B2 (ja) * 2001-06-27 2011-11-09 キヤノン株式会社 データ処理装置、方法およびプログラム
US7149360B2 (en) * 2002-01-09 2006-12-12 Hewlett-Packard Development Company, L.P. Method for using a JPEG engine to assist in efficiently constructing MPEG I-frames
US20050198069A1 (en) * 2004-03-05 2005-09-08 Cherry Darrel D. Meta-data association
US20050275566A1 (en) * 2004-06-14 2005-12-15 Nokia Corporation System and method for transferring content
US20110072955A1 (en) 2005-10-06 2011-03-31 Turner William D System and method for pacing repetitive motion activities
US7825319B2 (en) * 2005-10-06 2010-11-02 Pacing Technologies Llc System and method for pacing repetitive motion activities
CN101944229B (zh) * 2009-07-08 2012-11-28 方正国际软件(北京)有限公司 用于图像文件的附加信息方法
US9137443B2 (en) 2011-04-26 2015-09-15 Blackberry Limited Fast estimation of binary data length using memory corruption

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04168865A (ja) * 1990-11-01 1992-06-17 Hitachi Ltd コードデータとイメージデータの合成出力方式
JPH0644320A (ja) * 1991-05-14 1994-02-18 Sony Corp 情報検索システム
JP3317763B2 (ja) * 1993-11-05 2002-08-26 富士通株式会社 プログラム起動方法およびその処理装置
JPH09107547A (ja) * 1995-10-09 1997-04-22 Hitachi Ltd 既圧縮動画データ量削減装置および既圧縮動画データ量削減システムならびに既圧縮動画データ量削減方法
US5937160A (en) * 1997-05-01 1999-08-10 Reedy Creek Technologies, Inc. Systems, methods and computer program products for updating hypertext documents via electronic mail
US6173287B1 (en) * 1998-03-11 2001-01-09 Digital Equipment Corporation Technique for ranking multimedia annotations of interest
US6272484B1 (en) * 1998-05-27 2001-08-07 Scansoft, Inc. Electronic document manager
US6360010B1 (en) * 1998-08-12 2002-03-19 Lucent Technologies, Inc. E-mail signature block segmentation

Also Published As

Publication number Publication date
JP2001022615A (ja) 2001-01-26
US6629101B1 (en) 2003-09-30

Similar Documents

Publication Publication Date Title
JP4378029B2 (ja) データ処理方法及び装置及び記憶媒体
US6886131B1 (en) Data processing method and apparatus
US8527864B2 (en) Method of compound document comparison
US7617451B2 (en) Structuring data for word processing documents
US6571248B1 (en) Data processing method and apparatus
KR100995234B1 (ko) 데이터 포맷 문서에서 주석이 달려있지 않은 텍스트 노드들을 보여주기 위한 컴퓨터 실행 가능 명령어들을 기록한 컴퓨터 판독 가능 기록 매체
AU2003204869B2 (en) System and method for supporting non-native XML in native XML of a word-processor document
US20060277452A1 (en) Structuring data for presentation documents
US20040210573A1 (en) Method, system and program for generating structure pattern candidates
JPH08241332A (ja) 全文登録語検索装置および方法
JP2006178944A (ja) 文書を表すファイル・フォーマット、その方法、およびコンピュータ・プログラム製品
JPH0830620A (ja) 構造検索装置
JP4072293B2 (ja) データ処理方法及び装置及び記憶媒体
EP3103002B1 (en) Batch generation of links to documents based on document name and page content matching
US20050044488A1 (en) Technique to validate electronic books
JP4072284B2 (ja) データ処理方法及び装置及び記憶媒体
JP4072285B2 (ja) データ処理方法及び装置及び記憶媒体
JP4072283B2 (ja) データ処理方法及び装置及び記憶媒体
US8185885B2 (en) Providing recovery data for program code
JP2000311103A (ja) データ処理方法及び装置及び記憶媒体
WO2006133136A2 (en) Structuring data for word processing documents
WO2000072190A1 (fr) Procede pour prendre en charge la mise au point de contenus internet, support d'enregistrement contenant le programme applicatif du procede, et systeme d'application du procede
JP3466792B2 (ja) 図面検索方法及びその装置
JP7377565B2 (ja) 図面検索装置、図面データベース構築装置、図面検索システム、図面検索方法、及びプログラム
US8473530B1 (en) Field objects

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060615

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060615

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080121

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110125

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120125

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130125

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140125

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees