(57)【要約】  自動化サービスを実行するための実施形態が開示される。実施形態において、自動化サービスは、最初のファイルをその最初のファイルとは異なるファイルタイプを有する変換されたファイルに変換することができる、アプリケーション、プロセス、またはシステムである。実施形態で、要求元は、変換要求メッセージを生成する。その変換要求メッセージは、所望の変換に関する情報、その変換中に実行されることになるオプション、および変換されることになる最初のファイルを含み得る。その最初のファイルは、その要求メッセージの部分であるデータストリームによって表すことができる。その要求メッセージは、所望の要求をそのデータストリームで実行して変換されたファイルを作成するファイル変換プログラムに送信される。
2014522017.tif 000002
【特許請求の範囲】
【請求項１】
自動化サービスを実行する方法であって、
バックエンドサーバーで、第１の要求元からの第１のファイル変換の第１の要求を受信するステップであり、前記第１の要求が少なくとも１つの最初のファイルを表すストリームデータを備え、前記少なくとも１つの最初のファイルが最初のファイルタイプを備える、ステップと、
複数の変換プロセスから少なくとも１つの変換プロセスが遊休状態であることを判定するステップと、
前記判定に基づいて、前記少なくとも１つの遊休状態のプロセスに前記ストリームデータを提供するステップと、
前記少なくとも１つの遊休状態のプロセスを使用し、前記データストリームから少なくとも１つの変換されたファイルを生成するステップと、
前記少なくとも１つの遊休状態のプロセスが前記少なくとも１つの変換されたファイルを無事に生成したかどうかを判定するステップと、
前記少なくとも１つの遊休状態のプロセスが前記少なくとも１つの変換されたファイルを無事に生成したときに、前記少なくとも１つの変換されたファイルを前記要求元に送信するステップと
を含む、方法。
【請求項２】
前記要求が、要求データをさらに備える、請求項１に記載の方法。
【請求項３】
前記要求データが、変換オプションをさらに備える、請求項２に記載の方法。
【請求項４】
前記少なくとも１つの遊休状態のプロセスが前記少なくとも１つの変換されたファイルを無事に生成することに失敗したときに、エラーメッセージを前記要求元に送信するステップ
をさらに含む、請求項１に記載の方法。
【請求項５】
前記第１の要求が、バッチプロセスファイル変換を実行するための要求である、請求項１に記載の方法。
【請求項６】
前記バックエンドサーバーで、第２のファイル変換の第２の要求を受信するステップと、
前記第２のファイル変換の前記第２の要求が単一ファイル要求であることを判定するステップと、
前記第１のバッチプロセスファイル変換がまだ進行中であることを判定するステップと、
前記バッチプロセス要求よりも前記単一ファイル要求を優先させるステップとをさらに含み、前記バッチプロセス要求よりも前記単一ファイル要求を優先させるステップが、前記第１のファイル変換が完了する前に前記第２のファイル変換を実行することを可能にする、請求項５に記載の方法。
【請求項７】
プレゼンテーションファイル自動化サービスを要求するための方法であって、
フロントエンドサーバーで、要求元によってファイル変換要求を生成するステップであって、前記要求が、ファイル変換オプション、および少なくとも１つの最初のファイルを表すデータを備え、前記少なくとも１つの最初のファイルが最初のファイルタイプを有する、ステップを含み、プレゼンテーション自動化サービスのために前記ファイル変換要求を生成するステップが、
変換オプションを備える要求データを収集するステップと、
前記要求元が前記少なくとも１つの最初のファイルにアクセスする権限を与えられていることを判定するステップと、
前記要求および要求メッセージ内の前記少なくとも１つの最初のファイルをパッケージ化するステップであって、前記少なくとも１つの最初のファイルがデータストリームとしてパッケージ化される、ステップと、
ファイル変換のためにバックエンドサーバーに前記要求メッセージを送信するステップと
を含む、方法。
【請求項８】
前記フロントエンドサーバーで、前記バックエンドサーバーから応答を受信するステップをさらに含む、請求項７に記載の方法。
【請求項９】
前記応答が、少なくとも１つの変換されたファイルを備える、請求項８に記載の方法。
【請求項１０】
自動化サービスを実行するためのシステムであって、
フロントエンドサーバーを備え、前記フロントエンドサーバーが、
プロセッサと、
前記プロセッサと電気通信するメモリとを備え、前記メモリが、前記プロセッサによって実行されると
要求元によってファイル変換要求を生成するステップを含む方法を実行するコンピューター実行可能命令を備え、前記要求が、ファイル変換オプション、および少なくとも１つの最初のファイルを表すデータを備え、前記少なくとも１つの最初のファイルが最初のファイルタイプを有し、前記ファイル変換要求を生成するステップが、
変換オプションを備える要求データを収集するステップと、
前記要求元が前記少なくとも１つの最初のファイルにアクセスする権限を与えられていることを判定するステップと、
要求メッセージ内に前記要求および前記少なくとも１つの最初のファイルをパッケージ化するサブステップであり、前記少なくとも１つの最初のファイルがデータストリームとしてパッケージ化される、ステップと、
ファイル変換のためにバックエンドサーバーに前記要求メッセージを送信するステップと
を含む、システム。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]いくつかのプレゼンテーションアプリケーションは、そのプレゼンテーションファイルタイプを異なるファイルタイプに変換するためのオプションをユーザーに提供する。このオプションを使用するために、ユーザーは、プレゼンテーションアプリケーションを使用し、各ファイルを個々に開き、変換する必要がある。しかし、ユーザーが多数のプレゼンテーションファイルを異なるファイルフォーマットに変換することを望む状況が存在する。これは、具体的には、企業が多数の記憶されたプレゼンテーションを異なるファイルフォーマットに変換することを望むことがあるビジネスシーンに当てはまる。これらの状況では、プレゼンテーションアプリケーションによって提供される変換オプションを使用して多数のプレゼンテーションファイルを変換することは、効率的ではない。本開示の実施形態はこの一般的な環境に関して企図される。
【０００２】
[0002]本背景技術では特定の問題が扱われるが、本開示は、それらの特定の問題を解決することに決して限定されるものではない。
【発明の概要】
【課題を解決するための手段】
【０００３】
[0003]自動化サービスを実行するための実施形態が開示される。実施形態では、自動化サービスは、最初のファイルをその最初のファイルとは異なるファイルタイプを有する変換されたファイルに変換する能力を有する、アプリケーション、プロセス、または、システムである。たとえば、自動化サービスは、ＰＯＷＥＲＰＯＩＮＴ（商標）（．ｐｐｔ）ファイルまたはＯｐｅｎ  Ｏｆｆｉｃｅ  ＸＭＬプレゼンテーションファイル（．ｐｐｔｘ）などのプレゼンテーションファイルを変換されたファイル（たとえば、ＰＤＦファイル、ＸＰＳファイル、ＪＰＥＧファイル、ＰＮＧファイル、または任意の他のタイプのファイル）に変換するために使用することができる。
【０００４】
[0004]実施形態では、要求元は、変換要求メッセージを生成する。その変換要求メッセージは、所望の変換に関する情報、その変換中に実行されることになるオプション、および、変換されることになる最初のファイルを含み得る。その最初のファイルは、その要求メッセージの部分であるデータストリームによって表すことができる。その要求メッセージは、変換されたファイルを作成するために所望の要求をそのデータストリームで実行するファイル変換プログラムに送信される。変換されたファイルは、次いで、その要求元に返される。追加の実施形態では、そのファイル変換プログラムは、要求に優先順位を付けることができる。たとえば、そのファイル変換プログラムは、バッチファイルに変換するための要求よりも単一ファイル変換要求を優先させることができる。
【０００５】
[0005]本概要は、発明を実施するための形態で以下にさらに説明される概念の選択を簡潔な形で紹介するために提供される。本概要は、特許請求されている対象の重要な特徴または本質的特徴を識別するものではなく、特許請求されている対象の範囲を限定するために使用されるものでもない。
【０００６】
[0006]同じ番号は、すべての図面において同じ要素または同じタイプの要素を表す。
【図面の簡単な説明】
【０００７】
【図１】[0007]自動化サービスを実行するためのシステム１００の一実施形態を示す図である。
【図２】[0008]自動化要求を生成および送信するための方法２００の一実施形態を表す流れ図である。
【図３】[0009]自動化要求に応答する方法３００の一実施形態を表す流れ図である。
【図４】[0010]複数の自動化要求を処理するための方法４００の一実施形態を表す流れ図である。
【図５】[0011]本明細書で開示される方法を実装するためのコンピューター環境およびコンピューターシステム５００の一実施形態の図である。
【発明を実施するための形態】
【０００８】
[0012]本開示は、ここで、起こり得る実施形態のうちのいくつかが示された添付の図面を参照して例示的実施形態をより詳しく説明する。しかし、他の態様が多数の異なる形で実施可能であり、本開示の特定の実施形態の包含が、そのような態様を本明細書に記載の実施形態に限定するものとして解釈されるべきではない。そうではなくて、図面に示された実施形態は、詳細で完全な、そして当業者にその意図された範囲を詳しく伝える、開示を提供するために含まれる。図面を参照するとき、それらを通して示される同様の構造および要素は、同様の参照番号で指示される。
【０００９】
[0013]システムおよび方法の実施形態が、自動化サービスを実行するために開示される。自動化サービスは、最初のファイルをその最初のファイルとは異なるファイルタイプを有する変換されたファイルに変換する能力を有する、アプリケーション、プロセス、またはシステムである。たとえば、自動化サービスは、ＰＯＷＥＲＰＯＩＮＴ（商標）（．ｐｐｔ）ファイルおよび／またはＯｐｅｎ  Ｏｆｆｉｃｅ  ＸＭＬプレゼンテーションファイル（．ｐｐｔｘ）などのプレゼンテーションファイルを変換されたファイル（たとえば、ＰＤＦファイル、ＸＰＳファイル、ＪＰＥＧファイル、ＰＮＧファイル、または任意の他のタイプの異なるファイル）に変換するために使用することができる。
【００１０】
[0014]実施形態では、要求元は変換要求メッセージを生成する。その変換要求メッセージは、所望の変換に関する情報、その変換中に実行されることになるオプション、および変換されることになる最初のファイルを含み得る。その最初のファイルは、その要求メッセージの部分であるデータストリームによって表すことができる。その要求メッセージは、変換されたファイルを作成するためにそのデータストリームで変換要求を実行するファイル変換プログラムに送信される。その変換されたファイルは、次いで、その要求元に返される。追加の実施形態で、そのファイル変換プログラムは、要求に優先順位を付ける。たとえば、そのファイル変換プログラムは、バッチファイルに変換するための要求よりも単一ファイル変換要求を優先させることができる。
【００１１】
[0015]たとえば、本明細書で開示されるシステムおよび方法は、プレゼンテーションファイル（たとえば、Ｏｐｅｎ  Ｏｆｆｉｃｅ  ＸＭＬプレゼンテーション（．ｐｐｔｘ）ファイル、ＰＯＷＥＲＰＯＩＮＴ（商標）プレゼンテーション（．ｐｐｔ）ファイル、または任意の他のタイプのプレゼンテーションファイル）を異なるファイルタイプを有する変換されたファイルに変換するために使用することができる。実施形態では、変換されたファイルタイプは、元のファイルタイプ以外のファイルタイプである。たとえば、変換されたファイルタイプは、以下のファイルタイプのうちの１つでもよいが、それに限定されない：Ｏｐｅｎ  Ｏｆｆｉｃｅ  ＸＭＬプレゼンテーション（．ｐｐｔｘ）ファイル、ＰＯＷＥＲＰＯＩＮＴ（商標）プレゼンテーション（．ｐｐｔ）ファイル、ポータブルドキュメントフォーマット（．ｐｄｆ）ファイル、ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（．ｘｐｓ）ファイル、ＪＰＥＧ（．ｊｐｇ）ファイル、および／またはポータブルネットワークグラフィックス（．ｐｎｇ）ファイル。ある種の実施形態では、プレゼンテーションファイルを．ｊｐｇファイルまたは．ｐｎｇファイルなどの画像ファイルに変換するとき、個々の画像が、そのプレゼンテーションのスライドごとにまたはページごとに生成され得る。いくつかの実施形態では、これらの個々のファイルは、次いで、圧縮されたファイル（たとえば、ｚｉｐファイル、ｔａｒファイル、．ｇｚファイル、．７ｚファイル、または任意の他のタイプの圧縮されたファイル）内にともにグループ化され得る。
【００１２】
[0016]ここで図面を参照すると、図１は、自動化サービスを実行するためのシステム１００の一実施形態を示す。実施形態では、自動化サービスは、最初のファイルを異なるファイルタイプを有する変換されたファイルに変換するサービスである。システム１００は、ネットワーク化されたシステム、ＭＩＣＲＯＳＯＦＴ（商標）ＳＨＡＲＥＰＯＩＮＴ（商標）などのプラットフォームなどの但しこれに限定されないウェブサービスプラットフォーム、または、任意の他のタイプのコンピューティング環境の部分でもよい。実施形態では、本システムは、フロントエンドサーバー１０１およびバックエンドサーバー１０８を備える。フロントエンドサーバー１０１は、たとえば、プレゼンテーションファイルを変換する要求などのファイル変換要求を生成するためのロジックを提供するパブリックオブジェクトモデル（「パブリックＯＭ」）１０２を含み得る。実施形態では、パブリックＯＭ１０２は、要求元（たとえば、ユーザー、開発者、アプリケーション、プロセスなど）がファイル変換要求を作成するために使用することができるアプリケーションプログラミングインターフェース（「ＡＰＩ」）である。たとえば、一実施形態では、パブリックＯＭ１０２は、ファイル変換を要求するための一般的方法を提供する。そのような実施形態では、その一般的方法は、どのタイプの変換されたファイルが最終的に作成されるかに関わらず、呼び出され得る。他の実施形態では、パブリックＯＭ１０２は、所望の変換されたファイルタイプの各タイプに特定の変換方法を提供することができる。たとえば、パブリックＯＭ１０２は、プレゼンテーションファイルを．ｐｄｆファイルに変換するための特定の方法、プレゼンテーションファイルを．ｊｐｇファイルに変換するための異なる方法などを提供することができる。そのような実施形態では、パブリックＯＭ１０２は、あらゆるファイルタイプ変換のための異なる方法を明らかにし得る。
【００１３】
[0017]実施形態では、ファイル変換の要求を生成するために提供される本方法は、入力パラメータを受け付けることができる。たとえば、本方法は、入力パラメータとして、プレゼンテーションファイルなどのファイルを受け付けることができる。一実施形態では、そのファイル自体は、本方法への入力として提供される。たとえば、本方法は、変換されることになる最初のファイルへのパスを提供され得る。そのような状況で、本方法は、次いで、そのパス情報を使用してそのファイルにアクセスすることができる。他の実施形態では、本方法は、最初のファイルを表すデータストリームを受信することができる。データストリームを使用することは、ファイル変換自動化サービスにさらなる効率をもたらす。最初のファイルがストリームとして提供される場合、それは、本自動化サービスがその最初のファイルとその変換されたファイルとを記憶するためのメモリを割り当てる必要なしにそのデータストリームでファイル変換を実行することを可能にする。そのストリームを変換したとき、本自動化サービスは、データストリームの形で、その変換されたファイルを要求元に渡して返すことができる。
【００１４】
[0018]実施形態では、パブリックＯＭ１０２が入力パスを受け付けるかまたはストリームを受け付けるか、その入力で提供されるファイルの数に依存する。たとえば、単一ファイルは、入力パスまたはストリームのいずれかとして提供され得る。しかし、ＳＨＡＲＥＰＯＩＮＴ（商標）リストなどの但しこれに限定されない、フォルダ全体またはネットワークリストでは、そのようなグループのオブジェクトは、最初のファイルの場所と変換されたファイルを書き込むための場所とを提供するパスデータを提供され得る。また、他の実施形態では、パブリックＯＭ１０２が前述のように一般的変換方法を提供するときなどに、本方法は、たとえば、要求元によって要望されるファイル変換のタイプを指示するパラメータの形で情報を受信する。
【００１５】
[0019]さらに別の実施形態では、パブリックＯＭ１０２によって提供される方法は、変換オプションに関連する情報を受信する。たとえば、要求された変換されたファイルのタイプに応じて、要求元は、本自動化サービスがその変換プロセス中に追加の動作を実行し得ることを指示することができる。たとえば、プレゼンテーションファイルが画像または一連の画像に変換されることを要求元が要求する一実施形態では、要求元は、その画像のサイズ、その画像の解像度、または、任意の数の他の画像関連オプションを指定することができる。要求元がプレゼンテーションファイルが．ｐｄｆファイルに変換されることを要求するもう１つの実施形態では、その要求元は、ページごとのスライドの数、その変換された．ｐｄｆファイルまたは．ｘｐｓファイル内にそのプレゼンテーションファイルからの注記を含めるかどうか、その変換されたファイルがＰＤＦ／Ａフォーマットであるかどうか、結果として生じる変換されたファイルが標準品質を使用して作成されるか高品質を使用して作成されるか、隠しスライドを含むかどうか、スライドにフレームを付けるかどうか、または、．ｐｄｆファイルを作成するときに一般に使用される任意の他のタイプの仕様またはオプションを要求することができる。他の実施形態では、本方法は、メタデータを含むまたは取り除くことに関するオプション、変換されたファイルが圧縮されるかどうか、または、ある特定のタイプのファイルを作成するときに提供される任意の他のタイプのオプションを受信することができる。
【００１６】
[0020]本自動化サービスはまた、要求元がファイル変換中にプレゼンテーションファイルなどのファイルからある一定のデータを取り除くために使用することができる文書検査オプションを提供することができる。実施形態では、本自動化サービスは、情報を自動的に取り除くためのオプションを提供することができる。たとえば、本自動化サービスは、変換されたファイル内にある一定の情報を含めるかどうかを判定するために要求元が選択することができるオプションを提供することができる。そのような情報は、コメントおよび注釈、文書プロパティおよびＰＩＩ、カスタムＸＭＬ、見えないスライド上の内容、スライド外の内容、および／またはプレゼンテーション注記を含み得る。
【００１７】
[0021]ファイル変換の要求を生成するための方法の提供に加えて、パブリックＯＭ１０２は、ファイル変換のための自動化サービスを実行するために使用される追加の方法を提供することができる。たとえば、パブリックＯＭ１０２は、たとえば、自動化サービスを呼び出すことによって、または、自動化サービスを実行するために別のプロセスに要求を送信することによって、自動化サービスを始めるための始動方法（たとえば、「始める（Ｂｅｇｉｎ）」または「開始（Ｓｔａｒｔ）」方法）を提供することができる。パブリックＯＭ１０２によって提供される他の方法は、本自動化サービスを完了するために使用される中止方法（たとえば、「終了（Ｅｎｄ）」方法）を含み得る。たとえば、一実施形態では、その中止方法は、要求元にその自動化サービスが完了したことを通知することができる。そのような実施形態では、その中止方法はまた、その要求元に１つまたは複数の変換されたファイルを提供することができる。もう１つの実施形態では、本自動化サービスファイル変換が失敗した場合、その中止サービスは、たとえば、その要求元にエラーメッセージを渡すことによって、その失敗を要求元に知らせることができる。
【００１８】
[0022]実施形態では、パブリックＯＭ１０２は、通知を処理する非同期パターン方法を使用する。非同期パターンを使用することによって、要求元は、変換が起こっている間、そのファイル変換要求の状況を監視する必要がない。それは、要求元が、そのファイル変換を待っている間に別のタスクを実行することを可能にする。加えて、非同期パターン方法は、要求元がリソースを遮断することなしに本自動化サービスにそのファイル変換要求を行うことを可能にする。
【００１９】
[0023]実施形態では、要求元が本自動化サービスに最初のファイルを提供し、パブリックＯＭ１０２を使用して要求を生成し得る前に、妥当性およびセキュリティ検査がその要求元で実行される。たとえば、要求元は、認証および認可検査を実行して、最初のファイル（複数可）またはディレクトリにアクセスするための許可の適切なセットをその要求元が有することを確保しなければならないことがある。一実施形態では、妥当性およびセキュリティ検査は、その要求元がパブリックＯＭ１０２にアクセスする前に実行される。もう１つの実施形態では、パブリックＯＭ１０２が、妥当性およびセキュリティ検査を実行することができる。
【００２０】
[0024]フロントエンドサーバー１０１はまた、要求管理プログラム１０４を含み得る。要求管理プログラム１０４は、パブリックＯＭ１０２、または、パブリックＯＭ１０２を使用する任意のアプリケーションと通信することができる。要求管理プログラム１０４は、バックエンドサーバー１０８に要求を送信する。実施形態では、図１には示さないが、本自動化サービスは、複数のサーバーに亘る分散サービスでもよい。そのような実施形態では、複数のバックエンドサーバー１０８が、システム１００内で使用され得る。分散された実施形態では、要求管理プログラム１０４は、ロードバランシングを実行することによってどのバックエンドサーバー１０８がその要求を送信することになるかを判定することができる。たとえば、要求管理プログラム１０４は、一貫したハッシング（hashing）を使用して、バックエンドサーバー１０８の間で要求を分散することができる。さらなる実施形態では、要求管理プログラム１０４はまた、フロントエンドサーバー１０１がバックエンドサーバー１０８へのそれの接続を失う状況で、または、バックエンドサーバー１０８が故障した場合に、フェイルオーバ方法（failover method）を実行することができる。要求管理プログラム１０４はまた、要求メッセージがバックエンドサーバー１０８に適切に配信されない場合に、メッセージの送信を再試行することができる。
【００２１】
[0025]実施形態では、フロントエンドサーバー１０１はまた、バックエンドサーバー１０８に置かれた自動化サービス１１０とフロントエンドサーバー１０１の間で通信を確立するために使用される自動化サービスプロキシ１０６を含む。自動化サービスプロキシ１０６は、Ｗｉｎｄｏｗｓ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｆｏｕｎｄａｔｉｏｎ（「ＷＣＦ」）プロキシでもよい。ＷＣＦプロキシは、バックエンドサーバー１０８の自動化サービス１１０にアクセスするために使用することができる。もう１つの実施形態では、自動化サービスプロキシ１０６は、遠隔アプリケーションとの通信および／またはそれへのアクセスを提供する能力を有する任意の他のタイプのプロキシまたはＡＰＩでもよい。
【００２２】
[0026]システム１００はまた、バックエンドサーバー１０８を含む。実施形態では、バックエンドサーバー１０８は、自動化サービスファイル変換を実行するアプリケーションおよび／またはプロセスを含む。バックエンドサーバー１０８は、フロントエンドサーバー１０２から変換要求を受信し、本自動化サービスを実行してそのファイルを新しいファイルタイプに変換する。実施形態では、バックエンドサーバー１０８は、データストリーム内の変換のために最初のファイルまたは複数のファイルを受信する。バックエンドサーバー１０８でのプロセスは、そのデータストリームで動作して、変換されたファイルを作成し、次いで、その変換されたファイルを変換されたファイルデータストリームとしてそのフロントエンドサーバーを介して要求元に渡して返す。データストリームで動作することで、最初のファイルまたは変換されたファイルのいずれかを保存する必要からバックエンドサーバー１０８を解放することによって記憶の効率性をもたらす。
【００２３】
[0027]実施形態では、バックエンドサーバー１０８は、自動化サービス１１０を含む。自動化サービス１１０は、自動化サービスプロキシ１０６を介してウェブフロントエンドサーバー１０１との通信を円滑に進める。たとえば、自動化サービス１１０は、ファイル変換の要求を受信し、変換が成功した場合には、変換されたファイルをウェブフロントエンドサーバー１０１に返す。変換が成功しなかった場合、自動化サービス１１０はエラーコードをフロントエンドサーバー１０１に通信することができる。一実施形態では、そのエラーコードは、生じたエラーのタイプに対応する一義的エラーコードでもよい。そのエラーコードは、なぜそのファイル変換が成功しなかったかに関連する情報を含み得る。さらなる実施形態では、自動化サービス１１０は、ＷＣＦエンドポイントでもよい。そのような実施形態では、自動化サービス１１０は、アドレスを有し、フロントエンドサーバー１０１が本自動化サービスと連絡を取るために使用することができる結合および契約を指定する。他の実施形態では、自動化サービス１１０は、要求を受信するおよび要求元に応答を通信し返す能力を有する任意のタイプの遠隔でアクセス可能なアプリケーションでもよい。
【００２４】
[0028]バックエンドサーバー１０８はまた、Ａｐｐ管理プログラム１１２を含み得る。Ａｐｐ管理プログラム１１２は、変換プログラム１１６などの適切なプロセスを選択して、要求されたファイル変換を実行するために使用することができる。図１に示すように、バックエンドサーバー１０８は、要求されたファイル変換を実行するために使用することができる複数の変換プログラム１１６プロセスを含み得る。加えて、バックエンドサーバー１０８は、作業者１から作業者Ｎなどの作業者１１４を含み得る。実施形態では、作業者１１４は、Ａｐｐ管理プログラム１１２と１つまたは複数の変換プログラム１１６プロセスの間の通信を円滑に進める変換プログラム１１６プロセスへのラッパー(wrapper)でもよい。
【００２５】
[0029]一実施形態では、バックエンドサーバーは、複数の変換プログラム１１６プロセスを実行して、プレゼンテーションファイルの異なるファイルフォーマットへの変換などのファイル変換を実行する。各変換プログラム１１６は、１度に単一ファイル変換を実行する能力を有し得る。したがって、バックエンドサーバー１０８は、複数の変換プログラム１１６が使用されて多数のファイル要求を同時に処理することを条件とする。そのような実施形態では、要求を受信したとき、バックエンドサーバー１０８は、Ａｐｐ管理プログラム１１２を使用して、使用されていない遊休状態の変換プログラム１１６が存在するかを判定する。遊休状態の変換プログラム１１６が存在する場合、Ａｐｐ管理プログラム１１２は、その要求を遊休状態のプロセスに導く。一実施形態では、要求を遊休状態の変換プログラム１１６に導くステップは、その要求、任意の要求オプション、および、最初のファイルまたはデータストリームを提供するステップを含み得る。
【００２６】
[0030]一実施形態では、各変換プログラム１１６は、最初のファイルで任意のサポートされるタイプのファイル変換を実行する能力を有する。もう１つの実施形態では、異なる変換プログラム１１６が、異なるタイプのファイル変換を実行するために使用され得る。そのような実施形態では、遊休状態の変換プログラム１１６の識別に加えて、Ａｐｐ管理プログラム１１２は、その要求の送り先の適切な変換プログラム（たとえば、要求された変換タイプを実行する能力を有する変換プログラム）を識別する。
【００２７】
[0031]実施形態では、本自動化サービスによって提供されるファイル変換は、変換プログラム１１６によって実行される。たとえば、変換プログラム１１６は、最初のファイル（または、その最初のファイルを含むデータストリーム）、および、任意の要求された変換オプションを受信し、変換されたファイルを生成する。バックエンドサーバー１０８は、変換されたファイルを自動化サービス１１０を介してフロントエンドサーバー１０１に渡して返すことによって、要求元にその変換されたファイルを返す。フロントエンドサーバー１０１は、次いで、その要求元のために変換されたファイルを記憶する、または、その変換されたファイルをその要求元に提供して戻すことができる。
【００２８】
[0032]図１は、フロントエンドサーバー１０１およびバックエンドサーバー１０８を使用するファイル変換のための自動化サービスを実行するシステム１００を示すが、自動化サービスはより少数のまたはより多数のサーバーを有するシステムで実行され得ることが当業者には理解されよう。たとえば、図１に記載されたすべてのプロセスおよび／またはモジュールは、単一のサーバー、または、３つ以上のサーバーによって実行することができる。実施形態では、そのプロセスは、プロセッサによって実行されるときに自動化サービスを実行するコンピューター記憶媒体内に存在するソフトウェア命令によって実行することができる。もう１つの実施形態では、図１に記載のプロセスおよび／または方法は、ハードウェアで実装され得る。加えて、図１は、たとえば、要求管理プログラム１０４、Ａｐｐ管理プログラム１１２など、特定のモジュールを記載するが、システム１００に関して記載された機能は、図１に示すものより少数のまたは多数のモジュールを使用して、実行され得る。
【００２９】
[0033]自動化サービスを実行するためのシステムを説明したが、図２〜４では、自動化サービスを実行するために使用することができる方法の様々な実施形態を示す。図２は、自動化要求を生成および送信するための方法２００の一実施形態を表すフローチャートである。方法２００は、システム、アプリケーション、または、プロセスによって実行されて、ファイル変換を要求することができる。たとえば、方法２００は、アプリケーションまたはプロセスなどの要求生成プログラム、または、フロントエンドサーバー１０１などのネットワークの一部であるサーバーによって、実行され得る。フローは、方法２００が要求元から要求データを受信する動作２０２で始まる。要求元は、プレゼンテーションファイルを別のファイルタイプに変換することなどの、但しこれに限定されない、ファイル変換を要求するユーザー、アプリケーション、またはプロセスでもよい。実施形態では、その要求データは、要求のタイプに関する情報、最初のファイルデータ、最初のファイルタイプ、所望の変換ファイルタイプ、変換ファイルデータ（たとえば、変換ファイルの名前、場所、タイプなど）、または、自動化プロセスに役立ち得る任意の他のタイプの情報を含み得る。
【００３０】
[0034]要求データを受信した後、フローは、オプションで動作２０４に進み、そこで、方法２００はその要求元の許可をオプションで判定する。たとえば、オプションの動作２０４で、方法２００は、その要求元の信憑性を確認すること、その要求元がその最初のファイルにアクセスするまたは変換されたファイルを作成する権限を与えられていることを確認すること、妥当性確認機能を実行すること、セキュリティ検査を実行することなどができる。もう１つの実施形態では、その要求元がそのデータ変換を要求し得る前に、その要求元の許可が検査され、妥当性が確認される。そのような実施形態では、オプションのステップ２０４は、方法２００によって実行されない。
【００３１】
[0035]その要求元の許可が動作２０４で妥当性が確認された場合、またはそのユーザーの許可が方法２００の開始に先立って確認された場合、フローは２０６に続く。動作２０６で、本方法は、要求メッセージの要求部分を準備する。実施形態では、自動化サービス要求は、複数の部分を含み得る。要求メッセージの一部は、要求部分でもよい。そのような実施形態では、そのメッセージの要求部分は、新しい変換されたファイルタイプ、変換オプション、または、任意の他のタイプの要求関連情報を含み得る。
【００３２】
[0036]フローは動作２０８に続き、そこで、要求データは、要求メッセージを作成するために、最初のファイルデータとパッケージ化される。実施形態では、その要求メッセージは、要求データ、ならびに、変換されることになる最初のファイルを含む。一実施形態では、その最初のファイルは、動作２０８で要求メッセージ内にそのファイルへのパスを含めることによって提供され得る。もう１つの実施形態では、その最初のファイルデータは、要求メッセージとして送信されることになる要求データとパッケージ化されたデータストリームとして表され得る。その要求データおよびそのファイルデータをパッケージ化し、それによって要求メッセージを生成した後に、フローは動作２１０に続き、そこで、その要求メッセージが本自動化サービスに送信される。一実施形態では、要求メッセージを本自動化サービスに送信するステップは、自動サービスを実行する任意の数のアプリケーションまたはプロセスにそのメッセージを送信するステップを含む。一実施形態では、本自動化サービスは、要求元および／または要求するアプリケーションと同じ機械に置かれ得る。もう１つの実施形態では、本自動サービスは、異なるサーバーに置かれ得る。そのような実施形態では、動作２１０で要求メッセージを送信するステップは、遠隔機械との通信を円滑に進めるために、自動化サービスプロキシ１０６などの通信モジュールを使用し得る。
【００３３】
[0037]要求メッセージを送信した後、フローは動作２１２に続き、そこで、要求生成プログラムが、その要求への応答を受信する。実施形態では、本自動化サービスは、要求生成プログラムに通知を提供する非同期パターン方法を使用する。それは、変換要求の状況を監視する必要から要求生成プログラムを解放し、その要求生成プログラムが、要求への応答を待つ間に他のタスクを実行することを可能にする。しかし、もう１つの実施形態では、方法２００を実行する要求生成プログラムは、動作２１２でその要求の状況を実際に監視し得る。
【００３４】
[0038]要求への応答は変換されたファイルでもよく、または、それはエラーコードでもよい。その応答が変換されたファイルを含む場合、その変換されたファイルは、動作２１２で処理される。その変換されたファイルの処理は、要求元にそのファイルを送信するステップ、そのファイルを記憶するステップ、そのファイルにアクセスし、それをユーザーに表示するステップ、および／または、そのファイルを修正するステップを含み得る。その応答が、動作２１２で変換されたファイルの代わりにエラーコードを含む場合、その応答の処理は、その要求を再送信するステップを含み得る。実施形態では、そのエラーコードは、失敗した変換の理由（複数可）を含む追加の情報を提供する一義的エラーコードでもよい。要求生成プログラムがエラーコードを受信した場合、その要求生成プログラムは、その要求を再送信する前にそのエラーに対処することができる。そのエラーへの対処は、その要求を修正するステップ、新しい要求を生成するステップ、および、その新しい要求を送信するステップを含み得る。
【００３５】
[0039]方法２００は個別の動作を含むものとして説明されているが、図２に記載された動作は、ともに結合して、または分解して、方法２００に関して記載された実施形態を実行する能力を有したままでより少数のまたはより多数の動作をもたらし得ることが、当業者には理解されよう。さらに、方法２００は特定の順番で説明されているが、それらの動作の順番は、図２で開示された本方法の実施形態をなお実行しながら並べ替えることが可能であることが、当業者には理解されよう。
【００３６】
[0040]図３は、自動化要求に応答する方法３００の一実施形態を表す流れ図である。実施形態では、方法３００は、ファイル変換プログラムによって実施され得る。そのファイル変換プログラムは、図３に記載の動作を実行する能力を有する、アプリケーション、プロセス、機械、または任意の他のデバイスでもよい。たとえば、方法３００は、バックエンドサーバー１０８、および／または、図１に関して前述されたモジュールのうちの１つまたは複数によって、実行され得る。フローは動作３０２で始まり、そこで、方法３００は、ファイル変換の要求を受信する。実施形態では、その要求は、その要求に関する情報および／または変換されることになる最初のファイルを含む要求メッセージを含み得る。実施形態では、その最初のファイルは、そこで方法３００が変換を実行することができるデータストリームで受信される。これは、本方法が最初のファイルのコピーを局所的に保存することなしにその最初のファイルを変換することを可能にする。
【００３７】
[0041]その要求の受信に応答して、フローは動作３０４に続き、そこでファイル変換が実行される。たとえば、．ｐｐｔおよび．ｐｐｔｘファイルなどの、但しこれらに限定されない、プレゼンテーションファイルが、異なるファイルタイプ（たとえば、．ｐｄｆファイル、．ｘｐｓ、ファイル、．ｊｐｇファイル、．ｐｎｇファイル、または、いくつかの．ｊｐｇもしくは．ｐｎｇファイルを含む圧縮されたファイル、あるいは任意の他のファイルタイプ）に変換され得る。もう１つの実施形態では、ファイル変換プログラムはまた、．ｐｐｔファイルを．ｐｐｔｘファイルに、または．ｐｐｔｘファイルを．ｐｐｔファイルに変換することができる。さらなる実施形態では、そのファイル変換プログラムはまた、画像サイズおよび解像度の設定と情報の追加または削除などの、但しこれらに限定されない、変換オプションを実行することができる。
【００３８】
[0042]変換プロセスの後、フローは決定動作３０６に進み、そこで、方法３００は、その変換が成功したかどうかを判定する。その変換が成功した場合、フローは動作３０８へＹＥＳに分岐し、変換されたファイルが要求元に送信される。たとえば、変換がデータストリームで動作した実施形態では、そのデータストリームは、要求元に送り返すことができる。一実施形態では、変換が成功しなかった場合、フローは動作３１０へＮＯに分岐し、方法３００は要求元にエラーコードを返す。実施形態では、そのエラーコードは、その要求元にその変換が失敗したことを知らせ、なぜその変換が成功しなかったかに関する情報を含む。
【００３９】
[0043]図４は、複数の自動化要求を処理するための方法４００の一実施形態を表すフローチャートである。実施形態では、方法４００は、ファイル変換プログラムによって実施され得る。そのファイル変換プログラムは、図４に記載の動作を実行する能力を有する、アプリケーション、プロセス、機械、または任意の他のデバイスでもよい。たとえば、方法４００は、バックエンドサーバー１００、および／または、図１に関して前述されたモジュールのうちの１つまたは複数によって、実行され得る。
【００４０】
[0044]フローは動作４０２で始まり、そこで、ファイル変換プログラムが要求元から第１の要求を受信する。その要求は、その要求に関する情報および／または変換されることになる最初のファイルを含む要求メッセージを含み得る。実施形態では、その最初のファイルは、そこで方法４００が変換を実行することができるデータストリームで受信される。これは、本方法が最初のファイルのコピーを局所的に保存することなしにその最初のファイルを変換することを可能にする。さらなる実施形態では、その要求は、変換を必要とするいくつかのファイルを含み得る。たとえば、その要求は、複数のファイルを変換するためのバッチ要求を含み得る。フローは動作４０４に進み、そこで、ファイル変換プログラムが、動作４０２で受信された１つまたは複数のファイルの変換を始める。再び、一例として、．ｐｐｔおよび．ｐｐｔｘファイルなどの、但しこれらに限定されない、１つまたは複数のプレゼンテーションファイルが、異なるファイルタイプ（たとえば、．ｐｄｆファイル、．ｘｐｓファイル、．ｊｐｇファイル、．ｐｎｇファイル、または、いくつかの．ｊｐｇもしくは．ｐｎｇファイルを含む圧縮されたファイル、あるいは、任意の他のファイルタイプ）に変換され得る。もう１つの実施形態では、ファイル変換プログラムはまた、．ｐｐｔファイルを．ｐｐｔｘファイルに、または．ｐｐｔｘファイルを．ｐｐｔファイルに変換することができる。さらなる実施形態では、ファイル変換プログラムはまた、画像サイズおよび解像度の設定と情報の追加または削除などの、但しこれらに限定されない、変換オプションを実行することができる。
【００４１】
[0045]後の時点で、そのファイル要求元は、要求元からファイル変換の第２の要求を受信する。その要求元は、動作４０２で受信された第１の要求を生成したのと同じまたは異なる要求元でもよい。図１に関して論じたように、バックエンドサーバー１００などのファイル変換プログラムは、複数のファイル変換プロセスを含み得る。しかし、たとえば、各プロセスがファイルのバッチの変換に関与する場合、それらの複数のプロセスの全てが、ファイル変換プロセスに関与することができる。一般に、要求元がバッチ交換を要求するとき、その要求元はその変換が直ちに完了することを期待していない。そのような状況で、その要求元は、すべてのファイルが変換されるまで、いずれかの変換されたファイルにアクセスすることを期待しない可能性がある。一方、単一ファイル変換の要求は、変換されたファイルへの即時のアクセスを必要とし得る。たとえば、その要求元は、ファイルの処理または表示などのファイルでのタスクを実行する必要があるが、現在のフォーマットではそれを行うことができないアプリケーションでもよい。その要求元は、それがそれのタスクを実行することができるように、ファイルフォーマット変換の要求を行う。そのような状況で、変換されたファイルについてのその要求元のニーズは、即時であることがある。しかし、ファイル変換プログラムは、変換されたファイルを即時には必要としない要求元のバッチ交換に関与している可能性がある。これは、後者の要求元に過度の遅延をもたらす。
【００４２】
[0046]この問題を緩和するために、そのファイル変換プログラムは、ファイルのバッチの要求よりも単一ファイルについての要求を優先させることができる。優先順位付けを達成するために、フローは動作４０８に続き、そこで、そのファイル変換プログラムは、第１の要求（またはいくつかのそれ以前の要求）がまだ処理中かまたは進行中かを判定する。第１の要求が終了した場合、または任意の個々のファイル変換プロセス（たとえば、変換プログラム１１６）が遊休状態の場合、フローは動作４１０へＮＯに分岐し、第２の要求が処理される（たとえば、第２のファイルが変換される）。
【００４３】
[0047]第１の要求がまだ処理中の場合、または遊休状態の変換プロセスが存在しない場合、フローは動作４１２へＹＥＳに分岐する。動作４１２で、第２の要求がファイルのバッチの変換のためであるかどうかに関して判定が行われる。第２の要求がバッチ変換のためである場合、その要求元はその変換が完了するのにいくらかの時間がかかることを恐らく予期しているので、概説された課題は問題にはならない可能性が高い。この場合には、フローは動作４１４へＹＥＳに分岐する。この状況では、第２の要求（たとえば、後の時間の要求）は、動作４１４で第１の変換が完了するのを待つことができる。第１の動作が完了した後、または変換プロセスが遊休状態になるとすぐに、フローは動作４１０に続き、そこで、ファイル変換プログラムは、第２の要求されたファイル変換を実行し、そうすると、方法は完了する。
【００４４】
[0048]第２の変換がバッチ要求ではない場合、その要求元は変換されたファイルの速い受信を期待している可能性がある。この場合、フローは決定動作４１２から決定動作４１６へＮＯに分岐する。決定動作４１６で、ファイル変換プログラムは、第１のプロセス（または、先の時間のすべてのプロセス）がバッチ変換を目的とするかどうかを判定する。それらの先の要求のいずれもバッチプロセスを目的としない場合、それらの先の要求元のすべてが、それらの変換されたファイルの速い受信を期待している可能性がある。この場合には、第２の要求（たとえば、後の時間の要求）は、それの順番を待ち得る。フローは動作４１４へＮＯに分岐する。第１の動作が完了した後、または変換プロセスが遊休状態になり第２のプロセスが処理の順番で次であるときにはすぐに、フローは動作４１０へ続き、そこで、ファイル変換プログラムが、第２の要求されたファイル変換を実行し、そうすると、本方法は完了する。
【００４５】
[0049]第１のプロセスがバッチプロセスである場合、次いでフローは動作４１８へＹＥＳに分岐し、第２のプロセスが第１のプロセスより優先される。一実施形態では、第１の要求が使用可能なファイル変換プログラムプロセスをまだ待っている場合、優先順位付けは、処理の順番において第１の要求より第２の要求を前に置くステップを含み得る。もう１つの実施形態では、第１のプロセスが現在処理されている場合、その処理は休止されてファイル変換プロセスを解除して第２の要求を処理することができる。第２の要求を完了したとき、第１の変換は継続することができる。方法４００は、変換されたファイルの速い配信を期待しない要求元の要求の変換を変換または完了する前に速い応答を期待する要求元からの要求を処理することによって、過度の遅延を緩和する。
【００４６】
[0050]図５に関して、本明細書に記載の様々な実施形態を実装するためのコンピューティング環境の実施形態は、コンピューターシステム５００などのコンピューターシステムを含む。記載された実施形態の任意のおよびすべての構成要素は、クライアントコンピューターシステム、サーバーコンピューターシステム、クライアントとサーバーコンピューターシステムの組合せ、ハンドヘルドデバイス、および、本明細書に記載の他の起こり得るコンピューティング環境またはシステムとして、またはそこで、実行することができる。そのようなものとして、これらの環境のすべてに適用可能な基本コンピューターシステムが、以下に説明される。
【００４７】
[0051]その最も基本的な構成において、コンピューターシステム５００は、少なくとも１つの処理ユニットまたはプロセッサ５０４およびシステムメモリ５０６を備える。コンピューターシステム５００の最も基本的な構成は、破線５０２によって図５に示される。いくつかの実施形態では、記載のシステムの１つまたは複数の構成要素は、システムメモリ５０６にロードされ、システムメモリ５０６から処理ユニット５０４によって実行される。コンピューターシステム５００の正確な構成およびタイプに応じて、システムメモリ５０６は、揮発性（ＲＡＭなど）、非揮発性（ＲＯＭ、フラッシュメモリなど）、または、その２つの何らかの組合せでもよい。
【００４８】
[0052]加えて、コンピューターシステム５００はまた、追加の特徴／機能性を有し得る。たとえば、コンピューターシステム５００は、磁気または光ディスクまたはテープを含むがこれらに限定されない、取外し可能なおよび／または取外し不可能な記憶装置などの追加の記憶媒体５０８を含む。いくつかの実施形態では、ソフトウェアまたは実行可能コード、および、記載されたシステムに使用される任意のデータが、記憶媒体５０８で永続的に記憶される。記憶媒体５０８は、コンピューター可読命令、データ構造体、プログラムモジュール、または他のデータなどの情報の記憶のための任意の方法または技術で実装された、揮発性および不揮発性の、取外し可能なおよび取外し不可能な媒体を含む。実施形態では、自動要求３００に応答するための方法（図３）、および、複数の自動化要求４００に応答するための方法（図４）などの、但しこれらに限定されない、本明細書で開示される方法を実行するために使用されるコンピューター実行可能命令が、記憶媒体５０８で記憶される。
【００４９】
[0053]システムメモリ５０６および記憶媒体５０８は、コンピューター記憶媒体の例である。コンピューター記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（「ＤＶＤ」）もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、他の磁気記憶装置、または、所望の情報を記憶するために使用され、コンピューターシステム５００およびプロセッサ５０４によってアクセスされる任意の他の媒体を含むが、これらに限定されない。任意のそのようなコンピューター記憶媒体は、コンピューターシステム５００の部分でもよい。実施形態では、システムメモリ５０６および／または記憶媒体５０８は、本方法を実行するために、そして／あるいは、ファイル変換要求の作成または自動化サービスの実行など、本明細書で開示されるシステム（複数可）を形成するために使用されるデータを記憶する。図１に関して説明された様々なモジュールはまた、システムメモリ５０６および／または記憶媒体５０８で記憶することができる。実施形態では、システムメモリ５０６は、要求生成命令５１４および自動化サービス５１６などの本明細書で開示される方法を実行するための命令を記憶する。
【００５０】
[0054]コンピューターシステム５００はまた、デバイスが他のデバイスと通信できるようにする通信接続（複数可）５１０を含み得る。実施形態では、通信接続（複数可）５１０は、送信側デバイス、中間デバイス、および受信側デバイスの間でメッセージを送信および受信するために使用され得る。通信接続（複数可）５１０は、通信媒体の一例である。通信媒体は、搬送波または他の移送機構などの変調されたデータ信号を実施することができ、コンピューター可読命令、データ構造体、プログラムモジュール、または、変調されたデータ信号内の他のデータを実施することができる任意の情報配信媒体を含む。「変調されたデータ信号」という用語は、それの特性集合のうちの１つまたは複数を有する、あるいはそのデータ信号内の情報またはメッセージをコード化するような形で変更された、信号を意味する。例として、但し限定ではなく、通信媒体は、有線ネットワークまたは有線直接接続などの有線媒体と、音波、ＲＦ、赤外線などの無線媒体、およびその他の無線媒体とを含む。
【００５１】
[0055]いくつかの実施形態では、コンピューターシステム５００はまた、入力および出力接続５１２と、グラフィカルユーザーインターフェースなどのインターフェースおよび周辺デバイスとを含む。入力デバイス（複数可）はまた、ユーザーインターフェース選択デバイスとも称され、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスなどを含むがこれらに限定されない。出力デバイス（複数可）はまた、ディスプレイとも称され、ブラウン管ディスプレイ、プラズマ画面ディスプレイ、液晶画面ディスプレイ、スピーカ、プリンタなどを含むが、これらに限定されない。入力および出力接続５１２に接続されたこれらのデバイスは、個々にまたは組合せでのいずれかで、本明細書に記載されるように情報を表示するために使用される。これらのデバイスはすべて、当技術分野ではよく知られており、本明細書で詳細に論じられる必要はない。
【００５２】
[0056]いくつかの実施形態では、本明細書に記載の構成要素は、コンピューター記憶装置媒体および他の有形的表現媒体で記憶され、通信媒体で伝送され得る、コンピューターシステム５００によって実行可能なモジュールまたは命令を備える。コンピューター記憶媒体は、コンピューター可読命令、データ構造体、プログラムモジュール、または他のデータなどの情報の記憶のための任意の方法または技術で実装された、揮発性および不揮発性の、取外し可能なおよび取外し不可能な媒体を含む。前述のいずれかの組合せもまた、可読媒体の範囲に含まれ得る。いくつかの実施形態では、コンピューターシステム５００は、コンピューターシステム５００によって使用するための遠隔記憶媒体内のデータを記憶するネットワークの部分である。
【００５３】
[0057]本開示は、起こり得る実施形態のうちのいくつかのみが示された添付の図面を参照していくつかの実施形態を説明した。しかし、他の態様が、多数の異なる形で実施可能であり、本明細書に記載の実施形態に限定されるものとして解釈されるべきではない。そうではなくて、これらの実施形態は、本開示が詳細および完全であり、起こり得る実施形態の範囲を当業者に十分に伝えるように、提供された。
【００５４】
[0058]それらの実施形態は、構造的特徴、方法論的動作、およびそのような動作を含むコンピューター−可読媒体に特有の言語で説明されているが、添付の特許請求の範囲で定義されるものとしての、起こり得る実施形態は、記載された特定の構造、動作、または媒体に必ずしも限定されないことを理解されたい。本開示の範囲および趣旨内の他の実施形態または改善が当業者には認識されよう。したがって、これらの特定の構造、動作、または媒体は、例示的実施形態としてのみ開示される。本開示は、添付の特許請求の範囲によって定義される。
【図１】
2014522017.tif 000003
【図２】
2014522017.tif 000004
【図３】
2014522017.tif 000005
【図４】
2014522017.tif 000006
【図５】
2014522017.tif 000007
【国際調査報告】
2014522017.tif 000008
2014522017.tif 000009