(57)【要約】【課題】【課題】印刷指示を発行する印刷制御装置とは異なる装置（印刷データ供給装置）に格納されている印刷オブジェクトの印刷を可能にする印刷システムを提供する。【解決手段】ＩＥＥＥ１３９４バスで接続されたコントローラ１１とＨＤＤユニット１２とプリンタユニット１３とから構成され、ＨＤＤユニット１２は、印刷の対象となる印刷オブジェクトを保持し、コントローラ１１は、ＨＤＤユニット１２に格納された印刷オブジェクトを取得して印刷する旨の印刷コマンドをプリンタユニット１３に発行し、プリンタユニット１３は、その印刷コマンドで指定されたパラメータに従って、ＨＤＤユニット１２に対して印刷オブジェクトの送信を要求することにより、ＨＤＤユニット１２に格納された印刷オブジェクトを取得し、取得した印刷オブジェクトを印刷する。【選択図】        図１
2004157960.tif 000002
【特許請求の範囲】
【請求項１】
伝送路で接続された印刷データ供給装置とプリンタ装置間に印刷データを転送するための方法であって、
前記印刷データ供給装置が保持する印刷データを印刷させるため、前記印刷データ供給装置の属性情報を伴って前記プリンタ装置に対して印刷要求する段階と、
前記要求に応じ、前記プリンタ装置が前記属性情報に基づいて前記印刷データ供給装置にデータ要求する段階と、
前記データ要求に応じ、前記印刷データ供給装置が印刷データを前記プリンタ装置に送信する段階
とを有することを特徴とする印刷データ転送方法。
【請求項２】
前記属性情報は、印刷データ供給装置が保管する印刷データの属性情報であって、印刷対象データへのリンクパス情報であることを特徴とする請求項１記載の印刷データ転送方法。
【請求項３】
前記印刷データ供給装置に対し前記リンクパス情報の基準位置を設定する段階をさらに有することを特徴とする請求項２記載の印刷データ転送方法。
【請求項４】
前記基準位置をコネクション毎に設定することを特徴とする請求項３記載の印刷データ転送方法。
【請求項５】
前記印刷データ供給装置は、前記基準位置が変更された旨を前記データ要求へのレスポンスで通知することを特徴とする請求項３記載の印刷データ転送方法。
【請求項６】
前記印刷データ供給装置は、着脱可能な記録媒体を備え、前記記録媒体の装着があった旨を示すパラメータを用いて、前記基準位置が変更された旨を通知する
ことを特徴とする請求項５記載の印刷データ転送方法。
【請求項７】
前記プリンタ装置に対する印刷要求前に前記印刷データ供給装置に対して前記リンクパス情報の基準位置の設定し、前記印刷要求に対する完了通知を受信するまで前記基準位置の設定を変更しないことを特徴とする請求項３記載の印刷データ転送方法。
【請求項８】
前記属性情報で指定されたリンクパス情報または前記印刷データ内に記載されたリンクパス情報がある基準点からの位置を示す相対パスである場合、
前記属性情報に、さらに前記リンクパス情報の基準位置を指定することを特徴とする請求項１記載の印刷データ転送方法。
【請求項９】
前記プリンタ装置は、
前記印刷要求の段階において前記属性情報として受け取った前記リンクパス情報の基準位置を前記印刷要求に対する完了通知を送信するまで保持する
ことを特徴とする請求項８記載の印刷データ転送方法。
【請求項１０】
前記印刷データ内に記載されたリンクパス情報の基準位置は、前記印刷要求における属性情報で指定されたリンクパス情報から抽出することを特徴とする請求項８記載のデータ転送方法。
【請求項１１】
前記プリンタ装置は、
前記印刷要求における属性情報で指定されたリンクパス情報から抽出した前記リンクパス情報の基準位置を
前記印刷要求に対する完了通知を送信するまで保持する
ことを特徴とする請求項１０記載の印刷データ転送方法。
【請求項１２】
前記プリンタ装置は、
印刷対象データへのリンクパス情報が記載されたリンクファイルを受信し、前記印刷データ供給装置に対し、前記受信したリンクファイルに記載されたリンクパス情報で特定される印刷データを要求することを特徴とする請求項１記載の印刷データ転送方法。
【請求項１３】
前記データ要求と、前記送信とを繰り返すことを特徴とする請求項１記載の印刷データ転送方法。
【請求項１４】
前記データ送信を予め確立されたコネクションを介して行うことを特徴とする請求項１記載の印刷データ転送方法。
【請求項１５】
前記属性情報の全てまたは一部の取得は、前記印刷データ供給装置と前記プリンタ装置との間に確立されたコネクションに対する状態問い合わせによって行うことを特徴とする請求項１４記載の印刷データ転送方法。
【請求項１６】
前記コネクションは、プリンタ装置によって確立されたものであることを特徴とする請求項１４記載の印刷データ転送方法。
【請求項１７】
前記コネクションは、前記印刷データ供給装置または前記プリンタ装置以外の印刷制御装置によって確立されたものであることを特徴とする請求項１４記載の印刷データ転送方法。
【請求項１８】
前記伝送路は、ＩＥＥＥ１３９４であり、前記コネクションは  ＩＥＥＥ１３９４  におけるＥｎｈａｎｃｅｄ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｓｅｒｉａｌ  Ｂｕｓ  Ｃｏｎｎｅｃｔｉｏｎｓであることを特徴とする請求項１４記載の印刷データ転送方法。
【請求項１９】
前記属性情報は、前記コネクションにおける印刷データ供給装置側の入力ポートを特定するコネクション情報であることを特徴とする請求項１４記載の印刷データ転送方法。
【請求項２０】
前記コネクション情報はＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるｓｕｂｕｎｉｔ＿ｐｌｕｇ＿ｉｄであることを特徴とする請求項１９記載の印刷データ転送方法。
【請求項２１】
前記属性情報が、前記印刷データ供給装置を特定するためのアドレス情報であることを特徴とする請求項１記載の印刷データ転送方法。
【請求項２２】
前記アドレス情報はＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるＮｏｄｅ＿ＩＤ又はＥＵＩ＿６４であることを特徴とする請求項２１の印刷データ転送方法。
【請求項２３】
前記アドレス情報はＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるＮｏｄｅ＿ＩＤ又はＥＵＩ＿６４に、Ｓｕｂｕｎｉｔ＿ｔｙｐｅとＳｕｂｕｎｉｔ＿ＩＤとを組み合わせたものであることを特徴とする請求項２１の印刷データ転送方法。
【請求項２４】
前記属性情報が、前記印刷データ供給装置の種類を特定するタイプ情報であることを特徴とする請求項１記載の印刷データ転送方法。
【請求項２５】
前記タイプ情報はＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるＳｕｂｕｎｉｔ＿Ｔｙｐｅであることを特徴とする請求項２４記載の印刷データ転送方法。
【請求項２６】
前記プリンタ装置は、前記印刷データ供給装置以外の印刷制御装置から前記印刷要求を受信することを特徴とする請求項１記載の印刷データ転送方法。
【請求項２７】
前記プリンタ装置は、前記要求された印刷に必要なデータ受信が完了した後に、前記印刷要求に対する完了通知を送信することを特徴とする請求項１の印刷データ転送方法。
【請求項２８】
前記プリンタ装置は、前記印刷要求された印刷データ及び印刷データからさらに参照された印刷データの受信が必要なくなった後に、前記印刷要求に対する完了通知を送信することを特徴とする請求項１の印刷データ転送方法。
【請求項２９】
前記印刷要求には、前記印刷データ供給装置と関連しない第１パラメータ群と前記印刷データ供給装置に関連する第２パラメータ群とが含まれることを特徴とする請求項１記載の印刷データ転送方法。
【請求項３０】
前記印刷要求は、前記第１パラメータ群と前記第２パラメータ群とを含む一つの命令であることを特徴とする請求項２９記載の印刷データ転送方法。
【請求項３１】
前記印刷要求は、前記第１パラメータ群を含む第１命令と、前記第２パラメータ群を含む第２命令とに分離されていることを特徴とする請求項２９記載の印刷データ転送方法。
【請求項３２】
前記伝送路におけるアドレスが再設定された場合に、
前記印刷データ供給装置と前記プリンタ装置の間のコネクションを復旧し、
次に、前記プリンタ装置に対する印刷要求を再送し、
前記再送要求に対し、前記プリンタ装置は、要求された印刷に必要なデータ受信を再開する
ことを特徴とする請求項１記載の印刷データ転送方法。
【請求項３３】
前記再送要求は、バスリセット後の印刷データ供給装置のアドレス情報に基づくことを特徴とする請求項３２記載の印刷データ転送方法。
【請求項３４】
前記属性情報には、印刷データ供給装置が保管する印刷データのうち、印刷の対象となる第１印刷データの格納位置を絶対パスで指定する第１リンクパス情報と、前記第１印刷データによって参照される第２印刷データの格納位置を示す相対パスの基準位置とが含まれる
ことを特徴とする請求項１記載の印刷データ転送方法。
【請求項３５】
前記印刷データ転送方法は、さらに、前記印刷要求に先立ち、前記伝送路上に、印刷データを保持する印刷データ供給装置と印刷データを印刷するプリンタ装置が接続されているか否かを確認し、前記印刷データ供給装置及び前記プリンタ装置の少なくとも一方が接続されていない場合には、エラーである旨をユーザに通知する段階を含む
ことを特徴とする請求項１記載の印刷データ転送方法。
【請求項３６】
前記プリンタ装置に対する印刷要求では、前記印刷データ供給装置に印刷データを要求する機能を前記プリンタ装置が有するか否かの問い合わせが含まれ、
前記印刷データ転送方法は、さらに、前記プリンタ装置が前記問い合わせに対して返答する段階を含む
ことを特徴とする請求項１記載の印刷データ転送方法。
【請求項３７】
前記プリンタ装置が、前記問い合わせに対して前記機能を有していない旨の返答をした場合には、前記印刷データ供給装置は、前記プリンタ装置からの印刷データの要求を受けることなく、印刷データを前記プリンタ装置に送信する
ことを特徴とする請求項３６記載の印刷データ転送方法。
【請求項３８】
前記印刷データ転送方法は、さらに、前記プリンタ装置が、前記問い合わせに対して前記機能を有していない旨の返答をし、かつ、印刷の対象となる印刷データが上記機能を有するプリンタ装置のみによって印刷可能な場合に、エラーである旨をユーザに通知する段階を含む
ことを特徴とする請求項３６記載の印刷データ転送方法。
【請求項３９】
前記印刷データ転送方法は、さらに、前記印刷要求に先立ち、前記印刷データ供給装置及び前記プリンタ装置の少なくとも一方に状態の問い合わせを行い、その問い合わせに対する返答に応じて、前記プリンタ装置が前記印刷データ供給装置に印刷データを要求しながら印刷データを印刷するプル型の印刷を行うか、前記プリンタ装置が印刷データを要求することなく前記印刷データ供給装置から送信されてくる印刷データを印刷するプッシュ型の印刷を行うかを決定する段階を含む
ことを特徴とする請求項１記載の印刷データ転送方法。
【請求項４０】
前記プル型及びプッシュ型の印刷のいずれを行うかを決定する段階では、
前記プリンタ装置が備えるデータ受信バッファのサイズと印刷の対象となる印刷データのサイズとを比較し、
前記データ受信バッファのサイズが前記印刷データのサイズより大きい場合に、前記プッシュ型の印刷を行うと決定し、前記データ受信バッファのサイズが前記印刷データのサイズ以下である場合に、前記プル型の印刷を行うと決定する
ことを特徴とする請求項３９記載の印刷データ転送方法。
【請求項４１】
伝送路で接続された印刷データ供給装置とプリンタ装置からなる印刷システムであって、
前記印刷データ供給装置は印刷データを保持し、
前記プリンタ装置は、
前記印刷データ供給装置に保持された印刷データを印刷させるため、前記印刷データ供給装置の属性情報を伴って発行された印刷要求を受信する手段と、
前記要求に応じ、前記属性情報に基づいて前記印刷データ供給装置にデータ要求する手段と、
前記データ要求に応じ、前記印刷データ供給装置から送信された印刷データを受信する手段と、
前記印刷データを印刷する手段
とを備えることを特徴とする印刷システム。
【請求項４２】
前記プリンタ装置が、印刷対象データへのリンクパス情報が記載されたリンクファイルを受信する手段を備え、
前記印刷データ要求手段は、前記印刷データ供給装置に対し、前記受信したリンクファイルに記載されたリンクパス情報で特定される印刷データを要求する
ことを特徴とする請求項４１記載の印刷システム。
【請求項４３】
印刷データ供給装置から送信された印刷データの受信を予め確立されたコネクションを介して行うことを特徴とする請求項４１記載の印刷システム。
【請求項４４】
前記属性情報が、前記印刷データ供給装置を特定するためのアドレスであることを特徴とする請求項４１記載の印刷システム。
【請求項４５】
前記属性情報が、前記印刷データ供給装置の種類を特定するタイプ情報であることを特徴とする請求項４１記載の印刷システム。
【請求項４６】
前記プリンタ装置は、前記印刷データ供給装置以外の印刷制御装置から前記印刷要求を受信することを特徴とする請求項４１記載の印刷システム。
【請求項４７】
前記プリンタ装置は、前記要求された印刷に必要なデータ受信が完了した後に、前記印刷要求に対する完了通知を送信することを特徴とする請求項４１の印刷システム。
【請求項４８】
前記伝送路におけるアドレスが再設定された場合に、
前記印刷データ供給装置と前記プリンタ装置の間のコネクションを復旧し、
次に、前記プリンタ装置に対する印刷要求を再送し、
前記再送要求に対し、前記プリンタ装置は、要求された印刷に必要なデータ受信を再開する
ことを特徴とする請求項４１記載の印刷システム。
【請求項４９】
印刷データを保持する印刷データ供給装置と伝送路で接続されたプリンタ装置であって、
前記印刷データ供給装置に保持された印刷データを印刷させるため、前記印刷データ供給装置の属性情報を伴って発行された印刷要求を受信する手段と、
前記要求に応じ、前記属性情報に基づいて前記印刷データ供給装置にデータ要求する手段と、
前記データ要求に応じて、前記印刷データ供給装置から送信された印刷データを受信する手段と、
前記印刷データを印刷する手段
とを備えることを特徴とするプリンタ装置。
【請求項５０】
印刷対象データへのリンクパス情報が記載されたリンクファイルを受信する手段を備え、
前記印刷データ要求手段は、前記印刷データ供給装置に対し、前記受信したリンクファイルに記載されたリンクパス情報で特定される印刷データを要求する
ことを特徴とする請求項４９記載のプリンタ装置。
【請求項５１】
前記印刷データ供給装置から送信された印刷データの受信を
予め確立されたコネクションを介して行うことを特徴とする請求項４９記載のプリンタ装置。
【請求項５２】
前記属性情報が、前記印刷データ供給装置を特定するためのアドレスであることを特徴とする請求項４９記載のプリンタ装置。
【請求項５３】
前記属性情報が、前記印刷データ供給装置の種類を特定するタイプ情報であることを特徴とする請求項４９記載のプリンタ装置。
【請求項５４】
前記印刷データ供給装置以外の印刷制御装置から前記印刷要求を受信することを特徴とする請求項４９記載のプリンタ装置。
【請求項５５】
前記要求された印刷に必要なデータ受信が完了した後に、前記印刷要求に対する完了通知を送信することを特徴とする請求項４９記載のプリンタ装置。
【請求項５６】
前記伝送路におけるアドレスが再設定された場合に、
前記印刷データ供給装置との間のコネクションが復旧された後に印刷要求を再受信し、
前記再送要求に対し、要求された印刷に必要なデータ受信を再開する
ことを特徴とする請求項４９記載のプリンタ装置。
【請求項５７】
受信した印刷データに基づいて画像を形成するプリンタ装置のためのプログラムであって、
請求項４９記載のプリンタ装置が備える手段としてコンピュータを機能させることを特徴とするプログラム。
【請求項５８】
印刷ファイルの格納位置を指定するリンクパス情報を保管する保管手段と、
前記保管手段から取得したリンクパス情報の一部又は全てが、所定の基準点からの相対的な位置を示す相対パスである場合に、前記所定の基準点を示す基準位置データに基づき、前記相対パスを、印刷ファイルの絶対的な位置を示す絶対パスに変換する変換手段と、
前記変換手段により変換された絶対パスから特定可能な印刷ファイルを、取得する取得手段と、を有することを特徴とする印刷ファイルの取得システム。
【請求項５９】
伝送路で接続された印刷データ供給装置とプリンタ装置とを備え、前記印刷データ供給装置から前記プリンタ装置に対して印刷データを転送する印刷データ転送システムであって、バスリセット後の前記印刷データ供給装置および前記プリンタ装置のネットワーク接続情報を取得するネットワーク情報取得手段と、前記ネットワーク情報取得手段から得られたネットワーク接続情報に基づいて印刷データ供給装置とプリンタ装置との間のデータ転送コネクションを復旧するコネクション復旧手段と、前記ネットワーク情報取得手段から得られたネットワーク接続情報に基づいて印刷要求を再送する印刷要求再送手段と、前記印刷要求再送手段により再送された印刷要求に基づき、印刷オブジェクトを取得する取得手段と、を有することを特徴とする印刷データの転送システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プリンタ装置に印刷データを転送する方法に関し、特に、プリンタ装置が印刷データの供給元に対して印刷データの供給を要求するプル型の印刷方法に関する。
【０００２】
【従来の技術】
デジタルカメラやデジタル放送受信機（ＳＴＢ；Ｓｅｔ  Ｔｏｐ  Ｂｏｘ）等のＡＶ（Ａｕｄｉｏ  Ｖｉｓｕａｌ）機器にプリンタ装置を接続し、ＡＶ機器で撮像・受信された映像をプリンタ装置に直接印刷することが試みられている。ところが、ＳＴＢ等のＡＶ機器は、パーソナルコンピュータと異なり、一般に、ハードディスク装置やＣＤ−ＲＯＭドライブ装置等の大容量補助記憶装置を備えておらず、また自身のファームウェアを更新する機能を持つ機器も少ないので、接続するプリンタ装置の機種ごとに異なるドライバソフトウェアをインストールするという事態は回避されることが好ましい。したがって、一定の規格に準拠している機器であれば機器固有のソフトウェアをインストールすることなく、自由に選択したＡＶ機器とプリンタ装置とを接続し、印刷が可能となるような柔軟な接続方式が望まれる。
【０００３】
このような要望に応える策の一つとして、ＩＥＥＥ１３９４規格で規定されたＡＶ／Ｃプロトコルがある（例えば、非特許文献１参照）。ＡＶ／Ｃプロトコルは、ＡＶ機器の接続に関し、必要最小限の標準プロトコルを決定し、互換性を保ち、各メーカーが個別に機器の性能を高めることができる枠組みを提供している。なお、上記ＡＶ／Ｃプロトコルの中で、特にプリンタ装置に関するＡＶ／Ｃコマンドを取り決めたものとしてＡＶ／Ｃ  Ｐｒｉｎｔｅｒ  Ｓｕｂｕｎｉｔがある。
【０００４】
図４０は、既存のＡＶ／Ｃ  Ｐｒｉｎｔｅｒ  Ｓｕｂｕｎｉｔに従ってデジタルカメラ等のＡＶ機器がプリンタ装置に画像を印刷出力するときの通信手順の一例を示すシーケンス図である。ここでは、ＩＥＥＥ１３９４バスで接続されたコントローラ９００が内部に保持する画像等の印刷オブジェクトをプリンタユニット（プリンタ装置）９１０に出力する場合の通信シーケンスとそのときのコマンド及びレスポンスが示されている。
【０００５】
まず、コントローラ９００は、プリンタユニット９１０からバージョン情報を取得し、プリンタユニット９１０にジョブ識別子ｊｏｂ＿ＩＤを指定してプリントジョブを生成した後に、論理的な転送チャネル（非同期データ転送用コネクション；Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎ）を確立する。
【０００６】
そして、コントローラ９００は、ＡＶ／ＣコマンドＣＡＰＴＵＲＥをプリンタユニット９１０に送ることで、出力したい印刷オブジェクトを指定するとともに、その印刷オブジェクトを受け取るように指示した後に、上記転送チャネルを介して、指定した印刷オブジェクトをプリンタユニット９１０に出力（ｐｕｓｈ）する。
【０００７】
印刷が完了し、プリンタユニット９１０からコントローラ９００に終了状態ＡＣＣＥＰＴＥＤ  ｒｅｓｐｏｎｓｅが返されると、コントローラ９００は、上記転送チャネルＡｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎを切断し、プリントジョブをクローズした後に、プリンタユニット９１０におけるジョブの状態をポーリングする。
【０００８】
このようにして、ＡＶ／Ｃ  Ｐｒｉｎｔｅｒ  Ｓｕｂｕｎｉｔに従ってＡＶ機器が印刷オブジェクトをプリンタ装置に出力することで、プリンタ装置個別のドライバソフトをインストールすることなく、印刷出力が可能となる。
【０００９】
【非特許文献１】
ＩＥＥＥ  Ｓｔｄ  １３９４−１９９５，  Ｓｔａｎｄａｒｄ  ｆｏｒ  ａ  Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｓｅｒｉａｌ  Ｂｕｓ
【００１０】
【発明が解決しようとする課題】
しかしながら、上記ＡＶ／Ｃ  Ｐｒｉｎｔｅｒ  Ｓｕｂｕｎｉｔにおける印刷コマンドＣＡＰＴＵＲＥは、そのコマンドの発行に続いて、そのコマンドを発行したコントローラが自ら保有する印刷オブジェクトをプリンタ装置に出力するプッシュ型の印刷形態（Ｐｕｓｈ  Ｐｒｉｎｔ）を前提としており、プリンタ装置自ら必要な印刷オブジェクトを必要な場所から取り出す（プリンタ装置からのデータ取得要求に基づいて印刷を実行する）というプル型の印刷形態（Ｐｕｌｌ  Ｐｒｉｎｔ）に対応していないという第１の課題がある。
【００１１】
また、ＨＴＭＬなどで記載されたドキュメントでは、内部で他の印刷オブジェクトへのリンク（リンクパス情報）が記述されている。このリンクパス情報は、絶対パス（ファイルの位置を一意的に示す）だけでなく、相対パス（ある基準点からの相対位置によってファイルの位置を示す）で表現される可能性がある。そのために、リンクパス情報が、相対パスである場合には、絶対パスと同様な方法を用いては、印刷対象のファイルを取得することができないという第２の課題がある。
【００１２】
さらに、ＩＥＥＥ１３９４規格においては、印刷データ供給装置のアドレスに関して、ＩＥＥＥ１３９４規格固有のバスリセットの影響が生じる。つまり、バスリセットは、ＩＥＥＥ１３９４ネットワーク上の機器の電源ｏｎ／ｏｆｆ、ケーブルの挿抜毎に発生するため、アドレスが再設定（変更）された場合に、正しいデータが取得できないおそれがあるという第３の課題がある。
【００１３】
そこで、本発明は、このような状況に鑑みてなされたものであり、プル型のプリンタ装置が持っている機能を有効に発揮させることが可能な印刷データ転送方法等を提供することを第１の目的とする。
【００１４】
また、リンクパス情報が相対パスである場合にも、ファイルを取得することができる印刷ファイル取得システム等を提供することを第２の目的とする。
さらに、バスリセット時においても、正しいデータを取得することができるデータ転送システム等を提供することを第３の目的とする。
【００１５】
【課題を解決するための手段】
上記第１の目的を達成するために、伝送路で接続された印刷データ供給装置とプリンタ装置間に印刷データを転送するための方法であって、前記印刷データ供給装置が保持する印刷データを印刷させるため、前記印刷データ供給装置の属性情報を伴って前記プリンタ装置に対して印刷要求する段階と、前記要求に応じ、前記プリンタ装置が前記属性情報に基づいて前記印刷データ供給装置にデータ要求する段階と、前記データ要求に応じ、前記印刷データ供給装置が印刷データを前記プリンタ装置に送信する段階とを有する。
【００１６】
ここで、前記プリンタ装置は、前記属性情報として印刷対象データへのリンクパス情報を受信し、印刷対象データ本体と印刷対象データに記載されたリンクパス情報で特定される印刷データとを前記印刷データ供給装置に対して要求してもよいし、例えば、ＸＨＴＭＬ−Ｐｒｉｎｔ形式等で記述された、印刷対象データへのリンクパス情報が記載されたリンクファイルを受信し、前記印刷データ供給装置に対し、前記受信したリンクファイルに記載されたリンクパス情報で特定される印刷データを要求してもよい。
【００１７】
より具体的に、ＩＥＥＥ１３９４に適合させて言うならば、ＡＶ／Ｃプリンタコマンドのキャプチャコマンドを受信したプリンタ装置は、印刷対象データや印刷対象データからリンクされたＪＰＥＧやＰＮＧ、テキストなどのデータを取得するために、ＡＶ／Ｃコマンドを発行し、既に確立されているコネクションを経由してデータを受信する。
【００１８】
なお、前記属性情報で指定されたリンクパス情報または前記印刷対象データ内に記載されたリンクパス情報がある基準点からの位置を示す相対パスである場合、前記属性情報に、さらに前記リンクパス情報の基準位置を指定してもよい。また、前記印刷対象データ内に記載されたリンクパス情報の基準位置は、前記印刷要求における属性情報で指定された印刷対象データのリンクパス情報から抽出してもよい。また、前記プリンタ装置はこれらの基準位置を前記印刷要求に対する完了通知を送信するまで保持してもよい。
【００１９】
また、前記データ要求と前記送信とを繰り返してもよい。さらに、前記コネクションは、プリンタ装置によって確立されたものであってもよいし、前記印刷データ供給装置及び前記プリンタ装置以外の印刷制御装置によって確立されたものであってもよい。
【００２０】
また、前記属性情報が、前記印刷データ供給装置を特定するためのアドレス情報であってもよい。具体的には、前記アドレス情報はＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるＮｏｄｅ＿ＩＤ又はＥＵＩ＿６４であってもよいし、ＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるＮｏｄｅ＿ＩＤ又はＥＵＩ＿６４に、Ｓｕｂｕｎｉｔ＿ｔｙｐｅとＳｕｂｕｎｉｔ＿ＩＤとを組み合わせたものであってもよい。
【００２１】
また、前記属性情報が、前記コネクションにおける印刷データ供給装置側の入力ポートを特定するコネクション情報であってもよい。具体的には、前記コネクション情報はＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるｓｕｂｕｎｉｔ＿ｐｌｕｇ＿ｉｄであってもよい。
【００２２】
また、前記属性情報が、前記印刷データ供給装置の種類を特定するタイプ情報であってもよい。具体的には、前記タイプ情報はＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるＳｕｂｕｎｉｔ＿Ｔｙｐｅであってもよい。
【００２３】
また、前記プリンタ装置は、前記印刷データ供給装置以外の印刷制御装置から前記印刷要求を受信してもよいし、前記要求された印刷に必要なデータ受信が完了した後に前記印刷要求に対する完了通知を送信してもよい。
【００２４】
また、前記印刷要求には、前記印刷データ供給装置と関連しない第１パラメータ群と前記印刷データ供給装置に関連する第２パラメータ群とが含まれていてもよい。このとき、前記印刷要求は、前記第１パラメータ群と前記第２パラメータ群とを含む一つの命令であってもよいし、前記印刷要求は、前記第１パラメータ群を含む第１命令と、前記第２パラメータ群を含む第２命令とに分離されていてもよい。
【００２５】
また、前記伝送路におけるアドレスが再設定された場合に、前記印刷データ供給装置と前記プリンタ装置の間のコネクションを復旧し、次に、前記プリンタ装置に対する印刷要求を再送し、前記再送要求に対し、前記プリンタ装置は、要求された印刷に必要なデータ受信を再開してもよい。ここで、前記再送要求は、バスリセット後の印刷データ供給装置のアドレス情報に基づくものであってもよい。
【００２６】
また、前記印刷データ供給装置に対し、前記リンクパス情報の基準位置を設定しても良い。なお、前記印刷データ供給装置に対する基準位置の設定はコネクション毎に設定しても良い。
【００２７】
また、前記プリンタ装置は、前記印刷データ供給装置から取得した印刷オブジェクトに、他の印刷オブジェクトへの参照を示すリンク情報が含まれているときには、参照先の印刷オブジェクトを印刷するタイミングになったときに、前記印刷データ供給装置に対して前記リンク情報が示す参照先の印刷オブジェクトの送信を要求することにより、当該参照先の印刷オブジェクトを取得し、取得した印刷オブジェクトを印刷してもよい。
【００２８】
また、前記印刷データ供給装置は、前記基準位置が変更された旨を前記印刷データの要求に対するレスポンスで通知してもよいし、前記印刷データ供給装置は、着脱可能な記録媒体を備え、前記記録媒体の装着があった旨を示すパラメータを用いて、前記基準位置が変更された旨を通知してもよい。なお、前記プリンタ装置に対する印刷要求前に、前記印刷データ供給装置に対して前記リンクパス情報の基準位置を設定し、前記印刷要求に対する完了通知を受信するまで前記基準位置の設定を変更しないのが好ましい。
【００２９】
なお、前記属性情報には、印刷データ供給装置が保管する印刷データのうち、印刷の対象となる第１印刷データの格納位置を絶対パスで指定する第１リンクパス情報と、前記第１印刷データによって参照される第２印刷データの前記基準位置とが含まれてもよい。
【００３０】
また、前記印刷データ転送方法は、さらに、前記印刷要求に先立ち、前記伝送路上に、印刷データを保持する印刷データ供給装置と印刷データを印刷するプリンタ装置が接続されているか否かを確認し、前記印刷データ供給装置及び前記プリンタ装置の少なくとも一方が接続されていない場合には、エラーである旨をユーザに通知するステップを含むのが好ましい。
【００３１】
また、前記プリンタ装置に対する印刷要求では、前記印刷データ供給装置に印刷データを要求する機能を前記プリンタ装置が有するか否かの問い合わせが含まれ、前記印刷データ転送方法は、さらに、前記プリンタ装置が前記問い合わせに対して返答するステップを含んでもよい。ここで、前記プリンタ装置が、前記問い合わせに対して前記機能を有していない旨の返答をした場合には、前記印刷データ供給装置は、前記プリンタ装置からの印刷データの要求を受けることなく、印刷データを前記プリンタ装置に送信してもよい。また、前記印刷データ転送方法は、さらに、前記プリンタ装置が、前記問い合わせに対して前記機能を有していない旨の返答をし、かつ、印刷の対象となる印刷データが上記機能を有するプリンタ装置のみによって印刷可能な場合に、エラーである旨をユーザに通知するステップを含んでもよい。
【００３２】
なお、本発明は、このような印刷データ転送方法として実現することができるだけでなく、これらの印刷データ転送方法を実行する印刷制御装置、印刷データ供給装置及びプリンタ装置からなる印刷システムとして実現したり、それらの装置単体として実現したり、その特徴的な動作をパーソナルコンピュータ等の汎用のコンピュータに実行させて機能させるプログラムとして実現することもできる。そして、そのプログラムは、ＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体やインターネット等の伝送媒体を介して頒布することができるのは言うまでもない。
【００３３】
また、上記第２の目的を達成するために、本発明の印刷ファイルの取得システムは、印刷ファイルの格納位置を指定するリンクパス情報を保管する保管手段と、前記保管手段から取得したリンクパス情報の一部又は全てが、所定の基準点からの相対的な位置を示す相対パスである場合に、前記所定の基準点を示す基準位置データに基づき、前記相対パスを、印刷ファイルの絶対的な位置を示す絶対パスに変換する変換手段と、前記変換手段により変換された絶対パスから特定可能な印刷ファイルを取得する取得手段と、を有する。
【００３４】
さらに、上記第３の目的を達成するために、本発明の印刷データの転送システムは、伝送路で接続された印刷データ供給装置とプリンタ装置とを備え、前記印刷データ供給装置から前記プリンタ装置に対して印刷データを転送する印刷データ転送システムであって、バスリセット後、前記印刷データ供給装置と前記プリンタ装置との接続を復旧し印刷データ転送を再開する場合に、バスリセット後の前記印刷データ供給装置および前記プリンタ装置のネットワーク接続情報を取得するネットワーク情報取得手段と、前記ネットワーク情報取得手段から得られたネットワーク接続情報に基づいて印刷データ供給装置とプリンタ装置との間のデータ転送コネクションを復旧するコネクション復旧手段と、前記ネットワーク情報取得手段から得られたネットワーク接続情報に基づいて印刷要求を再送する印刷要求再送手段と、前記印刷要求再送手段により再送された印刷要求に基づき、印刷オブジェクトを取得する取得手段と、を有する。
【００３５】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
図１は、本実施の形態における印刷システムのシステムモデルを示す図である。このシステムモデルは、ＩＥＥＥ１３９４バスで接続されたコントローラ１１とＨＤＤユニット１２とプリンタユニット１３とから構成され、ＩＥＥＥ１３９４で規定される従来のシステムモデルと基本的な構成は同一であるが、プル型プリンタ装置に固有の動作（ＨＤＤユニット１２とプリンタユニット１３間のやりとり）が追加されている点に特徴を有する。
【００３６】
コントローラ１１は、ＩＥＥＥ１３９４バス上でコネクション管理機能を実装したＳＴＢ等の機器である。ＨＤＤユニット１２は、ハードディスクドライブ装置（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等のバス上でのデータ送信機器（Ｐｒｏｄｕｃｅｒ）であり、送信データを保有するストレージサブユニット１２ａを有している。プリンタユニット１３は、プリンタ装置等のバス上でのデータ受信機器（Ｃｏｎｓｕｍｅｒ）であり、受信データを印刷するプリンタサブユニット１３ａを有する。
【００３７】
なお、ユニットはＡＶ機器に対応し、サブユニットはＡＶ機器の機能を司るもの（仮想的な機能単位）である。サブユニットの組み合わせがユニットとなり、ユニットの中をどのような機能単位で分けるかは適宜決定される。また、サブユニットは、バーチャルな機能単位であり、必ずしもハードウェア構成と一致するものではない。
【００３８】
本図における特徴は、ＨＤＤユニット１２とプリンタユニット１３間のやりとり（コマンド及びレスポンス）に示されているように、コントローラ１１等がプリンタユニット１３に印刷オブジェクトをプッシュして印刷させるだけでなく、プリンタユニット１３がＨＤＤユニット１２から印刷オブジェクトをプルして印刷し得る点である。
【００３９】
なお、印刷オブジェクトは、既に確立されている非同期データ転送用のコネクション（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎ）経由で伝送される。ＩＥＥＥ１３９４  ＡＶ／Ｃ規格におけるコントローラ−サブユニットモデルとして説明すると、コントローラ１１はプリンタユニット１３内のプリンタサブユニット１３ａに対するコントローラである。また既存のプッシュ型のプリントのようにコントローラ１１の指示で、ＨＤＤユニット１２からプリンタユニット１３に印刷オブジェクトをプッシュする場合は、コントローラ１１はＨＤＤユニット１２内のストレージサブユニット１２ａに対するコントローラとなる。また、本実施の形態で実現可能なプル型のプリントのように、印刷処理中にプリンタユニット１３がＨＤＤユニット１２から印刷オブジェクトをプルする場合は、プリンタユニット１３がＨＤＤユニット１２内のストレージサブユニット１２ａに対するコントローラとなる。この際、プリンタサブユニット１３ａ、またはプリンタサブユニット１３ａとは別のモジュールが内部的にコントローラの役目を果たす。
【００４０】
図２は、図１に示されたシステムモデルにおける通信シーケンスを示す図であり、従来技術における図４０に対応する。図４０と異なる点は、フェーズｏｂｊｅｃｔ  ｐｕｓｈにおけるやりとりである。本図のシーケンスにおいては、図４０のシーケンスで使用されたコマンドＣＡＰＴＵＲＥに代えて、コマンドＣＡＰＴＵＲＥ  ＲＥＦがコントローラ１１からプリンタユニット１３に発せられ、そのコマンドのパラメータに従って、プッシュ型又はプル型による印刷オブジェクトの転送及び印刷が実行される点が図４０のシーケンスと異なっている。
【００４１】
なお、コマンドＣＡＰＴＵＲＥ  ＲＥＦは、従来のコマンドＣＡＰＴＵＲＥの機能を踏襲しつつ、プル型印刷を可能にするための機能を追加した、コマンドＣＡＰＴＵＲＥの拡張コマンドに相当する。このコマンドＣＡＰＴＵＲＥ  ＲＥＦは、このコマンドを発行した装置とは異なる装置（ユニット、サブユニット）に置かれている印刷オブジェクトへの参照（印刷オブジェクトの所在を示すパラメータ。リンクパス情報のこと）を含んでいるので、このコマンドを受けたプリンタユニット１３による印刷オブジェクトのプル動作が可能となる。つまり、コントローラ１１が、コントローラ１１とは別の機器であるプリンタユニット１３に対し、コントローラ１１及びプリンタユニット１３とは別の機器であるＨＤＤユニット１２上のデータを印刷するよう指示することが可能となる。
【００４２】
具体的には、図２のフェーズｏｂｊｅｃｔ  ｐｕｓｈにおいて、図３に示される通信シーケンスが行われる。まず、コントローラ１１がプリンタユニット１３にコマンドＣＡＰＴＵＲＥ  ＲＥＦを発行すると（ステップＳ１０）、プリンタユニット１３はレスポンスＩＮＴＥＲＩＭ  ｒｅｓｐｏｎｓｅを返す（ステップＳ１１）。続いて、プリンタユニット１３は、ＨＤＤユニット１２に対してファイル送信要求コマンド等を発行することで、印刷オブジェクトの先頭あるいは主要な構成オブジェクトであるメインオブジェクト（例えば、ＨＴＭＬファイル）の送信を要求する（ステップＳ１２）。これによって、メインオブジェクトは、既に確立されているコネクションａｓｙｎｃｈｒｏｎｏｕｓ  ｃｏｎｎｅｃｔｉｏｎ経由で、ＨＤＤユニット１２からプリンタユニット１３に転送される（ステップＳ１３）。
【００４３】
プリンタユニット１３は印刷メインオブジェクトの印刷処理を行い、印刷処理中にリンクパス情報を抽出した場合など、必要に応じて、ＨＤＤユニット１２に対してファイル送信要求コマンドを発行することで、メインオブジェクトに記述されている参照オブジェクト（ハイパーリンクが張られた参照先の画像オブジェクト等）の送信を要求する（ステップＳ１４）。これによって、参照オブジェクトは、上記コネクション経由で、ＨＤＤユニット１２からプリンタユニット１３に転送される（ステップＳ１５）。
【００４４】
このようなメインオブジェクトや参照オブジェクトの転送シーケンスを必要回数だけ繰り返すことによって全ての印刷オブジェクトの取得を完了すると、プリンタユニット１３は、コントローラ１１に対して、コマンドＣＡＰＴＵＲＥ  ＲＥＦに対するレスポンスＡＣＣＥＰＴＥＤを返信する（ステップＳ１６）。これによって、プル型の印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦに対する実行が完了する。
【００４５】
なお、コマンドＣＡＰＴＵＲＥ  ＲＥＦに対する応答レスポンスＡＣＣＥＰＴＥＤの返信は、印刷処理を進めるにあたって印刷ジョブを構成するデータ（印刷メインオブジェクト及び参照オブジェクト）の受信が不要になった段階をもって行うことで、一度  ＣＡＰＴＵＲＥ  ＲＥＦに対するレスポンスを受信したことを契機として切断したコネクションを、印刷中の紙づまり等による再処理のために再度コネクションを確立するといった手間を回避することができる。具体的には、プリンタユニット１３の実装が、印刷ジョブを構成する全てのデータを受信し、プリンタユニット１３内に格納した後に実際の印刷処理を行う実装である場合は、印刷ジョブを構成する全てのデータを受信完了した時点でコマンドＣＡＰＴＵＲＥ  ＲＥＦに対する応答レスポンスＡＣＣＥＰＴＥＤの返信を行う。一方、プリンタユニット１３の実装が、コマンドＣＡＰＴＵＲＥ  ＲＥＦ受信後印刷メインオブジェクトから順次印刷処理していく実装であり、該当データが必要になる度にその都度受信する実装である場合は、印刷ジョブの印刷が完了した時点でコマンドＣＡＰＴＵＲＥ  ＲＥＦに対する応答レスポンスＡＣＣＥＰＴＥＤの返信を行う。
【００４６】
図４は、コマンドＣＡＰＴＵＲＥ  ＲＥＦの詳細な命令フォーマットを従来のコマンドＣＡＰＴＵＲＥと比較しながら説明するための図であり、図４（ａ）は、プッシュ型プリントを前提とする従来のコマンドＣＡＰＴＵＲＥ、図４（ｂ）は、プッシュ型及びプル型プリントが可能であり、図４（ｃ）はプル型プリントのみが可能な本発明に係るコマンドＣＡＰＴＵＲＥ  ＲＥＦのＡＶ／Ｃコマンドフレームを示す。なお、ここでは、両コマンドのＡＶ／Ｃコマンドフレームにおけるオペランド（命令に付加されるパラメータ）とその長さ（バイト数）が示されている。また、図４（ｂ）及び（ｃ）におけるコマンドフレームはあくまでも例であり、図４（ｂ）に示されたコマンドフレームと図４（ｃ）に示されたコマンドフレームとをマージしても構わないし、パラメータの並びがどのような順番でも構わないことは言うまでもない。
【００４７】
図４（ａ）に示されるように、プッシュ型プリントを前提とする従来のコマンドＣＡＰＴＵＲＥは、オペランドとして、具体的な動作を指定するパラメータｓｕｂｆｕｎｃｔｉｏｎ、返信用のパラメータｓｔａｔｕｓ及びｒｅｓｕｌｔ、コネクションにおけるプリンタユニット（データ受信機器；ｃｏｎｓｕｍｅｒ）側の入力ポートを指定するパラメータｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇ、命令の対象となるプリントジョブを指定するパラメータｐｒｉｎｔ＿ｊｏｂ＿ＩＤ、ＪＰＥＧやＧＩＦ等の印刷オブジェクトのフォーマットを指定するパラメータｉｍａｇｅ＿ｆｏｒｍａｔ＿ｓｐｅｃｉｆｉｅｒ、転送する印刷オブジェクトのデータサイズを指定するパラメータｄａｔａ＿ｓｉｚｅ、イメージデータとしてのピクセル数を指定するパラメータｉｍａｇｅ＿ｓｉｚｅ＿ｘ及びｉｍａｇｅ＿ｓｉｚｅ＿ｙ、Ｎｉｎ１印刷指定時のコマンド応答において、次に転送される印刷オブジェクトに関する情報がセットされるパラメータｎｅｘｔ＿ｐｉｃ及びｎｅｘｔ＿ｐａｇｅの指定が可能な構造となっている。
【００４８】
これに対し、図４（ｂ）に示されるように、本実施の形態におけるプッシュ型及びプル型プリントが可能なコマンドＣＡＰＴＵＲＥ  ＲＥＦは、オペランドとして、従来のコマンドＣＡＰＴＵＲＥで用いられたパラメータｓｕｂｆｕｎｃｔｉｏｎ、ｓｔａｔｕｓ、ｒｅｓｕｌｔ、ｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇ、ｐｒｉｎｔ＿ｊｏｂ＿ＩＤ、ｉｍａｇｅ＿ｆｏｒｍａｔ＿ｓｐｅｃｉｆｉｅｒ、ｄａｔａ＿ｓｉｚｅ、ｎｅｘｔ＿ｐａｇｅに加えて、５つの新たなパラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ｉｄ、ｏｂｊｅｃｔ＿ｐａｔｈが追加されている。
【００４９】
パラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤは、プルすべき印刷オブジェクトが置かれている場所、つまり、ＨＤＤユニット等のデータ送信機器（ｐｒｏｄｕｃｅｒ）を指定するオペランドである。ここで、もし、この印刷コマンドを発するコントローラがデータ送信機器（ｐｒｏｄｕｃｅｒ）を兼ねている（印刷オブジェクトを保有している）場合には、このパラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤの値として自装置の値に設定しておくことで、自ら保有する印刷オブジェクトの印刷を可能としてもよい。
【００５０】
また、パラメータｓｏｕｒｃｅ＿ｐｌｕｇは、コネクションにおけるデータ送信機器（ｐｒｏｄｕｃｅｒ）側の入力ポートを指定するオペランドである。このパラメータｓｏｕｒｃｅ＿ｐｌｕｇは、コントローラ１１がＨＤＤユニット１２とプリンタユニット１３間のコネクションを確立したときに（図２のフェーズｃｏｎｎｅｃｔｉｏｎ）、取得したパラメータの１つである。
【００５１】
また、パラメータｓｕｂｕｎｉｔ＿ｔｙｐｅ及びｓｕｂｕｎｉｔ＿ｉｄは、データ送信機器（ｐｒｏｄｕｃｅｒ）のタイプ（例えば、ＤＳＣ（ＤｉｇｉｔａｌＳｔｉｌｌ  Ｃａｍｅｒａ）／ＳＴＢ／ＤＴＶ（Ｄｉｇｉｔａｌ  ＴＶ）／ＨＤＤ等の区別）及びその装置番号を指定するオペランドである。データ送信機のタイプは、機器特性の差やバージョンの差に基づき、情報の授受に関するコマンドの体系や順序等が変わる場合に、その種別を識別するためのものである。
【００５２】
また、パラメータｏｂｊｅｃｔ＿ｐａｔｈは、ＨＤＤ等のデータ送信機器（ｐｒｏｄｕｃｅｒ）における階層化されたファイルシステムでの印刷オブジェクト（メインオブジェクト）の格納場所を示すオペランドである。具体的には印刷メインオブジェクトのリンクパス情報が格納される。
【００５３】
また、同じくコマンド図４（ｃ）に示す本実施の形態におけるプル型プリントのみが可能なコマンドＣＡＰＴＵＲＥ  ＲＥＦでは、オペランドとして、従来のコマンドＣＡＰＴＵＲＥで用いられたパラメータｓｕｂｆｕｎｃｔｉｏｎ、ｓｔａｔｕｓ、ｒｅｓｕｌｔ、ｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇ、ｐｒｉｎｔ＿ｊｏｂ＿ＩＤ、ｉｍａｇｅ＿ｆｏｒｍａｔ＿ｓｐｅｃｉｆｉｅｒ、ｄａｔａ＿ｓｉｚｅに加えて、６つの新たなパラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ｉｄ、ｏｂｊｅｃｔ＿ｐａｔｈ、ｂａｓｅ＿ｐａｔｈが追加されている。
【００５４】
なお、図中に「疑問符（クエスチョンマーク）」が付いているｄａｔａ＿ｓｉｚｅ、ｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇ、ｓｕｂｕｉｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ、ｂａｓｅ＿ｐａｔｈに関しては、印刷要求を行う上で必須ではないが、存在すればプリンタユニット１３における処理負荷が軽減するなどの利点を持つパラメータである。したがってコマンドフレームに存在しなくとも良いし、存在しても値を設定する必要のないパラメータである（詳しくは後述する）。以下、具体的にパラメータの内容を説明する。
【００５５】
パラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤは、プルすべき印刷オブジェクトが置かれている場所、つまり、ＨＤＤユニット等のデータ送信機器（ｐｒｏｄｕｃｅｒ）のアドレスを指定するオペランドである。ここで、この印刷コマンドを発するコントローラがデータ送信機器（ｐｒｏｄｕｃｅｒ）を兼ねている（印刷オブジェクトを保有している）場合には、このパラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤの値として自装置の値を設定しておくことで、自ら保有する印刷オブジェクトの印刷が可能となる。
【００５６】
また、パラメータｓｏｕｒｃｅ＿ｐｌｕｇは、コネクションにおけるデータ送信機器（ｐｒｏｄｕｃｅｒ）側の入力ポートを指定するオペランドである。このパラメータｓｏｕｒｃｅ＿ｐｌｕｇは、コントローラ１１がＨＤＤユニット１２とプリンタユニット１３間のコネクションを確立したときに（図２のフェーズｃｏｎｎｅｃｔｉｏｎ）、取得したパラメータの１つである。
【００５７】
また、パラメータｓｕｂｕｎｉｔ＿ｔｙｐｅ及びｓｕｂｕｎｉｔ＿ｉｄは、データ送信機器（ｐｒｏｄｕｃｅｒ）のタイプ（例えば、ＤＳＣ（ＤｉｇｉｔａｌＳｔｉｌｌ  Ｃａｍｅｒａ）／ＳＴＢ／ＤＴＶ（Ｄｉｇｉｔａｌ  ＴＶ）／ＨＤＤ等の区別）及びその装置番号を指定するオペランドである。データ送信機のタイプは、機器特性の差やバージョンの差に基づき、情報の授受に関するコマンドの体系や順序等が変わる場合に、その種別を識別するためのものである。
【００５８】
また、パラメータｏｂｊｅｃｔ＿ｐａｔｈは、ＨＤＤ等のデータ送信機器（ｐｒｏｄｕｃｅｒ）における階層化されたファイルシステムでの印刷オブジェクト（メインオブジェクト）の格納場所を示すオペランドである。具体的には印刷メインオブジェクトのリンクパス情報が格納される。
【００５９】
また、パラメータｂａｓｅ＿ｐａｔｈは、詳しくは後述するが、相対パスの解決時に相対パスの基準位置として用いるものであり、プリンタユニットにおいて印刷メインオブジェクトから抽出した参照オブジェクトのリンクパス情報が相対パスであった場合、本パラメータを用いてリンクパス情報を絶対パスに変換するためのものである。後述するが、ｏｂｊｅｃｔ＿ｐａｔｈが相対パスである場合においても、同じく相対パスの基準位置として本パラメータを用い、ｏｂｊｅｃｔ＿ｐａｔｈを絶対パスに変換する。
【００６０】
このような付加されたパラメータを参照することによって、このコマンドＣＡＰＴＵＲＥ  ＲＥＦを受け取ったプリンタユニットは、コントローラとして、データ送信機器（ｐｒｏｄｕｃｅｒ）に対して、サブユニット及びデータパスを指定しながらメインオブジェクトや参照オブジェクト等の印刷オブジェクトを要求し取得することで、プル型のプリントを行うことができる。このとき、パラメータｓｕｂｕｎｉｔ＿ｔｙｐｅで特定されるコマンド体系や順序に従って、データ送信機器と情報の授受を行う。
【００６１】
なお、本図４（ｂ）に示されたコマンドＣＡＰＴＵＲＥ  ＲＥＦでは、従来のコマンドＣＡＰＴＵＲＥで用いられたパラメータの一部ｉｍａｇｅ＿ｓｉｚｅ＿ｘ、ｉｍａｇｅ＿ｓｉｚｅ＿ｙ及びｎｅｘｔ＿ｐｉｃが使用されていない。これは、図４（ｂ）に示されたコマンドフォーマットは、ＨＴＭＬファイル等のリンク情報を含むファイルを対象としているからである。
【００６２】
なお、このようなファイルではなく、ラスターイメージデータを対象とする場合には、従来コマンドで用いられている全てのパラメータを含ませてもよい。また、本図４（ｃ）に示されたコマンドＣＡＰＴＵＲＥ  ＲＥＦでは、加えてｎｅｘｔ＿ｐａｇｅが使用されていない。これはコマンドフレームに含ませても構わないが必須ではないため省略したものである。
【００６３】
また、上記コマンドＣＡＰＴＵＲＥ  ＲＥＦは、参照オブジェクト（メインオブジェクトから参照されている印刷オブジェクト）がメインオブジェクトと同一のユニット及びサブユニット内に存在し、同一のコネクションパスで伝送できることが前提となっている。
【００６４】
ここでリンクパス情報について説明する。
リンクパス情報は、前述のようにファイルの位置を一意に指定する情報のことであり、例えばローカルエリア上のファイル位置を指定するファイルパス（例：ｃ：￥ｗｉｎｄｏｗｓ￥ｒｅｇｅｄｉｔ．ｅｘｅ）や、インターネットなどのネットワーク上のファイル位置を指定するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ  例：ｈｔｔｐ：／／ｗｗｗ．ｐａｎａｓｏｎｉｃ．ｃｏ．ｊｐ／ｐｒｏｄｕｃｔｓ／ｔｖ／ｉｎｄｅｘ．ｈｔｍｌ）などのことを指す。ＨＴＭＬファイルなどでは、リンクパス情報が絶対パスと相対パスのどちらか一方で記述されている。
【００６５】
絶対パスはその情報のみでデータの位置を一意に指定するが、相対パスは、ある基準位置から目的のデータまでの道筋を記述したものであり、基準位置との組み合わせることでデータの位置を一意に指定することができる。プル型のプリントを行う場合、リンクパス情報が全て絶対パスであれば特に問題はないが、リンクパス情報の一部または全てが相対パスである場合もあり得る。この場合は、プリンタユニット１３またはＨＤＤユニット１２が何らかの手段によって相対パスを絶対パスに変換するパスの解決を行う必要がある。
【００６６】
上記コマンドＣＡＰＴＵＲＥ  ＲＥＦを受けたプリンタユニットがデータ送信機器（ｐｒｏｄｕｃｅｒ）に置かれたＨＴＭＬファイルをプルする場合におけるＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）の解決は、以下の通りである。
（１）ＵＲＬが相対パスで指定されている場合
ＵＲＬが相対パスで指定されている場合には、以下に述べる３つの方法のいずれかによって最終的なＵＲＬ（絶対パス）が解決される。
【００６７】
まず、パスの解決をプリンタユニット１３において行う第１の方法について説明する。
この方法は、図４（ｂ）のようにコマンドフレームを簡略化するため、ｂａｓｅ＿ｐａｔｈパラメータを省略したＣＡＰＴＵＲＥ  ＲＥＦコマンドを採用した場合に最適である。後述する第２の方法に比べ文字列を操作する分プリンタユニット１３の負荷は増えるが、第２の方法に比べＣＡＰＴＵＲＥ  ＲＥＦコマンドフレームの長さを節約できる利点や、後述する第３の方法に比べパスの解決が印刷指示毎に独立しており確実にパスの解決を行えるという利点がある。具体的に説明すると、例えば、図４（ｂ）のパラメータｏｂｊｅｃｔ＿ｐａｔｈ（Ａ）が、”／ｔｍｐ／１３９４ｔａ．ｈｔｍｌ”であり、メインオブジェクトから参照されている参照オブジェクトの指定（Ｂ）が、＜ｉｍａｇｅ  ｂｏｒｄｅｒ＝”０”ｓｒｃ＝”Ｉｍａｇｅｓ／Ｑ４＿ｐｌｕｇ．ｇｉｆ”  ｗｉｄｔｈ＝”２１０”  ｈｅｉｇｈｔ＝”４２”＞である場合には、最終的なファイルパスＦｉｌｅ＿ｐａｔｈ（＝（Ａ−メインオブジェクト名）＋Ｂ）は、”／ｔｍｐ／Ｉｍａｇｅｓ／Ｑ４＿ｐｌｕｇ．ｇｉｆ”と決定される。
【００６８】
このようにパスの解決の第１の方法におけるポイントは、コントローラ１１より受信したコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータｏｂｊｅｃｔ＿ｐａｔｈをもとに、プリンタユニット１３が印刷メインオブジェクトの置かれている位置を導出し、この導出した位置を以後相対パスの基準位置として活用することで、パスの解決をプリンタユニット１３が行う点である。
【００６９】
次にパスの解決をプリンタユニット１３において行う第２の方法について説明する。
この方法は、図４（ｃ）のように、コマンドフレームに相対パスの基準位置であるｂａｓｅ＿ｐａｔｈパラメータを追加したＣＡＰＴＵＲＥ  ＲＥＦコマンドを採用する場合に限定されるが、前述の第１の方法に比べ処理が容易であり、第３の方法に比べパスの解決が印刷指示毎に独立しており確実にパスの解決を行えるという利点がある。具体的には、図４（ｃ）のパラメータｏｂｊｅｃｔ＿ｐａｔｈ（Ａ）が相対パスである場合、パラメータｂａｓｅ＿ｐａｔｈで指定されている相対パスの基準位置を用いて相対パスを絶対パスに変換する。例えば、パラメータｏｂｊｅｃｔ＿ｐａｔｈが相対パス”．／１３９４ｔａ．ｈｔｍｌ”であり、パラメータｂａｓｅ＿ｐａｔｈが”ｃ：／ｗｉｎｄｏｗｓ／”である場合は、ｂａｓｅ＿ｐａｔｈ  ＋  ｏｂｊｅｃｔ＿ｐａｔｈから、最終的なファイルパスは”ｃ：／ｗｉｎｄｏｗｓ／１３９４ｔａ．ｈｔｍｌ”となる。
【００７０】
このようにして導出した絶対パスを用いて、ストレージサブユニット１２ａに印刷メインオブジェクトの送信要求を行う。同じく、印刷メインオブジェクトに記載されているリンクパス情報が相対パスであった場合にも、同様にパラメータｂａｓｅ＿ｐａｔｈを用いてパスの解決を行う。例えば印刷メインオブジェクトに＜ｉｍａｇｅ  ｂｏｒｄｅｒ＝”０”  ｓｒｃ＝”Ｉｍａｇｅｓ／Ｑ４＿ｐｌｕｇ．ｇｉｆ”  ｗｉｄｔｈ＝”２１０”  ｈｅｉｇｈｔ＝”４２”＞という記載がある場合には、リンクパス情報は”Ｉｍａｇｅ／Ｑ４＿ｐｌｕｇ．ｇｉｆ”であり、これは相対パスである。したがって  ｂａｓｅ＿ｐａｔｈ  ＋  ”Ｉｍａｇｅ／Ｑ４＿ｐｌｕｇ．ｇｉｆ”から、最終的なパスは、”ｃ：／ｗｉｎｄｏｗｓ／Ｉｍａｇｅｓ／Ｑ４＿ｐｌｕｇ．ｇｉｆ”となる。
【００７１】
このようにコマンドＣＡＰＴＵＲＥ  ＲＥＦパラメータｂａｓｅ＿ｐａｔｈは、印刷メインオブジェクト内に記載されたリンクパス情報が相対パスである度に、パスの解決に使用する。したがって、プリンタユニット１３は、コマンドＣＡＰＴＵＲＥ  ＲＥＦパラメータｂａｓｅ＿ｐａｔｈを、当該コマンドで印刷指示された印刷ドキュメントのデータ受信が完了するまで保持する。
【００７２】
このようにパスの解決の第２の方法におけるポイントは、コントローラ１１が相対パスの基準位置をコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータｂａｓｅ＿ｐａｔｈを用いてプリンタユニット１３に通知しておくことで、この通知された基準位置を用いてパスの解決をプリンタユニット１３が行う点である。なお、第２の方法において前述した例のようにｏｂｊｅｃｔ＿ｐａｔｈを相対パスとすることで、図４（ｃ）に示したコマンドＣＡＰＴＵＲＥ  ＲＥＦのコマンドフレームの長さを節約することができる。
【００７３】
最後に、ＨＤＤユニット１２においてパスの解決を行う第３の方法について述べる。
この方法は、コントローラ１１がＨＤＤユニット１２に相対パスの基準位置としてカレントディレクトリ情報をあらかじめ設定しておく方法である。第１の方法に比べパスの解決をＨＤＤユニット１２で行うのでプリンタユニットの負荷を軽減でき、第２の方法に比べＣＡＰＴＵＲＥ  ＲＥＦのコマンドフレームを節約できるという利点がある。具体的に説明すると、例えば図４（ｂ）のパラメータｏｂｊｅｃｔ＿ｐａｔｈ（Ａ）が、相対パス”．／ｔｍｐ／１３９４ｔａ．ｈｔｍｌ”であり、カレントディレクトリ情報（Ｃ）が”ｃ：／ｗｉｎｄｏｗｓ／”であるとする。プリンタユニット１３がｏｂｊｅｃｔ＿ｐａｔｈ（Ａ）で特定できるＨＤＤユニット１２上のデータを受信する場合、前記第１、第２の方法とは異なりプリンタユニットにおいてパスの解決は行わず、そのまま相対パスである（Ａ）を用いてＨＤＤユニット１２にデータの送信を要求する。この要求を受けるとＨＤＤユニットはカレントディレクトリ情報を用いてパスの解決を行い、最終的なファイルパスを（Ｃ）＋（Ａ）である”ｃ：／ｗｉｎｄｏｗｓ／ｔｍｐ／１３９４．ｈｔｍｌ”として導出し、該当するデータをプリンタユニット１３へ送信する。
【００７４】
このようにパスの解決の第３の方法におけるポイントは、コントローラ１１が相対パスの基準位置をカレントディレクトリ情報としてＨＤＤユニット１２に設定しておくことで、この設定されたカレントディレクトリ情報を用いてパスの解決をＨＤＤユニット１２が行う点である。
【００７５】
なお、カレントディレクトリ情報の設定方法は任意であるが、例えばコントローラ１１とＨＤＤユニット１２が同一の機器である場合は、内部的に設定してもよいし、ＨＤＤユニット１２のカレントディレクトリ情報を設定する新規コマンドを新設するなどしてもよい。カレントディレクトリ情報の設定の単位は任意であるが、ＨＤＤユニットに接続されたコネクション単位で設定してもよいし、機器全体として設定してもよい。特にＨＤＤユニット１２が複数のコネクションを同時に確立可能である場合は、カレントディレクトリ情報をコネクション単位で設定することで、複数のコネクションを用いて同時に相対パスによるデータ送受信要求を発行することが出来る。
【００７６】
このカレントディレクトリ情報を用いて相対パスを解決する第３の方法では、プリンタユニット１３にて印刷ジョブＡの実行中は、印刷ジョブＡのカレントディレクトリ情報が設定されているべきであり、印刷ジョブＡ用のデータ送信が完了し以後データ転送が発生しない旨が検知されるまでＨＤＤユニット１２におけるカレントディレクトリ情報は変更されるべきではない。しかし、カレントディレクトリ情報の保持が保証されない場合、プリンタユニット１３が印刷ジョブＡとは無関係のデータを参照することを防ぐため、プリンタユニット１３にてＨＤＤユニット１２におけるカレントディレクトリ情報の変更を検知する仕組みが必要となる。この仕組みの実現方法は特に限定するものではない（一例については後述する）。
【００７７】
（２）ＵＲＬが絶対パスで指定されている場合
参照オブジェクトの指定（Ｂ）が、絶対的なファイルパスＦｉｌｅ＿ｐａｔｈ、例えば、＜ｉｍａｇｅ  ｓｒｃ＝”ｈｔｔｐ：／／ｗｗｗ．１３９４ｔａ．ｃｏｍ／１３９４ｔａ＿ｓｕｂｎａｖ−ｔａＨｏｍｅ．ｇｉｆ”  ｕｓｅｍａｐ＝”＃ｍａｉｎＮａｖＭａｐ”  ｂｏｒｄｅｒ＝”０”  ｗｉｄｔｈ＝”４３０”  ｈｅｉｇｈｔ＝”１６”＞で指定されている場合には、その絶対パスが変更なしで利用される。つまり、最終的なファイルパスＦｉｌｅ＿ｐａｔｈは、”ｈｔｔｐ：／／ｗｗｗ．１３９４ｔａ．ｃｏｍ／１３９４ｔａ＿ｓｕｂｎａｖ−ｔａＨｏｍｅ．ｇｉｆ”である。このときには、ローカルストレージ（キャッシュ）又はインターネットから直接、絶対パスのＵＲＬで示される印刷オブジェクトが取得されることになる。
【００７８】
また、言うまでもなく、参照オブジェクトの指定（Ｂ）をリムーバブルメディアに設定しておくことで、リムーバブルメディア上の印刷オブジェクトが取得される。
【００７９】
なお、印刷メインオブジェクトの保存位置と参照オブジェクトの保存位置とが違う場合の対応は、前述したパスの解決の第１〜第３の方法毎に異なる。例として、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどに保存された静止画像（保存位置  ”Ｄ：／ａ．ｊｐｇ”）をプル型の印刷形態で印刷する場合を挙げる。この場合、コントローラ１１が静止画像へのリンクパス情報を記載したＨＴＭＬデータを作成して前記静止画像とは別の場所に保存し（保存位置  ”ｃ：／ｔｅｍｐ／ｔｏｐ．ｈｔｍｌ”）、そのＨＴＭＬデータを印刷するようプリンタユニット１３へ指示する。
【００８０】
パスの解決に上記第１、第３の方法を用いる場合は、ＨＴＭＬデータと静止画データとの保存位置が異なるため、コントローラ１１で作成するＨＴＭＬデータに記述するリンクパス情報は必ず絶対パスとする方法のみで対応でき、ＨＴＭＬデータに記述するリンクパス情報を相対パスにすることが出来ない。
【００８１】
一方で、パスの解決に上記第２の方法を用いる場合は、前記コントローラ１１で作成するＨＴＭＬデータに記述するリンクパス情報は必ず絶対パスとする方法の他に、コマンドＣＡＰＴＵＲＥ  ＲＥＦのｏｂｊｅｃｔ＿ｐａｔｈにはＨＴＭＬデータの絶対パス（”ｃ：／ｔｅｍｐ／ｔｏｐ．ｈｔｍｌ”）を指定し、相対パスの基準位置であるｂａｓｅ＿ｐａｔｈには静止画像データの保存領域（”Ｄ：／”）とする方法もある。後者の方法では、ＨＴＭＬデータに記述するリンクパス情報を相対パスとすることも可能である。
【００８２】
なお、プリンタユニット１３がＨＤＤユニット１２から参照オブジェクトファイルを取得するための具体的な手順として、ＩＥＥＥ１３９４で規定されているＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔ  コマンドＳｅｎｄＦｉｌｅ（又はＣａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔ  ２．０  コマンドＳｅｎｄ  Ｆｉｌｅ  Ｐａｒｔｉａｌ）を発行すればよい。このコマンドでは、参照オブジェクトは、オペランドｆｉｌｅ＿ｐａｔｈによって指定されることになっているので、上記（１）又は（２）のように、パラメータｏｂｊｅｃｔ＿ｐａｔｈと参照ＵＲＬとから決定されるパス情報ｆｉｌｅ＿ｐａｔｈによって特定される。
【００８３】
図５に示すコマンドＳＥＮＤ  ＦＩＬＥのコマンドフレームを用いて具体的に説明する。プリンタユニット１３はｏｂｊｅｃｔ＿ｐａｔｈで特定可能なデータが必要になると、コマンドＳＥＮＤ  ＦＩＬＥのパラメータｆｉｌｅ＿ｐａｔｈに必要なデータのパスを指定し、同じくパラメータｓｏｕｒｃｅ＿ｐｌｕｇにコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータｓｏｕｒｃｅ＿ｐｌｕｇを指定して、ストレージサブユニット１２ａにコマンドＳＥＮＤ  ＦＩＬＥを発行する。
【００８４】
なお、既存のコマンドＳＥＮＤ  ＦＩＬＥ及びコマンドＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬにおいては、ファイル名はＭＳ−ＤＯＳ（商標）準拠の命名規則である８．３形式  「”ファイル名（八文字）”  ＋  ”．”  ＋  ”拡張子（３文字）”」を採る必要がある。したがって、印刷ドキュメントデータの作成にあたっては、印刷メインオブジェクト及び参照オブジェクトのファイル名を上記ＭＳ−ＤＯＳ準拠するよう命名する。しかし、既存のＨＴＭＬ等によるＷｅｂ−Ｐａｇｅではファイル名を自由な長さで命名することが多い。したがって、印刷メインオブジェクト及び参照オブジェクトのファイル名を自由な長さで命名可能とする場合は、コマンドＳＥＮＤ  ＦＩＬＥ及びＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬにおいて上記命名規則の制限をなくすように拡張する。
【００８５】
また、既存のコマンドＳＥＮＤ  ＦＩＬＥ及びコマンドＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬにおいては、パラメータｆｉｌｅ＿ｐａｔｈには絶対パスを指定する必要がある。パスの解決に前記第１、第２の方法を用いるシステムにおいては、コマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータｏｂｊｅｃｔ＿ｐａｔｈが相対パスである場合、それを絶対パスに変換したものをコマンドＳＥＮＤ  ＦＩＬＥ（またはＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬ）のパラメータｆｉｌｅ＿ｐａｔｈに指定し、パラメータｏｂｊｅｃｔ＿ｐａｔｈが絶対パスである場合はそのままの値をパラメータｆｉｌｅ＿ｐａｔｈに指定しているため、影響はない。
【００８６】
しかしパスの解決方法として、上記（１）におけるＨＤＤユニット１２においてパスの解決を行う第３の方法を採用する場合、コマンドＳＥＮＤ  ＦＩＬＥ及びＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬのパラメータｆｉｌｅ＿ｐａｔｈに相対パスを指定することとなる。したがって、コマンドＳＥＮＤ  ＦＩＬＥ及びＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬにおいて、パラメータｆｉｌｅ＿ｐａｔｈに相対パスを指定できるよう拡張する。
【００８７】
また、前述のようにストレージサブユニット１２ａにカレントディレクトリ情報を設定する方法としてはＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔに新規コマンドを追加して設定してもよいし、コントローラ１１とＨＤＤユニット１２が同一機器である場合は、コントローラ１１がＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔに内部命令を発効することで設定してもよい。
【００８８】
なお前述したが、前記パスを解決する第３の方法において、プリンタユニット１３にて印刷ジョブＡの実行中は、印刷ジョブＡのカレントディレクトリ情報が設定されているべきであり、印刷ジョブＡ用のデータ送信が完了し以後データ転送が発生しない旨が検知されるまでＨＤＤユニット１２におけるカレントディレクトリ情報は変更されるべきではない。しかし、ネットワーク上に複数のコントローラ１１が存在し一つのＨＤＤユニット１２を共有してプリンタユニット１３へそれぞれ印刷指示する場合等では、各々のコントローラ１１がＨＤＤユニット１２のカレントディレクトリ情報を設定する。したがってこの場合、カレントディレクトリ情報の保持が保証されない。
【００８９】
このため、プリンタユニット１３がコントローラＡから指示された印刷ジョブＡを処理中に、コントローラＢがＨＤＤユニット１２に印刷ジョブＢのカレントディレクトリ情報を設定した場合、それを検知できないプリンタユニット１３は印刷ジョブＡとは無関係のデータを受信する可能性がある。この問題を防ぐため、プリンタユニット１３にてＨＤＤユニット１２におけるカレントディレクトリ情報の変更を検知する仕組みが必要となる。プリンタユニット１３においてＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔのカレントディレクトリ情報が変更された旨を検知する仕組みとしては、同じく新規コマンドを追加する方法の他に、ＳＥＮＤ  ＦＩＬＥコマンド（またはＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬコマンド）におけるｍｅｄｉａ＿ｇｅｎｅｒａｔｉｏｎ＿ｃｏｕｎｔパラメータを応用する方法がある。
【００９０】
ＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔのｍｅｄｉａ＿ｇｅｎｅｒａｔｉｏｎ＿ｃｏｕｎｔパラメータは本来、ＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔを備える機器においてＳＤカード（商標）等のストレージメディアの挿入を検知してその値を変更するものであり、ＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔのコントローラはコマンドのレスポンスフレームにおけるｍｅｄｉａ＿ｇｅｎｅｒａｔｉｏｎ＿ｃｏｕｎｔパラメータが変更（ｍｅｄｉａ＿ｇｅｎｅｒａｔｉｏｎ＿ｃｏｕｎｔ  ＋  １）されたか否かを判定することで、ストレージメディアの変更を検知することが出来る。これを応用し、ＨＤＤユニット１２内のＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔが、ストレージメディアの挿入に加えてカレントディレクトリ情報の変更においてもｍｅｄｉａ＿ｇｅｎｅｒａｔｉｏｎ＿ｃｏｕｎｔパラメータの値を変更することで、プリンタユニット１３においてＨＤＤユニット１２のカレントディレクトリ情報が変更されたことを検知できる。
【００９１】
また、プリンタユニット１３がＨＤＤユニット１２から参照オブジェクトファイルを取得する方法としては、このようなＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  ＳｕｂｕｎｉｔにおけるＳＥＮＤ  ＦＩＬＥまたはＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬコマンドの他に、ベンダーユニークサブユニット宛てのコマンドを用いたり、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  ｐｒｏｔｏｃｏｌ）におけるコマンドＧＥＴのようなコマンドを用いてプリンタユニットがＨＤＤユニットから参照オブジェクトファイルを取得してもよい。
【００９２】
また、バスリセット時においては、各機器のアドレス情報であるＮｏｄｅ＿ＩＤや機器間のコネクション情報であるｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇやｓｏｕｒｃｅ＿ｐｌｕｇなどのネットワーク接続情報が再設定され、バスリセット前の値から変更される可能性がある。このためバスリセット後に印刷処理を再開したい場合は、まずバスリセット後のネットワーク接続情報に基づいて、コネクションを復旧し次に印刷要求を再送する必要がある。したがってコントローラ１１は、ＨＤＤユニット１２及びプリンタユニット１３のバスリセット後のＮｏｄｅ＿ＩＤを入手し、それに基づいてパラメータＲＥＳＴＯＲＥ＿ＰＯＲＴ  ｓｕｂｆｕｎｃｔｉｏｎを指定したＡＣ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎ）  ＭＡＮＡＧＥコマンドを発行することでコネクションを復旧する。
【００９３】
その後に、パラメータＲＥＳＵＭＥ  ｓｕｂｆｕｎｃｔｉｏｎを指定したコマンドＣＡＰＴＵＲＥ  ＲＥＦを発行すればよい。この際のコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータは、同様にバスリセット後の情報を入手してそれに基づいて設定する。例えば、ＣＡＰＴＵＲＥ  ＲＥＦにおけるｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ（図４（ｂ）及び（ｃ））などのアドレス情報や、ｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇやｓｏｕｒｃｅ＿ｐｌｕｇなどのネットワーク接続情報においてバスリセット後の値を設定した上でパラメータＲＥＳＵＭＥ  ｓｕｂｆｕｎｃｔｉｏｎを指定したコマンドＣＡＰＴＵＲＥ  ＲＥＦを発行する。
【００９４】
それによって、プリンタユニット１３は、上記コマンドＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬ等を用いて印刷オブジェクトを取得し、データ転送動作を再開することができる。
【００９５】
以下、図４（ｂ）及び（ｃ）を用いてプル型のプリントを実現する場合の通信シーケンスをそれぞれ＜通信シーケンス１＞＜通信シーケンス２＞として説明する。
【００９６】
＜通信シーケンス１＞
以下、図４（ｂ）に示すコマンドＣＡＰＴＵＲＥ  ＲＥＦに基づいた通信シーケンスを説明する。
【００９７】
図６〜図１３は、図２に示された通信シーケンスの詳細なフロー図であり、３つの装置１１、１２、１３間でのコマンドのやりとりを図示している。なお、ここでは、コントローラ１１は、ＳＴＢユニット１４が有する１つの機能として実現されている。また、矢印は、コマンドの発行を示し、矢印上又は矢印付近の矩形内には、上の行に、手順番号（丸数字）と処理の内容が示され、下の行に、「：」を挟んで、そのコマンドが属するプロトコル（左側）と内容（右側）が示されている。なお、図中の「ＰＳ」は”Ｐｒｉｎｔｅｒ  Ｓｕｂｕｎｉｔ”の略であり、「ＡＣ」は”Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎ”の略であり、「ＦＣＰ」は、ＡＶ／Ｃコマンド及びその応答に関する規約として採用されているプロトコルである”Ｆｕｎｃｔｉｏｎ  Ｃｏｎｔｒｏｌ  ｐｒｏｔｏｃｏｌ，  ＩＥＣ６１８８３  ：  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｃｏｎｓｕｍｅｒ  Ｅｌｅｃｔｒｉｃ  Ａｕｄｉｏ／Ｖｉｄｅｏ  Ｅｑｕｉｐｍｅｎｔ”の略である。
【００９８】
まず、コントローラ１１は、図６に示されるように、プリンタサブユニットに対するコントローラ（ＰＳ  Ｃｏｎｔｒｏｌｌｅｒ）及びコネクションの確立についてのコントローラ（ＡＣ  Ｃｏｎｔｒｏｌｌｅｒ）として、プリンタユニット１３に対して機器情報を問い合わせた後に（手順１）、ＨＤＤユニット１２及びプリンタユニット１３に対して、サブユニットの情報を問い合わせる（手順２）。
【００９９】
続いて、図７に示されるように、コントローラ１１は、ＨＤＤユニット１２及びプリンタユニット１３に対してサブユニットのバージョンを問い合わせることで（手順３）、プリンタユニット１３がベンダー拡張されたプリンタサブユニット、つまり、上述のプル型の印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦの実行が可能なサブユニットであることを確認する（手順４）。
【０１００】
そして、コントローラ１１は、図８に示されるように、プリンタユニット１３に対してプリントジョブを投入した後に（手順５）、図９に示されるように、ＨＤＤユニット１２とプリンタユニット１３との間にコネクションを確立し（手順６）、続いて、図１０に示されるように、印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦを発行することで、プリンタユニット１３に対して印刷のトリガを与え（手順７）、印刷を開始させる（手順８）。
【０１０１】
印刷を開始したプリンタユニット１３は、まず、図１１に示されるように、ＨＤＤユニット１２に対してデータ送信を要求することで（手順９）、コントローラ１１から指定された印刷オブジェクト（全てのメインオブジェクト及びそこから参照されている全ての参照オブジェクト）をコネクションを介してＨＤＤユニット１２から順次取得し、印刷する（手順１０）。
【０１０２】
そして、図１２に示されるように、プリンタユニット１３での印刷が終了すると（手順１１）、コントローラ１１は、ＨＤＤユニット１２とプリンタユニット１３との間のコネクションを解放した後に（手順１２）、図１３に示されるように、プリンタユニット１３に対してプリントジョブの終了を通知する（手順１３）。このようにして、コントローラ１１は、プル型の印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦを用いることで、ＨＤＤユニット１２に格納された印刷オブジェクトの印刷をプリンタユニット１３に実行させることができる。
【０１０３】
＜通信シーケンス２＞
次に、図４（ｃ）に示すコマンドＣＡＰＴＵＲＥ  ＲＥＦに基づいた通信シーケンスを説明する。
【０１０４】
図１４〜図２１に本シーケンスを図示するが、基本的なシーケンスは前記＜通信シーケンス１＞と変わらない。また、＜通信シーケンス１＞における図６〜図１３と図示形式は変わらず、応答レスポンスは省略している。また、図１４〜図２１においては、ＳＴＢユニット１４とＨＤＤユニット１２が別の機器として図示しているが、本明細書におけるその他の実施例と同じく、ＳＴＢユニット１４とＨＤＤユニット１２が同一の機器であっても構わない。
【０１０５】
まず、図１４に示されるように、コントローラ１１はＩＥＥＥ１３９４ネットワーク上の機器の情報を収集し、ＩＥＥＥ１３９４  ＡＶ／Ｃコマンドをサポートする機器の情報及びアドレス（位置）情報であるＮｏｄｅ＿ＩＤを確認する（手順１）。次にコントローラ１１はＡＶ／Ｃコマンドをサポートする機器に対して、ＳＵＢＵＮＩＴ  ＩＮＦＯコマンドを発行することで、各機器がどのサブユニットを所持しているかを確認する（手順２）。
【０１０６】
ここまでの処理で、コントローラ１１は、Ｎｏｄｅ＿ＩＤ＝ＢＢＢＢであるプリンタユニット１３がプリンタサブユニット１３ａを所持し、Ｎｏｄｅ＿ＩＤ＝ＣＣＣＣ（Ｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ）であるＨＤＤユニット１２がストレージサブユニット１２ａを所持する（ＳＴＢユニット１４とＨＤＤユニット１２が同一機器である場合は自明）ことを把握する。尚、ここでコントローラ１１がプリンタサブユニット１３ａまたはストレージサブユニット１２ａを所持したユニットを発見できなかった場合は、以後の処理が継続出来ないため、エラーである旨をユーザに返答する。
【０１０７】
次に図１５に示されるように、コントローラ１１はＨＤＤユニット１２及びプリンタユニット１３に対してコマンドＶＥＲＳＩＯＮを発行し、各サブユニットのバージョンを問い合わせる（手順３）。これによりコントローラ１１は、プリンタサブユニット１３ａが図４（ｃ）のコマンドＣＡＰＴＵＲＥ  ＲＥＦを発行可能なプル型のプリントに対応したサブユニットであり、ストレージサブユニット１２ａが印刷データを送信可能なサブユニットであることを把握する。また、パスの解決に前記第３の方法を採るシステムの場合、ストレージサブユニット１２ａがカレントディレクトリ情報を設定可能なサブユニットであることを把握する。
【０１０８】
なお、前記＜通信シーケンス１＞では、コントローラ１１がプリンタサブユニット１３ａに対して別途コマンドＥｘｔｅｎｄｅｄ  ＶＥＲＳＩＯＮを発行しているが、これはプリンタサブユニット１３ａの規格化内容に依存するものであり、本通信シーケンスでは手順３で発行したコマンドＶＥＲＳＩＯＮへの応答内容で、プリンタサブユニット１３ａがプル型のプリントに対応する旨を把握可能な例を挙げている。
【０１０９】
また、上記の方法以外にも、コマンドタイプにＳＰＥＣＩＦＩＣ  ＩＮＱＵＩＲＹまたはＧＥＮＥＲＡＬ  ＩＮＱＵＩＲＹを設定したコマンドＣＡＰＴＵＲＥＲＥＦをプリンタサブユニット１３ａに対して発行し、コマンドＣＡＰＴＵＲＥ  ＲＥＦを実装しているかどうかを問い合わせることで、プリンタサブユニット１３ａがプル型のプリントに対応しているか否かを把握してもよい。
【０１１０】
ここで、プリンタサブユニット１３ａがプル型のプリントに対応していないサブユニットであった場合について述べると、ユーザから印刷指示を受けた印刷ドキュメントが既存のプッシュ型のプリントにて印刷可能であれば、コントローラ１１は以後プッシュ型のプリントシーケンスに移行し、プリンタサブユニット１３ａに対して既存のＡＶ／Ｃ  Ｐｒｉｎｔｅｒ  ｓｕｂｕｎｉｔの仕様に沿った印刷指示してもよい。一方、ユーザから印刷指示を受けた印刷ドキュメントがプル型のプリントでのみ印刷可能であれば、コントローラ１１はユーザに対して何らかのエラーを返してもよい。エラーの内容としては、単に印刷不能である旨を通知してもよいし、該当ドキュメントの印刷に対応したプリンタがＩＥＥＥ１３９４ネットワーク上に接続されていない旨を通知してもよい。
【０１１１】
次に図１６に示されるように、コントローラ１１はプリンタサブユニット１３ａに対してＪＯＢ  ＱＵＥＵＥコマンドａｄｄ＿ｊｏｂサブファンクションを発行することで、プリンタユニット１３に印刷ジョブを発行する（手順４）。このコマンドによりコントローラ１１とプリンタサブユニット１３ａとの間で、印刷ジョブの受付番号に相当するＪｏｂ＿ＩＤが共有される。このＪｏｂ＿ＩＤは以後、投入した印刷ジョブを指定するために用いられ、図４（ｂ）及び（ｃ）に示されたコマンドＣＡＰＴＵＲＥ  ＲＥＦにおけるパラメータＰｒｉｎｔ＿Ｊｏｂ＿ＩＤにはこの値を指定する。
【０１１２】
次に図１７に示されるように、コントローラ１１はＨＤＤユニット１２及びプリンタユニット１３に対してＡＣ  ＭＡＮＡＧＥ関数群を発行することで、印刷データ送信元であるストレージサブユニット１２ａと印刷データ受信元であるプリンタサブユニット１３ａとの間にコネクション（ＡＣ：Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎ）を確立する（手順５）。
【０１１３】
ＡＣ  ＭＡＮＡＧＥ関数群に関する詳細は、ｈｔｔｐ：／／ｗｗｗ．１３９４ＴＡ．ｏｒｇにて入手可能な、「ＴＡ  Ｄｏｃｕｍｅｎｔ  １９９９０３７  ＡＶ／Ｃ  Ｃｏｍｍａｎｄ  ｆｏｒ  Ｍａｎａｇｅｍｅｎｔ  ｏｆ  Ｅｎｈａｎｃｅｄ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｓｅｒｉａｌ  Ｂｕｓ  Ｃｏｎｎｅｃｔｉｏｎｓ  １．０」に記載されているが、このＡＣ  ＭＡＮＡＧＥ関数群の応答レスポンスにより、コントローラ１１はストレージサブユニット１２ａ側のコネクションの入力ポート（ｐｌｕｇ）識別子であるｓｏｕｒｃｅ＿ｐｌｕｇとプリンタサブユニット１３ａ側のコネクションの出力ポート（ｐｌｕｇ）識別子であるｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇとを入手する。
【０１１４】
このｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇはプリンタサブユニット１３ａのデータ受信用コネクションを指定するために用いられ、図４（ｂ）及び（ｃ）に示されたコマンドＣＡＰＴＵＲＥ  ＲＥＦにおけるパラメータｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇにはこの値を指定する。同じくｓｏｕｒｃｅ＿ｐｌｕｇはストレージサブユニット１２ａのデータ送信用コネクションを指定するために用いられ、図４（ｂ）及び（ｃ）に示されたコマンドＣＡＰＴＵＲＥ  ＲＥＦにおけるパラメータｓｏｕｒｃｅ＿ｐｌｕｇにはこの値を指定する。
【０１１５】
次に図１８に示されるように、コントローラ１１はプリンタサブユニット１３ａに対して印刷トリガである図４（ｃ）に示すコマンドＣＡＰＴＵＲＥ  ＲＥＦ（パラメータｓｕｂｕｆｕｎｃｔｉｏｎ  ＝  ｒｅｃｅｉｖｅ）を発行し、プリンタユニットにコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータ  ｏｂｊｅｃｔ＿ｐａｔｈで特定可能な印刷ドキュメントの印刷を要求する（手順６）。プリンタサブユニット１３ａは、コントローラ１１に対し暫定的にＩＮＴＥＲＩＭレスポンスを発行しておき、以降の手順７、８を経てストレージサブユニット１２ａ上にある印刷データが必要なくなった時点でコマンドＣＡＰＴＵＲＥ  ＲＥＦに対する最終的な応答レスポンスＡＣＣＥＰＴＥＤ（途中で復旧不能なエラーが発生した場合はＲＥＪＥＣＴＥＤ）を返す。なお、コントローラ１１において応答レスポンスＲＥＪＥＣＴＥＤを受け取った場合は、図４（ｃ）に示したコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータｓｔａｔｕｓの値に基づいて、ユーザへのエラー通知または復旧処理を行う。
【０１１６】
図４（ｃ）に示したコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータについては前述したが、プリンタサブユニット１３ａは、ｏｂｊｅｃｔ＿ｐａｔｈで指定されたリンクパス情報から特定可能な印刷メインオブジェクトを印刷処理する。なお、前述の通り、パスの解決に前記第２の方法を用いる場合は、パラメータｂａｓｅ＿ｐａｔｈを用いてパスの解決を行う。第２の方法以外を用いる場合はパラメータｂａｓｅ＿ｐａｔｈは必要なく、空値（ＮＵＬＬ）を指定しておいてもよいし、パラメータｂａｓｅ＿ｐａｔｈ自体をＣＡＰＴＵＲＥ  ＲＥＦのコマンドフレームから削除してＣＡＰＴＵＲＥ  ＲＥＦコマンドを規定し直してもよい。
【０１１７】
尚、パスの解決に前記第３の方法を採る場合は後述する手順７が行われるより前に、コントローラ１１がストレージサブユニット１２ａに対して、ストレージサブユニット１２ａに新設した新規コマンドまたは内部関数を用いてカレントディレクトリ情報を設定しておく必要がある。また、パラメータｄａｔａ＿ｓｉｚｅは印刷メインオブジェクトのデータサイズであるが、特に必要なければ空値（ＮＵＬＬ）を指定しておいてもよいし、パラメータｄａｔａ＿ｓｉｚｅ自体をＣＡＰＴＵＲＥ  ＲＥＦコマンドフレームから削除してＣＡＰＴＵＲＥ  ＲＥＦコマンドを規定し直してもよい。
【０１１８】
なお、プリンタサブユニット１３ａに対して同時に発行可能なＣＡＰＴＵＲＥＲＥＦの数は特に限定されるものではなく、任意であるがパスの解決、特にストレージサブユニット１２ａにてパスの解決を行う前記第３の方法の扱いに注意する必要がある。
【０１１９】
例えば、プリンタサブユニット１３ａに対して発行可能なＣＡＰＴＵＲＥ  ＲＥＦは１つであると制限し、プリンタサブユニット１３ａにおいて１つのＣＡＰＴＵＲＥ  ＲＥＦを処理している間は、パラメータｓｔａｔｕｓにｂｕｓｙを設定し、ＲＥＪＥＣＴＥＤレスポンスを返す実装でもよい。この場合、パスの解決に前記第１、２、３の方法のどれを利用しても問題がない。
【０１２０】
次に、プリンタサブユニット１３ａに対して張られたコネクション毎に１つのＣＡＰＴＵＲＥ  ＲＥＦの発行を許すことで、プリンタサブユニット１３ａに対して複数のＣＡＰＴＵＲＥ  ＲＥＦを同時発行可能とする実装でもよい。この場合、パスの解決に前記第１、２の方法の利用に関しては問題ないが、前記第３の方法を利用する場合は前述のようにストレージサブユニット１２ａにおいてコネクション毎にカレントディレクトリ情報を設定可能とする必要がある。
【０１２１】
また、ＣＡＰＴＵＲＥ  ＲＥＦの同時発行数に制限を設けず、１つのＡＣを複数のＣＡＰＴＵＲＥで共用してそれぞれのＣＡＰＴＵＲＥ  ＲＥＦに対応する印刷データを順次受信する実装でも良い。ただしこの場合、ＨＤＤユニットにてパスの解決を行う前記第３の方法ではうまくパスを解決出来ないため、第１または第２の方法を利用する必要がある。
【０１２２】
手順６で印刷要求を受信したプリンタサブユニット１３ａは、図１９に示されるように印刷メインオブジェクトの取得を開始する。具体的にはプリンタサブユニット１３ａからストレージサブユニット１２ａに対してデータ送信命令を発行する（手順７）。ここでプリンタサブユニット１３ａがデータ送信命令を発行するには、印刷データを所持するストレージサブユニット１２ａのアドレス（位置情報）を知る必要がある。ここで、ＩＥＥＥ１３９４ではＨＤＤユニットの位置情報は、図４（ｃ）のコマンドＣＡＰＴＵＲＥ  ＲＥＦにおけるパラメータＰｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤで指定された値で判別可能であり、さらにパラメータｓｕｂｕｎｉｔ＿ｔｙｐｅ及びｓｕｂｕｎｉｔ＿ＩＤによって、ＨＤＤユニット１２内のサブユニットであるストレージサブユニット１２ａを判別できる。
【０１２３】
なお、パラメータｓｕｂｕｎｉｔ＿ｔｙｐｅでは、ストレージサブユニット１２ａのコマンド体系を知ることも出来る。例えばｓｕｂｕｎｉｔ＿ｔｙｐｅが、ＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔを示す値であった場合は、ＳＥＮＤ  ＦＩＬＥまたはＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬコマンドによって印刷データの送信を要求できる旨を把握できる。以後、ストレージサブユニット１２ａがＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  Ｓｕｂｕｎｉｔである場合を例にとって説明すると、上記まででアドレス及びコマンド体系が判別したストレージサブユニットに対して、ｏｂｊｅｃｔ＿ｐａｔｈで指定された印刷メインオブジェクトを図４（ｃ）のコマンドＣＡＰＴＵＲＥ  ＲＥＦのパラメータｓｏｕｒｃｅ＿ｐｌｕｇで特定できるコネクションを介して送信するようＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬ（またはＳＥＮＤ  ＦＩＬＥ）コマンドを発行する（手順７）。
【０１２４】
なお、図４（ｃ）のコマンドＣＡＰＴＵＲＥ  ＲＥＦにおけるパラメータｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇは、手順５にてストレージサブユニット１２ａとプリンタサブユニット１３ａとの間に確立されたコネクションの状態を問い合わせることでも入手可能である。この手順５で確立されたコネクションはパラメータｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇで特定可能である。
【０１２５】
詳しく説明すると、まずパラメータｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇで特定可能なコネクションの状態を内部的に問い合わせることで、プリンタサブユニット１３ａがコネクションを介して接続されている先のユニットであるＨＤＤユニット１２のＮｏｄｅ＿ＩＤ（＝  Ｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ）とＵｎｉｔ＿Ｐｌｕｇを入手する。次に入手したＵｎｉｔ＿Ｐｌｕｇを用いて、Ｎｏｄｅ＿ＩＤにて宛先を特定可能なＨＤＤユニット１２に対して前記ＡＣ  ＭＡＮＡＧＥ関数群の一つであるコネクション状態問い合わせコマンド（ＡＣ  ＭＡＮＡＧＥ  ＳＴＡＴＵＳコマンド）を発行することで、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ及びｓｕｂｕｎｉｔ＿ｐｌｕｇ（＝  Ｓｏｕｒｃｅ＿Ｐｌｕｇ）を入手する。このように既に確立されているコネクションの状態を問い合わせることでパラメータｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇを入手可能である。
【０１２６】
なおパラメータｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇを上記方法にて入手する場合は、それぞれのパラメータに空値（ＮＵＬＬ）を指定しておいてもよいし、パラメータ自体をＣＡＰＴＵＲＥ  ＲＥＦコマンドフレームから削除してＣＡＰＴＵＲＥ  ＲＥＦコマンドを規定し直してもよい。
【０１２７】
また、パスの解決に前記第１または第２の方法を用いる場合は、データ送信命令を発効する前にプリンタサブユニット１３ａにおいてパスの解決を行っておく。
【０１２８】
データ送信命令を受けたストレージサブユニット１２ａは、既に確立されているコネクション（ＡＣ）を用いてプリンタサブユニット１３ａに対して印刷データ（ここでは印刷メインオブジェクト）を送信する（手順８）。送信命令がＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  ＳｕｂｕｎｉｔにおけるコマンドＳＥＮＤ  ＦＩＬＥの場合はデータをそのまま送信し、ＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  ＳｕｂｕｎｉｔにおけるコマンドＳＥＮＤ  ＦＩＬＥ  ＰＡＲＴＩＡＬの場合は分割したデータを送信する。なお、パスの解決に前記第３の方法を用いる場合は、ストレージサブユニット１２ａにおいてカレントディレクトリ情報を元にデータ送信命令で指定されたパスを解決する。
【０１２９】
以上、手順７、８によってプリンタサブユニット１３ａからストレージサブユニット１２ａに対して印刷メインオブジェクトを要求、受信する処理について説明したが、受信した印刷メインオブジェクト内に、印刷メインオブジェクト以外のデータを示すリンクパス情報が記載されていた場合、該当するデータが印刷処理に必要な参照オブジェクトである場合は随時、手順７、８を繰り返してデータを受信し印刷処理を続行する。
【０１３０】
また、手順７、８の間に、バスリセットが発生した場合はアドレス情報であるＮｏｄｅ＿ＩＤが変化するため、前述したようにコネクション（ＡＣ）の復旧と印刷トリガであるＣＡＰＴＵＲＥ  ＲＥＦコマンドの再送が必要である。この順序としては、まずコントローラ１１がＨＤＤユニット１２及びプリンタユニット１３のバスリセット後のＮｏｄｅ＿ＩＤを確認し、次にＡＣ  ＭＡＮＡＧＥ関数群を用いてコネクションを復旧する。この際、ｓｏｕｒｃｅ＿ｐｌｕｇ及びｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇが変更される可能性もある。次に印刷トリガの再送（再送要求）として、ＣＡＰＴＵＲＥ  ＲＥＦコマンドＲｅｓｕｍｅサブファンクションを発行する。
【０１３１】
このようにパラメータＰｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇ、ｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇの値がバスリセット後に変化する場合は、ＣＡＰＴＵＲＥ  ＲＥＦコマンドｒｅｓｕｍｅサブファンクションのパラメータｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇにはバスリセット後の最新の値を設定し、ＣＡＰＴＵＲＥ  ＲＥＦにおいてパラメータｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇを指定する必要がある場合は、同じくパラメータｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇにはバスリセット後の最新の値を設定する。
【０１３２】
また、コネクションの状態問い合わせによってパラメータｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇを入手する場合でも同様であり、バスリセットが発生するとコントローラは、まずＨＤＤユニット１２及びプリンタユニット１３のバスリセット後のＮｏｄｅ＿ＩＤを確認し、次にＡＣ  ＭＡＮＡＧＥ関数群を用いてコネクションを復旧する。次に印刷トリガの再送（再送要求）として、コントローラ１１はプリンタサブユニット１３ａに対しＣＡＰＴＵＲＥ  ＲＥＦコマンドＲｅｓｕｍｅサブファンクションを発行する。このＣＡＰＴＵＲＥ  ＲＥＦコマンドＲｅｓｕｍｅサブファンクションを受信する時点では既にコネクションは復旧済みであるから、プリンタサブユニット１３ａはこのＣＡＰＴＵＲＥ  ＲＥＦコマンドＲｅｓｕｍｅサブファンクションを受信した後、コネクションの状態を再度問い合わせることで、プリンタサブユニット１３ａはパラメータｐｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇ等のバスリセット後の最新の値を入手することが出来る。
【０１３３】
尚、バスリセット後にコネクションの復旧を行うＡＣ  ＭＡＮＡＧＥ関数は、前述したようにＡＣ  ＭＡＮＡＧＥコマンドＲＥＳＴＯＲＥ＿ＰＯＲＴサブファンクションであるが、このコマンドはバスリセット後の接続先Ｎｏｄｅ＿ＩＤ（プリンタサブユニット１３ａにとってはＰｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ）等をパラメータとして含んでいる。したがって、前述のようにバスリセット後のＰｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤをコネクションの状態を再度問い合わせることで入手する場合は、コネクションの復旧時にＡＣ  ＭＡＮＡＧＥコマンドＲＥＳＴＯＲＥ＿ＰＯＲＴサブファンクションにて通知され内部保存されたＰｒｏｄｕｃｅｒ＿Ｎｏｄｅ＿ＩＤ等の値を、プリンタサブユニット１３ａが内部的に問い合わせて入手する。
【０１３４】
また、同じくｓｕｂｕｎｉｔ＿ｔｙｐｅやｓｕｂｕｎｉｔ＿ＩＤ、ｓｕｂｕｎｉｔ＿ｐｌｕｇ（＝  Ｓｏｕｒｃｅ＿Ｐｌｕｇ）等をバスリセット後に再度入手する必要がある場合は、上記内部問い合わせで入手したパラメータに基づいて、再度ＨＤＤユニット１２に対して前記ＡＣ  ＭＡＮＡＧＥ関数群の一つであるコネクション状態問い合わせコマンド（ＡＣ  ＭＡＮＡＧＥ  ＳＴＡＴＵＳコマンド）を発行することで入手する。
【０１３５】
次に、コントローラ１１はプリンタサブユニット１３ａから、コマンドＣＡＰＴＵＲＥ  ＲＥＦの応答レスポンスを受けると、図２０に示すようにＨＤＤユニット１２及びプリンタユニット１３に対してＡＣ  ＭＡＮＡＧＥ関数群を発行して、ストレージサブユニット１２ａとプリンタサブユニット１３ａ間のコネクションを解放する（手順９）。
【０１３６】
最後にコントローラ１１はプリンタサブユニット１３ａに対して、ＪＯＢ  ＱＵＥＵＥコマンドｃｌｏｓｅ＿ｊｏｂサブファンクションを発行する（手順１０）。
【０１３７】
なお、プリンタユニット１３は、前述の手順６におけるＣＡＰＴＵＲＥ  ＲＥＦコマンドｒｅｃｅｉｖｅサブファンクションを受信した時点で、印刷処理を開始してもよいし、前述の手順７、８をへて印刷ドキュメントを構成する全ての印刷データの受信を完了し手順１０が完了した時点で印刷処理を開始してもよい。
【０１３８】
以上、説明したように本＜通信シーケンス２＞に基づき、コントローラ１１は図４（ｃ）のコマンドＣＡＰＴＵＲＥ  ＲＥＦを用いることで、ＨＤＤユニット１２に格納された印刷ドキュメントの印刷をプリンタユニット１３に実行させることが出来る。
【０１３９】
なお、＜通信シーケンス１＞における手順７または＜通信シーケンス２＞における手順６において、まずプッシュ型またはプル型の印刷指示を試み、それが拒絶された場合にはもう一方の印刷指示を行う実装でも良い。図２２を用いて説明すると、印刷指示の開始に伴い（ステップＳ２０１）、コントローラ１１はプリンタユニット１３に対してまずはプッシュ型のプリントを行うよう指示する（ステップＳ２０２）。この指示をプリンタユニット１３が拒絶しなかった場合（ステップＳ２０３において「ｙｅｓ」）は、印刷指示は完了するが（ステップＳ２０８）、それが拒絶された場合（ステップＳ２０３において「ｎｏ」）は、コントローラ１１は次にプリンタユニット１３に対してプル型のプリントを行うように指示する（ステップＳ２０４）。
【０１４０】
この指示をプリンタユニット１３が拒絶しなければ（ステップＳ２０５において「ｙｅｓ」）印刷指示は完了する（ステップＳ２０８）が、この指示においても拒絶された場合（ステップＳ２０５において「ｎｏ」）はエラーとしてユーザに通知する（ステップＳ２０６）。このように取り決めておくことで、プリンタユニットにおいてプル型のプリントであれば良いがプッシュ型のプリントは難しい印刷ドキュメントの印刷要求を受けた場合、それを一端拒絶しておくことで、前記プッシュ型のプリントが難しい印刷ドキュメントをプル型のプリントによって印刷できる。なお、プル型のプリント要求（ステップＳ２０２においてプル型の印刷指示）が拒絶された後に、プッシュ型のプリント要求（ステップＳ２０４プッシュ型の印刷指示）を行う場合でも同様の効果が奏される。
【０１４１】
一方、印刷要求の拒絶応答時のステータスに、プッシュ型またはプル型の印刷要求を再度行うよう指示する新たな値を設けることで前記切り替えを行ってもよい。図２３を用いて説明すると、印刷指示の開始に伴い（ステップＳ３０１）、コントローラ１１はプリンタユニット１３に対してプッシュ型（またはプル型）のプリント指示を行う（ステップＳ３０２）。この指示を受けたプリンタユニット１３は、印刷指示が不適であればコントローラ１１に印刷指示の拒絶を返す。特に印刷方式の変更によって印刷指示を受領できる場合（例えばプッシュ型ではなくプル型であれば印刷可能である場合）は、印刷指示の拒絶応答におけるｒｅｓｕｌｔパラメータに、新たに新設した印刷方式が不適である旨を通知する値をセットする。
【０１４２】
ステップＳ３０２における印刷指示をプリンタユニット１３が拒絶しなかった場合（ステップＳ３０３において「ｎｏ」）は、印刷指示は完了する（ステップＳ３０８）。しかしステップＳ３０２における印刷指示が拒絶された場合（ステップＳ３０３  において「ｙｅｓ」）は、コマンドＣＡＰＴＵＲＥのレスポンスフレーム中のパラメータｒｅｓｕｌｔ（図４（ｂ）及び（ｃ））の値を確認し、パラメータｒｅｓｕｌｔの値が印刷方式が不適である旨を通知する値であればステップＳ３０５へ進み、それ以外であればユーザに対してエラーを通知する。パラメータｒｅｓｕｌｔの値が印刷方式が不適である旨を通知する値であった場合、コントローラ１１はプリンタユニット１３に対し、プル型（プッシュ型）のプリント指示を行い（ステップＳ３０５）、印刷指示を完了する（ステップＳ３０８）。
【０１４３】
その他にも、コントローラ１１が印刷ドキュメントの種類やサイズ、プリンタの能力や状態に応じて判断し、印刷方式（プッシュ型のプリント／プル型のプリント）を切り替える方式をとってもよい。すなわち、コントローラ１１が印刷要求コマンド発行前にプリンタユニット１３の能力情報や状態情報を問い合わせ、次に、その情報と印刷を要求したい印刷ドキュメントに関する情報を元に、プル型またはプッシュ型のどちらのプリント方式をプリンタユニット１３に指示するかを判断し、その判断に基づいてプリンタユニット１３に印刷要求を行ってもよい。
【０１４４】
プリンタの能力情報または状態情報を入手する方法については、本発明は、特に限定されず、既存コマンドを利用してもよいし、既存コマンドでは所望の情報を入手出来ないのであれば、所望の情報を入手するコマンドを新設してもよいし、従来コマンドを拡張してもよい。この方法の一例を図２４を用いて説明する。まず前提として、該当ジョブに対してプリンタユニット１３が用意できるデータ受信バッファサイズ（Ａ）を問い合わせ可能なコマンドが存在、またはコマンドを新設するものとする。コントローラ１１は＜通信シーケンス１＞における手順７または＜通信シーケンス２＞における手順６において、印刷指示の開始に伴い（Ｓ４０１）、まずプリンタユニット１３に対して前記コマンドを用いてデータ受信バッファサイズ（Ａ）を入手する（ステップＳ４０２）。
【０１４５】
次に、該当ジョブで印刷する印刷ドキュメントを構成するデータの総サイズ（Ｂ）を内部的に取得、またはストレージサブユニットに問い合わせることで入手し（ステップＳ４０３）、前記データ受信バッファサイズ（Ａ）と前記総サイズ（Ｂ）の大きさを比較する（ステップＳ４０４）。（Ａ）＞（Ｂ）である場合、通信トランザクション回数からコントローラ１１はプッシュ型の印刷が最適であると判断し、コントローラ１１は既存のコマンドＣＡＰＴＵＲＥを用いてプリンタユニット１３にプッシュ型のプリントを行うよう指示する（ステップＳ４０５）。（Ｂ）＞（Ａ）である場合、プッシュ型の印刷を指示してもプリンタユニット１３が印刷ドキュメントを全て受信できないと判断し、コントローラ１１はコマンドＣＡＰＴＵＲＥ  ＲＥＦを用いてプリンタユニット１３にプル型のプリントを行うよう指示する（ステップＳ４０６）。このようにして、プリンタの能力や状態に応じて判断し、最適な印刷方式（プッシュ型のプリント・プル型のプリント）を選択して印刷指示を行い、完了する（Ｓ４０７）。
【０１４６】
なお、上記例では受信バッファサイズと印刷ドキュメントデータの総サイズを判断材料としていたが、本発明は、これに限定されるものではない。例えば、プリンタユニット１３が他のジョブを印刷中であれば、データ転送コネクションを確立している時間を短くするために、プッシュ型のプリントを行うよう指示し、他のジョブの印刷中に、あらかじめ他のジョブのデータをプリンタユニット１３に対して転送しておいてもよい。その他、プリンタの能力や状態を確認するコマンドとその内容に基づいた判断により、最適な印刷方式を自動的に選択し印刷する印刷システムを構築可能である。
【０１４７】
ここで、印刷の中止（プリントジョブのキャンセル）について説明する。
プリントジョブのキャンセルはプリンタサブユニット１３ａに対し、ＪＯＢ  ＱＵＥＵＥコマンドｃａｎｃｅｌ＿ｊｏｂサブファンクションを送信することで行う。
【０１４８】
前記手順４が行われた時点で、プリントジョブが発行されるが、この時点では印刷データの転送は行われていない状態である。この前記手順４〜手順５の状態でＪＯＢ  ＱＵＥＵＥコマンドｃａｎｃｅｌ＿ｊｏｂサブファンクションを発行すると、印刷データの転送及び印刷処理が行う前にプリントジョブがキャンセルされる。また、前記手順６においてＣＡＰＴＵＲＥ  ＲＥＦコマンドｒｅｃｅｉｖｅサブファンクションが発行された後は、ストレージサブユニット１２ａとプリンタサブユニット１３ａ間に張られたコネクションを用いてデータが転送されている可能性がある。
【０１４９】
この手順６〜手順８状態（印刷メインオブジェクトから参照された参照オブジェクトの受信状態も含む）でプリントジョブをキャンセルする場合、同じくそのままＪＯＢ  ＱＵＥＵＥコマンドｃａｎｃｅｌ＿ｊｏｂサブファンクションを発行し、プリントジョブを終了させる方法がある。しかしコマンドの一対一対応をとるという目的から、プリンタサブユニット１３ａにおいてＣＡＰＴＵＲＥ  ＲＥＦコマンドｒｅｃｅｉｖｅサブファンクション実行中の状態では、ＪＯＢ  ＱＵＥＵＥコマンドｃａｎｃｅｌ＿ｊｏｂサブファンクションを受信してもＪＯＢＱＵＥＵＥコマンドに対してｂｕｓｙステータスをつけてＲＥＪＥＣＴ応答を返すこととし、この状態でプリントジョブをキャンセルするには、まずＣＡＰＴＵＲＥ  ＲＥＦコマンドａｂｏｒｔサブファンクションを発行してデータ転送を中止させ、続いてＪＯＢ  ＱＵＥＵＥコマンドｃａｎｃｅｌ＿ｊｏｂサブファンクションを発行してプリントジョブをキャンセルするという実装をとってもよい。
【０１５０】
次に、＜通信シーケンス１＞及び＜通信シーケンス２＞における、プリンタユニット１３によるプル型プリントの具体的な動作を一例を挙げて説明する。本例は、印刷メインオブジェクトをバンド毎に処理していき、必要な参照オブジェクトがあれば順次取得しながらラスタライズ等の印刷処理を行う場合の動作例であるが、言うまでもなく、前述したような、印刷ドキュメントを構成するデータを全て受信した後、印刷処理を行う実装でも良い。
【０１５１】
図２５は、プリンタユニット１３の機能ブロックを説明するための図である。ここには、ＩＥＥＥ１３９４バス３０で接続された印刷システム（コントローラ１１、ＨＤＤユニット１２、プリンタユニット１３）が示されている。
【０１５２】
プリンタユニット１３は、バス３０との接続用インターフェイスとなる通信Ｉ／Ｆ２４、プリンタジョブを蓄積するキューの制御部であるキュー制御部２３、印刷記述データの解読をしてラスタライザに渡すインタプリタ２５と、当該インタプリタより得られた印刷データに基づいてラスタライズするラスタライザ２２、ラスタライズされた印刷記述データを記録媒体上に可視記録出力するプリンタエンジン２１とから構成されている。
【０１５３】
いま、印刷の対象となる印刷オブジェクトは、図２６に示される画像を示すデータとする。この画像データは、プリンタで印刷可能な言語（例えば、ＸＨＴＭＬ形式）で記述され、複数のファイルが含まれている。それら複数のファイルの参照関係は、図２７に示されるツリー図の通りである。
【０１５４】
図２７において、トップファイルＴ「ｐｒｉｎｔ１．ｘｍｌ」は印刷メインオブジェクトであり、画像データ全体を意味し、画像の配置位置、文字の配置位置や大きさ、あるいは印刷されるべき文字等を表す。リンクファイルＬ１「ｃａｒ．ｊｐｇ」はＨＤＤユニット１２内のサブディレクトリに格納された自動車の画像、リンクファイルＬ２「ｃｕｐ．ｊｐｇ」は同じサブディレクトリに格納されたカップの画像を意味している。トップファイルＴには、リンクファイルＬ１、Ｌ２に対するリンクパス情報が記載されており、それぞれトップファイルＴの参照オブジェクトである。
【０１５５】
このような印刷オブジェクトについてのプリンタユニット１３の印刷動作は、図２８に示されるフローチャートの通りである。
まず、コントローラ１１から、印刷ジョブの通知として、上記印刷オブジェクトを指定したコマンドＣＡＰＴＵＲＥ  ＲＥＦがプリンタユニット１３に発行される（図２８のステップＳ１０１）。発行された印刷コマンドは、印刷ジョブとして、バス３０を介して、プリンタユニット１３のキュー制御部２３へ渡される。このキュー制御部２３は、得られたジョブを格納し、当該ジョブ情報を順番にインタプリタ２５に渡す。
【０１５６】
インタプリタ２５は、この印刷ジョブに含まれる、ＨＤＤユニット１２上の印刷記述データの存在場所（ＵＲＩ；Ｕｎｉｖｅｒｓａｌ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｓ等）を示すパス情報に基づいて、以下の印刷処理を実行する。
【０１５７】
つまり、インタプリタ２５は、キュー制御部２３より渡された信号が印刷ジョブであることとパス情報であることを判定したとき、通信Ｉ／Ｆ２４にチャンネル（コネクション）を設定するように指示をする。これによって設定されたチャネルを介して、前記パス情報をＨＤＤユニット１２に渡すとともに、当該印刷ジョブに対応する最上位階層データであるトップファイルＴの取得要求をＨＤＤユニット１２に発行する（図２８のステップＳ１０２〜Ｓ１０３）。
【０１５８】
この要求に従って、ＨＤＤユニット１２はバス３０を介してプリンタユニット１３にトップファイルＴを送信する（図２８のステップＳ１０４）。なお、ここでの前記データ転送要求は、任意のファイルを指示して一括で要求、あるいは任意の位置から任意のデータ量を要求（すなわち１ファイルのデータを部分的に要求）する方法であってもよい。
【０１５９】
ファイルを受信したインタプリタ２５は、印刷記述データの種類を判定し、不必要なデータを捨て、印刷されるべきデータをラスタライザ２２に渡す。このように印刷されるべきデータを受け取ったラスタライザ２２は当該データをラスタライズして、プリンタエンジン２１が記録媒体上に印刷する。
【０１６０】
インタプリタ２５は、前記印刷記述データの中から前記トップファイルＴにリンクされたリンクファイルＬが存在することを検知すると、既に設定したチャンネルとは別のチャンネルを設定するように通信Ｉ／Ｆ２４に指示を出す。新たなチャンネルが設定された時点で、インタプリタ２５は、当該オブジェクトの転送要求を出す。これによってオブジェクトデータのリードが開始する（図２８のステップＳ１０５Ｙｅｓ〜Ｓ１２１〜Ｓ１２２〜Ｓ１２３）。この参照オブジェクトのリードは任意のデータ量ずつなされるが、その値は予め設定しておいてもよいし、あるいは、インタプリタ２５がラスタライズに必要な量（例えば数ラスタ分のデータ量）ずつ演算してもよい（図２８のステップＳ１１１）。
【０１６１】
ここで図２７に示されるように、複数のオブジェクトファイルが存在する場合、インタプリタ２５は、対象ファイルごとにその時点でラスタライザ２２に前記の量のデータをリードする。
【０１６２】
前記処理において、先にリードしていたオブジェクトファイルの読み出しデータ量が前記量に達したとき、その時点で一旦転送を中断し、ラスタライズ処理がなされる（図２８のステップＳ１１２）。前記のラスタライズ処理が終了し、次のデータが必要となった時点で、ＨＤＤユニット１２が前回停止した位置の次の位置からデータ転送を開始するようになっている（図２８のステップＳ１０６Ｎｏ〜Ｓ１０７〜Ｓ１０８）。そして１のオブジェクトについてのリードが完了した時点で、前記のように設定されたチャンネルを開放する（図２８のステップＳ１０９Ｙｅｓ〜Ｓ１１０）。また、すべての印刷ジョブが終了したとき印刷終了通知をコントローラ１１に通知する（図２８のステップＳ１１３〜Ｓ１１４）。
【０１６３】
図２９はこの手順をより具体的に示すものである。以下の手順１、２・・は図２９中の▲１▼、▲２▼・・と符合する。なお、この例では複数チャンネルの同時使用可能なバスＩＥＥＥ１３９４を使用していることから、以下に記述するように複数のオブジェトのそれぞれに対応するチャネルを設定しているが、同一チャネル（同一回線）で複数のオブジェクトのデータを転送してもよい。
【０１６４】
手順１．最上位階層のベースデータ１本目をラスタライズする。
手順２．最上位階層のベースデータ２本目をラスタライズする。
手順３．最上位階層のベースデータ２本目をラスタライズ中にリンク情報で示されたオブジェクトファイルを検出する。そこで別途転送チャンネルを設けて該オブジェクトファイルの転送要求をＨＤＤユニット１２に出し、これを受けてＨＤＤユニット１２は該当するファイルのデータを転送する。ラスタライザはこのデータに基づいてラスタライズ処理をする。
【０１６５】
手順４．先のオブジェクトファイルが中断した時点で一旦リードを中断し、元の最上位階層のベースデータ２本目をラスタライズする。
手順５．最上位階層のベースデータ３本目をラスタライズする。
【０１６６】
手順６．最上位階層のベースデータ３本目をラスタライズ中に、リンク情報で示された前記手順３と同じオブジェクトファイルを検出する。当該オブジェクトファイルの前記手順３の手順で展開したデータの続きのデータを要求しファイルをリードしてラスタライズする。
【０１６７】
手順７．先のオブジェクトファイルが中断した時点で一旦リードを中断し、元の最上位階層のベースデータ３本目をラスタライズする。
手順８．最上位階層のベースデータ３本目をラスタライズ中に、リンク情報で示された前記手順６とは別のオブジェクトファイルを検出する。そこで、前記手順３及び手順６とは別の転送チャンネルを設けて、当該オブジェクトファイルのデータを要求しファイルをリードしてラスタライズする。
【０１６８】
手順９．２つ目のオブジェクトファイルが中断した時点で一旦リードを中断し、元の最上位階層のベースデータ３本目をラスタライズする。
手順１０．最上位階層のベースデータ４本目をラスタライズする。
【０１６９】
手順１１．最上位階層のベースデータ４本目をラスタライズ中に、リンク情報で示された前記手順３及び手順６と同じオブジェクトファイルを検出する。当該オブジェクトファイルの前記手順６で展開したデータの続きのデータを要求しファイルをリードしてラスタライズする。
【０１７０】
手順１２．１つ目のオブジェクトファイルが終了した時点で、リードを終了、転送チャンネルを開放する。元の最上位階層のベースデータ４本目をラスタライズする。
【０１７１】
手順１３．最上位階層のベースデータ４本目をラスタライズ中に、リンク情報で示された前記手順８と同じオブジェクトファイルを検出する。当該オブジェクトファイルの前記手順６の手順で展開したデータの続きのデータを要求しファイルをリードしてラスタライズする。
【０１７２】
手順１４．２つ目のオブジェクトファイルが終了した時点で、リードを終了、転送チャンネルを開放する。元の最上位階層のベースデータ４本目をラスタライズする。
【０１７３】
手順１５．最上位階層のベースデータ５本目をラスタライズする。
手順１６．最上位階層のベースデータ６本目をラスタライズする。
このように本印刷システムは、シリアルバス接続により印刷記述データを転送する際に、プリンタユニットが解読することが可能な形式のデータで、当該プリンタユニットがラスラタイズ可能なデータ量ずつ転送データの転送をコントロール（停止・再転送）するようになっている。このようなプル型プリントにより、プリンタ側ではスプール用の大きな印刷記述データバッファが不要となり、更に印刷記述データに対してプリンタ側が必要となったタイミングで別途データを取ってくることが可能となり、ラスタライズ処理を行うときに都合が良い。
【０１７４】
また、コントローラは、ジョブ（印刷コマンド）の発行だけで済み、印刷オブジェクトを保有することなく、印刷指示を発することができる。
なお、手順１〜手順１６の過程でベースデータ（印刷メインオブジェクト）リードまたは該当部分のデータ受信が不可能であると判断した場合、以後の処理が行えないため、その時点で処理を中断する。
【０１７５】
一方、手順３、手順６、手順８、手順１１、手順１３においてオブジェクトファイル（参照オブジェクト）のデータ受信が不可能であると判断した場合、その時点で処理を中断してもよいし、空白や×印など該当部分のみデータが受信出来なかった旨ユーザが理解可能な画像を代わりに印刷するようにしてそのまま処理を継続してもよい。
【０１７６】
以上、本発明に係る印刷システムについて、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。
例えば、コネクションの確立は、コントローラ１１だけに限られず、プリンタユニット１３によって実行されてもよい。つまり、プリンタユニット１３がＡＣＣｏｎｔｒｏｌｌｅｒとしての機能を有している場合には、プリンタユニット１３がＨＤＤユニット１２との間のコネクションＡｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎを確立してもよい。このときには、図９に示された手順６（コネクションの確立）と図１０に示された手順７（印刷トリガ）とが入れ替わる。具体的には、以下の通りである。
【０１７７】
図３０〜図３８は、プリンタユニットがＡＣ  Ｃｏｎｔｒｏｌｌｅｒとしての機能を有している場合、つまり、プリンタユニットがデータ供給ユニットとの間のコネクションＡｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎを確立する場合における３つの装置（ここでは、ＳＴＢユニット１１４、プリンタユニット１１３及びデータ供給ユニット１１２）間でのコマンドのやりとりを示すフロー図である。なお、これらの図における表記方法は図６〜図１３のフロー図と同様である。また、図中の「ＡＣ  ＭＡＮＡＧＥ  ＡＰＩ」はコネクションＡｓｙｎｃｈｒｏｎｏｕｓ  Ｃｏｎｎｅｃｔｉｏｎの管理をするインターフェイス（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）であり、「ＥＵＩ＿６４」は”６４−ｂｉｔ  ｅｘｔｅｎｄｅｄ  ｕｎｉｑｕｅ  ｉｄｅｎｔｉｆｉｅｒ”（米国電気電子学会ＩＥＥＥによる規定）の略である。
【０１７８】
これら図３０〜図３８と図６〜図１３とを比較して分かるようように、プリンタユニット１１３がＡＣコントローラとしての機能を有している場合には、その通信シーケンスは、以下の点において、ＳＴＢユニット１１４がＡＣコントローラとしての機能を有している場合と異なる。
【０１７９】
まず、ＳＴＢユニット１１４は、プリンタユニット１１３にプリントジョブを投入する際に（図３２の手順５）、Ｊｏｂ＿ＩＤ（ｐｒｉｎｔ＿ｊｏｂ＿ＩＤ）引数の内部ＥＵＩ＿６４に、印刷データ供給装置（ここでは、ＨＤＤユニット１１２）のＥＵＩ＿６４をセットしてＪｏｂＱｕｅｕｅコマンドを発する。ここで、Ｊｏｂ＿ＩＤ引数とは、ＪｏｂＱｕｅｕｅコマンドの引数の１つであり、図３９に示されるデータ構造を有し、８バイト長のＥＵＩ＿６４（通常は、ＪｏｂＱｕｅｕｅコマンドを発した送信者のＥＵＩ＿６４（ｏｗｎｅｒ＿ＥＵＩ６４）がセットされる）と、４バイト長のｒｅｃｏｒｄ＿ＩＤ（ＪｏｂＱｕｅｕｅコマンドに対する返信）とからなる。
【０１８０】
そして、ＳＴＢユニット１１４は、ＪｏｂＱｕｅｕｅコマンドを発した後に、コネクションを確立することなく（コネクションを確立する機能を有していないので）、プリンタユニット１１３に対して印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦを発行し、印刷トリガを与える（図３３の手順６）。このとき、印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦ内のパラメータＮｏｄｅ＿ＩＤ（ｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ）、ｓｏｕｒｃｅ＿ｐｌｕｇ及びｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇとして空値を指定する。
【０１８１】
この印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦを受けたプリンタユニット１１３は、Ｊｏｂ＿ＩＤ引数の中からＨＤＤユニット１１２のＥＵＩ＿６４を取り出し、そのＥＵＩ＿６４と同じ値を持つＮｏｄｅ＿ＩＤを検索することで、ＨＤＤユニット１１２のＮｏｄｅ＿ＩＤ（印刷データ供給装置を特定する位置情報）を取得する（図３４の手順７）。続いて、プリンタユニット１１３内部にあるＡＣコントローラ１１１ｂは、ＨＤＤユニット１１２とプリンタユニット１１３とのコネクションを確立することで、上記印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦで空値であったｓｏｕｒｃｅ＿ｐｌｕｇ及びｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇの値を入手する（図３５の手順８）。
【０１８２】
このようにして、印刷データ供給装置（ｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ）とプラグ（ｓｏｕｒｃｅ＿ｐｌｕｇ及びｄｅｓｔｉｎａｔｉｏｎ＿ｐｌｕｇ）が判明した後のデータ転送は、図１１に示された手順と同様にして行われる（図３６の手順１０及び手順１１）。また、データ転送が終了した後に、プリンタユニット１１３がＳＴＢユニット１１４に印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦに対するレスポンスＡＣＣＥＰＴＥＤを返す点も同様である。
【０１８３】
しかし、コネクションの解放については、プリンタユニット１１３内部のＡＣコントローラ１１１ｂが行う（図３７の手順１２）。
このような手順によって、プリンタユニットがＡＣコントローラとしての機能を有している場合にも、ＳＴＢユニットがＡＣコントローラとしての機能を有している場合と同様に、印刷指示を発する装置と印刷オブジェクトを保有する装置とが異なる場合におけるプル型プリントが可能となる。
【０１８４】
また、プリンタユニットにＡＣコントローラがある場合には、ＳＴＢユニットは、プリンタユニットに発する印刷コマンドにおいて、印刷データ供給装置の指定に関する全てのパラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ｉｄを空値又は付加しないで、印刷コマンドを送信してもよい。そのときには、プリンタユニットが、ＡＣ  ＭＡＮＡＧＥ  ＦＣＰのＳＴＡＴＵＳコマンドを、コネクションで接続された印刷データ供給装置（ＨＤＤユニット等）に発することで、それらのパラメータｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ、ｓｏｕｒｃｅ＿ｐｌｕｇ、ｓｕｂｕｎｉｔ＿ｔｙｐｅ、ｓｕｂｕｎｉｔ＿ｉｄの値を取得し、取得した値に基づいて、データ転送（データの取得）を行えばよい。
【０１８５】
つまり、プリンタ装置は、コネクションで接続されている印刷データ供給装置に対してコネクション状態の問い合わせを行うことで、ファイル要求の発行先を特定するアドレス情報を取得し、取得したアドレス情報が示す発行先に対してファイル要求を発行する。このような手順であっても、印刷指示を発した装置（ＳＴＢユニット）とは異なる装置（ＨＤＤユニット）に置かれた印刷オブジェクトに対するプル型プリントが可能となる。
【０１８６】
また、本実施の形態では、印刷システムを構成するコントローラ、データ送信機器（ｐｒｏｄｕｃｅｒ）及びデータ受信機器（ｃｏｎｓｕｍｅｒ）の具体例として、それぞれ、ＳＴＢ、ＨＤＤ装置及びプリンタ装置が挙げられたが、このような装置の他に、コントローラとして、コンピュータ装置、ホームバスコントローラ等が機能してもよいし、データ送信機器として、ＤＳＣ、ＤＴＶ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）装置、ビデオカメラ装置等のデータ供給装置であってもよいし、データ受信機器として、印刷オブジェクトを蓄積する大容量記憶装置や印刷オブジェクトを遠隔に転送する通信装置等であってもよい。
【０１８７】
また、本実施の形態では、印刷のトリガとして、コントローラからプリンタユニットに１つの印刷コマンドＣＡＰＴＵＲＥ  ＲＥＦが送信されたが、２以上の印刷コマンドに分割して発行してもよい。例えば、まず、印刷データ供給装置（Ｐｒｏｄｕｃｅｒ）に関連しないパラメータ（図４（ａ）に示されたもの）を含む基本的な印刷コマンドを発行し、続いて、印刷データ供給装置（Ｐｒｏｄｕｃｅｒ）に関連するパラメータ（図４（ｂ）に示されたｐｒｏｄｕｃｅｒ＿ｎｏｄｅ＿ＩＤ，  ｓｏｕｒｃｅ＿ｐｌｕｇ，  ｓｕｂｕｎｉｔ＿ｔｙｐｅ，  ｓｕｂｕｎｉｔ＿ｉｄ，  ｏｂｊｅｃｔ＿ｐａｔｈ）を含む拡張的な印刷コマンドを発行するような手順であってもよい。
【０１８８】
また、図４（ｂ）及び（ｃ）に示されたコマンドＣＡＰＴＵＲＥ  ＲＥＦパラメータｏｂｊｅｃｔ＿ｐａｔｈ、及び図４（ｃ）のコマンドＣＡＰＴＵＲＥ  ＲＥＦパラメータＢａｓｅ＿ｐａｔｈのデータ長は「ｖａｒｉａｂｌｅ」であり任意長であるが、現在のＡＶ／Ｃコマンドでは１コマンド５１２ｂｙｔｅｓまでという制限がある。したがって、１つの印刷要求には１つのコマンドＣＡＰＴＵＲＥ  ＲＥＦのみを使用するという制限を設けるのであれば、コマンドＣＡＰＴＵＲＥ  ＲＥＦの他のパラメータとのバランスを考えて、パラメータｏｂｊｅｃｔ＿ｐａｔｈまたはｂａｓｅ＿ｐａｔｈの最大長をある程度までに制限する必要がある。
【０１８９】
一方、１つの印刷要求に複数のコマンドＣＡＰＴＵＲＥ  ＲＥＦを使用可能とした場合、パラメータｏｂｊｅｃｔ＿ｐａｔｈまたはｂａｓｅ＿ｐａｔｈのパラメータ長には特に制限は必要ない。１つの印刷要求に複数のコマンドＣＡＰＴＵＲＥ  ＲＥＦを用いる方法の詳細については、特に言及しないが、例えばコマンドＣＡＰＴＵＲＥ  ＲＥＦに当該印刷要求を行うために発行するコマンドＣＡＰＴＵＲＥ  ＲＥＦの総数を指定するパラメータと、その発行順番を指定するパラメータとを新規に追加し、パラメータｏｂｊｅｃｔ＿ｐａｔｈを分割してプリンタサブユニット１３ａに通知する方法などがある。
【０１９０】
また、本実施の形態の印刷システムは、ＩＥＥＥ１３９４バスで接続された機器から構成されたが、機器を接続する伝送路は、このバスだけに限られるものではない。印刷コマンドやファイル取得コマンド等の授受が可能であるならば、本発明に係る印刷手順は、ＬＡＮ（１０ＢａｓｅＴ等）やインターネット、Ｂｌｕｅｔｏｏｔｈ（商標）等を下位層とする通信システムにも適用することができる。
【０１９１】
次に、本実施の形態を適用することによる副次的な効果について述べておく。従来の技術であるＩＥＥＥ１３９４  ＡＶ／Ｃ  Ｐｒｉｎｔｅｒ  Ｓｕｂｕｎｉｔにおいてはプッシュ型の印刷形態のみに対応しており、プル型の印刷形態に対応していない。また画像データの印刷が前提となっている。したがって、例えばＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述された印刷オブジェクトのように、リンクされた複数のファイルからなる印刷オブジェクトをプリントするには、印刷データ供給装置で１枚の画像データをあらかじめ生成してからデータ転送を行うしか方法がなく、印刷データ供給装置に多くの処理能力とメモリ資源が必要とされる。
【０１９２】
一方、ＨＴＭＬで記述された印刷オブジェクトのプッシュプリントを可能とした場合、印刷オブジェクトをそのままプリンタ装置に転送（プッシュ）し、印刷画像データをプリンタ装置で生成し印刷することとなるが、この場合でもページ単位で印刷オブジェクトを転送（プッシュ）しておく必要があるために、プリンタ装置側に、１ページ分の印刷オブジェクトを記憶する大容量の記憶バッファが必要とされるという問題がある。また、コントローラは、プリンタ装置における印刷状態を監視したり、印刷の進行状況に応じて印刷オブジェクトを出力する等の出力制御をする必要があり、コントローラにおける処理負荷が大きくなるという問題もある。
【０１９３】
しかしながら、本実施の形態では、ＩＥＥＥ１３９４におけるＡＶ／ＣプリンタコマンドのキャプチャコマンドによるＨＴＭＬファイルのプルプリントが可能であり、プリンタ装置に１ページ分の印刷オブジェクトを記憶する大容量の記憶バッファが必要とされるという問題や、コントローラにおける処理負荷が大きくなるという問題、印刷データ供給装置に多くのメモリと処理能力が必要とされるという問題が解消される。
【０１９４】
また、本実施の形態におけるコントローラ１１はそれ自体が単体の機器であってもよいし、印刷データ供給装置またはプリンタ装置と同一の機器であってもよい。プリンタ装置が受信する印刷指示には、印刷オブジェクトが格納されている場所（印刷データ供給装置）の指定が含まれ、印刷指示を受け取ったプリンタ装置は、指定された格納場所に置かれた印刷オブジェクトを取得してプリント（プル型のプリント）を実行するので、印刷指示を発行する装置と印刷オブジェクトを保有している装置とが同一の場合だけに限られず、それらの装置が異なる場合においても印刷が可能となる。つまり、印刷指示を発行する印刷制御装置とは異なる場所（印刷データ供給装置）に印刷オブジェクトが置かれている場合であっても、そのような印刷オブジェクトの印刷が可能となり、プル型のプリンタ装置が持っている機能を有効に発揮させることが可能な印刷システムが実現される。
【０１９５】
このように、本実施の形態を適用したプリントシステムは、コントローラとは異なる場所（独立した印刷データ供給装置）に格納された印刷オブジェクトを印刷させる等の多様なシステム構成に応じた柔軟な印刷が可能である。
【０１９６】
また、プル型のプリントでは印刷データを受信（プル）するためにプリンタ装置が印刷データ供給装置に対してデータ送信命令を発行する必要がある。データ送信命令を発行するためにはプリンタ装置が印刷データ供給装置の装置位置（アドレス）やコマンド体系、データ送信命令時のパラメータといった情報を予め把握しなければならない。
【０１９７】
しかし、本実施の形態では、これらの情報を印刷要求コマンドであるＡＶ／ＣＰｒｉｎｔｅｒ  ＳｕｂｕｎｉｔのコマンドＣＡＰＴＵＲＥ  ＲＥＦに含ませるか、または、プリンタ装置が印刷データ供給装置との間に張られたコネクションの状態を問い合わせることで容易に入手可能である。
【０１９８】
これによって、印刷データ供給装置の種類（タイプ）ごとに情報の授受に関するコマンド体系や順序等が異なる場合に、プリンタ装置は、その差を認識したうえで、印刷データ供給装置の特性に合ったプロトコルに従って印刷オブジェクトを取得することができるので、印刷オブジェクトの転送や印刷処理の効率が向上され得る。
【０１９９】
また、ＩＥＥＥ１３９４規格においては、印刷データ供給装置のアドレスに関して、ＩＥＥＥ１３９４規格固有のバスリセットの影響を考慮する必要がある。このバスリセットは、ＩＥＥＥ１３９４ネットワーク上の機器の電源ｏｎ／ｏｆｆ、ケーブルの挿抜毎に発生するものであり、バスリセットが発生するとネットワーク上の機器のアドレスが再設定される。したがって、プリンタ装置においてバスリセットを検知した場合、印刷データ供給装置の新しいアドレスを再度把握する必要がある。
【０２００】
本実施の形態では、ＩＥＥＥ１３９４伝送路におけるアドレスが再設定された場合に、前記印刷データ供給装置と前記プリンタ装置の間のコネクションを復旧し、次に、前記プリンタ装置に対する印刷要求を再送し、前記再送要求に対し、前記プリンタ装置は、要求された印刷に必要なデータ受信を再開する。その上で、装置位置（アドレス）等をコマンドＣＡＰＴＵＲＥ  ＲＥＦに含ませる方式では装置位置を設定するパラメータにバスリセット後の印刷データ供給装置のアドレス情報に基づく値を設定し、コネクションの状態を問い合わせる場合は再送要求を受けた後に状態を問い合わせている。これにより、バスリセット後でもあっても正しい値を容易に取得可能である。
【０２０１】
また、ＨＴＭＬ等で記述されたドキュメントでは、内部で他の印刷オブジェクトへのリンク（リンクパス情報）が記述されている。このリンクパス情報が、ある基準点からの相対位置によってファイルの位置を指定する相対パスである場合、相対パスを絶対位置でファイルを指定する絶対パスに変換する手法が必要となる。本実施の形態では、パスの解決するための第１〜第３の方法を用いることで絶対パスを容易に取得可能である。
【０２０２】
【発明の効果】
以上の説明から明らかなように、本発明に係る印刷データ転送方法は、伝送路で接続された印刷データ供給装置とプリンタ装置間に印刷データを転送するための方法であって、前記印刷データ供給装置が保持する印刷データを印刷させるための、前記印刷データ供給装置の属性情報を伴って前記プリンタ装置に対して印刷要求する段階と、前記印刷要求に応じ、前記プリンタ装置が前記属性情報に基づいて前記印刷データ供給装置に印刷データを要求する段階と、前記印刷データの要求に応じ、前記印刷データ供給装置が印刷データを前記プリンタ装置に送信する段階とを有する。
【０２０３】
これにより、本発明を適用した印刷データ転送方法等では、プリンタ装置からのデータ取得要求に基づいて印刷を実行するプル型の印刷形態（Ｐｕｌｌ  Ｐｒｉｎｔ）が実現可能であり、本発明の実用的価値は極めて高い。さらに、本発明の印刷ファイル取得システム等によれば、リンクパス情報が相対パスである場合にも、ファイルを取得することができる。さらに、本発明のデータ転送方法等によれば、バスリセット時においても、正しいデータを取得することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態における印刷システムのシステムモデルを示す図である。
【図２】図１に示されたシステムモデルにおける通信シーケンスを示す図である。
【図３】図２に示されたフェーズｏｂｊｅｃｔ  ｐｕｓｈの詳細な通信シーケンスを示す図である。
【図４】（ａ）は、プッシュ型プリントを前提とする従来の印刷コマンドＣＡＰＴＵＲＥ、（ｂ）は、プッシュ型及びプル型プリントが可能であり、（ｃ）はプル型プリントのみが可能な本発明に係るコマンドＣＡＰＴＵＲＥ  ＲＥＦのＡＶ／Ｃコマンドフレームを示す。
【図５】ＡＶ／Ｃ  Ｃａｍｅｒａ  Ｓｔｏｒａｇｅ  ＳｕｂｕｎｉｔにおけるコマンドＳＥＮＤ  ＦＩＬＥのコマンドフレームである。
【図６】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（機器確認フェーズ）である。
【図７】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（バージョン確認フェーズ）である。
【図８】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（ジョブ投入フェーズ）である。
【図９】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（コネクション確立フェーズ）である。
【図１０】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（印刷トリガフェーズ）である。
【図１１】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（ファイル転送フェーズ）である。
【図１２】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（コネクション解放フェーズ）である。
【図１３】図２に示された通信シーケンス（＜通信シーケンス１＞）の詳細なフロー図の一つ（ジョブ終了フェーズ）である。
【図１４】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（機器確認フェーズ）である。
【図１５】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（バージョン確認フェーズ）である。
【図１６】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（ジョブ投入フェーズ）である。
【図１７】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（コネクション確立フェーズ）である。
【図１８】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（印刷トリガフェーズ）である。
【図１９】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（ファイル転送フェーズ）である。
【図２０】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（コネクション解放フェーズ）である。
【図２１】図２に示された通信シーケンス（＜通信シーケンス２＞）の詳細なフロー図の一つ（ジョブクローズフェーズ）である。
【図２２】プリンタユニットの印刷動作の一例を示すフローチャートである。
【図２３】プリンタユニットの印刷動作の他の例を示すフローチャートである。
【図２４】プリンタユニットの印刷動作のさらに他の例を示すフローチャートである。
【図２５】プリンタユニットの機能ブロックを説明するための図である。
【図２６】印刷の対象となる印刷オブジェクトの一例（画像）を示す図である。
【図２７】図２６に示された印刷オブジェクトの構成要素の関係を示すツリー図である。
【図２８】プリンタユニットの印刷動作を示すフローチャートである。
【図２９】プリンタユニットの印刷動作の具体例を示す図である。
【図３０】プリンタユニットがＡＣコントローラとしての機能を有している場合における通信シーケンスの詳細なフロー図の一つ（機器確認フェーズ）である。
【図３１】同通信シーケンスの詳細なフロー図の一つ（バージョン確認フェーズ）である。
【図３２】同通信シーケンスの詳細なフロー図の一つ（ジョブ投入フェーズ）である。
【図３３】同通信シーケンスの詳細なフロー図の一つ（印刷トリガフェーズ）である。
【図３４】同通信シーケンスの詳細なフロー図の一つ（Ｎｏｄｅ＿ＩＤの検索フェーズ）である。
【図３５】同通信シーケンスの詳細なフロー図の一つ（コネクション確立フェーズ）である。
【図３６】同通信シーケンスの詳細なフロー図の一つ（ファイル転送フェーズ）である。
【図３７】同通信シーケンスの詳細なフロー図の一つ（コネクション解放フェーズ）である。
【図３８】同通信シーケンスの詳細なフロー図の一つ（ジョブ終了フェーズ）である。
【図３９】Ｊｏｂ＿ＩＤ引数のデータ構造を示す図である。
【図４０】従来の印刷手順を示す通信シーケンス図である。
【符号の説明】
１１、９００    コントローラ
１２、１１２    ＨＤＤユニット
１２ａ、１１２ａ  ストレージサブユニット
１３、１１３、９１０    プリンタユニット
１３ａ、１１３ａ  プリンタサブユニット
１４、１１４    ＳＴＢユニット
１１１ａ  ＰＳコントローラ
１１１ｂ  ＡＣコントローラ
２１    プリンタエンジン
２２    ラスタライザ
２３    キュー制御部
２４    通信Ｉ／Ｆ
２５    インタプリタ
３０    バス
【図１】
2004157960.tif 000003
【図２】
2004157960.tif 000004
【図３】
2004157960.tif 000005
【図４】
2004157960.tif 000006
【図５】
2004157960.tif 000007
【図６】
2004157960.tif 000008
【図７】
2004157960.tif 000009
【図８】
2004157960.tif 000010
【図９】
2004157960.tif 000011
【図１０】
2004157960.tif 000012
【図１１】
2004157960.tif 000013
【図１２】
2004157960.tif 000014
【図１３】
2004157960.tif 000015
【図１４】
2004157960.tif 000016
【図１５】
2004157960.tif 000017
【図１６】
2004157960.tif 000018
【図１７】
2004157960.tif 000019
【図１８】
2004157960.tif 000020
【図１９】
2004157960.tif 000021
【図２０】
2004157960.tif 000022
【図２１】
2004157960.tif 000023
【図２２】
2004157960.tif 000024
【図２３】
2004157960.tif 000025
【図２４】
2004157960.tif 000026
【図２５】
2004157960.tif 000027
【図２６】
2004157960.tif 000028
【図２７】
2004157960.tif 000029
【図２８】
2004157960.tif 000030
【図２９】
2004157960.tif 000031
【図３０】
2004157960.tif 000032
【図３１】
2004157960.tif 000033
【図３２】
2004157960.tif 000034
【図３３】
2004157960.tif 000035
【図３４】
2004157960.tif 000036
【図３５】
2004157960.tif 000037
【図３６】
2004157960.tif 000038
【図３７】
2004157960.tif 000039
【図３８】
2004157960.tif 000040
【図３９】
2004157960.tif 000041
【図４０】
2004157960.tif 000042