(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024095584
(43)【公開日】2024-07-10
(54)【発明の名称】イメージが含まれたデータセットをロードするための方法
(51)【国際特許分類】
G06F 16/54 20190101AFI20240703BHJP
【FI】
G06F16/54
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023215869
(22)【出願日】2023-12-21
(31)【優先権主張番号】10-2022-0187103
(32)【優先日】2022-12-28
(33)【優先権主張国・地域又は機関】KR
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.MySQL
(71)【出願人】
【識別番号】523481296
【氏名又は名称】ビーアイ マトリックス カンパニー、リミテッド
(74)【代理人】
【識別番号】110000855
【氏名又は名称】弁理士法人浅村特許事務所
(72)【発明者】
【氏名】ヨン ギュン、リ
(72)【発明者】
【氏名】ナ ミー、パク
(72)【発明者】
【氏名】ミン キュ、キム
(72)【発明者】
【氏名】ドン ジン、リ
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA02
5B175JC04
(57)【要約】
【課題】本開示は、情報処理分野に関し、イメージデータを処理する方法に関する。
【解決手段】詳細には、本開示は、原本データに対するユーザ入力構文を獲得し、ユーザ入力構文にイメージデータと関連したデータが含まれたか否かを確認し、前記イメージデータに基づいて、ユーザインタフェース(UI)に出力する方法を提供する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
コンピューティング装置によって行われる方法であって、
スプレッドシートモジュールに基づいて、データベースからイメージを含む第1データを獲得する段階と、
前記第1データに基づいて、前記スプレッドシートモジュールを介して前記第1データをスプレッドシートに表示する段階と、を含む、方法。
【請求項2】
前記スプレッドシートモジュールは、
前記スプレッドシートに表示されるセルスタイル情報、セル配置情報、セル併合情報、条件付き書式情報またはチャート出力情報のうち少なくとも1つを含むスタイル制御関数のパラメーターを含む、請求項1に記載の方法。
【請求項3】
前記第1データのイメージに関する情報は、イメージ保存経路情報を含み、
前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、
前記イメージ保存経路情報に基づいて、前記イメージを得る段階と、
前記イメージを規格イメージに変換し、スプレッドシートに表示する段階と、を含む、請求項2に記載の方法。
【請求項4】
前記スプレッドシートモジュールは、
イメージキー値が付与されたイメージに対するイメージリストを含み、
前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、
前記第1データのイメージと前記イメージリストを比較する段階と、
前記第1データのイメージが前記イメージリストのうちいずれか1つのイメージに該当する場合、前記第1データのイメージを前記イメージリストに基づいてスプレッドシートに表示する段階と、を含む、請求項3に記載の方法。
【請求項5】
前記第1データのイメージが前記イメージリストに含まれていない場合、前記第1データのイメージに新しいイメージキー値を付与する段階と、
前記第1データのイメージを前記イメージリストに含ませる段階と、をさらに含む、請求項4に記載の方法。
【請求項6】
前記方法は、
前記第1データが修正された第2データを生成する段階をさらに含み、
前記第1データが修正された第2データを生成する段階は、
前記第1データのイメージを交替し、第2データを生成する段階と、
前記第2データのイメージと前記イメージリストを比較する段階と、
前記第2データのイメージが前記イメージリストのうちいずれか1つのイメージに該当する場合、前記イメージリストに基づいてキャッシュ関数を生成する段階と、
前記キャッシュ関数に基づいてスプレッドシートに表示する段階と、を含む、請求項4に記載の方法。
【請求項7】
前記第2データのイメージが前記イメージリストに含まれていない場合、前記第2データのイメージに新しいイメージキー値を付与する段階と、
前記第2データのイメージを前記イメージリストに含ませる段階と、をさらに含む、請求項6に記載の方法。
【請求項8】
前記第1データが修正された第2データを生成する段階は、
前記第1データのうちあらかじめ設定された領域のみに対して修正が可能である、請求項6に記載の方法。
【請求項9】
前記キャッシュ関数に基づいて、前記データベースの前記第1データを前記第2データに更新するための構文を生成する段階と、
前記構文によって前記データベースを更新する段階と、を含む、請求項6に記載の方法。
【請求項10】
コンピュータ可読保存媒体に保存されたコンピュータプログラムであって、前記コンピュータプログラムは、1つ以上のプロセッサによって実行される場合、前記1つ以上のプロセッサに、データをスプレッドシートに表示するための動作を行うようにし、前記動作は、
データベースからイメージを含む第1データを獲得する動作と、
前記第1データに基づいて、スプレッドシートモジュールを介して前記第1データをスプレッドシートに表示する動作と、を含む、コンピュータ可読保存媒体に保存されたコンピュータプログラム。
【請求項11】
コンピューティング装置であって、
少なくとも1つのプロセッサと、
メモリと、を含み、
前記少なくとも1つのプロセッサは、データをスプレッドシートに表示するために、
データベースからイメージを含む第1データを獲得し;および
前記第1データに基づいて、スプレッドシートモジュールを介して前記第1データをスプレッドシートに表示するように構成される、装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理分野に関し、イメージデータを処理する方法に関する。詳細には、本開示は、原本データに対するユーザ入力構文(User Input Statement)を獲得し、ユーザ入力構文にイメージデータと関連したデータが含まれたか否かを確認し、前記イメージデータに基づいて、ユーザインタフェース(UI)に出力する方法を提供する。
【背景技術】
【0002】
コンピュータ技術の発展に伴い、企業および官公庁等で経営および管理に関する業務のために様々なコンピュータプログラムを使用している。このようなコンピュータプログラムは、企業の会計、人事、財務、営業、貿易、購買、資材、生産および在庫等の経営および管理に必要な数多くのデータを保存し、処理することができる。このようなコンピュータプログラムを使用するので、ユーザ(企業および官公庁等の業務の実務担当者、役員および経営者)は、より便利に手軽に企業および官公庁等で使用されるデータを保存し、管理することができる。企業および官公庁等で使用するコンピュータプログラムは、様々な形態の文書を生成、編集および管理できる機能をサポートしている。一方、データを保存し、処理および出力するにあたって、イメージデータが管理されず、記憶容量等コンピューティングリソースが無駄になるという問題を有する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】韓国登録特許第10-0593661号公報(2006.06.20)
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示は、前述した背景技術に対応して案出されたものであって、イメージデータを便利に処理する方法を提供することができる。
【0005】
本開示の技術的課題は、以上で言及した技術的課題に制限されず、言及されていない他の技術的課題は、下記の記載から当業者に明確に理解され得る。
【課題を解決するための手段】
【0006】
前述した課題を解決するためのいくつかの実施形態によるコンピューティング装置によって行われる方法であって、前記方法は、コンピューティング装置によって行われる方法において、スプレッドシートモジュールに基づいて、データベースからイメージを含む第1データを獲得する段階と、前記第1データに基づいて、前記スプレッドシートモジュールを介して前記第1データをスプレッドシートに表示する段階と、を含んでもよい。
【0007】
一実施形態において、前記スプレッドシートモジュールは、前記スプレッドシートに表示されるセルスタイル情報、セル配置情報、セル併合情報、条件付き書式情報またはチャート出力情報のうち少なくとも1つを含むスタイル制御関数のパラメーターを含んでもよい。
【0008】
一実施形態において、前記第1データのイメージに関する情報は、イメージ保存経路情報を含み、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、前記イメージ保存経路情報に基づいて、前記イメージを得る段階と、前記イメージを規格イメージに変換し、スプレッドシートに表示する段階と、を含んでもよい。
【0009】
一実施形態において、前記スプレッドシートモジュールは、イメージキー値が付与されたイメージに対するイメージリストを含み、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、前記第1データのイメージと前記イメージリストを比較する段階と、前記第1データのイメージが前記イメージリストのうちいずれか1つのイメージに該当する場合、前記第1データのイメージを前記イメージリストに基づいてスプレッドシートに表示する段階と、を含んでもよい。
【0010】
一実施形態において、前記第1データのイメージが前記イメージリストに含まれていない場合、前記第1データのイメージに新しいイメージキー値を付与する段階と、前記第1データのイメージを前記イメージリストに含ませる段階と、をさらに含んでもよい。
【0011】
一実施形態において、前記方法は、前記第1データが修正された第2データを生成する段階をさらに含み、前記第1データが修正された第2データを生成する段階は、前記第1データのイメージを交替し、第2データを生成する段階と、前記第2データのイメージと前記イメージリストを比較する段階と、前記第2データのイメージが前記イメージリストのうちいずれか1つのイメージに該当する場合、前記イメージリストに基づいてキャッシュ関数を生成する段階と、前記キャッシュ関数に基づいてスプレッドシートに表示する段階と、を含んでもよい。
【0012】
一実施形態において、前記第2データのイメージが前記イメージリストに含まれていない場合、前記第2データのイメージに新しいイメージキー値を付与する段階と、前記第2データのイメージを前記イメージリストに含ませる段階と、をさらに含んでもよい。
【0013】
一実施形態において、前記第1データが修正された第2データを生成する段階は、前記第1データのうちあらかじめ設定された領域のみに対して修正が可能になり得る。
【0014】
一実施形態において、前記キャッシュ関数に基づいて、前記データベースの前記第1データを前記第2データに更新するための構文を生成する段階と、前記構文によって前記データベースを更新する段階と、を含んでもよい。
【0015】
また、前述のような課題を解決するためのコンピュータ可読保存媒体に保存されたコンピュータプログラムが開示される。
【0016】
前記コンピュータプログラムは、1つ以上のプロセッサによって実行される場合、前記1つ以上のプロセッサが、データをスプレッドシートに表示するための動作を行うようにし、前記動作は、データベースからイメージを含む第1データを獲得する動作と、前記第1データに基づいて、スプレッドシートモジュールを介して前記第1データをスプレッドシートに表示する動作と、を含んでもよい。
【0017】
また、前述のような課題を解決するためのコンピューティング装置が開示される。
【0018】
前記コンピューティング装置は、少なくとも1つのプロセッサと、メモリと、を含み、前記少なくとも1つのプロセッサは、データをスプレッドシートに表示するために、データベースからイメージを含む第1データを獲得し;および前記第1データに基づいて、スプレッドシートモジュールを介して前記第1データをスプレッドシートに表示するように構成され得る。
【発明の効果】
【0019】
本開示は、前述した背景技術に対応して案出されたものであって、ユーザが便利に原本データにアクセスすることができる方法を提供することができる。
【0020】
本開示の適用可能性のさらなる範囲は、以下の詳細な説明から明白になる。しかしながら、本発明の思想および範囲内で様々な変更および修正は、当業者に明確に理解され得るので、詳細な説明および本発明の好適な実施形態のような特定の実施形態は、ただ例示として与えられたものと理解すべきである。
【0021】
様々な様相が図面を参照して記載され、ここで、類似の参照番号は、総括的に類似の構成要素を指すのに用いられる。以下の実施形態において、説明目的のために、多数の特定細部事項が1つ以上の様相の総体的理解を提供するために提示される。しかしながら、そのような様相がこのような特定の細部事項なしで実施され得ることは明白だろう。他の例示において、公知の構造および装置が1つ以上の様相の記載を容易にするためにブロック図の形態で示される。
【図面の簡単な説明】
【0022】
【
図1】
図1は、本開示の一実施形態によるコンピューティング装置を説明するためのブロック構成図である。
【
図2】
図2は、本開示の一実施形態による原本データを抽出して出力する方法を説明するためのフローチャートである。
【
図3】
図3は、本開示の一実施形態によるコンピューティング装置の第1プログラム上でのデータセットを第2プログラム上に出力する方法のフローチャートである。
【
図4】
図4は、本開示の一実施形態によるスプレッドシートモジュールが原本データにアクセスして第1データを出力する方法を説明するためのフローチャートである。
【
図5】
図5は、本開示の一実施形態によるスプレッドシートモジュールが原本データにアクセスして第1データを出力する方法を説明するための信号フローチャートである。
【
図6】
図6は、本開示の一実施形態によるデータ抽出関数のパラメーターおよびスタイル制御関数のパラメーターを含むスプレッドシートモジュールを説明するための概念図である。
【
図7】
図7は、本開示の一実施形態によるスプレッドシートモジュールに含まれた数式の入力値を反復して指定する方法を説明するための概念図である。
【
図8】
図8は、本開示内容の実施形態が具現され得る例示的なコンピューティング環境に対する一般的な概略図である。
【発明を実施するための形態】
【0023】
様々な実施形態が以下に図面を参照しながら説明される。本明細書において様々な説明が本開示に対する理解を容易にするために示される。しかし、これらの実施形態がこれらの具体的な説明がなくても間違いなく実施されることができる。
【0024】
本明細書において、「コンポーネント」、「モジュール」、「システム」等の用語は、コンピュータ関連エンティティ、ハードウェア、ファームウェア、ソフトウェア、ソフトウェアとハードウェアとの組み合わせ、またはソフトウェアの実行を指す。例えば、コンポーネントは、プロセッサー上で実行される処理手順(procedure)、プロセッサー、オブジェクト、実行スレッド、プログラム、及び/またはコンピュータであってもよいが、これらに限定されるものではない。例えば、コンピューティング装置で実行されるアプリケーションとコンピューティング装置は、両方ともコンポーネントであってもよい。1つ以上のコンポーネントは、プロセッサー及び/または実行スレッドの中に常駐することができる。1つのコンポーネントは、1つのコンピュータの中でローカル化されることができる。1つのコンポーネントは、2つ以上のコンピュータに配分されることもできる。また、このようなコンポーネントは、その内部に保存されている様々なデータ構造を有する、様々なコンピュータ可読媒体から実行することができる。コンポーネントは、例えば1つ以上のデータパケットを有する信号(例えば、ローカルシステム、分散システムにおいて他のコンポーネントと相互作用する1つのコンポーネントからのデータ及び/または信号を通じて、他のシステムと、インターネットのようなネットワークを介して伝送されるデータ)によってローカル及び/または遠隔処理等を通じて通信することができる。
【0025】
以下の説明において使用される構成要素の接尾辞「モジュール」および「部」は、明細書の作成の容易さのみが考慮されて付与されたり、または混用されるものであり、それ自体で互いに区別される意味または役割を有するものではない。
【0026】
また、本明細書において使用される「情報」および「データ」という用語は、しばしば互いに交換可能にするために使用することができる。
【0027】
任意の構成要素が他の構成要素に「連結されている」または「接続されている」と言及されている場合、該他の構成要素に直接連結または接続されていてもよいが、中間に他の構成要素が存在してもよいと理解すべきである。一方で、任意の構成要素が他の構成要素に「直接連結されている」または「直接接続されている」と言及されている場合、中間に他の構成要素が存在しないと理解すべきである。
【0028】
また、用語「または」は、排他的な「または」ではなく、内包的な「または」を意味する意図で使われる。つまり、特に特定されておらず、文脈上明確ではない場合、「XはAまたはBを利用する」は、自然な内包的置換のうち1つを意味するものとする。つまり、XがAを利用したり、XがBを利用したり、またはXがA及びBの両方を利用する場合、「XはAまたはBを利用する」は、これらのいずれにも当てはまるとすることができる。また、本明細書における「及び/または」という用語は、取り挙げられた関連アイテムのうち、1つ以上のアイテムの可能なすべての組み合わせを指し、含むものと理解されるべきである。
【0029】
また、述語としての「含む」および/または修飾語としての「含む」という用語は、当該特徴および/または構成要素が存在することを意味するものと理解されるべきである。ただし、述語としての「含む」および/または修飾語としての「含む」という用語は、1つ以上の他の特徴、構成要素、および/またはそれらのグループの存在または追加を排除しないものと理解されるべきである。また、別途に特定されていない場合、または単数の形を示すことが文脈上明確でない場合、本明細書および特許請求の範囲において単数は、一般的に「1つまたはそれ以上」を意味するものと解釈されるべきである。
【0030】
以下、参照符号に関係なく、同一又は同様の構成要素には同一の符号を付し、繰り返しの説明は省略する。また、本明細書に開示された実施形態を説明する際に、関連する公知技術の具体的な説明が本明細書に開示された実施形態の要旨を不明瞭にすると判断される場合、その詳細な説明を省略する。また、添付の図面は、本明細書に開示された実施形態を容易に理解することを可能にするためのものであり、添付の図面によって本明細書に開示される技術的思想は限定されない。
【0031】
そして、「A又はBのうち少なくとも1つ」という用語については、「Aだけを含む場合」、「Bだけを含む場合」、「AとBの組み合わせの場合」を意味するものと解釈されたい。
【0032】
当業者は、さらに、ここに開示される実施形態に係るものとして説明された様々な例示的論理的ブロック、構成、モジュール、回路、手段、ロジック及びアルゴリズム段階が、電子ハードウェア、コンピュータソフトウェア、またはその両方の組み合わせによって実現されることができることを認識すべきである。ハードウェアとソフトウェアとの相互交換性を明確に例示するために、様々な例示的コンポーネント、ブロック、構成、手段、ロジック、モジュール、回路及び段階が、それらの機能性の側面で一般的に上述された。そのような機能性がハードウェアとして実装されるか或いはソフトウェアとして実装されるかは、全般的なシステムに係る特定のアプリケーション(application)及び設計制限によって決まる。熟練した技術者は、個々の特定アプリケーションのために様々な方法で説明された機能性を実現できる。ただし、そのような実現に係る決定が本開示内容の領域を逸脱するものと解釈されてはならない。
【0033】
ここに示す実施形態に係る説明は、本開示の技術分野において通常の知識を有する者が本発明を利用したり、または実施できるように提供される。このような実施形態に対する様々な変形は、本開示の技術分野において通常の知識を有する者にとっては明確であり、ここに定義された一般的な原理は、本開示の範囲を逸脱することなく他の実施形態に適用されることができる。従って、本開示はここに示す実施形態によって限定されるものではなく、ここに示す原理及び新規な特徴と一貫する最広義の範囲で解釈されるべきである。
【0034】
以下、
図1~
図8は、本開示においてコンピューティング装置が原本データを抽出して出力する方法について説明する。
【0035】
図1は、本開示の一実施形態によるコンピューティング装置を説明するためのブロック構成図である。
【0036】
図1に示されたコンピューティング装置100の構成は、ただ簡略化して示した例示である。一例として、コンピューティング装置100は、コンピューティング装置100のコンピューティング環境を行うための他の構成が含まれ得、開示された構成の一部のみがコンピューティング装置100を構成することもできる。
【0037】
コンピューティング装置100は、プロセッサ110、メモリ130、ネットワーク部150を含んでもよい。
【0038】
本開示の一実施形態によれば、プロセッサ110は、通常、コンピューティング装置100の動作およびデータを処理できるすべての種類の装置を含んでもよい。例えば、プログラム内に含まれたコードまたは命令で表現された機能を行うために物理的に構造化された回路を有する、ハードウェアに内蔵されたデータ処理装置を意味し得る。このようにハードウェアに内蔵されたデータ処理装置の一例として、マイクロプロセッサー(microprocessor)、中央処理装置(central processing unit:CPU)、プロセッサコア(processor core)、マルチプロセッサ(multiprocessor)、ASIC(application-specific integrated circuit)、FPGA(field programmable gate array)等の処理装置を含んでもよいが、本発明の範囲がこれ限定されるものではない。
【0039】
前記プロセッサ110は、1つ以上のコアで構成され得、コンピューティング装置の中央処理装置(CPU:central processing unit)を含んでもよい。また、汎用グラフィック処理装置(GPGPU:general purpose graphics processing unit)、テンソル処理装置(TPU:tensor processing unit)等のデータ分析、ディープラーニングのためのプロセッサをさらに含んでもよい。
【0040】
本開示の一実施形態によれば、メモリ130は、プロセッサ110が生成したり決定した任意の形態の情報およびネットワーク部150が受信した任意の形態の情報を保存することができる。
【0041】
本開示の一実施形態によれば、メモリ130は、フラッシュメモリタイプ(flash memory type)、ハードディスク タイプ(hard disk type)、マルチメディアカードマイクロタイプ(multimedia card micro type)、カードタイプのメモリ(例えば、SDまたはXDメモリ等)、ラム(Random Access Memory,RAM)、SRAM(Static Random Access Memory)、ロム(Read-Only Memory,ROM)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、PROM(Programmable Read-Only Memory)、磁気メモリ、磁気ディスク、光ディスクのうち少なくとも1つのタイプの保存媒体を含んでもよい。コンピューティング装置100は、インターネット(internet)上で前記メモリ130の保存機能を行うウェブストレージ(web storage)と関連して動作することもできる。前述したメモリに対する記載はただ例示であり、本開示は、これに制限されない。
【0042】
本開示の一実施形態によるネットワーク部150は、公衆交換電話網(PSTN:Public Switched Telephone Network)、xDSL(x Digital Subscriber Line)、RADSL(Rate Adaptive DSL)、MDSL(Multi Rate DSL)、VDSL(Very High Speed DSL)、UADSL(Universal Asymmetric DSL)、HDSL(High Bit Rate DSL)および近距離通信網(LAN)等のような様々な有線通信システムを使用することができる。
【0043】
また、本明細書において提示されるネットワーク部150は、CDMA(Code Division Multi Access)、TDMA(Time Division Multi Access)、FDMA(Frequency Division Multi Access)、OFDMA(Orthogonal Frequency Division Multi Access)、SC-FDMA(Single Carrier-FDMA)および他のシステムのような様々な無線通信システムを使用することができる。
【0044】
本開示においてネットワーク部150は、有線および無線等のようなその通信様態に関係なく構成され得、短距離通信網(LAN:Local Area Network)、個人通信網(PAN:Personal Area Network)、広域通信網(WAN:Wide Area Network)等様々な通信網で構成され得る。また、前記ネットワークは、公知のワールドワイドウェブ(WWW:World Wide Web)であってもよく、赤外線(IrDA:Infrared Data Association)またはブルートゥース(登録商標)(Bluetooth)のように短距離通信に用いれる無線伝送技術を用いることもできる。
【0045】
本明細書において説明された技術は、上記で言及されたネットワークだけでなく、他のネットワークでも使用され得る。
【0046】
図2は、本開示の一実施形態による原本データを抽出し、出力する方法を説明するためのフローチャートである。
【0047】
図2を参照すると、本開示のコンピューティング装置は、原本データに対するデータ抽出関数を受信する段階(S100)、前記データ抽出関数に基づいて構文(statement)を生成する段階(S200)、前記構文(statement)を実行し、データを抽出する段階(S300)および抽出したデータを出力する段階(S400)を含んでもよい。
【0048】
前記原本データに対するデータ抽出関数を受信する段階(S100)は、ユーザインタフェース(UI)を介して、関数の形態で入力され得る。ここで、関数は、前記関数に変数が入力された状態である数式を含んでもよい。一例として、前記ユーザインタフェース(UI)は、原本データからフィールドを選択するためのフィールド設定部またはデータタイプを設定するためのデータ属性設定部から選択されたいずれか1つ以上の関数を含んでもよいし、前記関数に設定値が入力された数式を含んでもよい。また、前記ユーザインタフェース(UI)は、原本データに対するアクセス情報を入力するための連結設定部をさらに含んでもよい。前記ユーザインタフェース(UI)が原本データを抽出する方法と関連して、
図5、
図6等に基づいて後述する。
【0049】
また、前記関数は、モジュール化したものであってもよい。前記モジュール化された関数を通じて多少複雑になり得るデータ変換のためのプログラミングを代替することができる。前記関数は、既定の規則によって作成されてもよく、前記既定の規則は、プログラム数式と同じ規則を含んでもよい。
【0050】
一方で、前記構文(statement)は、特定の作業を行う特定単位(例えば、一行)のコードである。一例として、前記構文(statement)は、変数に値を簡単に割り当てるものであってもよく、様々な演算および関数を含むさらに複雑な表現式であってもよい。前記構文(statement)は、原本データのプログラム文法(syntax)に従うことができる。前記文法は、プログラミング言語の規則と構造を示すものであり、変数、演算子および制御構造の使用を含んで当該プログラミング言語でコードを作成する正しい方法を指定する。前記文法(syntax)は、原本データのプログラム種類によって異なっており、前記原本データのプログラムによってユーザが熟達しにくいことがあるので、前記構文(statement)の生成が難しいことがある。したがって、前記モジュール化した関数を使用する場合、原本データのプログラムと関係なく、ユーザが抽象化された形態で便利に原本データを扱うことができる。
【0051】
前記データ抽出関数に基づいて構文(statement)を生成する段階(S200)で、まず、コンピューティング装置100は、前記データ抽出関数が構文(statement)生成部に前にヘザーを含むマクロ定義(defining macro)および特定構成拡張(expanding certain construct)のような作業を含む前処理(preprocessing)を行うことができる。次に、コンピューティング装置100は、前記抽出関数をソースコードを読んで一連の各トークンに分解する。ここで、前記トークンは、キーワード、識別子、文章記号等のように前記抽出関数に含まれた単一要素を示す。次に、コンピューティング装置100は、前記抽出関数から文法エラー(syntax error)を確認し、抽象文法ツリー(AST)というツリーのような構造を作成し、プロセッサ110が理解しやすいように変換する。次に、コンピューティング装置100は、変数が宣言される前に使用したり、不正な数の引数でモジュールを呼び出すような意味論的エラーに対して抽出関数を検査し、前記ASTを原本データのプログラムで実行できる構文(statement)に変換する過程を含んでもよい。すなわち、抽象化した抽出関数をループ、条件文またはクエリーのうちいずれか1つ以上のように原本データのプログラムが実行できる下位レベル構文(statement)に変換することができる。この際、前記変換過程で、データ原本で使用できるインデックスまたはその他性能向上を活用するようにクエリーを最適化したり、クエリーをさらに小さい断辺に分けて別に実行する作業が含まれ得る。前記最適化作業は、原本データで使用できるインデックスまたはその他性能向上を活用するようにクエリーを最適化したりクエリーをさらに小さい断辺に分ける作業が含まれ得る。
【0052】
前記構文(statement)を実行し、データを抽出する段階(S300)は、前記構文が原本データにアクセスし、前記原本データを管理するプログラムによって行われ得る。また、コンピューティング装置100は、前記構文(statement)を実行する過程で使用できるすべての記号または参照を確認し、これを準備することができる。一例として、前記構文(statement)は、データベース管理システム(DBMS)により行われ、原本データは、関係データベースに含まれたものであってもよい。すなわち、前記構文(statement)は、SQLクエリー文のようなデータベースクエリー文(query statement)であってもよい。コンピューティング装置100は、応用ソフトがまずデータ原本の名称、ユーザー名および暗号(必要な場合)を指定する連結文字列を使用して原本データに対する連結を作る。連結が設定されれば、データベース管理システムは、API等の形態で原本データに対してSQLクエリー文を実行することができる。前記応用ソフトを通じて本開示の抽出関数に基づいて、生成されたSQLクエリー文を実行し、結果を検索し、トランザクションを管理することができる。
【0053】
ここで、前記応用ソフトは、SQLクエリー文を分析し、原本データの基本形に対して実行する最も効率的な方法を再決定してクエリーを処理することができる。一例として、原本データで使用できるインデックスまたはその他性能向上を活用するように、クエリーを最適化したり、クエリーをさらに小さい断辺に分けて別に実行する作業が含まれ得るが、これは、前記S200段階で最適化された構文が生成された場合、省略はいもよす。また、前記応用ソフトは、エラー検査および処理を処理し、クエリー実行中に発生したすべてのエラーが応用ソフトに正しく再び報告されるようにすることができる。
【0054】
前記抽出したデータを出力する段階(S400)は、一例として、SQLクエリー文実行結果、抽出したデータは、クライアントプログラムに返還される。その後、クライアントプログラムは、結果を画面に表示したり、他の方式で処理することができる。結果が画面に表示される具体的な方法は、使用中のクライアント応用ソフトによって異なっている。一例として、クライアントプログラムがコマンドラインインターフェース(CLI:Command Line Interface)の場合、結果がターミナルに表の形式で表示され得るが、前記クライアントプログラムがウェブブラウザ内に実行されるようなグラフィクユーザインタフェース(GUI:Graphical User Interface)の場合、結果は、画面の表またはその他視覚的表現で表示され得、ユーザは、前記グラフィクユーザインタフェース(GUI:Graphical User Interface)を便利に利用することができる。
【0055】
図3は、本開示の一実施形態によるコンピューティング装置の第1プログラム上でのデータセットを第2プログラム上に出力する方法のフローチャートである。
【0056】
図3を参照すると、本開示のコンピューティング装置は、データセットに対する第1ユーザ入力を受信する段階(S110)と、第1プログラム上の前記データセットを定義するための第2ユーザ入力を受信する段階(S210)と、前記第2ユーザ入力を実行し、前記データセットを得る段階(S310)と、前記データセットを第2プログラム上に出力する段階(S410)と、を含んでもよい。
【0057】
前記データセットに対する第1ユーザ入力を受信する段階(S110)で、コンピューティング装置は、第1プログラム上で提供される第1ユーザインタフェース上で第1ユーザ入力を受信することができる。一例として、ユーザ端末は、タッチスクリーンまたは任意の形態のディスプレイ部を用いて、ユーザーの所望のアプリケーションあるいはアプリケーションの機能を実行するためのオブジェクトを含む第1ユーザインタフェースを出力することができる。ここで、ユーザ端末に表示されたタップまたはアイコンを含むオブジェクトが選択される場合、ユーザ端末は、選択された動作に対応するアプリケーションまたはアプリケーションの機能を実行することができる。本開示内容の一実施形態において、少なくとも1つのオブジェクトを含む画面、領域、識別情報、表示子、入力ウィンドウ、モジュールおよび/またはタップ等がユーザインタフェースを構成することができる。一例として、前記第1プログラムは、スプレッドシート形態であってもよく、前記ユーザインタフェースは、1つまたは複数個のセルを含むこともできる。
【0058】
前記第1プログラム上の前記データセットを定義するための第2ユーザ入力を受信する段階(S210)で、コンピューティング装置は、前記S110段階で獲得した第1ユーザ入力に含まれた第1領域の識別情報のうち少なくとも一部と対応するようにデータセットの識別情報を定義するための第2ユーザ入力を第1ユーザインタフェースを介して受信することができる。例えば、第1領域の識別情報は、第1領域の名称および第1領域が前記第1プログラムから第2プログラムにロードされることを示すための第1表示子を含んでもよいし、第1領域の識別情報は、第1表示子と区分子、データセットの名称をさらに含んでもよい。前記第1領域の名称および第1領域の表示子が指定される場合、コンピューティング装置は、第1プログラムでの特定のデータセットが第2プログラムにロードされることを認識することができる。さらに、第1領域の識別情報は、第1領域を識別または定義するための任意の形態の情報を意味し得る。
【0059】
前記第2ユーザ入力は、様々な前記第1データを抽出するための様々な設定に関連したものであってもよい。一例として、前記第2ユーザ入力は、指定されたデータセット名、経路、アクセス権限またはフィールド情報のうち少なくとも1つを含んでもよい。また、前記第2ユーザ入力は、構文生成と関連するカラムを設定したり、レコード条件を指定するためのものであってもよい。一例として、前記原本データと出力データ間のカラム順序が変更されたり、カラム名が異なる場合にも、前記データセットの文法(syntax)に合うデータクエリー文(data query statement)を実行することができる。また、前記第2ユーザ入力は、前記出力データに対する注釈(annotation)をさらに表示することができる。
【0060】
前記第2ユーザ入力を実行し、前記データセットを獲得する段階(S310)で、コンピューティング装置は、スプレッドシートモジュールでの特定のデータの範囲を設定し、当該範囲に対して上記のような第2プログラムの識別情報を入力される場合、前記第2プログラムの識別情報と前記第1プログラムの識別情報間の比較を通じて、前記データセットを第2プログラム上でローディングさせることができる。また、前記第2プログラムでは、識別情報および/または範囲情報等のようなデータの名称、範囲等を識別するための任意の形態の追加情報を含むメタデータをさらに受信することができ、前記メタデータは、メタ入力オブジェクトを生成することができる。
【0061】
また、前記データセットを第2プログラム上に出力する段階(S410)で、第2プログラム上でロードされて出力されるデータセットに含まれたそれぞれのデータの出力サイズを決定したり、配置を変更することができる。前記データセットは、メタデータまたはデータを問い合わせた結果によって変更されてもよく、事前決定された数式(OFFSET,COUNTA等)等を含んでもよい。前記第2プログラムは、スプレッドシートモジュールに含まれたものであってもよく、これによって、前記事前決定された数式は、商用スプレッドシートで普遍的に使用される関数と同一または同様に設定されたものであってもよい。また、前記第2プログラムに出力されるデータは、前記データを問い合わせたアカウントのデータアクセス権限によって様々に設定され得る。
【0062】
前記例示において第2プログラムは、固定された画面に出力され得るので、前記データセットの出力範囲によって含まれたデータそれぞれのサイズよび位置が変更されてもよい。前記第2プログラムは、前記データセットが出力されるディスプレイサイズを確認し、前記データセットが配置される空間に適した表現方法または配列方法を選択することができる。前記表現方法または配列方法が決定される場合、前記第2プログラムは、使用可能な空間に適したテーブル、リストまたはその他の形式でデータを表示することができる。これに加えて、前記第2プログラムは、続いてサイズをモニタリングし、使用ディスプレイサイズが変更されれば、データ集合が最適な状態で表示されるように、必要に応じてデータ表現方法またはデータ配列を調整することができる。前記出力形態は、ユーザが出力されるデータの項目を決定することができる。また、前記第2プログラムは、データ表現方法やデータ配列を調整できる別途のプログラムモジュールを統合して含ませて、データセットが使用可能な空間に対して最適な方式で表示することができる。
【0063】
また、前記出力形態は、コンボボックスおよびマルチコンボボックス、文字情報を含むテキストボックス、日付情報を含むカレンダー等によって様々に変化することができる。一例として、第3領域で特定の年度が入力された場合、第1プログラムのデータセットから特定の年度に対応するデータが第2プログラム上でロードされて出力され得る。
【0064】
また、第2プログラムでは、データセットと共に出力されるさらなる情報と前記データセットに対する原本データ間には互いに連動しなくてもよい。この場合、コンピューティング装置100は、前記原本データの情報を変化させたり、SQLクエリー文を複雑に変更することなく、前記第2プログラムにさらなる情報を出力することができる。
【0065】
図4および
図5は、本開示の一実施形態によるスプレッドシートモジュールが原本データにアクセスし、第1データを出力する方法を説明するためのフローチャートおよび信号フローチャートである。
【0066】
図4および
図5を参照すると、本開示のコンピューティング装置は、スプレッドシートモジュールがデータ抽出関数のパラメーターを受信する段階(S120)、原本データにアクセスするための第1構文を生成する段階(S220)、前記原本データから第1データを獲得する段階(S320)および前記スプレッドシートモジュールを介して第1データを出力する段階(S420)を含んでもよい。
【0067】
前記原本データは、関係データベースに含まれたものであってもよく、一例として、前記データベースは、ORACLE(オラクル)、PostgreSQL(ポストグレス キューエル)、MySQL.SQL Server(MS-SQL)またはSQLiteのうち少なくとも1つの関係データベース管理システム(RDBMS)により制御されるものであってもよい。
【0068】
前記スプレッドシートモジュールがデータ抽出関数のパラメーターを受信する段階(S120)で、前記スプレッドシートモジュールは、前記データ抽出関数のパラメーターを第1インターフェースから受信することができる。前記パラメーターは、第1連結設定情報および第1構文設定情報を含んでもよい。前記第1連結設定情報は、関連した1つまたは複数個のデータベース名、データベースの種類、一連番号、データベースに対する経路またはアクセス権限、前記データベース上に含まれた目的テーブルに対する一連番号、前記目的テーブルに対するフィールド個数またはアクセス権限のうち少なくとも1つに関連した設定を含んでもよい。
【0069】
原本データにアクセスするための第1構文を生成する段階(S220)で、前記スプレッドシートモジュールは、第1構文に対する前記データベース管理システム(RDBMS)に対する設定を行う場合、前記データベースの種類によって文法(syntax)に合うカスタマイズされた構文(statement)が生成され得る。一例として、ユーザは、本開示を通じて、データベースの種類と関係なく、スプレッドシートモジュールが提供するユーザインタフェース(UI)で提供する抽象化した数式を用いて便利に構文を生成することができる。前記第2ユーザ入力が表示されるユーザインタフェース(UI)は、スプレッドシート上のセルに表示されてもよく、ユーザによって確認および制御されてもよい。
【0070】
また、前記スプレッドシートモジュールは、前記構文が生成、読み出しまたは更新、削除(Create,Read,Update,Delete;CRUD)のうちいずれか1つ以上の動作を行うSQLクエリー文と関連していてもよい。ここで、前記SQLクエリー文は、挿入(Insert)、更新(Update)または削除(Delete)のうちいずれか1つの命令語と関連した信号であってもよく、前記信号は、前記SQLクエリー文の名称または略字がスプレッドシートのセルに入力されたり表示されてもよい。一例として、前記表示は、下記表1のように示され得る。
【表1】
【0071】
また、前記第2ユーザ入力は、構文生成と関連したカラムを設定したり、レコード条件を指定するためのものであってもよい。一例として、前記原本データと出力データ間のカラム順序が変更されたり、カラム名が異なる場合にも、SQLクエリー文を実行することができる。また、前記第2ユーザ入力は、前記出力データに対する注釈を表示することができる。
【0072】
前記原本データから第1データを獲得する段階(S320)で、前記第1データは、前記第1構文に基づいて得られることができる。一例として、前記第1構文は、スプレッドシート文書で表現されるモデルに関連した原本データリストを検索することができる。これを通じて、前記第1構文は、クライアントから出力するために転送される第1データを要請することができる。これより、前記スプレッドシートモジュールは、スタイル制御関数を通じて前記原本データを出力するために指定されたセルの値を編集するためのユーザインタフェース構成要素を提供することができる。前記スタイル制御関数が第1データを出力するために含む構成は、
図6を参照して後述する。
【0073】
前記スプレッドシートモジュールを介して第1データを出力する段階(S420)で、前記スプレッドシートモジュールは、前記データ抽出関数または前記スタイル制御関数によって、前記原本データの出力が実行され得る。
【0074】
一例として、前記スプレッドシートモジュールの前記スタイル制御関数によって生成されたテンプレート文書は、報告書に使用する形式であってもよく、サーバーに保存されたりクライアントにダウンロードされた前記テンプレート文書は、前記スタイル制御関数のパラメーターによって前記第1データが配置され、出力されてもよい。従来データベース上のデータをテンプレートに出力するためには、別途のSQLクエリー文に対する専門知識が必要であり、データ検索のための知識も別に必要である。また、データベースコネクターを使用する連結も、別に設定しなければならない。しかしながら、本開示のスプレッドシートモジュールを活用する場合、このようなSQLクエリー文またはデータベースコネクターを別に設定するための時間および費用を節減することができる。
【0075】
また、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、前記イメージ保存経路情報に基づいて、前記イメージを得る段階と、前記イメージを規格イメージに変換し、スプレッドシートに表示する段階と、をさらに含んでもよい。
【0076】
また、本開示のスプレッドシートモジュールは、イメージキー値が付与されたイメージに対するイメージリストを含み、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、前記第1データのイメージと前記イメージリストを比較することができる。また、本開示のスプレッドシートモジュールは、前記第1データのイメージが前記イメージリストのうちいずれか1つのイメージに該当する場合、前記第1データのイメージを前記イメージリストに基づいてスプレッドシートに表示する段階をさらに含んでもよい。
【0077】
なお、本開示は、前記スプレッドシートに表示された前記第1データを変更する段階をさらに含んでもよい。前記第1データを変更する段階は、画面内に前記第1データが出力される領域を確認し、前記フィールド値に関する情報および前記出力される領域に関する情報に基づいて、前記データレコード配置情報を算出する段階をさらに含んでもよい。
【0078】
また、前記第1データを変更する段階で、キャッシュ関数を生成し、変更処理速度効率性を高めることができる。具体的には、前記第1データを変更する段階で、前記第1データを修正して第2データを生成し、前記第2データに基づいて、キャッシュ関数を生成することができる。次に、前記キャッシュ関数に基づいて、前記スプレッドシートモジュールを介して前記第2データを出力する段階をさらに含んでもよい。ここで、前記第1データを修正して第2データを生成する段階は、前記第1データのうちあらかじめ設定された項目のみに対して修正を可能にして、不要なデータ変更が起こるのを防止することができる。また、前記第2データに基づいて、キャッシュ関数を生成するために、前記第2データのうち被参照領域が修正される場合、前記被参照領域を参照する領域を修正する段階を含んでもよい。この場合、前記変更する段階で前記第2データのうち更新が必要なデータが自動で最新状態を維持することができる。
【0079】
また、前記第1データを変更する段階は、前記キャッシュ関数に基づいて、前記データベースの前記第1データを前記第2データに更新するための第2構文を生成する段階を含んでもよい。次に、前記第2構文によって前記データベースを更新する段階を含んでもよい。前記第2構文は、スプレッドシートモジュールにユーザが入力する関数に基づいて、変更しようとするデータベースの種類によって自動で生成されることができ、ユーザが別途のデータベース構文を学習することなく、第2構文を生成することができる。
【0080】
図6は、本開示の一実施形態によるデータ抽出関数のパラメーターおよびスタイル制御関数のパラメーターを含むスプレッドシートモジュールを説明するための概念図である。
【0081】
図6を参照すると、本開示のスプレッドシートモジュール210は、原本データを含むデータベースにアクセスし、出力のための形態である第1データに加工するためのものであってもよい。また、前記スプレッドシートモジュール210は、データ抽出関数400およびスタイル制御関数500を含んでもよい。
【0082】
前記原本データにアクセスするために、プロセッサは、前記データ抽出関数400のパラメーターに基づいて、第1構文を生成することができる。一例として、前記データ抽出関数400は、原本データの全部または一部を含んでもよい。また、前記データ抽出関数400のパラメーターは、前記データカラム名に関する情報、データの属性情報、データフィールド選択情報またはデータ照会権限情報のうち少なくとも1つを含んでもよい。
【0083】
また、前記スプレッドシートモジュール210は、前記スタイル制御関数500を通じて、前記原本データが出力される書式を加工することができる。前記スタイル制御関数500は、管理者側の作業窓インターフェースのような第1インターフェースによって制御され得る。または、前記スタイル制御関数500は、クライアント側のアプリケーションに含まれた第2インターフェースによって制御され得る。なお、前記スタイル制御関数500と関連したユーザインタフェース設定関数は、既定の条件を満たす場合、第2プログラムに表示され得るが、前記表示方法は、
図7を参照して後述する。
【0084】
前記スタイル制御関数500のパラメーターは、前記スプレッドシートに含まれたデータレコード配置情報510、データ演算情報520、イメージ情報530、セルスタイル情報540または反復セルスタイル情報550のうち少なくとも1つを含んでもよい。他の例として、前記スタイル制御関数500のパラメーターは、セル併合情報、条件付き書式情報またはチャート生成情報のうち少なくとも1つをさらに含んでもよい。また、前記データ演算情報520は、前記データ抽出関数に基づいて、前記スプレッドシートモジュールに含まれた数式の入力値を反復して指定することができる。
【0085】
前記データレコード配置情報510は、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに出力することができる。このために、画面内に前記第1データが出力される領域を確認し、フィールド値のような前記データに関する情報および前記出力される領域に関する情報に基づいて、前記データレコード配置情報を算出することができる。
【0086】
また、前記データ演算情報520は、前記データ抽出関数に基づいて、前記スプレッドシートモジュールに含まれた数式の入力値を反復して指定する反復演算情報を含んでもよい。前記反復演算情報は、
図7を参照して後述する。
【0087】
また、前記第1データのイメージに対するイメージ情報530は、イメージ保存経路情報を含み、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、前記イメージ保存経路情報に基づいて、前記イメージを得る段階を含んでもよい。また、前記第1データをスプレッドシートに表示する段階は、前記イメージを規格イメージに変換してスプレッドシートに表示する段階を含んでもよい。
【0088】
また、前記第1データのイメージに関する情報は、イメージ保存経路情報を含み、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、前記イメージ保存経路情報に基づいて、前記イメージを得る段階と、前記イメージを規格イメージに変換し、スプレッドシートに表示する段階と、を含んでもよい。
【0089】
また、本開示のスプレッドシートモジュールは、イメージキー値が付与されたイメージに対するイメージリストを含み、前記第1データに基づいて、スタイル制御関数のパラメーターを通じて前記第1データをスプレッドシートに表示する段階は、前記第1データのイメージと前記イメージリストを比較する段階を含んでもよい。次に、前記第1データのイメージが前記イメージリストのうちいずれか1つのイメージに該当する場合、前記第1データのイメージを前記イメージリストに基づいてスプレッドシートに表示することができる。一方で、前記第1データのイメージが前記イメージリストに含まれていない場合、前記第1データのイメージに新しいイメージキー値を付与し、前記第1データのイメージを前記イメージリストに含ませることができる。
【0090】
前記第1データのイメージが前記イメージリストに含まれていない場合にのみ、データベースに追加される場合、前記データベースの使用可能空間が増加するだけでなく、重複のイメージデータを最小化し、前記イメージデータの活用を最大化することができる。
【0091】
また、前記第1データが修正された第2データを生成する段階で、前記第1データのイメージが交替される場合、コンピューティング装置は、前記第2データのイメージとイメージリストを比較することができる。次に、コンピューティング装置は、前記第2データのイメージが前記イメージリストのうちいずれか1つのイメージに該当する場合、前記イメージリストに基づいてキャッシュ関数を生成し、前記キャッシュ関数に基づいてスプレッドシートに表示することができる。
【0092】
反対に、前記イメージが交替されるとき、前記第2データのイメージが前記イメージリストに含まれるか否かを確認することができる。前記第2データのイメージが前記イメージリストに含まれていない場合、前記第2データのイメージに新しいイメージキー値を付与し、前記第2データのイメージを前記イメージリストに含ませることができる。
【0093】
前記第2データのイメージが前記イメージリストに含まれていない場合にのみ、データベースに追加される場合、前記データベースの使用可能空間が増加するだけでなく、重複するイメージデータを最小化し、前記イメージデータの活用を最大化することができる。
【0094】
なお、前記セルスタイル情報540スプレッドシートモジュールが第1データを出力するとき、出力される全体テンプレートを設定することができる。また、前記反復セルスタイル情報550は、データレコードの反復セルに対して、前記データレコードが前記スプレッドシートモジュールに反復して出力することができる。
【0095】
図7は、本開示の一実施形態によるスプレッドシートモジュールに含まれた数式の入力値を反復して指定する方法を説明するための概念図である。
【0096】
図7を参照すると、本開示の一実施形態によるスプレッドシートモジュールに含まれた前記データ演算情報520を反復して指定するために、前記反復セル演算情報551をさらに含んでもよいし、これを通じて、別途のテンプレートセルに対する設定なくとも、スプレッドシートモジュールは、反復して数式を出力することができる。
【0097】
図8は、本開示内容の実施形態が具現され得る例示的なコンピューティング環境に対する一般的な概略図である。
【0098】
図8を参照すると、前記コンピュータプログラムは、1つ以上のプロセッサによって実行される場合、原本データを抽出して出力する動作を行うことができる。
【0099】
本開示の一実施形態によれば、前記動作は、前記1つ以上のプロセッサが、データをスプレッドシートに表示するための動作を行うために、データベースからイメージを含む第1データを獲得する動作と、前記第1データに基づいて、スプレッドシートモジュールを通じて前記第1データをスプレッドシートに表示する動作と、を含んでもよい。
【0100】
本開示の他の実施形態によれば、前記動作は、前記1つ以上のプロセッサが、データをスプレッドシートに出力するための動作を行うために、スプレッドシートモジュールがデータ抽出関数のパラメーターを受信する動作と、前記データ抽出関数のパラメーターに基づいて、データベースにアクセスするための第1構文を生成する動作と、前記第1構文によって前記データベースから第1データを獲得する動作と、前記データ抽出関数のパラメーターに基づいて、前記スプレッドシートモジュールを介して前記第1データを出力する動作と、を含んでもよい。
【0101】
本開示のさらに他の実施形態によれば、本開示は、スプレッドシート文書で表現されるモデルに関連した1つ以上の媒介変数リストを発見し、編集するためのコンピュータ具現方法に関するものであってもよい。この方法は、ディスプレイ装置に表示されるスプレッドシート文書を伝送するようにウェブ基盤スプレッドシートサーバーに要請することを含む。スプレッドシート文書には、モデルに関連した媒介変数と指定されたセルの一番目の下位集合と媒介変数と指定されていないセルの二番目の下位集合が含まれる。この方法は、モデルに関連した1つ以上の媒介変数リストを検索し、リストの媒介変数に該当する一番目の下位集合のセルで値を編集するためのユーザインタフェース(UI)構成要素を表示する段階を含む。この方法は、また、アプリケーションプログラミングインターフェース(API)を介して媒介変数リストを発見し、一般的にスプレッドシート文書に隣接したUI構成要素を表示し、UI構成要素を介して媒介変数リストを要請する段階を含んでもよい。媒介変数リストは、ユーザから入力を受信するために関連したユーザインタフェース制御とともに媒介変数名で表示され得る。この方法は、また、関連したユーザインタフェース(UI)の制御を通じて媒介変数に対する新しい値を入力することによって、媒介変数リストの媒介変数を編集することを含んでもよい。
【0102】
本開示のさらに他の実施形態によれば、本開示は、ウェブ基盤スプレッドシートサービスを通じてスプレッドシート文書で表現されるモデルに関連した媒介変数を発見し、編集するためのコンピュータ具現方法を説明するが、この方法は、スプレッドシート文書がサーバーから転送され、クライアントのディスプレイ装置でレンダリングされるように要請することと関連する。文書は、媒介変数と指定されたセルの一番目の下位集合と媒介変数と指定されていないセルの二番目の下位集合を含む。この方法は、モデルに関連した1つ以上の媒介変数リストを検索する段階と、媒介変数に該当するセルの一番目の下位集合にあるセルの値を編集するためのユーザインタフェース構成要素を表示する段階と、を含む。
【0103】
また、本開示は、アプリケーションプログラミングインターフェースを介して媒介変数リストを発見したり、ユーザインタフェース構成要素を介して媒介変数リストを要請することを含んでもよい。媒介変数リストは、ユーザから入力を受信するためのユーザインタフェースコントロールと共に、媒介変数名で表示され得る。この方法は、また、ユーザインタフェース構成要素を介して、セルの第1サブセットの対応するセルに新しい値を入力することによって、リストの媒介変数を編集することを含んでもよい。
【0104】
なお、ユーザインタフェース構成要素は、スプレッドシート文書に隣接して表示され得、ユーザから入力を受信するためのユーザインタフェースコントロールを含んでもよい。また、本開示のコンピューティング環境を通じてリストから媒介変数を選択し、ユーザインタフェースコントロールを通じて新しい値を入力し、特定の媒介変数を編集することができる。プロセスは、また、新しい媒介変数値にモデルを更新し、更新した媒介変数を基にモデルを再び計算することを含んでもよい。
【0105】
また、本開示の一実施形態によってデータ構造を保存したコンピュータ可読媒体が開示される。
【0106】
データ構造は、データに効率的なアクセスおよび修正を可能にするデータの組織、管理、保存を意味し得る。データ構造は、特定の課題(例えば、最短時間のデータ検索、データ保存、データ修正)の解決のためのデータの組織を意味し得る。データ構造は、特定のデータ処理機能をサポートするように設計された、データ要素間の物理的あるいは論理的な関係と定義されることもできる。データ要素間の論理的な関係は、ユーザ定義データ要素間の連結関係を含んでもよい。データ要素間の物理的な関係は、コンピュータ可読保存媒体(例えば、永久保存装置)に物理的に保存されているデータ要素間の実際の関係を含んでもよい。データ構造は、具体的には、データの集合、データ間の関係、データに適用できる関数または命令語を含んでもよい。効果的に設計されたデータ構造を通じて、コンピューティング装置は、コンピューティング装置のリソースの使用を最低限に抑えながら、演算を行うことができる。具体的には、コンピューティング装置は、効果的に設計されたデータ構造を通じて演算、読み出し、取り込み、削除、比較、交換、検索の効率性を高めることができる。
【0107】
データ構造は、データ構造の形態によって線形データ構造と非線形データ構造に区分され得る。線形データ構造は、1つのデータの後に1つのデータのみが連結される構造であってもよい。線形データ構造は、リスト(List)、スタック(Stack)、キュー(Queue)、デック(Deque)を含んでもよい。リストは、内部的に順序が存在する一連のデータ集合を意味し得る。リストは、連結リスト(Linked List)を含んでもよい。連結リストは、それぞれのデータがポインタを有し、一列に連結されている方式でデータが連結されたデータ構造であってもよい。連結リストにおいてポインタは、次または以前のデータとの連結情報を含んでもよい。連結リストは、形態によって片方向連結リスト、双方向連結リスト、循環連結リストで表現され得る。スタックは、データへのアクセスに制限が付くデータ配列構造であってもよい。スタックは、データ構造の一端でのみデータを処理(例えば、挿入または削除)することができる線形データ構造であってもよい。スタックに保存されたデータは、後入れ先出しのデータ構造(LIFO-Last in First Out)であってもよい。キューは、データへのアクセスに制限が付くデータ配列構造であり、スタックとは異なって、先入れ先出しのデータ構造(FIFO-First in First Out)であってもよい。デックは、データ構造の両端でデータを処理できるデータ構造であってもよい。
【0108】
非線形データ構造は、1つのデータの後に複数個のデータが連結される構造であってもよい。非線形データ構造は、グラフ(Graph)データ構造を含んでもよい。グラフデータ構造は、頂点(Vertex)とエッジ(Edge)で定義することができ、エッジは、異なる2つの頂点を連結する線を含んでもよい。グラフデータ構造ツリー(Tree)データ構造を含んでもよい。ツリーデータ構造は、ツリーに含まれた複数個の頂点のうち、互いに異なる2つの頂点を連結する経路が1つであるデータ構造であってもよい。すなわちグラフデータ構造においてループ(loop)を形成しないデータ構造であってもよい。
【0109】
データ構造は、神経網に入力されるデータを含んでもよい。神経網に入力されるデータを含むデータ構造は、コンピュータ可読媒体に保存され得る。神経網に入力されるデータは、神経網学習過程で入力される学習データおよび/または学習が完了した神経網に入力される入力データを含んでもよい。神経網に入力されるデータは、前処理(pre-processing)を経たデータおよび/または前処理対象となるデータを含んでもよい。前処理は、データを神経網に入力させるためのデータ処理過程を含んでもよい。したがって、データ構造は、前処理対象となるデータおよび前処理で発生するデータを含んでもよい。前述したデータ構造は、ただ例示であり、本開示は、これに制限されない。
【0110】
データ構造は、神経網の重みを含んでもよい。(本明細書において重み、パラメーターは、同じ意味で使用され得る。)そして、神経網の重みを含むデータ構造は、コンピュータ可読媒体に保存され得る。神経網は、複数個の重みを含んでもよい。重みは、可変的であってもよく、神経網が所望の機能を行うために、ユーザまたはアルゴリズムに応じて可変され得る。例えば、1つの出力ノードに1つ以上の入力ノードがそれぞれのリンクによって相互連結された場合、出力ノードは、前記出力ノードと連結された入力ノードに入力された値およびそれぞれの入力ノードに対応するリンクに設定された重みに基づいて出力ノードから出力されるデータ値を決定することができる。前述したデータ構造は、ただ例示であり、本開示は、これに制限されない。
【0111】
本開示が一般的にコンピューティング装置により具現化されることが可能であると前述されているが、当業者であれば本開示が1つ以上のコンピュータ上で実行されることのできるコンピュータ実行可能命令及び/又はその他のプログラムモジュールとの結合及び/又はハードウェアとソフトウェアの組み合わせとして具現化されることが可能であるということをよく理解できるだろう。
【0112】
一般的に、プログラムモジュールは、特定のタスクを実行したり特定の抽象的なデータ類型を実装するルーティン、プログラム、コンポーネント、データ構造、その他等々を含む。また、当業者なら、本開示の方法がシングルプロセッサー又はマルチプロセッサーのコンピュータシステム、ミニコンピュータ、メインフレームコンピュータはもちろん、パーソナルコンピュータ、ハンドヘルド(handheld)コンピューティング装置、マイクロプロセッサー基盤の家電製品、又はプログラム可能な家電製品、その他等々(これらは、いずれも1つ以上の関連する装置と繋がって動作することができる)をはじめとする、他のコンピュータシステムの構成によって実施されることが可能であることをよく理解できる。
【0113】
さらに、本開示において説明された実施形態は、あるタスクが通信ネットワークを通じて繋がっている遠隔処理装置によって実行される、分散コンピューティング環境で実施されることが可能である。分散コンピューティング環境において、プログラムモジュールは、ローカルと遠隔メモリ保存装置との両方に位置することが可能である。
【0114】
コンピュータは、通常、様々なコンピュータ可読媒体を含む。コンピュータによってアクセス可能な媒体は、いずれもコンピュータ可読媒体になり得るが、このようなコンピュータ可読媒体は、揮発性及び非揮発性媒体、一時的(transitory)及び非一時的(non-transitory)媒体、移動式及び非移動式媒体を含む。制限ではなく例として、コンピュータ可読媒体は、コンピュータ可読保存媒体及びコンピュータ可読伝送媒体を含むことが可能である。コンピュータ可読保存媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又はその他のデータのような情報を保存する任意の方法又は技術により実装される揮発性及び非揮発性媒体、一時的及び非一時的媒体、移動式及び非移動式媒体を含む。コンピュータ可読保存媒体は、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD-ROM、DVD(digital video disk)又はその他の光ディスク保存装置、磁気カセット、磁気テープ、磁気ディスク保存装置又はその他の磁気保存装置、又はコンピュータによってアクセスでき、情報を保存するために使われることのできる任意のその他の媒体を含むが、これに限定されない。
【0115】
コンピュータ可読伝送媒体は、通常、搬送波(carrier wave)又はその他の伝送メカニズム(transport mechanism)のような被変調データ信号(modulated data signal)に、コンピュータ可読命令、データ構造、プログラムモジュール又はその他のデータ等を実装し、すべての情報伝達媒体を含む。被変調データ信号という用語は、信号の中に情報をエンコードするように、その信号の特性のうち1つ以上を設定又は変更した信号を意味する。制限ではなく例として、コンピュータ可読伝送媒体は、有線ネットワーク又は直接配線接続(direct-wired connection)のような有線媒体、そして音響、RF、赤外線、その他の無線媒体のような無線媒体を含む。前述の媒体の任意の組み合わせもコンピュータ可読伝送媒体の範囲に含まれるものとする。
【0116】
コンピュータ1102を含む本開示の様々な側面を具現する例示的な環境1100が示されており、コンピュータ1102は、処理装置1104、システムメモリ1106およびシステムバス1108を含む。システムバス1108は、システムメモリ1106(これに限定されない)を含むシステムコンポーネントを処理装置1104に連結させる。処理装置1104は、様々な商用プロセッサのうち、任意のプロセッサであってもよい。デュアルプロセッサおよびその他マルチプロセッサ アーキテクチャーも、処理装置1104として利用され得る。
【0117】
システムバス1108は、メモリバス、周辺装置バス、および様々な商用のバスアーキテクチャーのうち、任意のものを使用するローカルバスに、さらに相互連結され得る複数の類型のバス構造のうち、任意のものであってもよい。システムメモリ1106は、読み出し専用メモリ(ROM)1110およびランダムアクセスメモリ(RAM)1112を含む。基本的な入出力システム(BIOS)は、ROM,EPROM,EEPROMなどの非揮発性メモリ1110に保存され,このBIOSは、起動中のようなときに、コンピュータ1102内の構成要素間に情報を伝送することをサポートする基本的なルーチンを含む。RAM1112は、また、データをキャッシュするための静的RAMなどの高速RAMを含んでもよい。
【0118】
コンピュータ1102は、また、内蔵型ハードディスクドライブ(HDD)1114(例えば、EIDE,SATA)-この内蔵型ハードディスクドライブ1114は、適切なシャシー(不図示)内で外付け型用途で構成され得る-、磁気フロッピーディスクドライブ(FDD)1116(例えば、移動式ディスケット1118から読み取ったり、それに書き込むためのものである)、および光ディスクドライブ1120(例えば、CD-ROMディスク1122を読み取ったり、DVDなどのその他高容量光媒体から読み取ったり、それに書き込むためのものである)を含む。ハードディスクドライブ1114、磁気ディスクドライブ1116および光ディスクドライブ1120は、それぞれハードディスクドライブインターフェース1124、磁気ディスクドライブインターフェース1126および光ドライブインターフェース1128によってシステムバス1108に連結され得る。外付け型ドライブ具現のためのインターフェース1124は、USB(Universal Serial Bus)およびIEEE 1394インターフェース技術のうち、少なくとも1つまたはその両方を含む。
【0119】
これらのドライブおよびそれと関連したコンピュータ可読媒体は、データ、データ構造、コンピュータで実行可能命な令語、その他等の非揮発性保存を提供する。コンピュータ1102の場合、ドライブおよび媒体は、任意のデータを適切なデジタル形式に保存することに対応する。前述のコンピュータ可読媒体に関する説明が、HDD、移動式磁気ディスク、およびCDまたはDVDなどの移動式光媒体を言及しているが、当業者なら、ジップドライブ(zip drive)、磁気カセット、フラッシュメモリカード、カートリッジ、その他等のコンピュータによって読み出し可能な他の類型の媒体も、例示的な運営環境において使用され得、また、任意のこのような媒体が、本開示の方法を行うためのコンピュータで実行可能な命令語を含むことができることは自明である。
【0120】
運営体制1130、1つ以上のアプリケーションプログラム1132、その他プログラムモジュール1134およびプログラムデータ1136を含む多数のプログラムモジュールが、ドライブおよびRAM1112に保存され得る。運営体制、アプリケーション、モジュールおよび/またはデータの全部またはその一部分がRAM1112にキャッシュされ得る。本開示が、様々な商業的に利用可能な運営体制または運営体制の組み合わせで具現され得ることは自明である。
【0121】
ユーザは、1つ以上の有線・無線入力装置、例えば、キーボード1138およびマウス1140等のポインティング装置を介して、コンピュータ1102に命令および情報を入力することができる。その他の入力装置(不図示)では、マイク、IRリモコン、ジョイステック、ゲームパッド、スタイラスペン、タッチスクリーン、その他等があり得る。これらおよびその他の入力装置は、システムバス1108に連結されている入力装置インターフェース1142を介して処理装置1104に連結されることがよくあるが、並列ポート、IEEE 1394直列ポート、ゲームポート、USBポート、IRインターフェース、その他等の様々なインターフェースによって連結され得る。
【0122】
本開示内容におけるユーザ入力という用語は、ユーザインタフェース内で(あるいはウェブページ内で)行われるユーザの要請に関連した任意の形態のユーザ入力を意味し得る。例えば、ユーザ入力は、ポインタオブジェクトを移動させるユーザ入力を含んでもよい。他の例示として、ユーザ入力は、ユーザインタフェース上での特定のオブジェクトを選択するユーザ入力を含んでもよい。例えば、任意のオブジェクト(例えば、モジュール、タップなど)をタッチあるいはクリックする方式で、当該オブジェクトに対するユーザ入力が行われ得る。選択に関連したユーザ入力が受信される場合、当該入力に応答してユーザインタフェースあるいはウェブページ上に新しいオブジェクトがディスプレイされたり、またはオブジェクトの属性が変更されてディスプレイされ得る。
【0123】
さらに他の例示として、ユーザ入力は、様々な入力手段によって入力された言語、文字、数字および記号などの情報を含んでもよい。ユーザ入力は、前述した例示に限定されるものではなく、マウスカーソル制御、マウスのホイールスクロール、キーボードの方向キー、マウスクリック、タッチなど様々な形態のユーザアクションが可能である。
【0124】
モニター1144または他の類型のディスプレイ装置も、ビデオアダプタ1146等のインターフェースを介してシステムバス1108に連結される。モニター1144に加えて、コンピュータは、一般的にスピーカー、プリンタ、その他等の他の周辺出力装置(不図示)を含む。例えば、前記モニター1144または他の類型のディスプレイ装置は、液晶ディスプレイ(liquid crystal display,LCD)、薄膜トランジスター液晶ディスプレイ(thin film transistor-liquid crystal display,TFT LCD)、有機発光ダイオード(organic light-emitting diode,OLED)、フレキシブルディスプレイ(flexible display)、3次元ディスプレイ(3D display)、電子インクディスプレイ(e-ink display)のうち少なくとも1つを含んでもよい。また、ディスプレイ部は、プロセッサ110で処理されるデータを出力(表示)する。
【0125】
コンピュータ1102は、有線および/または無線通信を介した遠隔コンピュータ1148等の1つ以上の遠隔コンピュータへの論理的連結を使用してネットワーク化された環境で動作することができる。遠隔コンピュータ1148は、ワークステーション、コンピューティングデバイスコンピュータ、ルーター、パーソナルコンピュータ、携帯用コンピュータ、マイクロプロセッサー基盤娯楽機器、ピア装置またはその他の通常のネットワークノードであってもよく、一般的にコンピュータ1102に対して記述された構成要素のうち、多数またはその全部を含むが、簡略化のために、メモリ保存装置1150のみが示されている。図示の論理的連結は、近距離通信網(LAN)1152および/またはさらに大きいネットワーク、例えば、広域通信網(WAN)1154への有線または無線連結を含む。このようなLANおよびWANネットワーキング環境は、オフィスおよび会社で一般的なものであり、イントラネットなどの全社的コンピュータネットワーク(enterprise-wide computer network)を容易にし、これらすべては、全世界のコンピュータネットワーク、例えば、インターネットに連結され得る。
【0126】
LANネットワーキング環境で使用されるとき、コンピュータ1102は、有線および/または無線通信ネットワークインターフェースまたはアダプタ1156を介してローカルネットワーク1152に連結される。アダプタ1156は、LAN1152への有線または無線通信を容易にすることができ、このLAN1152は、また、無線アダプタ1156と通信するために設置されている無線アクセスポイントを含む。WANネットワーキング環境で使用されるとき、コンピュータ1102は、モデム1158を含んでもよいし、または、WAN1154上の通信コンピューティングデバイスに連結されたり、またはインターネットを介したなど、WAN1154を介して通信を設定するその他の手段を有する。内蔵型または外付け型および有線または無線装置であってもよいモデム1158は、直列ポートインターフェース1142を介してシステムバス1108に連結される。ネットワーク化された環境で、コンピュータ1102に対して説明されたプログラムモジュールまたはその一部分が遠隔メモリ/保存装置1150に保存され得る。図示のネットワーク連結は、例示的なものであり、コンピュータの間に通信リンクを設定するその他の手段が使用され得ることは自明である。
【0127】
コンピュータ1102は、無線通信に配置されて動作する任意の無線装置または個体、例えば、プリンタ、スキャナ、デスクトップおよび/または携帯用コンピュータ、PDA(portable data assistant)、通信衛星、無線で検出可能なタグと関連した任意の装備または場所、および電話と通信をする動作をする。これは、少なくともWi-Fi(登録商標)およびブルートゥース(登録商標)無線技術を含む。したがって、通信は、従来のネットワークのように、予め定義された構造であるか、単純に少なくとも2個の装置間のアドホック通信(ad hoc communication)であってもよい。
【0128】
Wi-Fi(登録商標)(Wireless Fidelity)は、有線で連結されず、インターネットなどへの連結を可能にする。Wi-Fi(登録商標)は、このような装置、例えば、コンピュータが、室内外を問わず、すなわち基地局の通話圏内のどこからも、データを送受信できるようにするセル電話のような無線技術である。Wi-Fi(登録商標)ネットワークは、安全で信頼性あり、高速の無線連結を提供するためにIEEE802.11(a、b、g、その他)という無線技術を使用する。コンピュータを互いに、インターネットにおよび有線ネットワーク(IEEE802.3またはイーサネットを使用する)に接続させるために、Wi-Fi(登録商標)が使用され得る。Wi-Fi(登録商標)ネットワークは、非認可2.4および5GHz無線帯域で、例えば、11Mbps(802.11a)または54Mbps(802.11b)データレートで動作したり、両帯域(デュアル帯域)を含む製品で動作することができる。
【0129】
本開示の技術分野における通常の知識を有する者は、情報及び信号が、任意の様々な相異なる技術及び手法を利用して表現されることができるということを理解することが可能である。例えば、上記の説明において参照できるデータ、指示、命令、情報、信号、ビット、シンボル及びチップは、電圧、電流、電磁気派、磁場又は粒子、光学場又は粒子、又はこれらの任意の組み合わせによって表現されることが可能である。
【0130】
また、コンピュータ1102は、ユーザ端末で具現可能になり得る。したがって、本開示の一実施形態による方法は、ソフトウェアを搭載できるハードウェアとして端末に対して制限なく適用され得る。本開示において説明されるユーザ端末は、携帯電話、スマートフォン(smart phone)、ノートブックコンピュータ(laptop computer)、デジタル放送用端末、PDA(personal digital assistants)、PMP(portable multimedia player)、ナビゲーション、スレートPC(slate PC)、タブレットPC(tablet PC)、ウルトラブック(ultrabook)、ウェラブルデバイス(wearable device、例えば、ウォッチ型端末(smartwatch)、ガラス型端末(smart glass)、HMD(head mounted display))等が含まれ得る。また、ユーザ端末は、ユーザによってデータ入出力が可能な装置とユーザにデータをディスプレーできる装置および有線または通信が可能な装置を含んでもよいし、これに限定されるものではない。例えば、コンピューティング装置100は、デスクトップ、ノートパソコン、タブレットPC、携帯用端末などが挙げられる。
【0131】
本開示の技術分野において通常の知識を有する者は、ここに開示されている実施形態に係る説明において取り挙げられた様々な例示的な論理ブロック、モジュール、プロセッサー、手段、回路及びアルゴリズム段階が、電子ハードウェア、(説明の便宜上、ここでは「ソフトウェア」と称する)様々な形のプログラム又は、設計コード、又はこれらすべての結合によって具現化されることができるということを理解することが可能である。ハードウェア及びソフトウェアのこのような相互互換性を明確に説明するために、様々な例示的なコンポーネント、ブロック、モジュール、回路、及び段階について、これらの機能に着目して上記で一般的に説明した。このような機能がハードウェアやソフトウェアとして実装されるかどうかは、特定のアプリケーション及び全体システムに対して加えられる設計上の制限によって決定される。本開示の技術分野において通常の知識を有する者は、個々の特定のアプリケーションについて様々な方法で説明された機能を具現化することができるが、このような具現化の決定は、本開示の範囲を逸脱するものと解釈すべきではない。
【0132】
ここに示されている様々な実施形態は、方法、装置、又は標準プログラミング及び/又はエンジニアリング技術を使った製造物品(article)によって実現されることが可能である。用語として、「製造物品」は、任意のコンピュータで読み出し可能な装置からアクセス可能なコンピュータプログラム、キャリアー、又は媒体(media)を含む。例えば、コンピュータで読み出し可能な保存媒体は、磁気保存装置(例えば、ハードディスク、フロッピーディスク、磁気ストリップ等)、光学ディスク(例えば、CD、DVD等)、スマートカード及びフラッシュメモリ装置(例えば、EEPROM、カード、スティック、キードライブ等)を含むが、これらに限定されるわけではない。また、ここに示されている様々な保存媒体は、情報を保存するための1つ以上の装置及び/又は他の機械で読み出し可能な媒体を含む。
【0133】
ここに示されたプロセスにおける複数の段階の特定の順番又は階層構造は、例示的なアプローチの一例であることを理解されたい。設計上の優先順位に基づき、本開示の範囲内で、プロセスにおける段階の特定の順番又は階層構造が再配列されることができることを理解されたい。添付の方法請求項は、サンプルとしての順番で、様々な段階のエレメントを提供するが、示された特定の順番又は階層構造に限定されることを意味するわけではない。
【0134】
ここに示された実施形態に関する説明は、任意の本開示の技術分野において通常の知識を有する者が、本開示を利用したり又は実施できるように提供される。このような実施形態に対する様々な変形は、本開示の技術分野において通常の知識を有する者には明確に理解できるものであり、ここに定義された一般的な原理は、本開示の範囲を逸脱することなく他の実施形態に適用されることが可能である。従って、本開示はここに示す実施形態によって限定されるものではなく、ここに示す原理及び新規な特徴と一貫する最広義の範囲で解釈されるべきである。