2021-001962
知識集約型データ処理システム
- 審判番号
- 2021-001962
- 法域
- 特許
- 審判種別
- 拒絶査定不服審判(拒絶査定不服の審決)
- 出願番号
- 特願2017-546680外部サイト(J-PlatPat)へ移動します
- 請求日
- 2021年02月12日
- 審決日
- 2022年03月09日
- 公報発行日
- 2022年04月28日
- 結論
- 原査定取消(特許/登録すべき)
- 当事者
- 【請求人】オラクル・インターナショナル・コーポレイション
- 【請求人代理人】特許業務法人深見特許事務所
- 分類
- P18 .121-WY (G06F)
- 条文(本文から自動抽出・参考)
- 特許法第29条第2項、特許法第17条の2第3項
- データ出所
- 審決公報(XML)
事件の表示
結論
理由
目次 ▾ 15項目
第1 手続の経緯
折りたたみ中(クリックで表示)
本願は、2016年(平成28年)3月10日(パリ条約による優先権主張外国庁受理2015年3月23日、アメリカ合衆国)を国際出願日とする出願であって、その手続の経緯は以下のとおりである。
平成31年 2月28日 手続補正書の提出
令和 2年 2月 7日 拒絶理由通知書(起案日)
令和 2年 5月15日 意見書、手続補正書の提出
令和 2年10月 9日 拒絶査定(起案日)
令和 3年 2月12日 審判請求書、手続補正書の提出
令和 3年 9月28日 前置報告(起案日)
令和 3年12月23日 上申書の提出
第2 原査定の概要
原査定(令和2年10月9日付け拒絶査定)の概要は次のとおりである。
1.(進歩性)本願請求項1~13に係る発明は、以下の引用文献1に基づいて、その発明の属する技術の分野における通常の知識を有する者(以下、「当業者」という。)が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。
引用文献等一覧
1.Eric S. Chan, et al., Situation aware computing for big data,2014 IEEE International Conference on Big Data,IEEE、2015年 1月 8日、URL、https://ieeexplore.ieee.org/document/7004415
第3 審判請求時の補正について
審判請求時の補正は、特許法第17条の2第3項から第6項までの要件に違反しているものとはいえない。
審判請求時の補正によって請求項1、2、9、10に「前記1つ以上の多時間データ項目は、各データ項目のトランザクション時間および有効時間を含む双時間データ項目であり、前記トランザクション時間は、前記各データ項目が真であると考えられる1つ以上の時間範囲に対応し、前記有効時間は、前記各データ項目がモデル化されたシステムに対して実際に真である時間範囲に対応し、」という事項を追加する補正は、当初明細書の段落【0036】に記載されているから、当該補正は新規事項を追加するものではなく、特別な技術的特徴を変更するものでもなく、特許請求の範囲の減縮を目的とするものである。
そして、「第4 本願発明」から「第6 対比・判断」までに示すように、補正後の請求項1~12に係る発明は、独立特許要件を満たすものである。
第4 本願発明
本願請求項1~12に係る発明(以下、それぞれ「本願発明1」~「本願発明12」という。)は、令和3年2月12日に提出された手続補正書で補正された特許請求の範囲の請求項1~12に記載された事項により特定される発明であり、以下のとおりの発明である。
「 【請求項1】コンピュータシステムに格納されているデータの1つ以上の更新をコンピュータシステムにおいて受信するステップと、受信された前記更新に基づいて、コンピュータシステム内の1つ以上の多時間データ項目を更新するステップとを含み、前記1つ以上の多時間データ項目は、各データ項目のトランザクション時間および有効時間を含む双時間データ項目であり、前記トランザクション時間は、前記各データ項目が真であると考えられる1つ以上の時間範囲に対応し、前記有効時間は、前記各データ項目がモデル化されたシステムに対して実際に真である時間範囲に対応し、続きを表示(全79行)第1クエリが前記更新された多時間データ項目に依存するという判断に基づいて、前記コンピュータシステム内で前記第1クエリを特定するステップと、現在の時間に対応する多時間データを用いて、前記第1クエリの第1実行を行うステップと、前記第1クエリの過去実行に対応する過去時間に対応する多時間データを用いて、前記第1クエリの第2実行を行うステップと、前記第1クエリの前記第1実行の結果と前記第1クエリの前記第2実行の結果との差を決定するステップと、前記差を所定の閾値と比較するステップと、前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連する第1データオブジェクトに対して第1変換処理を呼び出すステップとをさらに含み、前記第1変換処理は、連続データ変換ループアプリケーションの処理の一部であり、前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更、または前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更に基づいて、前記連続データ変換ループアプリケーションの処理を開始するステップをさらに含む、方法。【請求項2】コンピュータシステムに格納されているデータの1つ以上の更新をコンピュータシステムにおいて受信するステップと、受信された前記更新に基づいて、コンピュータシステム内の1つ以上の多時間データ項目を更新するステップとを含み、前記1つ以上の多時間データ項目は、各データ項目のトランザクション時間および有効時間を含む双時間データ項目であり、前記トランザクション時間は、前記各データ項目が真であると考えられる1つ以上の時間範囲に対応し、前記有効時間は、前記各データ項目がモデル化されたシステムに対して実際に真である時間範囲に対応し、第1クエリが前記更新された多時間データ項目に依存するという判断に基づいて、前記コンピュータシステム内で前記第1クエリを特定するステップと、現在の時間に対応する多時間データを用いて、前記第1クエリの第1実行を行うステップと、前記第1クエリの過去実行に対応する過去時間に対応する多時間データを用いて、前記第1クエリの第2実行を行うステップと、前記第1クエリの前記第1実行の結果と前記第1クエリの前記第2実行の結果との差を決定するステップと、前記差を所定の閾値と比較するステップと、前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連する第1データオブジェクトに対して第1変換処理を呼び出すステップと、前記所定の閾値が更新されたことに基づいて、前記差を前記所定の閾値と比較するステップを動的に再実行するステップとをさらに含む、方法。【請求項3】前記第1変換処理は、HADOOPデータ処理クラスタの計算ノード内で実行されるデータ変換ループアプリケーションによって実行される、請求項1に記載の方法。【請求項4】前記第1変換処理は、機械学習プロセス、生データ処理の分類、サポートベクトルマシン、ナイーブベイズ分類器、神経ネットワーク、クラスタリング、関連ルール、決定木、単変量周期線形傾向、多変量状態推定技術、認知コンピューティング、ベイジアン信念ネットワーク、逆問題に対する解の最小二乗最適化または回帰、影響図、デンプスター・シェイファー理論、決定木、残存有効寿命の予後、スクリプト、計画、予定、BPELワークフロー、およびBPMNビジネスプロセスのうち、1つ以上を含む、請求項3に記載の方法。【請求項5】前記第1データオブジェクトに対する前記第1変換処理の結果に対応する第2データオブジェクトを格納するステップと、前記第2データオブジェクトと、前記第1変換処理の過去の呼び出しによって生成され且つ前記第2データオブジェクトと同一タイプの異なるデータオブジェクトとの間の差を決定するステップと、前記第2データオブジェクトと前記異なるデータオブジェクトとの間の前記差が第2所定の閾値よりも大きいという判定に基づいて、前記第2データオブジェクトに対して第2変換処理を呼び出すステップとを含む、請求項1に記載の方法。【請求項6】前記第2変換処理は、前記連続データ変換ループアプリケーションの一部であり、前記方法は、前記コンピュータシステムに格納されている前記多時間データの1つ以上の追加更新を受信するステップと、受信された前記追加更新に基づいて、一組の多時間データ項目を更新するステップと、前記多時間データの前記追加更新を用いて、前記第1クエリの第3実行を行うステップと、前記第1クエリの過去実行時間に対応する多時間データを用いて、前記第1クエリの第4実行を行うステップと、前記第1クエリの前記第3実行の結果と前記第1クエリの前記第4実行の結果との間の差を決定するステップと、前記差を前記所定の閾値と比較するステップと、前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1変換処理を再度呼び出すステップとをさらに含む、請求項5に記載の方法。【請求項7】前記第1クエリを特定するステップは、前記コンピュータシステム内のフィルタテーブルにアクセスすることを含み、前記フィルタテーブルは、異なる変換処理にそれぞれ対応する複数のクエリを含む、請求項1~6のいずれかに記載の方法。【請求項8】前記第1クエリを特定するステップと、前記第1クエリの第1実行を行うステップと、前記第1クエリの第2実行を行うステップと、前記第1クエリの前記第1実行と前記第1クエリの第2実行との間の差を前記所定の閾値と比較するステップとは、前記1つ以上の多時間データ項目の更新として、第1トランザクションの外部で前記第1トランザクションと非同期的に実行され、前記第1データオブジェクトに対する前記第1変換処理の前記呼び出しは、前記第1トランザクションの外部で前記第1トランザクションと非同期的に実行される、請求項1~7のいずれかに記載の方法。【請求項9】1つ以上のプロセッサを含む処理ユニットと、前記処理ユニットに連結され、前記処理ユニットによって読取可能であり、一連の命令セットを格納するメモリとを備え、前記命令は、前記処理ユニットによって実行される場合、前記処理ユニットに、以下のステップ、すなわち、コンピュータシシステムに格納されているデータの1つ以上の更新を受信するステップと、受信された前記更新に基づいて、コンピュータシステム内の1つ以上の多時間データ項目を更新するステップとを実行させ、前記1つ以上の多時間データ項目は、各データ項目のトランザクション時間および有効時間を含む双時間データ項目であり、前記トランザクション時間は、前記各データ項目が真であると考えられる1つ以上の時間範囲に対応し、前記有効時間は、前記各データ項目がモデル化されたシステムに対して実際に真である時間範囲に対応し、第1クエリが前記更新された多時間データ項目に依存するという判断に基づいて、前記コンピュータシステム内で前記第1クエリを特定するステップと、現在の時間に対応する多時間データを用いて、前記第1クエリの第1実行を行うステップと、前記第1クエリの過去実行に対応する過去時間に対応する多時間データを用いて、前記第1クエリの第2実行を行うステップと、前記第1クエリの前記第1実行の結果と前記第1クエリの前記第2実行の結果との差を決定するステップと、前記差を所定の閾値と比較するステップと、前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連する第1データオブジェクトに対して第1変換処理を呼び出すステップとをさらに実行させ、前記第1変換処理は、連続データ変換ループアプリケーションの処理の一部であり、前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更、または前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更に基づいて、前記連続データ変換ループアプリケーションの処理を開始するステップをさらに実行させる、システム。【請求項10】1つ以上のプロセッサを含む処理ユニットと、前記処理ユニットに連結され、前記処理ユニットによって読取可能であり、一連の命令セットを格納するメモリとを備え、前記命令は、前記処理ユニットによって実行される場合、前記処理ユニットに、以下のステップ、すなわち、コンピュータシシステムに格納されているデータの1つ以上の更新を受信するステップと、受信された前記更新に基づいて、コンピュータシステム内の1つ以上の多時間データ項目を更新するステップとを実行させ、前記1つ以上の多時間データ項目は、各データ項目のトランザクション時間および有効時間を含む双時間データ項目であり、前記トランザクション時間は、前記各データ項目が真であると考えられる1つ以上の時間範囲に対応し、前記有効時間は、前記各データ項目がモデル化されたシステムに対して実際に真である時間範囲に対応し、第1クエリが前記更新された多時間データ項目に依存するという判断に基づいて、前記コンピュータシステム内で前記第1クエリを特定するステップと、現在の時間に対応する多時間データを用いて、前記第1クエリの第1実行を行うステップと、前記第1クエリの過去実行に対応する過去時間に対応する多時間データを用いて、前記第1クエリの第2実行を行うステップと、前記第1クエリの前記第1実行の結果と前記第1クエリの前記第2実行の結果との差を決定するステップと、前記差を所定の閾値と比較するステップと、前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連する第1オブジェクトに対して第1変換処理を呼び出すステップと、前記所定の閾値が更新されたことに基づいて、再度、前記差を前記所定の閾値と比較するステップとをさらに実行させる、システム。【請求項11】請求項1~8のいずれかに記載の方法をコンピュータに実行させるためのプログラム。【請求項12】請求項11に記載のプログラムを格納したメモリと、前記プログラムを実行するためのプロセッサとを備える、システム。」
第5 引用文献、引用発明等
1 引用文献1の記載について
原査定の拒絶の理由に引用された引用文献1には、図面とともに次の事項が記載されている。なお、下線は、当審が付与した。
(1)「Abstract-Big Data applications need a situation aware computing model to manage data, knowledge, and processes in an ever increasing amount, complexity, and speed while reacting as efficiently and timely as possible to any evolving situation. We introduce a Knowledge Intensive Dataprocessing System (KIDS) that empowers Big Data applications to support situation awareness. Frameworks such as Apache Hadoop YARN can be leveraged for repeated and near real-time execution of knowledge intensive applications. KIDS bridges the gap between the world of low-value data and the world of high-value information and knowledge, which are best handled by state of the art databases. These databases provide a host of much needed functions such as multitemporality, flashback, provenance, and registered queries. With KIDS model, Big Data applications are well structured and can evolve perpetually.(当審訳)要旨-ビッグデータアプリケーションは、これまでにない量、複雑さ、スピードの増加の一方で、進化する状況に可能な限り効率的かつタイムリーに対応するために、データ、知識、プロセスを管理するための状況認識コンピューティングモデルを必要としている。我々は、ビッグデータアプリケーションが状況認識を支援するようにする知識集約型データ処理システム(KIDS)を紹介する。Apache Hadoop YARNのようなフレームワークは、知識集約型アプリケーションを、繰り返しの、又は、ほぼリアルタイムでの実行に利用できる。KIDSは、価値の低いデータの領域と、価値の高い情報や知識の領域とのギャップを埋めるもので、最先端のデータベースによって最も良く処理される。これらのデータベースは、多時性、フラッシュバック、来歴、登録されたクエリなど、多くの必要とされる機能のホストを提供する。KIDSモデルによって、ビッグデータアプリケーションは適切に構造化され、永続的に進化させることができる。」(1ページ左欄「Abstract」)
(2)「 KIDS computing model is based on the observation that humans typically solve problems using a loop where they capture data, condense the data by applying knowledge, reason about the findings, and act. More specifically, we capture quantitative facts, classify the facts to derive compact qualitative perceptions, assess the perceptions to arrive at one or more hypotheses, and use these hypotheses to formulate directives, unless we decide that nothing should or could be done. The resulting directives will be acted upon to create new facts?see Figure 1.(当審訳)KIDSコンピューティングモデルは、人間が問題を解決する際に、データを取り込み、知識を適用してデータを凝縮し、その結果について推論し、行動するというループを用いることが一般的であるという観察に基づいている。すなわち、我々は、定量的なファクトを取り込み、それを分類してコンパクトな定性的認知結果を導き出し、その認知結果を評価して一つ以上の仮説を立て、その仮説をもとに指令を出す(何もすべきでない、何もできない、と判断する場合を除く)。その結果、指令が実行され、新しいファクトが生成される。図1を見よ。」(1ページ右欄2~12行)
(3)「 When we look at this loop from the perspective of knowledge we see the CARE (Classification, Assessment, Resolution, and Enactment) loop consisting of four distinct categories of knowledge acting on and producing four distinct categories of data?Facts, Perceptions, Hypotheses, and Directives. The CARE-Loop represents a normalized workflow. Data describes things that are typically stored in files, databases, or Big Data systems without any distinction. Formal knowledge is stored in articles, books, application code, workflows, case management systems, or decision support systems without any distinction about which knowledge is best used at what time and how everything interacts. To make up for the deficiencies, the CARE-Loop provides a much needed structure of interaction between data, knowledge, and processes in applications with the goal of solving especially the situation awareness problem.We propose KIDS to support the CARE-Loops. KIDS is designed to manage the four categories of data, the four categories of knowledge, as well as the activation of the knowledge and data based on a normalized process structure. KIDS consists of three parts:●The KIDS model intertwines data, knowledge, and processes as we see it in the real world. It moves away from the current model where knowledge and processes live in their respective worlds separately from each other and the data.●The KIDS tools allow users to develop applications based on the KIDS model. These tools leverage existing tools that are available for the various components and add support (constraints) to comply with the KIDS model.続きを表示(全13行)●The KIDS infrastructure leverages existing technologies, especially modern databases, Big Data systems, and application servers, to manage the applications, the data, and the knowledge in the form of rules, stored queries, models, procedures for transforming data, and workflows to control the use of the knowledge.KIDS enables near real-time complex event processing with Big Data. KIDS is highly dependent on the state management and the declarative interface of mature databases with their wide range of functional and operational support, which includes a wide array of data types, structured as well as un-structured data, multitemporal data, provenance, registered queries, flashback, Information Lifecycle Management (ILM), OLAP data cubes, fine grain security, etc.(当審訳)我々は、知識の観点からこのループを見るとき、我々は、4つの異なるカテゴリーの知識が作用することからなり、そして、ファクト、認知結果、仮説、指令という4つの異なるカテゴリーのデータを生成するCARE(分類、評価、解決、実行)loopを理解する。CARE-Loopは正規化されたワークフローを表す。データは、通常、ファイル、データベース、またはビッグデータシステムに区別なく格納されているものを表す。フォーマルな知識は、知識がいかなるとき及びあらゆるものが相互作用するときに最もよく使われることについていかなる区別もなしに、論文、書籍、アプリケーションコード、ワークフロー、ケース管理システム、又は、意思決定支援システムなどに保存される。このような欠陥を補うために、CARE-Loopは、特に状況認識問題を解決することを目的として、アプリケーションにおけるデータ、知識、プロセス間の相互作用の待望の構造を提供するものである。我々は、CARE-LoopsをサポートするためにKIDSを提案する。KIDSは、4つのカテゴリーのデータ、4つのカテゴリーの知識、そして正規化されたプロセス構造に基づいた知識とデータの活性化を管理するために設計されている。KIDSは3つの部分から構成される。●KIDSモデルは、データ、知識、プロセスを実世界に即して絡め合わせたものである。KIDSモデルは、データ、知識、プロセスを現実の世界と同じように結びつけるもので、知識とプロセスが互いに、そしてデータと別々にそれぞれの世界で生きているカレントモデルとは異なる。●KIDSツールは、KIDSモデルをベースにしたアプリケーションを開発するためのツールである。これらのツールは、様々なコンポーネントに対して利用可能な既存のツールを活用し、KIDSモデルに準拠するためのサポート(制約)を追加している。●KIDSインフラストラクチャは、既存の技術、特に最新のデータベース、ビッグデータシステム、アプリケーションサーバーを活用し、アプリケーション、データ、およびルール、ストアドクエリー、モデル、データ変換の手順、知識の使用を制御するワークフローの形で知識を管理する。KIDSは、ビッグデータによる複雑なイベント処理をほぼリアルタイムで実現する。KIDSは、幅広い機能及び運用サポートを持つ成熟したデータベースの状態管理と宣言型インターフェースに強く依存しており、多彩なデータタイプ、構造化データだけでなく非構造化データ、マルチテンポラルデータ、来歴、登録型クエリ、フラッシュバック、情報ライフサイクル管理(ILM)、OLAPデータキューブ、細粒度のセキュリティなどを含む。」(1ページ右欄13~2ページ左欄23行(1ページの図及び図のタイトル含まない。))
(4)「In our formal model of KIDS, a situation object is represented by a 4-tuple of fact, perception, hypothesis, and directive objects; the reasoning activities in a CARE-Loop impart the awareness of the evolving situation of the CARE-Loop. The KIDS model includes representations of the features extracted or transformed from different sources of data for the entities. The features can constitute the ontologies analogous to the ontologies for symptoms, diseases, and treatments in the medical domain.KIDS can be applied to a wide range of use cases. Cloud operation is the domain that can only thrive by rapid iteration of the OODA-Loop. The basic postulate of Cloud computing is the economy of scale by consolidation and pooling of the physical resources and providing virtually unlimited resources by dynamic resource management. The control system needs to manage the dynamic entity model to provide an accurate awareness of the system which changes due to frequent new software releases, patches for bug fixes, hardware upgrades, capacity scale out, and dynamic resource allocation. Additional applications have been systematically studied using KIDS, among them patient care, software and hardware product support, and air traffic flight supervision. The patient care use case developed in an Intensive Care Unit (ICU) setting [3][4] inspired the development of KIDS, especially the concepts of facts, classifications, and perceptions. The software and hardware product support use case requires the perpetual evolution of the knowledge driving the development of evolutionary applications. The flight supervision requires advanced temporality support for the perceptions. The Internet of Things (IoT) represents a generic class of applications that can obviously benefit from KIDS.In each of these cases a large amount of facts is collected in Big Data systems. These facts need to be represented as compact and intuitive perceptions, which will be used to generate the hypotheses for a situation, and finally directives are decided to respond to that situation. The linkages among the low-value facts and high-value perceptions, hypotheses, and directives must be managed using transactional database systems with full provenance.(当審訳)我々のKIDSの形式モデルでは、状況(situation)オブジェクトはファクト、認知結果、仮説、指令オブジェクトの4タプルで表され、CARE-Loopの推論アクティビティはCARE-Loopの進化する状況に対する認識を与える。KIDSモデルは、データエンティティの異なるソースから抽出または変換されたfeatureの表現を含む。featureは、医学領域における症状、病気、治療のオントロジーに類似したオントロジーを構成することができる。KIDSは様々なユースケースに適用できる。クラウド運用は、OODA-Loopの高速な反復によってのみ発展する領域である。クラウドコンピューティングの基本は、統合による規模の経済と、物理リソースをプールし、動的リソース管理による仮想的に無制限なリソースを供給することである。制御システムは、頻繁な新たなソフトウェアのリリース、バグフィックスのためのパッチ、ハードウェアのアップグレード、容量のスケールアウト、動的なリソース割り当てによって変化するシステムに正確な認識を供給するために、動的なエンティティモデルを管理する必要がある。また、アプリケーションは、それらの患者ケア、ソフトウェア・ハードウェア製品サポート、及び、航空管制などの間で、KIDSを使用して系統的に研究されている。集中治療室(ICU)で開発された患者ケアのユースケース[3][4]は、KIDSの開発、特にファクト、分類、認知結果の概念にインスピレーションを与えている。ソフトウェアとハードウェアの製品サポートのユースケースは、進化的なアプリケーションの開発を推進する知識の永続的な進化を必要とする。フライト監視では、認知結果のための高度な時間的サポートが必要である。Internet of Things(IoT)は、明らかにKIDSの恩恵を受けることができるアプリケーションの一般的なクラスを表しています。これらのケースでは、大量のファクトがビッグデータシステムで収集される。これらのファクトは、コンパクトで直感的な認識として表現される必要があり、これを用いて状況に対する仮説が生成され、最終的にその状況に対応するための指令が決定される。このような低価値のファクトと高価値の認知結果、仮説、指令の間の連携は、完全な来歴を持つトランザクションデータベースシステムを用いて管理されなければならない。」(2ページ右欄下から19行~3ページ左欄22行)
(5)「A. The ConceptsKIDS provides a model to structure applications focusing on data, knowledge, and process management (see Figure 1). The management of data is a relatively mature technology, which is currently going through a rapid evolution. KIDS adds to this evolution by defining and managing four distinct categories of data:●Facts are what we measure in the world around us. The number, rate, and quantitative nature of facts make it in many applications impossible for the human cogitative system to deal with them directly.●Perceptions are compact, temporal, and qualitative interpretations of facts. They are optimized for use by the human cognitive system. They represent the most important characteristics of evolving situations.続きを表示(全15行)●Hypotheses are first principle models or descriptions of possible causes explaining the facts and the perceptions.●Directives describe what needs to be done to react to a specific set of facts, perceptions, and hypotheses. Directives specify action plans that will most likely influence the evolving facts and determine which facts should be captured in the future.State management with declarative access and manipulation is a key for managing any of these data. The facts data require high speed data ingestion and near realtime continuous processing of Big Data analytics using massive number of compute nodes co-located with the data nodes to take advantage of data locality. All four categories of data require a wide variety of data types/structures, extensibility, declarative access across data types/structures, time travel, flexibility in evolving data structures (support for well structured data as well as data first/structure later or never), OLTP, OLAP, analytics, and so forth. There is also a need for extended functionality such as (fine grain) security, provenance, and ILM. Last but not the least important operational characteristics are disaster recovery, high availability, reliability, scalability, performance, rapid development tools, and declarative query languages such as temporal SQL, Expression Filter, HiveQL, Pig Latin, etc. Obviously, the management of high-value perceptions, hypotheses, directives data and linkages of the high-value data with the low-value facts requires a broad functional and operational support that is only available in mature and widely used databases. This applies to the management of knowledge, processes, and data with the exception of facts. Current database technology seems to be, for most use cases, too resource intensive to be used for the management of low-value facts. The extraction of perceptions requires data local compute resources. High speed ingestion and extraction of perceptions of low-value facts are the core functionality for doing CEP in Big Data.(当審訳)A. コンセプトKIDSは、データ、知識、プロセスの管理に焦点を当てたアプリケーションを構成するモデルを提供する(図1参照)。データの管理は比較的成熟した技術であり、現在急速な進化を遂げている。KIDSは、4つの明確なデータカテゴリーを定義及び管理することでこの進化を加える。●ファクトは、我々が我々の身の回り世界で測定されたものである。ファクトの数、割合、量的な性質は、多くのアプリケーションにおいて、人間の思考システムが、それらを直接扱うことを不可能にする。●認知結果は、ファクトのコンパクトな、時間的な、質的な解釈である。それらは、人間の認知システムで使用するために最適化されている。それらは、進化する状況の最も重要な特徴を表している。●仮説は、ファクトと認知結果を説明する、考えられる原因の第一原理モデル又は記述である。●指令は、ファクト、認知結果、仮説の特定のセットに反応するためになされる必要なものを記述する。指令は、進化するファクトに最も影響を与え、将来的にどのファクトを捉えるべきかを決定する行動計画を特定する。宣言的なアクセスと操作による状態管理は、これらのデータのいずれかを管理するための鍵となる。ファクトデータは、高速なデータ取込みと、データの局所性を利用するためのデータノードと同位置にある膨大な数の計算ノードを使ったビッグデータ解析のほぼリアルタイムな連続処理を必要とする。これら4つのデータカテゴリーは、多様なデータ型/構造、拡張性、データ型/構造間の宣言的アクセス、タイムトラベル、データ構造を進化させる柔軟性(構造化されたデータのサポート、データ先行/構造後発のサポート)、OLTP、OLAP、分析などを要求する。また、(細粒度の)セキュリティ、来歴、ILMなどの拡張機能もまた必要である。最後に重要なことを言い残したが、重要な運用特性として、ディザスタリカバリ、高可用性、信頼性、スケーラビリティ、パフォーマンス、高速開発ツール、及び、テンポラルSQL、式フィルタ、HiveQL、Pig Latinなどの宣言型クエリ言語がある。明らかに、価値の高い認知結果、仮説、指令データ、及び、価値の高いデータと価値の低いファクトとの関連付けの管理は、成熟し広く利用されているデータベースでのみ利用可能な、幅広い機能及び運用サポートを必要とする。これは、ファクトを除く、知識、プロセス及びデータの管理に適用される。現在のデータベース技術は、ほとんどのユースケースにおいて、価値の低いファクトの管理に使用するには、リソースが集中しすぎると思われる。認知結果の抽出には、データローカルの計算リソースを必要とする。価値の低いファクトを高速に取り込み、認知結果を抽出することは、ビッグデータでCEPを行うための中核的な機能である。」(3ページ左欄24~同ページ右欄18行)
(6)「 Knowledge is divided into four categories of Classification, Assessment, Resolution, and Enactment complementing the four categories of data. These categories are based on the mode of reasoning that is required to process each category of data. A substantial subset of each category of knowledge can be automated by suitable computation models.●The Classification knowledge?transforming facts into perceptions?is primarily represented by deductive reasoning. Some Classification knowledge that produces prediction or norm may involve inductive reasoning as well. The computation model for classification includes Support Vector Machines, Na▼i▲ve Bayesian Network, Neural Network, Clustering, Association Rules, Decision Trees, Multivariate State Estimation Technique, etc.●The Assessment knowledge?transforming perceptions into hypotheses?is typically implemented by abductive reasoning [10] that derives the hypotheses from the observations. The computation model for assessment includes Bayesian Belief Network and Least-Squares Optimization/Regression of solutions for inverse problems.●The Resolution knowledge?transforming hypotheses into directives?involves making decisions under the uncertainty of outcomes by considering the relative merit of the different outcomes and the associated payoffs/costs. The computation model for resolution includes Influence Diagrams, Dempster-Shafer theory, Decision Trees, and Prognosis of Remaining Useful Life.続きを表示(全11行)●The Enactment knowledge?transforming directives into actions (and new facts)?involves control structures encoded in scripts, plans, schedules. The action often includes the capturing of new facts.(当審訳)知識は、データの4つのカテゴリーを補完するように、分類、評価、解決、実行の4つのカテゴリーに分けられる。これらのカテゴリーは、データの各カテゴリーを処理するために必要とされる推論のモードに基づいている。知識の各カテゴリーの実在するサブセットは、適切な計算モデルによって自動化することができる。●分類知識-ファクトを認知結果に変換すること-は、主に演繹的推論によって表現される。予測やノルムを生み出す分類の知識は、帰納的推論も含むかもしれない。分類のための計算モデルには、サポートベクターマシン、単純ベイジアンネットワーク、ニューラルネットワーク、クラスタリング、アソシエーションルール、決定木、多変量状態推定手法などを含む。●評価知識-認知結果を仮説に変換すること-は、観察から仮説を導く帰納的推論[10]によって一般的に実装される。評価のための計算モデルは、逆問題のためのベイズ型ビリーフネットワーク及び解の最小二乗最適化/回帰が含まれる。●解決知識-仮説を指令に変換すること-は、結果の不確実性の下で、異なる結果の相対的なメリットと関連するペイオフ/コストを考慮して決定を行うものである。解決のための計算モデルには、影響図、デンプスター・シェーファー理論、決定木、残存耐用年数の予知を含む。●実行知識-指令を行動(および新ファクト)に変換すること-は、スクリプト、計画、スケジュールでエンコードされた制御構造が含まれる。行動は、しばしば新ファクトの獲得を含む。」(3ページ右欄19~53行、「▼i▲」は、iにトレマ(母音を表す文字の上に付される2点からなる符号)。)
(7)「 Knowledge will be applied in the proper sequence as specified by the CARE-Loop. In some cases not all steps of the CARE-Loop need to be executed. Knowledge ? including each version of it ? has to be stored in databases to take advantage of the state management with declarative access and manipulation. Knowledge has to be applicable ad-hoc and in real time. An important ad-hoc use case is the ability to revisit data (especially facts and perceptions) with new knowledge to find out what has been missed or has been overrated. Since the classification needs to be processed in real time in most cases, Big Data has to be complemented by the CEP technology. Using Big Data/CEP in the context of KIDS leads to a much more comprehensive and systematic approach:●Queries/models are treated as knowledge and not as individual elements; knowledge can be indexed, queried, and evolved.●Data and knowledge (queries, rules, and models) are associated with each other in four categories with specific characteristics.(当審訳)知識は、CARE-Loopで指定された適切な順序で適用される。場合によっては、CARE-Loopのすべてのステップを実行する必要はない。知識(各バージョンを含む)は、宣言的なアクセスと操作による状態管理を利用するために、データベースに格納されなければならない。知識はアドホックに、そしてリアルタイムに適用されなければならない。重要なアドホックな使用例は、見落としているものや過大評価されているものを見つける新しい知識を使って、データ(特に事実や認識)を再確認する能力である。ほとんどの場合、分類はリアルタイムで処理される必要があるため、ビッグデータはCEP技術によって補完されなければならない。KIDSのコンテキストでビッグデータ/CEPを使用すると、より包括的かつ体系的なアプローチにつながる。●クエリ/モデルは、個々の要素ではなく知識として扱われ、知識はインデックス化、クエリ化、進化させることが可能である。●データと知識(クエリ、ルール及びモデル)は、明確な特徴を持った4つのカテゴリーの中で、相互に関連付けられる。」(3ページ右欄下から6行~4ページ左欄14行)
(8)「B. The Execution ModelCentral to KIDS is an engine that propels the interaction of the human actors, the computer programs (e.g. YARN ApplicationMaster’s), the software/hardware devices (agents), and the entities being observed, diagnosed, and treated. The execution model is based on the formal model that is defined in the next section. The models shall guide the implementation of a process management application that drives the interactions to actively manage the information changes in the system.An activity is a classify, assess, resolve, or enact operation; a care-loop is a sequence of classify, assess, resolve, and enact activities. A situation is a fact, perception, hypothesis, or directive object; a 4-tuple (fact, perception, hypothesis, directive) represents a care-loop situation. An activity is associated with a pair of input and output situation objects. An array care-loop[k], k = 1, 2, …, N, represents a closure of historical and intentional contexts of activities that has happened in the past, that are current or going on in the present, and that are supposed to happen in the future. For each care-loop, KIDS maintains a loop counter k. We say that care-loop[k] and its activities careloop[k].classify, care-loop[k].assess, care-loop[k].resolve, and care-loop[k].enact are current under the current loop counter k. The loop counter k is incremented when the careloop[k].enact is invoked. A current activity in the current care-loop[k] can be executed when its input situation is substantively changed. If the input situations for more than one current activities are changed, KIDS will select one activity to execute according to the precedence ordering classify < assess < resolve < enact. The current activities may be executed repeatedly as their input situations change until the execution of a current enact activity, when the loop counter is incremented and the activities in care-loop[k+1] become current.A Flexible Schema Data (FSD) is any extensibility data in the database, including text, audio, video, spatial, graph, XML, RDF, and JSON. FSD may reside in Big Data and accessed from the database through the SQL table functions or Oracle Big SQL. Feature represents a categorical value, such as low, normal, high, in a range of observations, and depending on the associated feature type.続きを表示(全11行)Each situation object is associated with an entity and represents a context about the entity. A situation contains a set of FSD’s and features that represent fusion of information as of a valid time about a set of entities related to an associated entity. The entities can be related in a situation by a valid path expression, such as “perception. entity.oracleVM.dom0.computeNode,” which is a valid path expression for an entity model. A care-loop contains a conglomeration of the FSD’s and Features in its situation objects and represents the context to evaluate the path expressions.(当審訳)B. 実行モデルKIDSの中心は、人間である行為者、コンピュータプログラム(YARN ApplicationMasterなど)、ソフトウェア/ハードウェアデバイス(エージェント)、観察・診断・治療対象のエンティティの相互作用を促進するエンジンである。実行モデルは、次節で定義する形式モデルに基づいている。モデルは、システム内の情報変化を能動的に管理するために、相互作用を駆動するプロセス管理アプリケーションの実装をガイドするものとする。activityは、分類、評価、解決、又は、実行のオペレーションであり、care-loopは、分類、評価、解決、及び、実行アクティビティのシーケンスである。situationは、ファクト、認知結果、仮説、又は、指令のオブジェクトであり、4タプル(ファクト、認知結果、仮説、指令)は、care-loop situationを表す。activityは、入力と出力のsituationオブジェクトのペアに関連付けられる。配列care-loop[k](k = 1、 2、 ...、 N)は、過去に起こったこと、現在進行中のこと、そして将来起こるはずのactivityの履歴及び意図されたコンテキストのクロージャを表す。各care-loopに対して、KIDSはループカウンタkを保持する。我々は、care-loop[k]とそのactivitiesであるcare-loop[k].classify、 care-loop[k].assess、 care-loop[k].resolve、 care-loop[k].enactが、カレントループカウンタkのもとでカレントであるとする。ループカウンタkは、careloop[k].enactが呼び出されたときにインクリメントされる。カレントcare-loop[k]のカレントactivityは、その入力situationが実質的に変更されたときに実行されることができる。もし、1より多くのカレントactivitiesの入力situationが変化したら、KIDSは、分類 < 評価 < 解決 < 実行の優先順位に従って、実行activityを1つ選択する。カレントactivitiesは、ループカウンタがインクリメントされ、care-loop[k+1]のactivityがカレントになるとき、入力situationsがカレント実行activityの実行まで変化するように、繰り返し実行されることがある。フレキシブルスキーマデータ(FSD)は、テキスト、オーディオ、ビデオ、空間、グラフ、XML、RDF、及び、JSONを含むデータベース内のいずれかの拡張性を持つデータである。FSDはBig Dataに存在し、SQLのテーブル関数やOracle Big SQLを通じてデータベースからアクセスされてもよい。featureは、観測範囲におけるlow、normal、highなどのカテゴリー値、そして、関連するfeatureタイプに依存することを表す。各々のsituationオブジェクトはエンティティに関連付けられ、そのエンティティに関するコンテキストを表す。situationは、関連付けられたエンティティに関連する一連のエンティティに関するある有効時間の時点での情報の融合を表すFSDの集合とfeatureを含む。エンティティは、エンティティモデルのための有効パス式である、"perception.entity.oracleVM.dom0.computeNode"などの有効パス式によって、situationに関連付けることができる。care-loopは、そのsituationオブジェクトにFSDとfeatureの集合を含み、パス式を評価するためのコンテキストを表す。」(4ページ左欄下から14行~同ページ右欄下から21行)
(9)「 A knowledge function (Kfun) is a classification, assessment, resolution, or enactment function. There are many-to-many associations between Kfuns and activities. An activity is associated with a set of Kfuns, an input situation, and an output situation. A Kfun maps a subset of FSD’s and features of the input situation to a subset of FSD’s and features of the output situation, of one or more activities. The pre-condition and post-condition specify the domain and range, respectively, of a Kfun. After the invocation of a Kfun and after the input and output situations are committed, KIDS will update the transaction time in the associated activity. KIDS can defer the invocation of a Kfun until all mandatory FSD’s and features are available in the input situation and the situation has substantively changed since the last invocation of the activity.The pre-conditions of the set of Kfuns in an activity constitute a guard to compose the input situation of the activity. A filter is specified in terms of path expressions and Boolean expressions, which are evaluated in the context of a care-loop or an activity. A filter definition specifies the FSD type, feature type, filter, and mandatory predicates that are part of a guard. The predicates are specified in terms of the expressions specifying whether an FSD or feature is mandatory for the activity. Using the guard predicates, KIDS composes a SQL statement to query the set of FSD’s and features in the input fact, perception, hypothesis, or directive of an activity. The SQL statement is registered for object change detection using flashback query and its predicates are indexed using the expression filters. KIDS executes a flashback query only if the query statement is selected by the expression filter when an update or insert of an FSD or feature changes the situation. KIDS executes the flashback query as of the transaction time recorded in the corresponding activity. It compares this result with the result of another flashback query as of the current transaction time. If the input situation changes substantively between the two transactions, KIDS invokes the current activity with the updated situation.(当審訳)知識関数(Kfun)は、分類、評価、解決、又は、実行の関数である。Kfunsとactivitiesとの間には多対多の関連性がある。activityは、Kfun、入力situation、及び、出力situationのセットに関連付けられる。Kfunは、1つ又はそれ以上のactivitiesの、入力situationのFSDとfeatureとのサブセットを、出力situationのFSDとfeatureとのサブセットにマッピングする。pre-conditionとpost-conditionは、それぞれKfunのドメインと範囲を指定する。Kfunの起動後、そして、入力と出力situationがコミットされた後、KIDSはactivityに関連するトランザクション時間を更新する。KIDSは、入力situationにおいてすべての必須FSDとfeatureが有効になるまで、及び、situationがactivityの最後の起動から実質的に変更されるまで、Kfunの起動を延期することができる。activityのKfunのセットのpre-conditionは、activityの入力situationを組み立てるguardを構成する。filterは、care-loop又はactivityのコンテキストで評価されるパス式とブール式で指定される。filter定義は、guardの一部であるFSDタイプ、featureタイプ、filter、及び、mandatory記述を規定する。記述は、FSDやfeatureがactivityに必須であるかどうかを指定する表現で規定される。guard記述を用いて、KIDSはactivityの入力ファクト、認知結果、仮説、又は、指令に含まれるFSDとfeatureのセットを問い合わせるSQL文を作成する。このSQL文はフラッシュバッククエリを用いてオブジェクト変更検出のために登録され、その記述は式フィルタを用いてインデックス化される。KIDSは、FSDやfeatureの更新や挿入がsituationを変化させるとき、式フィルタによってクエリ文が選択された場合のみ、フラッシュバッククエリを実行する。KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行する。この結果を、カレントトランザクション時間時点での別のフラッシュバッククエリの結果と比較する。入力situationが2つのトランザクション間で実質的に変更された場合、KIDSは更新されたsituationでカレントactivityを呼び出す。」(4ページ右欄下から20行~5ページ左欄19行)
(10)「The execution model involves a function Tvalid[k] that provides the valid time for each discrete time step k. Careloop[k].classify.fact, care-loop[k].assess.perception, careloop[k].resolve.hypothesis, and care-loop[k].enact.directive of the same care-loop should normally have the same valid time [Tvalid[k], min({Tvalid[j] | ∀j, j ≠ k, Tvalid[j] > Tvalid[k]}). The execution model supports the execution of activities in out of order in the valid times, i.e. Tvalid[k+1] < Tvalid[k] for some k; for example when it receives a blood culture result for a blood sample taken 24 hours ago. This is an interesting aspect of time travel with KIDS. However, the transaction times of the activities should reflect the order of executions: care-loop[k].classify.txnTime<care-loop[k].assess.txnTime< care-loop[k].resolve.txnTime < care-loop[k].enact.txnTime. The Kfuns can evolve due to bug fixes or machine learning of new data, and are associated with valid times. It is possible to reset the loop counter k to a lower number in order to re-evaluate the situations and re-execute the activities using newer versions of the Kfuns in the activities. To apply a new version of a Kfun in the recalculations, the valid time of the Kfun is reset retroactively to Tvalid[k].The KIDS orchestration engine runs in the Oracle Database using the temporal, registered, flashback query, and expression filters in the database. The KIDS engine can submit a CARE-Loop application to the YARN Resource Manager (RM), which will launch the CARE-Loop ApplicationMaster (AM) in a container in one of the compute nodes in the Hadoop cluster. The CARE-Loop AM can be a long running process. The KIDS engine manages the states of each CARE-Loop AM, which in turn manages the states of its CARE-Loop activities. The CARE-Loop AMs and activities can synchronize the high-value perceptions, hypotheses, and directives data with the Oracle bi-temporal database.(当審訳)実行モデルは、離散時間ステップkごとに有効時間を与える関数Tvalid[k]を含む。同じcare-loopのCareloop[k].classify.fact、Careloop[k].assess.perception、Careloop[k].resolve.hypothesis、及び、Careloop[k].enact.directiveは通常同じ有効時間[Tvalid[k]、 min({Tvalid[j] | ∀j、 j ≠ k、 Tvalid[j] > Tvalid[k]})を持つべきである。実行モデルは、有効時間、例えば、いくつかのkに対するTvalid[k+1] < Tvalid[k]、において、順番が異なっているactivityの実行をサポートする。例えば、24時間前に採取した血液サンプルの血液培養の結果を受け取るときなどである。これは、KIDSによるタイムトラベルの面白いところである。しかし、activityのトランザクション時間は、care-loop[k].classify.txnTime < care-loop[k].assess.txnTime < care-loop[k].resolve.txnTime < care-loop[k].enact.txnTimeという実行順序を反映すべきである。Kfunは、バグフィックスや新しいデータの機械学習の結果により進化することができ、そして、有効時間と関連付けられる。activityの中の新しいバージョンのKfunを使用して、situationを再評価し、activityを再実行するために、ループカウンタkをより低い数値にリセットすることが可能である。再計算で新しいバージョンのKfunを適用するために、Kfunの有効時間は遡及してTvalid[k]にリセットされる。KIDSオーケストレーションエンジンは、データベース内の時間フィルタ、登録型フィルタ、フラッシュバッククエリ、及び、式フィルタを使用して、オラクルデータベースで実行される。KIDSエンジンは、CARE-LoopアプリケーションをYARN Resource Manager (RM)に提出することができ、RMはHadoopクラスタの計算ノードの1つにあるコンテナ内でCARE-Loop ApplicationMaster(AM)を起動させる。CARE-Loop AMは、長時間実行される可能性がある。KIDSエンジンは、各CARE-Loop AMの状態を管理し、AMはそのCARE-Loopアクティビティの状態を管理する。CARE-Loop AMとアクティビティは、価値の高い認識、仮説、指示のデータをオラクルのバイテンポラルデータベースと同期させることができる。」(5ページ左欄下から18~6行)
(11)Figure 1 The KIDS Model at a Glance.
[図:0001382915000001.jpg]
(当審訳)
図1 KIDSモデルの概要
Facts:ファクト
Perceptions:認知結果
Hypotheses:仮説
Directives:指令
Classification:分類
Assessment:評価
Resolution:解決
Enactment:実行
Symptom Resolution:症状の解決
2 引用文献1から把握できる事項
上記1から、引用文献1には、次の事項が記載されているといえる。
(1)上記1(1)の「ビッグデータアプリケーションが状況認識を支援するようにする知識集約型データ処理システム(KIDS)」、「KIDSは、価値の低いデータの領域と、価値の高い情報や知識の領域とのギャップを埋めるもので、最先端のデータベースによって最も良く処理される。これらのデータベースは、多時性、フラッシュバック、来歴、登録されたクエリなど、多くの必要とされる機能のホストを提供する。KIDSモデルによって、ビッグデータアプリケーションは適切に構造化され」との記載から、
引用文献1には、
「 ビッグデータアプリケーションによって状況認識を支援される知識集約型データ処理システム(KIDS)であって、KIDSは、最先端のデータベースを用いて処理することで、価値の低いデータの領域と、価値の高い情報や知識の領域とのギャップを埋めるものであり、KIDSモデルによって、ビッグデータアプリケーションが適切に構造化され」
とのことが記載されているといえる。
(2)上記1(2)の「KIDSコンピューティングモデルは、人間が問題を解決する際に、データを取り込み、知識を適用してデータを凝縮し、その結果について推論し、行動するというループを用いることが一般的であるという観察に基づいている。」、上記1(3)の「ファクト、認知結果、仮説、指令という4つの異なるカテゴリーのデータを生成するCARE(分類、評価、解決、実行)ループ」、「KIDSは、4つのカテゴリーのデータ、4つのカテゴリーの知識、そして正規化されたプロセス構造に基づいた知識とデータの活性化を管理するために設計されている。」、「KIDSは、4つのカテゴリーのデータ、4つのカテゴリーの知識、そして正規化されたプロセス構造に基づいた知識とデータの活性化を管理するために設計されている。」、上記1(5)の「KIDSは、4つの明確なデータカテゴリーを定義及び管理することでこの進化を加える。●ファクトは、…●認知結果は、…●仮説は、…●指令は、」、「これら4つのデータカテゴリーは、多様なデータ型/構造、拡張性、データ型/構造間の宣言的アクセス、タイムトラベル、データ構造を進化させる柔軟性(構造化されたデータのサポート、データ先行/構造後発のサポート)、OLTP、OLAP、分析などを要求する。」、上記1(6)の「知識は、データの4つのカテゴリーを補完するように、分類、評価、解決、実行の4つのカテゴリーに分けられる。」、上記1(7)の「データと知識(クエリ、ルール及びモデル)は、明確な特徴を持った4つのカテゴリーの中で、相互に関連付けられる。」との記載、上記1(8)の「activityは、分類、評価、解決、又は、実行のオペレーションであり、」との記載、及び、図1から、
引用文献1には、
「 KIDSは、4つのカテゴリーのデータ、データの4つのカテゴリーを補完する4つのカテゴリーの知識を管理するために設計されたものであって、4つのカテゴリーのデータには、ファクト、認知結果、仮説、指令があり、activityは、分類、評価、解決、又は、実行のオペレーションであり、これら4つのデータカテゴリーは、多様なデータ型/構造、拡張性、データ型/構造間の宣言的アクセス、タイムトラベル、データ構造を進化させる柔軟性(構造化されたデータのサポート、データ先行/構造後発のサポート)、OLTP、OLAP、分析などを要求し、4つのカテゴリーの知識には、分類、評価、解決、実行があり、データと知識は、明確な特徴を持った4つのカテゴリーの中で、相互に関連付けられており」
とのことが記載されているといえる。
さらに、上記1(4)の「このような低価値のファクトと高価値の認知結果、仮説、指令の間の連携は、完全な来歴を持つトランザクションデータベースシステムを用いて管理されなければならない。」との記載から、
引用文献1には、
「 ファクト、認知結果、仮説、指令の間の連携は、トランザクションデータベースシステムを用いて管理され」
とのことが記載されているといえる。
(3)上記1(3)の「我々は、知識の観点からこのループを見るとき、我々は、4つの異なるカテゴリーの知識が作用することからなり、そして、ファクト、認知結果、仮説、指令という4つの異なるカテゴリーのデータを生成するCARE(分類、評価、解決、実行)loopを理解する。CARE-Loopは正規化されたワークフローを表す。」、上記1(4)の「我々のKIDSの形式モデルでは、状況(situation)オブジェクトはファクト、認知結果、仮説、指令オブジェクトの4タプルで表され、CARE-Loopの推論アクティビティはCARE-Loopの進化する状況に対する認識を与える。」、上記1(8)の「activityは、分類、評価、解決、又は、実行のオペレーションであり、care-loopは、分類、評価、解決、及び、実行アクティビティのシーケンスである。situationは、ファクト、認知結果、仮説、又は、指令のオブジェクトであり、4タプル(ファクト、認知結果、仮説、指令)は、care-loop situationを表す。activityは、入力と出力のsituationオブジェクトのペアに関連付けられる。配列care-loop[k](k = 1、 2、 ...、 N)は、過去に起こったこと、現在進行中のこと、そして将来起こるはずのactivityの履歴及び意図されたコンテキストのクロージャを表す。各care-loopに対して、KIDSはループカウンタkを保持する。」及び「カレントcare-loop[k]のカレントactivityは、その入力situationが実質的に変更されたときに実行されることができる。」との記載、から、
引用文献1には、
「 KIDSの形式モデルでは、状況(situation)オブジェクトはファクト、認知結果、仮説、指令オブジェクトの4タプルで表され、activityは、分類、評価、解決、又は、実行のオペレーションであり、situationは、ファクト、認知結果、仮説、又は、指令のオブジェクトであり、4タプル(ファクト、認知結果、仮説、指令)は、care-loop situationを表し、activityは、入力と出力のsituationオブジェクトのペアに関連付けられ、care-loopの推論アクティビティはcare-loopの進化する状況に対する認識を与えるものであって、ファクト、認知結果、仮説、指令という4つの異なるカテゴリーのデータを生成するCARE(分類、評価、解決、実行)loopであり、care-loopは正規化されたワークフローを表し、care-loopは、分類、評価、解決、及び、実行アクティビティのシーケンスであり、配列care-loop[k](k = 1、 2、 ...、 N)は、過去に起こったこと、現在進行中のこと、そして将来起こるはずのactivityの履歴及び意図されたコンテキストのクロージャを表し、各care-loopに対して、KIDSはループカウンタkを保持し、カレントcare-loop[k]のカレントactivityは、その入力situationが実質的に変更されたときに実行されることができ」
とのことが記載されているといえる。
(4)上記1(3)の「KIDSは、幅広い機能及び運用サポートを持つ成熟したデータベースの状態管理と宣言型インターフェースに強く依存しており、多彩なデータタイプ、構造化データだけでなく非構造化データ、マルチテンポラルデータ、来歴、登録型クエリ、フラッシュバック、情報ライフサイクル管理(ILM)、OLAPデータキューブ、細粒度のセキュリティなどを含む。」との記載から、
引用文献1には、
「 KIDSは、幅広い機能及び運用サポートを持つデータベースの状態管理と宣言型インターフェースに強く依存しており、マルチテンポラルデータ、フラッシュバック等を含み」
とのことが記載されているといえる。
(5)上記1(8)の「KIDSの中心は、…エンジンである。」、上記1(10)の「KIDSオーケストレーションエンジンは、データベース内の時間フィルタ、登録型フィルタ、フラッシュバッククエリ、及び、式フィルタを使用して、オラクルデータベースで実行される。」、「KIDSエンジンは、各CARE-Loop AMの状態を管理し、AMはそのCARE-Loopアクティビティの状態を管理する。CARE-Loop AMとアクティビティは、価値の高い認識、仮説、指示のデータをオラクルのバイテンポラルデータベースと同期させることができる。」との記載から、
引用文献1には、
「 KIDSの中心はエンジンであって、エンジンは、データベース内の時間フィルタ、登録型フィルタ、フラッシュバッククエリ、及び、式フィルタを使用して、オラクルデータベースで実行され、各care-loop AM (ApplicationMaster)の状態を管理し、AMはそのcare-loopアクティビティの状態を管理し、care-loop AMとアクティビティは、価値の高い認識、仮説、指示のデータをオラクルのバイタイムデータベースと同期させることができ」
とのことが記載されているといえる。
(6)上記1(4)の「featureは、医学領域における症状、病気、治療などのオントロジーに類似したオントロジーを構成することができる。」、上記1(8)の「フレキシブルスキーマデータ(FSD)は、テキスト、オーディオ、ビデオ、空間、グラフ、XML、RDF、及び、JSONを含むデータベース内のいずれかの拡張性を持つデータである。FSDはBig Dataに存在し、SQLのテーブル関数やOracle Big SQLを通じてデータベースからアクセスされてもよい。」、上記1(9)の「知識関数(Kfun)は、分類、評価、解決、又は、実行の関数である。Kfunsとactivitiesとの間には多対多の関連性がある。activityは、Kfun、入力situation、及び、出力situationのセットに関連付けられる。Kfunは、1つ又はそれ以上のactivitiesの、FSDと入力situationのfeatureとのサブセットを、FSDと出力situationのfeatureとのサブセットにマッピングする。」、「filterは、care-loop又はactivityのコンテキストで評価されるパス式とブール式で指定される。filter定義は、guardの一部であるFSDタイプ、featureタイプ、filter、及び、mandatory記述を規定する。」、「KIDSは、FSDやfeatureの更新や挿入がsituationを変化させるとき、式フィルタによってクエリ文が選択された場合のみ、フラッシュバッククエリを実行する。KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行する。この結果を、カレントトランザクション時間時点での別のフラッシュバッククエリの結果と比較する。入力situationが2つのトランザクション間で大幅に変更された場合、KIDSは更新されたsituationでカレントactivityを呼び出す。」との記載から、
引用文献1には、
「 featureは、医学領域における症状、病気、治療などのオントロジーに類似したオントロジーを構成することができ、フレキシブルスキーマデータ(FSD)は、テキスト、オーディオ、ビデオ、空間、グラフ、XML、RDF、及び、JSONを含むデータベース内のいずれかの拡張性を持つデータであって、Big Dataに存在し、SQLのテーブル関数やOracle Big SQLを通じてデータベースからアクセスされ、知識関数(Kfun)は、分類、評価、解決、又は、実行の関数であって、Kfunsとactivitiesとの間には多対多の関連性があり、activityは、Kfun、入力situation、及び、出力situationのセットに関連付けられ、Kfunは、1つ又はそれ以上のactivityの、FSDと入力situationのfeatureとのサブセットを、FSDと出力situationのfeatureとのサブセットにマッピングし、filterは、care-loop又はactivityのコンテキストで評価されるパス式とブール式で指定され、filter定義は、guardの一部であるFSDタイプ、featureタイプ、filter、及び、mandatory記述を規定し、KIDSは、FSDやfeatureの更新や挿入がsituationを変化させるとき、式フィルタによってクエリ文が選択された場合のみ、フラッシュバッククエリを実行し、KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行し、この結果を、カレントトランザクション時間時点での別のフラッシュバッククエリの結果と比較し、入力situationが2つのトランザクション間で大幅に変更された場合、KIDSは更新されたsituationでカレントactivityを呼び出し」
とのことが記載されているといえる。
そして、これらの処理は、KIDSよって実行される方法であることも明らかである。
さらに、上記1(9)の「guard記述を用いて、KIDSはactivityの入力ファクト、認知結果、仮説、又は、指令に含まれるFSDとfeatureのセットを問い合わせるSQL文を作成する。」との記載から、
引用文献1には、
「 guard記述を用いて、KIDSはactivityの入力ファクト、認知結果、仮説、又は、指令に含まれるFSDとfeatureのセットを問い合わせるSQL文を作成し」
とのことが記載されているといえる。
(7)上記1(10)の「Kfunは、バグフィックスや新しいデータの機械学習の結果により進化することができ」、「activityの中の新しいバージョンのKfunを使用して、situationを再評価し、activityを再実行する」との記載ことから、
引用文献1には、
「Kfunは、バグフィックスや新しいデータの機械学習の結果により進化することができ、activityの中の新しいバージョンのKfunを使用して、activityを再実行し」
とのことが記載されているといえる。
(8)上記1(4)の「KIDSは様々なユースケースに適用できる。」、「アプリケーションは、それらの患者ケア、ソフトウェア・ハードウェア製品サポート、及び、航空管制などの間で、KIDSを使用して系統的に研究されている。集中治療室(ICU)で開発された患者ケアのユースケース[3][4]は、KIDSの開発、特にファクト、分類、認知結果の概念にインスピレーションを与えている。」との記載から、
引用文献1には、
「 KIDSは、患者ケア、ソフトウェア・ハードウェア製品サポート、及び、航空管制などに適用でき」
とのことが記載されているといえる。
3 引用文献1に記載された発明
上記2から、引用文献1には、次の発明(以下「引用発明」という。)が記載されている。
「 ビッグデータアプリケーションによって状況認識を支援される知識集約型データ処理システム(KIDS)であって、KIDSは、最先端のデータベースを用いて処理することで、価値の低いデータの領域と、価値の高い情報や知識の領域とのギャップを埋めるものであり、KIDSモデルによって、ビッグデータアプリケーションが適切に構造化され、KIDSは、4つのカテゴリーのデータ、データの4つのカテゴリーを補完する4つのカテゴリーの知識を管理するために設計されたものであって、4つのカテゴリーのデータには、ファクト、認知結果、仮説、指令があり、activityは、分類、評価、解決、又は、実行のオペレーションであり、続きを表示(全24行)これら4つのデータカテゴリーは、多様なデータ型/構造、拡張性、データ型/構造間の宣言的アクセス、タイムトラベル、データ構造を進化させる柔軟性(構造化されたデータのサポート、データ先行/構造後発のサポート)、OLTP、OLAP、分析などを要求し、4つのカテゴリーの知識には、分類、評価、解決、実行があり、データと知識は、明確な特徴を持った4つのカテゴリーの中で、相互に関連付けられておりファクト、認知結果、仮説、指令の間の連携は、トランザクションデータベースシステムを用いて管理され、KIDSの形式モデルでは、状況(situation)オブジェクトはファクト、認知結果、仮説、指令オブジェクトの4タプルで表され、activityは、分類、評価、解決、又は、実行のオペレーションであり、situationは、ファクト、認知結果、仮説、又は、指令のオブジェクトであり、4タプル(ファクト、認知結果、仮説、指令)は、care-loop situationを表し、activityは、入力と出力のsituationオブジェクトのペアに関連付けられ、care-loopの推論アクティビティはcare-loopの進化する状況に対する認識を与えるものであって、ファクト、認知結果、仮説、指令という4つの異なるカテゴリーのデータを生成するCARE(分類、評価、解決、実行)loopであり、care-loopは正規化されたワークフローを表し、care-loopは、分類、評価、解決、及び、実行アクティビティのシーケンスであり、配列care-loop[k](k = 1、 2、 ...、 N)は、過去に起こったこと、現在進行中のこと、そして将来起こるはずのactivityの履歴及び意図されたコンテキストのクロージャを表し、各care-loopに対して、KIDSはループカウンタkを保持し、カレントcare-loop[k]のカレントactivityは、その入力situationが実質的に変更されたときに実行されることができ、KIDSは、幅広い機能及び運用サポートを持つデータベースの状態管理と宣言型インターフェースに強く依存しており、マルチテンポラルデータ、フラッシュバック等を含み、KIDSの中心はエンジンであって、エンジンは、データベース内の時間フィルタ、登録型フィルタ、フラッシュバッククエリ、及び、式フィルタを使用して、オラクルデータベースで実行され、各care-loop AM (ApplicationMaster)の状態を管理し、AMはそのcare-loopアクティビティの状態を管理し、care-loop AMとアクティビティは、価値の高い認識、仮説、指示のデータをオラクルのバイタイムデータベースと同期させることができ、featureは、医学領域における症状、病気、治療などのオントロジーに類似したオントロジーを構成することができ、フレキシブルスキーマデータ(FSD)は、テキスト、オーディオ、ビデオ、空間、グラフ、XML、RDF、及び、JSONを含むデータベース内のいずれかの拡張性を持つデータであって、Big Dataに存在し、SQLのテーブル関数やOracle Big SQLを通じてデータベースからアクセスされ、知識関数(Kfun)は、分類、評価、解決、又は、実行の関数であって、Kfunsとactivitiesとの間には多対多の関連性があり、activityは、Kfun、入力situation、及び、出力situationのセットに関連付けられ、Kfunは、1つ又はそれ以上のactivityの、FSDと入力situationのfeatureとのサブセットを、FSDと出力situationのfeatureとのサブセットにマッピングし、filterは、care-loop又はactivityのコンテキストで評価されるパス式とブール式で指定され、filter定義は、guardの一部であるFSDタイプ、featureタイプ、filter、及び、mandatory記述を規定し、KIDSは、FSDやfeatureの更新や挿入がsituationを変化させるとき、式フィルタによってクエリ文が選択された場合のみ、フラッシュバッククエリを実行し、KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行し、この結果を、カレントトランザクション時間時点での別のフラッシュバッククエリの結果と比較し、入力situationが2つのトランザクション間で大幅に変更された場合、KIDSは更新されたsituationでカレントactivityを呼び出し、guard記述を用いて、KIDSはactivityの入力ファクト、認知結果、仮説、又は、指令に含まれるFSDとfeatureのセットを問い合わせるSQL文を作成し、Kfunは、バグフィックスや新しいデータの機械学習の結果により進化することができ、activityの中の新しいバージョンのKfunを使用して、activityを再実行し、KIDSは、患者ケア、ソフトウェア・ハードウェア製品サポート、及び、航空管制などに適用できる、方法。」
第6 対比・判断
1 本願発明1について
(1)本願発明1と引用発明との対比
ア 引用発明の「知識集約型データ処理システム(KIDS)」は、本願発明1の「コンピュータシステム」に相当する。
また、引用発明は、「KIDS」が、「4つのカテゴリーのデータ、データの4つのカテゴリーを補完する4つのカテゴリーの知識を管理するために設計されたもの」であり、「データと知識は、明確な特徴を持った4つのカテゴリーの中で、相互に関連付けられており、ファクト、認知結果、仮説、指令の間の連携は、トランザクションデータベースシステムを用いて管理され」ることから、KIDSが、ファクト、認知結果、仮説、指令のデータを格納していることは明らかである。
そうすると、引用発明のトランザクションデータベースシステムで管理される「ファクト、認知結果、仮説、指令のデータ」と、本願発明1の「多時間データ」とは、「時間データ」で共通する。そして、引用発明の「ファクト、認知結果、仮説、指令のデータ」の項目と、本願発明1の「多時間データ項目」とは、「時間データ項目」との点で共通する。
さらに、引用発明は、「KIDSの形式モデルでは、状況(situation)オブジェクトはファクト、認知結果、仮説、指令オブジェクトの4タプルで表され」、「カレントcare-loop[k]のカレントactivityは、その入力situationが実質的に変更されたときに実行されることができ」るものであって、「activityは、分類、評価、解決、又は、実行のオペレーションであり」、「知識関数(Kfun)は、分類、評価、解決、又は、実行の関数であって、Kfunsとactivitiesとの間には多対多の関連性があ」るものであるから、ファクト、認知結果、仮説、指令のsituationが実質的に変更される、すなわち、ファクト、認知結果、仮説、指令が実質的に変更すると、activityに関連する分類、評価、解決、又は、実行の知識関数を実行するものである。
そうすると、引用発明の、KIDSが、ファクト、認知結果、仮説、指令のデータを格納していること、situationの更新を受け付けることは、本願発明1の「コンピュータシステムに格納されているデータの1つ以上の更新をコンピュータシステムにおいて受信するステップ」に相当する。
また、引用発明の、situationが変更されると、activityに関連する分類、評価、解決、又は、実行の知識関数Kfunが実行されるものであって、Kfunは、activityの、入力situationのFSDとfeatureとのサブセットを、出力situationのFSDとfeatureとのサブセットにマッピングすることと、本願発明1の「受信された前記更新に基づいて、コンピュータシステム内の1つ以上の多時間データ項目を更新するステップ」とは、「受信された前記更新に基づいて、コンピュータシステム内の1つ以上の時間データ項目を更新するステップ」との点で共通する。
イ 引用発明の「カレントトランザクション時間時点での別のフラッシュバッククエリ」の「カレントトランザクション時間時点」は、本願発明1の「現在の時間」に相当する。そして、引用発明の「別のフラッシュバッククエリ」を実行することは、本願発明1の「第1クエリの第1実行」に相当する。そうすると、引用発明の「カレントトランザクション時間時点での別のフラッシュバッククエリ」を実行すること、本願発明1の「現在の時間に対応する多時間データを用いて、前記第1クエリの第1実行を行うステップ」とは、「現在の時間に対応する時間データを用いて、前記第1クエリの第1実行を行うステップ」との点で共通する。
ウ 引用発明の「KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行」における、「activityに対応して記録されたトランザクション時間の時点」は、本願発明1の「過去実行に対応する過去時間」に相当する。そして、引用発明のこのときの「フラッシュバッククエリ」を実行することは、本願発明1の「第1クエリの第2実行」に相当する。そうすると、引用発明の「KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行」することと、本願発明1の「前記第1クエリの過去実行に対応する過去時間に対応する多時間データを用いて、前記第1クエリの第2実行を行うステップ」こととは、「前記第1クエリの過去実行に対応する過去時間に対応する時間データを用いて、前記第1クエリの第2実行を行うステップ」との点で共通する。
エ 引用発明の「KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行し、この結果を、カレントトランザクション時間時点での別のフラッシュバッククエリの結果と比較」することは、本願発明1の「前記第1クエリの前記第1実行の結果と前記第1クエリの前記第2実行の結果との差を決定するステップ」に相当する。
オ 引用発明の「KIDSは、activityに対応して記録されたトランザクション時間の時点でのフラッシュバッククエリを実行し、この結果を、カレントトランザクション時間時点での別のフラッシュバッククエリの結果と比較し、入力situationが2つのトランザクション間で大幅に変更された場合」において、結果の比較が、大幅に変更されたと判断するためには、何らかの基準があることは明らかであるから、結果を何らかの基準と比較することは、本願発明1の「前記差を所定の閾値と比較するステップ」に相当する。
また、引用発明の「入力situationが2つのトランザクション間で大幅に変更された場合、KIDSは更新されたsituationでカレントactivityを呼び出」すことにおける、「activity」は、本願発明1の「第1変換オブジェクト」と、「変換オブジェクト」である点で共通し、引用発明の「KIDSは更新されたsituationでカレントactivityを呼び出」すことは、ファクト、認知結果、仮説、指令のいずれかのデータをactivityに関連するKfunによって変換するものであるから、本願発明1の「前記第1クエリに関連する第1データオブジェクトに対して第1変換処理を呼び出す」ことに相当する。
そうすると、引用発明の「入力situationが2つのトランザクション間で大幅に変更された場合、KIDSは更新されたsituationでカレントactivityを呼び出」すことと、本願発明1の「前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連する第1データオブジェクトに対して第1変換処理を呼び出すステップ」とは、「前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連するデータオブジェクトに対して変換処理を呼び出すステップ」との点で共通する。
カ 引用発明の「care-loopの推論アクティビティはcare-loopの進化する状況に対する認識を与えるものであって、ファクト、認知結果、仮説、指令という4つの異なるカテゴリーのデータを生成するCARE(分類、評価、解決、実行)loop」を実行することが記載されており、このcare-loopを実行するアプリケーションは、本願発明1の「連続データ変換ループアプリケーション」に相当し、引用発明の「分類」のオペレーションのactivityが実行する処理は、本願発明1の「第1変換処理」に相当する。そして、引用発明の「分類」のオペレーションのactivityは、care-loopにおいて実行される点と、本願発明1の「前記第1変換処理は、連続データ変換ループアプリケーションの処理の一部であり」とは、「前記変換処理は、連続データ変換ループアプリケーションの処理の一部であり」との点で共通する。
キ 引用発明の「Kfunは、バグフィックスや新しいデータの機械学習の結果により進化することができ」ることと、本願発明1の「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更」とは、「前記データオブジェクトに対する加工機能を含む変換オブジェクトの変更」との点で共通する。また、引用発明の「filterは、care-loop又はactivityのコンテキストで評価されるパス式とブール式で指定され、filter定義は、guardの一部であるFSDタイプ、featureタイプ、filter、及び、mandatory記述を規定」され、「KIDSは、FSDやfeatureの更新や挿入がsituationを変化させる」ことができることから、FSDやfeatureが更新されるとfilterも更新されることは明らかであるから、引用発明の、このfilterを更新することは、本願発明1の「前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更」と、「前記データオブジェクトに対して使用されるフィルタオブジェクトの変更」との点で共通する。
キ 以上のことから、本願発明1と引用発明との一致点及び相違点は、次のとおりである。
<一致点>
コンピュータシステムに格納されているデータの1つ以上の更新をコンピュータシステムにおいて受信するステップと、
受信された前記更新に基づいて、コンピュータシステム内の1つ以上の時間データ項目を更新するステップと、
現在の時間に対応する時間データを用いて、前記第1クエリの第1実行を行うステップと、
前記第1クエリの過去実行に対応する過去時間に対応する時間データを用いて、前記第1クエリの第2実行を行うステップと、
前記第1クエリの前記第1実行の結果と前記第1クエリの前記第2実行の結果との差を決定するステップと、
前記差を所定の閾値と比較するステップと、
前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連するデータオブジェクトに対して変換処理を呼び出すステップと、
前記変換処理は、連続データ変換ループアプリケーションの処理の一部であり、
前記データオブジェクトに対する加工機能を含む変換オブジェクトの変更するステップ、
前記データオブジェクトに対して使用されるフィルタオブジェクトの変更するステップ、
を含む方法。
<相違点>
(相違点1)
本願発明1は、「時間データ」が「多時間データ」であり、「時間データ項目」が「多時間データ項目」であるのに対し、引用発明は、「時間データ」が「ファクト、認知結果、仮説、指令のデータ」であって、「多時間データ」であるか定かではなく、「時間データ項目」が「ファクト、認知結果、仮説、指令のデータ」の項目であって、「多時間データ」であるか定かではない点。
(相違点2)
本願発明1は、「前記1つ以上の多時間データ項目は、各データ項目のトランザクション時間および有効時間を含む双時間データ項目であり、前記トランザクション時間は、前記各データ項目が真であると考えられる1つ以上の時間範囲に対応し、前記有効時間は、前記各データ項目がモデル化されたシステムに対して実際に真である時間範囲に対応」する構成であるのに対し、引用発明は、そのような構成を有しているか定かではない点。
(相違点3)
本願発明1は、「第1クエリが前記更新された多時間データ項目に依存するという判断に基づいて、前記コンピュータシステム内で前記第1クエリを特定するステップ」を有するのに対し、引用発明は、そのような構成を有しているか不明である点。
(相違点4)
本願発明1は、「データオブジェクト」が「第1データオブジェクト」であり、「変換処理」が「第1変換処理」であって、「第1データオブジェクト」に対して「第1変換処理」を呼び出すのに対し、引用発明では、更新されたsituationでカレントactivityを呼び出すものであって、「第1データオブジェクト」及び「第1変換処理」に限定されていない点。
(相違点5)
本願発明1は、「変換オブジェクト」が「第1変換オブジェクト」であって、「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更」、「前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更」するのに対し、引用発明では、「第1データオブジェクト」との限定がなく、「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更」、「前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更」するものではない点。
(相違点6)
本願発明1は、「前記連続データ変換ループアプリケーションの処理を開始するステップ」は、「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更、または前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更」に「基づいて」いるのに対し、引用発明は、「前記連続データ変換ループアプリケーションの処理を開始する」ことを、「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更、または前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更」に基づいていない点。
(2)判断
事案にかんがみ相違点6について検討をする。
引用発明は、care-loopの実行について、「カレントcare-loop[k]のカレントactivityは、その入力situationが実質的に変更されたときに実行される」こと、「KIDSは更新されたsituationでカレントactivityを呼び出」す構成であるのみで、引用文献1のその他の記載を参照しても、「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更、または前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更」に「基づいて」、「前記連続データ変換ループアプリケーションの処理を開始する」ことは記載も示唆もされていないことから、引用発明において、上記相違点6の構成を採用しようとする動機はない。
そして、当該相違点6の構成を採用することで、「データ変換オブジェクトおよび/またはフィルタクエリの更新は、古いバージョンの変換オブジェクトおよび/またはフィルタを用いて過去に計算したデータの再計算をトリガすることができる。」(【0048】)という、格別の効果を奏するものである。
(3)小括
以上より、本願発明1は、上記相違点1~5について判断するまでもなく、引用発明に基づいて、当業者が容易に発明をすることができたものとはいえない。
2 本願発明2について
(1)本願発明2と引用発明との対比
ア 本願発明2と本願発明1を比較すると、本願発明1は「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更、または前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更に基づいて、前記連続データ変換ループアプリケーションの処理を開始するステップをさらに含む」ことに代わり、本願発明2は「前記所定の閾値が更新されたことに基づいて、前記差を前記所定の閾値と比較するステップを動的に再実行するステップとをさらに含む」ものであり、本願発明2は、本願発明1の「前記第1変換処理は、連続データ変換ループアプリケーションの処理の一部であり」との構成を有していない。
このため、本願発明2の「前記所定の閾値が更新されたことに基づいて、前記差を前記所定の閾値と比較するステップを動的に再実行するステップとをさらに含む」以外の構成についての引用発明との対比は、上記1(1)ア~オのとおりである。
イ 以上のことから、本願発明2と引用発明との一致点及び相違点は、次のとおりである。
<一致点>
コンピュータシステムに格納されているデータの1つ以上の更新をコンピュータシステムにおいて受信するステップと、
受信された前記更新に基づいて、コンピュータシステム内の1つ以上の時間データ項目を更新するステップと、
現在の時間に対応する時間データを用いて、前記第1クエリの第1実行を行うステップと、
前記第1クエリの過去実行に対応する過去時間に対応する時間データを用いて、前記第1クエリの第2実行を行うステップと、
前記第1クエリの前記第1実行の結果と前記第1クエリの前記第2実行の結果との差を決定するステップと、
前記差を所定の閾値と比較するステップと、
前記差が前記所定の閾値よりも大きいと判定した場合に、前記第1クエリに関連するデータオブジェクトに対して変換処理を呼び出すステップと、
を含む方法。
<相違点>
(相違点1)
本願発明2は、「時間データ」が「多時間データ」であり、「時間データ項目」が「多時間データ項目」であるのに対し、引用発明は、「時間データ」が「ファクト、認知結果、仮説、指令のデータ」であって、「多時間データ」であるか定かではなく、「時間データ項目」が「ファクト、認知結果、仮説、指令のデータ」の項目であって、「多時間データ」であるか定かではない点。
(相違点2)
本願発明2は、「前記1つ以上の多時間データ項目は、各データ項目のトランザクション時間および有効時間を含む双時間データ項目であり、前記トランザクション時間は、前記各データ項目が真であると考えられる1つ以上の時間範囲に対応し、前記有効時間は、前記各データ項目がモデル化されたシステムに対して実際に真である時間範囲に対応」する構成であるのに対し、引用発明は、そのような構成を有しているか定かではない点。
(相違点3)
本願発明2は、「第1クエリが前記更新された多時間データ項目に依存するという判断に基づいて、前記コンピュータシステム内で前記第1クエリを特定するステップ」を有するのに対し、引用発明は、そのような構成を有しているか不明である点。
(相違点4)
本願発明2は、「データオブジェクト」が「第1データオブジェクト」であり、「変換処理」が「第1変換処理」であって、「第1データオブジェクト」に対して「第1変換処理」を呼び出すのに対し、引用発明では、更新されたsituationでカレントactivityを呼び出すものであって、「第1データオブジェクト」及び「第1変換処理」に限定されていない点。
(相違点5)
本願発明2は、「前記所定の閾値が更新されたことに基づいて、前記差を前記所定の閾値と比較するステップを動的に再実行するステップ」を有するのに対し、引用発明は、そのような構成を有していない点。
(2)判断
事案にかんがみ相違点5について検討をする。
引用文献1には、第1クエリの第1実行の結果と第1クエリの第2実行の結果との差を比較する「閾値」を明確に記載するものではなく、技術常識を考慮することで「閾値」が記載されているといえるものであって、そのような「閾値」を変更することは、引用文献1には記載も示唆もされていないことから、引用発明において、上記相違点5の構成を採用しようとする動機はない。
そして、当該相違点5の構成を採用することで、「また、場合によって、フィルタおよび/または変換オブジェクトに関連する閾値を動的に更新することができる。更新された閾値に応答して、閾値決定(例えば、ステップ404、408、412および416)のうち1つを動的に再実行することによって、アプリケーションループ処理400を起動することができる。」(【0048】)という、格別の効果を奏するものである。
(3)小括
以上より、本願発明2は、上記相違点1~4について判断するまでもなく、引用発明に基づいて、当業者が容易に発明をすることができたものとはいえない。
3 請求項3~8について
本願発明3~6も、本願発明1の上記相違点6と同一の構成を備えるものであるから、本願発明1と同じ理由により、当業者であっても、引用発明に基づいて容易に発明をすることができたものとはいえない。
本願発明7~8も、本願発明1の上記相違点6と同一の構成を備えるものであり、又は、本願発明2の上記相違点5と同一の構成を備えるものであるから、本願発明1又は本願発明2と同じ理由により、当業者であっても、引用発明に基づいて容易に発明をすることができたものとはいえない。
4 請求項9~12について
本願発明9は、本願発明1に対応する方法の発明であり、本願発明1の相違点6に対応する構成を備えるものであるから、本願発明1と同じ理由により、当業者であっても、引用発明に基づいて容易に発明をすることができたものとはいえない。
本願発明10は、本願発明2に対応する方法の発明であり、本願発明2の相違点5に対応する構成を備えるものであるから、本願発明2と同じ理由により、当業者であっても、引用発明に基づいて容易に発明をすることができたものとはいえない。
本願発明11は、本願発明1~8いずれかに1つの発明に対応するプログラムの発明であり、本願発明1の相違点6、又は、本願発明2の相違点5に対応する構成を備えるものであるから、本願発明1又は本願発明2と同じ理由により、当業者であっても、引用発明に基づいて容易に発明をすることができたものとはいえない。
本願発明12は、本願発明11を含むシステムの発明であり、本願発明1の相違点6、又は、本願発明2の相違点5に対応する構成を備えるものであるから、本願発明1又は本願発明2と同じ理由により、当業者であっても、引用発明に基づいて容易に発明をすることができたものとはいえない。
第7 原査定について
本願発明1~12は、「前記第1データオブジェクトに対する加工機能を含む変換オブジェクトの変更、または前記第1データオブジェクトに対して使用されるフィルタオブジェクトの変更に基づいて、前記連続データ変換ループアプリケーションの処理を開始するステップ」、又は、「前記所定の閾値が更新されたことに基づいて、前記差を前記所定の閾値と比較するステップを動的に再実行するステップ」という事項を有するものであり、当業者であっても、拒絶査定において引用された引用文献1に記載された発明に基づいて、容易に発明をすることができたものとはいえない。したがって、原査定の理由(特許法第29条第2項)を維持することはできない。
第8 むすび
以上のとおり、原査定の理由によっては、本願を拒絶することはできない。
また、他に本願を拒絶すべき理由を発見しない。
よって、結論のとおり審決する。
審決本文(J-PlatPat)
J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。
2021-001962