DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
In response to Applicant’s claims filed on June 13, 2025, claims 1-2, 4, 6-10, 12, 14-20 are now pending for examination in the application.
Response to Arguments
Applicant’s arguments with respect to claim(s) 1-2, 4, 6-10, 12, 14-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Applicant’s arguments:
In regards to claim 1 on Page(s) 8, applicant argues “The present claim recites the query engine storing and recording data that cannot be practically performed by the human mind or by using pen and paper. It is respectfully submitted that a mental process of a human mind is not equipped to manage, store, and retrieve data and also create various index depending on the characteristics of those data, in such complexity and volume involved. Therefore, the claim recites the apparatus and method that are not directed to abstract ideas.”
Examiner’s Reply:
The Storing, record and retrieving blockchain data steps recite insignificant extra solution activity that amounts to storing blockchain data. Nothing about indexing blockchain data improves the functioning of a computer.
Claim Objections
Claims 6 and 7 are objected to because of the following informalities: Claims 6 and 7 depend on canceled claim 5. Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-2, 4, 6-10, 12, 14-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-patentable subject matter. The claims are directed to an abstract idea without significantly more.
Claim 1-2, 4, 6-10, 12, 14-20 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The judicial exception is not integrated into a practical application. The claims do not include additional elements that are sufficient to amount to significantly more than judicial exception. The eligibility analysis in support of these findings is provided below, on Claim Rejections - 35 USC 101 accordance with the "2019 Revised Patent Subject Matter Eligibility Guidance" (published on 1/7/2019 in Fed, Register, Vol. 84, No. 4 at pgs. 50-57, hereinafter referred to as the "2019 PEG").
Step 1. in accordance with Step 1 of the eligibility inquiry (as explained in MPEP 2106), it is first noted the claim apparatus (claims 1-2, 4, 6-8), method(s) (claims 9-10, 12, 14, 16-20), is/are directed to one of the eligible categories of subject matter and therefore satisfies Step 1.
Step 2A. In accordance with Step 2A, prong one of the 2019 PEG, it is noted that the independent claims recite an abstract idea falling within the Mental Processes enumerated groupings of abstract ideas set forth in the 2019 PEG. Examiner is of the position that independent claims 1, 9, and 17 are directed towards the Mental Process Grouping of Abstract Ideas.
Independent claims 1 recites the following limitations directed towards a Mental Processes:
a blockchain index manager executed by the processor for creating and managing at least one index corresponding to data stored in at least one node of the blockchain network (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by using computer as a tool to generate an index), and
Step 2A. In accordance with Step 2A, prong two of the 2019 PEG, the judicial exception is not integrated into a practical application because of the recitation in claim(s) 1:
a blockchain connection manager executed by the processor for recording data in at least one node of a blockchain network or retrieving data from at least one node of the blockchain network and outputting the data by being connected to the blockchain network formed of multiple nodes connected with each other (recites insignificant extra solution activity that amounts to data storage and retrieval),
a query engine executed by the processor for processing a data storage request or a data search request received from an outside based on the index by interworking with the blockchain connection manager and the blockchain index manager,
wherein the query engine includes an index definition unit for defining a data schema corresponding to data to be stored before the data is stored in at least one node of the blockchain network, setting a key or a condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored (recites insignificant extra solution activity that amounts to data querying),
wherein the query engine further includes a data storage processing unit for making a request to store data resulting from occurrence of a transaction in a corresponding node based on the defined data schema through the blockchain connection manager and recording a key or condition to be created as an index on the stored data and a transaction number in at least one corresponding index (recites insignificant extra solution activity that amounts to storing blockchain data).
Step 2B. Similar to the analysis under 2A Prong Two, the claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Because the additional elements of the independent claims amount to insignificant extra solution activity and/or mere instructions, the additional elements do not add significantly more to the judicial exception such that the independent claims as a whole would be patent eligible.
Independent claims 9 recites the following limitations directed towards a Mental Processes:
defining a data schema corresponding to the data to be stored, setting a key or
condition to be created as an index, and selecting an index structure depending on
characteristics of the data to be stored (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by defining a blockchain schema).
Step 2A. In accordance with Step 2A, prong two of the 2019 PEG, the judicial exception is not integrated into a practical application because of the recitation in claim(s) 9:
storing data resulting from occurrence of a transaction in at least one node of a
blockchain network and creating an index for the stored data (recites insignificant extra solution activity that amounts to storing blockchain data); and
retrieving data based on the index and outputting the data in response to a request
to retrieve the data, further comprising:
before storing the data in the at least one node of the blockchain network (recites insignificant extra solution activity that amounts to retrieving blockchain data),
wherein creating the index includes:
storing the data resulting from the occurrence of the transaction in the node of the blockchain network based on the defined data schema (recites insignificant extra solution activity that amounts to storing blockchain data); and
recording a key or condition to be created as an index on the stored data and a transaction number in at least one corresponding index (recites insignificant extra solution activity that amounts to recording a key).
Step 2B. Similar to the analysis under 2A Prong Two, the claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Because the additional elements of the independent claims amount to insignificant extra solution activity and/or mere instructions, the additional elements do not add significantly more to the judicial exception such that the independent claims as a whole would be patent eligible.
Independent claims 17 recites the following limitations directed towards a Mental Processes:
defining a data schema corresponding to data to be stored before the data is stored in at least one node of the blockchain network, setting a key or condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by defining a blockchain schema data).
Step 2A. In accordance with Step 2A, prong two of the 2019 PEG, the judicial exception is not integrated into a practical application because of the recitation in claim(s) 17:
making a request to store data resulting from occurrence of a transaction in a corresponding node based on the defined data schema through the blockchain connection manager and recording a key or condition to be created as an index on the stored data and a transaction number in at least one corresponding index (recites insignificant extra solution activity that amounts to storing blockchain data),
acquiring a transaction number from the index using a predetermined key or condition through the blockchain index manager, acquiring data corresponding to the acquired transaction number through the blockchain connection manager (recites insignificant extra solution activity that amounts to retrieving blockchain data),
and outputting the data in response to a request to retrieve the data corresponding to the predetermined key or condition (recites insignificant extra solution activity that amounts to outputting blockchain data).
Step 2B. Similar to the analysis under 2A Prong Two, the claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Because the additional elements of the independent claims amount to insignificant extra solution activity and/or mere instructions, the additional elements do not add significantly more to the judicial exception such that the independent claims as a whole would be patent eligible.
Therefore, independent claims 1, 9, and 17 are rejected under 35 U.S.C. 101.
With respect to claim(s) 2:
Step 2A, prong one of the 2019 PEG:
wherein the blockchain index manager includes at least one of an event index module, a content-based index module, a time-series index module, a spatial index module, or a key index module, or a combination thereof (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by using computer as a tool to generate an index).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 4:
Step 2A, prong one of the 2019 PEG:
wherein the index structure is selected from among structures including a binary tree, an R-tree, a k- dimensional (k-d) tree, a B-tree, and a B+ tree (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by using computer as a tool to generate an index structure).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 6:
Step 2A, prong one of the 2019 PEG:
wherein, when an index is constructed for already stored transactions, the data storage processing unit acquires all data stored in at least one node of the blockchain network through the blockchain connection manager, checks column information corresponding to a key or condition to be created as an index in the acquired data, and transfers a key or condition to be created as an index and a transaction number, among data satisfying a predefined key or condition, to the blockchain index manager (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by using computer as a tool to generate an index structure).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 7:
Step 2A, prong one of the 2019 PEG:
Examiner is of the position the dependent claim is directed toward additional elements.
Step 2A Prong Two Analysis:
wherein the data storage processing unit transfers a second index key, which is acquired by converting a first index key that is a target to be indexed using a user-specified function, to the blockchain index manager along with a transaction number corresponding thereto (recites insignificant extra solution activity that amounts to transferring blockchain data).
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 8:
Step 2A, prong one of the 2019 PEG:
Examiner is of the position the dependent claim is directed toward additional elements.
Step 2A Prong Two Analysis:
wherein the query engine further includes a data search processing unit for acquiring a transaction number from the index using a predetermined key or condition through the blockchain index manager and acquiring data corresponding to the acquired transaction number through the blockchain connection manager in response to a request to retrieve the data corresponding to the predetermined key or condition (recites insignificant extra solution activity that amounts to retrieving blockchain data).
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 9:
Step 2A, prong one of the 2019 PEG:
defining a data schema corresponding to the data to be stored, setting a key or condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by defining a blockchain schema data).
Step 2A Prong Two Analysis:
storing data resulting from occurrence of a transaction in at least one node of a blockchain network and creating an index for the stored data (recites insignificant extra solution activity that amounts to storing blockchain data); and
retrieving data based on the index and outputting the data in response to a request to retrieve the data, further comprising: before storing the data in the at least one node of the blockchain network (recites insignificant extra solution activity that amounts to retrieving blockchain data).
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 10:
Step 2A, prong one of the 2019 PEG:
wherein the index includes at least one of an event index, a content-based index, a time-series index, a spatial index, or a key index, or a combination thereof (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by generating an index).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 12:
Step 2A, prong one of the 2019 PEG:
wherein the index structure is selected from among structures including a binary tree, an R-tree, a k-dimensional (k-d) tree, a B-tree, and a B+ tree (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by generating an index).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 14:
Step 2A, prong one of the 2019 PEG:
checking column information corresponding to a key or condition to be created as an index in the acquired data (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by checking index data),
inserting a key or condition to be created as an index and a transaction number, among data satisfying a predefined key or condition, into the index (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by inserting index data)
Step 2A Prong Two Analysis:
acquiring all data stored in at least one node of the blockchain network (recites insignificant extra solution activity that amounts to acquiring data).
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 15:
Step 2A, prong one of the 2019 PEG:
inserting a second index key, which is acquired by converting a first index key that is a target to be indexed using a user-specified function, into the index along with a transaction number corresponding thereto (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by inserting index data).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 16:
Step 2A, prong one of the 2019 PEG:
Examiner is of the position the dependent claim is directed toward additional elements.
Step 2A Prong Two Analysis:
wherein retrieving and outputting the data comprises acquiring a transaction number from the index using a predetermined key or condition and acquiring the data corresponding to the acquired transaction number from the blockchain network in response to a request to retrieve the data corresponding to the predetermined key or condition (recites insignificant extra solution activity that amounts to retrieving blockchain data).
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 18:
Step 2A, prong one of the 2019 PEG:
wherein: the index includes at least one of an event index, a content-based index, a time- series index, a spatial index, or a key index, or a combination thereof, and the index structure is selected from among structures including a binary tree, an R- tree, a k-dimensional (k-d) tree, a B-tree, and a B+ tree (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by using computer as a tool to generate an index structure).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 19:
Step 2A, prong one of the 2019 PEG:
wherein recording the key or condition and the transaction number comprises, when the index is constructed for already stored transactions, acquiring all data stored in at least one node of the blockchain network through the blockchain connection manager, checking column information corresponding to a key or condition to be created as an index in the acquired data (The limitation recites a mental process of observation and/or evaluation capable of being performed by the human mind by checking index data).
Step 2A Prong Two Analysis:
transferring a key or condition to be created as an index and a transaction number, among data satisfying a predefined key or condition, to the blockchain index manager (recites insignificant extra solution activity that amounts to transferring index data).
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 20:
Step 2A, prong one of the 2019 PEG:
Examiner is of the position the dependent claim is directed toward additional elements.
Step 2A Prong Two Analysis:
wherein recording the key or condition and the transaction number comprises transferring a second index key, which is acquired by converting a first index key that is a target to be indexed using a user-specified function, to the blockchain index manager along with a transaction number corresponding thereto (recites insignificant extra solution activity that amounts to transferring blockchain data).
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-2, 4, 6-8 is/are rejected under 35 U.S.C. 103 as being unpatentable over Xu et al. (US Pub. No. 20200322159) and Davies et al. (US Pub. No. 20230046315) in further view of Ricotta et al. (US Pub. No. 20230092365).
With respect to claim 1, Xu et al. discloses an apparatus for searching for on-chain data based on an index, the apparatus including a processor and a memory operably coupled to the processor, wherein the memory stores program instructions to be executed by the processor, the apparatus comprising:
a blockchain connection manager executed by the processor for recording data in at least one node of a blockchain network or retrieving data from at least one node of the blockchain network and outputting the data by being connected to the blockchain network formed of multiple nodes connected with each other (Paragraph 24 discloses blockchain network receiving the update transaction from the data owner and verify the authenticity of the received transaction and Paragraph 211 discloses extending the data integrity from blockchain nodes to end users), and
a blockchain index manager executed by the processor for creating and managing at least one index corresponding to data stored in at least one node of the blockchain network (Paragraph 82 discloses The blockchain network synchronizing the new index and ADS obtained from the miners and verify their correctness through the blockchain consensus protocol),
a query engine executed by the processor for processing a data storage request or a data search request received from an outside based on the index by interworking with the blockchain connection manager and the blockchain index manager, wherein the query engine includes an index definition unit for defining a data schema corresponding to data to be stored before the data is stored in at least one node of the blockchain network, setting a key or a condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored (Paragraph 49 discloses The service provider receiving the search request from the user and computes the search result from its database using the off-chain index).
Xu et al. does not explicitly disclose a query engine executed by the processor for processing a data storage request or a data search request received from an outside based on the index by interworking with the blockchain connection manager and the blockchain index manager.
However, Davies et al. teaches a query engine executed by the processor for processing a data storage request or a data search request received from an outside based on the index by interworking with the blockchain connection manager and the blockchain index manager (Paragraph 16 discloses given key set, according to which the keys for a given function were derived from one another, mapped directly to the graph (e.g. tree) structure of the Metanet nodes and edges of a corresponding part of the Metanet (or other such overlay network overlaid on a blockchain)).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify over Xu et al. with Davies et al. to facilitate transaction data management in a blockchain platform. See Davies et al. Paragraphs 3-10.
Xu et al. as modified by Davies et al. does not explicitly disclose wherein the query engine includes an index definition unit for defining a data schema corresponding to data to be stored before the data is stored in at least one node of the blockchain network, setting a key or a condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored.
However, Ricotta et al. teaches wherein the query engine includes an index definition unit for defining a data schema corresponding to data to be stored before the data is stored in at least one node of the blockchain network, setting a key or a condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored (Paragraph 88 discloses storing the current hash value 110(i) in each block 102(i) can greatly speed up retrieval of the blocks 102, and thus access to the asset 106, by using the current hash values 110 as search keys in a database index. For example, each current hash value 110(i) may be represented as a node in a binary search tree (e.g., a B-tree, self-balancing binary search tree, or fractal tree index). Each node may also store the corresponding index i);
wherein the query engine further includes a data storage processing unit for making a request to store data resulting from occurrence of a transaction in a corresponding node based on the defined data schema through the blockchain connection manager and recording a key or condition to be created as an index on the stored data and a transaction number in at least one corresponding index (Paragraph 96-97 discloses To find transactions—other than my transaction identifier—developers will take the flat filed from a compute note or storage node and persist that data into a lightweight database (e.g., RocksDB) that allows for queries of any data element within a block or transaction. In contrast, the approach introduced here for storing data “on chain” with the use of document storage engines produce consistent storage behavior and provide the ability to query data much like a traditional database or datastore and Paragraph 88 discloses storing the current hash value 110(i) in each block 102(i) can greatly speed up retrieval of the blocks 102, and thus access to the asset 106, by using the current hash values 110 as search keys in a database index).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify over Xu et al. and Davies et al. with Ricotta et al. to facilitate transaction data management in a blockchain platform. See Ricotta et al. Paragraphs 3-10.
The Xu et al. reference as modified by Davies et al. with Ricotta et al. teaches all the limitations of claim 1. Regarding claim 2, Xu et al. discloses the apparatus of claim 1, wherein the blockchain index manager includes at least one of an event index module, a content-based index module, a time-series index module, a spatial index module, or a key index module, or a combination thereof (Paragraph 126 discloses the MHT concept has been extended to various database indexes to suit different query applications).
The Xu et al. reference as modified by Davies et al. with Ricotta et al. teaches all the limitations of claim 1. Regarding claim 4, Xu et al. discloses the apparatus of claim 1, wherein the index structure is selected from among structures including a binary tree, an R-tree, a k-dimensional (k-d) tree, a B-tree, and a B+ tree (See Paragraph 90 disclose using a combination of Merkle B-Tree (MB-tree) and suppressed Merkle B-tree (SMB-tree) to build index and ADS for each of partition from the previous step).
The Xu et al. reference as modified by Davies et al. with Ricotta et al. teaches all the limitations of claim 5. Regarding claim 6, Xu et al. discloses the apparatus of claim 5, wherein, when an index is constructed for already stored transactions, the data storage processing unit acquires all data stored in at least one node of the blockchain network through the blockchain connection manager, checks column information corresponding to a key or condition to be created as an index in the acquired data, and transfers a key or condition to be created as an index and a transaction number, among data satisfying a predefined key or condition, to the blockchain index manager (Paragraph 82 discloses The blockchain network synchronizing the new index and ADS obtained from the miners and verify their correctness through the blockchain consensus protocol).
The Xu et al. reference as modified by Davies et al. with Ricotta et al. teaches all the limitations of claim 5. Regarding claim 7, Xu et al. discloses the apparatus of claim 5, wherein the data storage processing unit transfers a second index key, which is acquired by converting a first index key that is a target to be indexed using a user-specified function, to the blockchain index manager along with a transaction number corresponding thereto (Paragraph 115 discloses the creation of new nodes and redistribution of index key).
The Xu et al. reference as modified by Davies et al. with Ricotta et al. teaches all the limitations of claim 1. Regarding claim 8, Xu et al. discloses the apparatus of claim 1, wherein the query engine further includes a data search processing unit for acquiring a transaction number from the index using a predetermined key or condition through the blockchain index manager and acquiring data corresponding to the acquired transaction number through the blockchain connection manager in response to a request to retrieve the data corresponding to the predetermined key or condition (Paragraph 165 discloses the SP combines the result objects and VO for each of these trees to generate the final query result and VO.sub.sp).
Claim(s) 9-10, 12, 14-16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Xu et al. (US Pub. No. 20200322159) in view of Ricotta et al. (US Pub. No. 20230092365).
With respect to claim 9, Xu et al. discloses a method for searching for on-chain data based on an index by an apparatus, the apparatus including a processor and a memory operably coupled to the processor, wherein the memory stores program instructions to be executed by the processor, the method, comprising:
storing data resulting from occurrence of a transaction in at least one node of a blockchain network and creating an index for the stored data (Paragraph 24 discloses blockchain network receiving the update transaction from the data owner and verify the authenticity of the received transaction and Paragraph 211 discloses extending the data integrity from blockchain nodes to end users); and
retrieving data based on the index and outputting the data in response to a request to retrieve the data (Paragraph 113 discloses data retrieved from the off-chain storage server. Nevertheless, the existing schemes can support exact-matching retrieval only),
further comprising:
before storing the data in the at least one node of the blockchain network, defining a data schema corresponding to the data to be stored, setting a key or condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored (Paragraph 49 discloses The service provider receiving the search request from the user and computes the search result from its database using the off-chain index). Xu et al. does not explicitly disclose wherein creating the index includes: storing the data resulting from the occurrence of the transaction in the node of the blockchain network based on the defined data schema.
However, Ricotta et al. teaches wherein creating the index includes:
storing the data resulting from the occurrence of the transaction in the node of the blockchain network based on the defined data schema (Paragraph 185 discloses Because the field count, field size, and field schema are dynamically configurable, blocks may have different values for those parameters and Paragraph 187 discloses Because the field count, field size, and field schema are dynamically configurable, blocks may have different values for those parameters and Paragraph 88 discloses storing the current hash value 110(i) in each block 102(i) can greatly speed up retrieval of the blocks 102, and thus access to the asset 106, by using the current hash values 110 as search keys in a database index. For example, each current hash value 110(i) may be represented as a node in a binary search tree (e.g., a B-tree, self-balancing binary search tree, or fractal tree index). Each node may also store the corresponding index i) ; and
recording a key or condition to be created as an index on the stored data and a transaction number in at least one corresponding index (Paragraph 96-97 discloses To find transactions—other than my transaction identifier—developers will take the flat filed from a compute note or storage node and persist that data into a lightweight database (e.g., RocksDB) that allows for queries of any data element within a block or transaction. In contrast, the approach introduced here for storing data “on chain” with the use of document storage engines produce consistent storage behavior and provide the ability to query data much like a traditional database or datastore and Paragraph 88 discloses storing the current hash value 110(i) in each block 102(i) can greatly speed up retrieval of the blocks 102, and thus access to the asset 106, by using the current hash values 110 as search keys in a database index).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify over Xu et al. with Ricotta et al. to facilitate transaction data management in a blockchain platform. See Ricotta et al. Paragraphs 3-10.
With respect to claim 10, it is rejected on grounds corresponding to above rejected claim 2, because claim 10 is substantially equivalent to claim 2.
With respect to claim 12, it is rejected on grounds corresponding to above rejected claim 4, because claim 12 is substantially equivalent to claim 4.
With respect to claim 14, it is rejected on grounds corresponding to above rejected claim 6, because claim 14 is substantially equivalent to claim 6.
With respect to claim 15, it is rejected on grounds corresponding to above rejected claim 7, because claim 15 is substantially equivalent to claim 7.
With respect to claim 16, it is rejected on grounds corresponding to above rejected claim 8, because claim 16 is substantially equivalent to claim 8.
Claim(s) 17-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Mehedy et al. (US Pub. No. 20190342084) in view of Ricotta et al. (US Pub. No. 20230092365).
With respect to claim 17, Mehedy et al. discloses a method for searching for on-chain data based on an index, performed by a query engine interworking with a blockchain connection manager and a blockchain index manager, the query engine including a processor and a memory operably coupled to the processor, wherein the memory stores program instructions to be executed by the processor, the method,
the blockchain connection manager being connected with a blockchain network formed of multiple nodes connected with each other and being configured to record data in at least one node or retrieve data from at least one node and output the data and the blockchain index manager being configured to create and manage an index corresponding to data stored in at least one node of the blockchain network (Paragraph 24 discloses access to this file storage component is managed through the blockchain ledger; namely it reads access requests from the ledger and responds to the ledger, except receiving/sending file fragments from/to the party specified in the request from the ledger and Paragraph 24 discloses the blockchain network may include one or more storing nodes (also referred to as storing peers) which are connected to the blockchain but which also include an off-chain component for off-chain storage),
the method comprising:
defining a data schema corresponding to data to be stored before the data is stored in at least one node of the blockchain network, setting a key or condition to be created as an index, and selecting an index structure depending on characteristics of the data to be stored (Paragraph 35 discloses A key may be separated into many, say N, fragments using secret sharing scheme, so that a portion, say n, of these fragments can reconstruct the key but any n (n<N) fragments cannot reconstruct the key, in particular, each fragment is random). Mehedy et al. does not disclose making a request to store data resulting from occurrence of a transaction in a corresponding node based on the defined data schema through the blockchain connection manager and recording a key or condition to be created as an index on the stored data and a transaction number in at least one corresponding index.
However, Ricotta et al. teaches making a request to store data resulting from occurrence of a transaction in a corresponding node based on the defined data schema through the blockchain connection manager and recording a key or condition to be created as an index on the stored data and a transaction number in at least one corresponding index (Paragraph 185 discloses Because the field count, field size, and field schema are dynamically configurable, blocks may have different values for those parameters and Paragraph 88 discloses storing the current hash value 110(i) in each block 102(i) can greatly speed up retrieval of the blocks 102, and thus access to the asset 106, by using the current hash values 110 as search keys in a database index. For example, each current hash value 110(i) may be represented as a node in a binary search tree (e.g., a B-tree, self-balancing binary search tree, or fractal tree index). Each node may also store the corresponding index i); and
acquiring a transaction number from the index using a predetermined key or condition through the blockchain index manager, acquiring data corresponding to the acquired transaction number through the blockchain connection manager, and outputting the data in response to a request to retrieve the data corresponding to the predetermined key or condition (Paragraph 88 discloses the owner may submit a request that contains an indication of the confirmation (e.g., the current hash value 110(n) that serves as a unique identifier )).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify over Xu et al. and Davies et al. with Ricotta et al. to facilitate transaction data management in a blockchain platform. See Davies et al. Paragraphs 3-10.
The Mehedy et al. reference as modified by Ricotta et al. teaches all the limitations of claim 17. Regarding claim 18, Ricotta et al. discloses the method of claim 17, wherein:
the index includes at least one of an event index, a content-based index, a time-series index, a spatial index, or a key index, or a combination thereof (Paragraph 88 discloses a database index. For example, each current hash value 110(i) may be represented as a node in a binary search tree (e.g., a B-tree, self-balancing binary search tree, or fractal tree index). Each node may also store the corresponding index i), and
the index structure is selected from among structures including a binary tree, an R-tree, a k-dimensional (k-d) tree, a B-tree, and a B+ tree (See Paragraph 88 disclose a database index. For example, each current hash value 110(i) may be represented as a node in a binary search tree (e.g., a B-tree, self-balancing binary search tree, or fractal tree index). Each node may also store the corresponding index i). The motivation to combine statement previously provided in the rejection of dependent claim 17 provided above, combining the Mehedy et al. reference and the Ricotta et al. reference is applicable to dependent claim 18.
The Mehedy et al. reference as modified by Ricotta et al. teaches all the limitations of claim 17. Regarding claim 19, Ricotta et al. discloses the method of claim 17, wherein recording the key or condition and the transaction number comprises,
when the index is constructed for already stored transactions, acquiring all data stored in at least one node of the blockchain network through the blockchain connection manager, checking column information corresponding to a key or condition to be created as an index in the acquired data, and transferring a key or condition to be created as an index and a transaction number, among data satisfying a predefined key or condition, to the blockchain index manager (Paragraph 88 discloses storing the current hash value 110(i) in each block 102(i) can greatly speed up retrieval of the blocks 102, and thus access to the asset 106, by using the current hash values 110 as search keys in a database index. For example, each current hash value 110(i) may be represented as a node in a binary search tree (e.g., a B-tree, self-balancing binary search tree, or fractal tree index). Each node may also store the corresponding index i). The motivation to combine statement previously provided in the rejection of dependent claim 17 provided above, combining the Mehedy et al. reference and the Ricotta et al. reference is applicable to dependent claim 19.
The Mehedy et al. reference as modified by Ricotta et al. teaches all the limitations of claim 17. Regarding claim 20, Ricotta et al. discloses the method of claim 17, wherein recording the key or condition and the transaction number comprises transferring a second index key, which is acquired by converting a first index key that is a target to be indexed using a user-specified function, to the blockchain index manager along with a transaction number corresponding thereto (Paragraph 88 discloses storing the current hash value 110(i) in each block 102(i) can greatly speed up retrieval of the blocks 102, and thus access to the asset 106, by using the current hash values 110 as search keys in a database index. For example, each current hash value 110(i) may be represented as a node in a binary search tree (e.g., a B-tree, self-balancing binary search tree, or fractal tree index). Each node may also store the corresponding index i). The motivation to combine statement previously provided in the rejection of dependent claim 17 provided above, combining the Mehedy et al. reference and the Ricotta et al. reference is applicable to dependent claim 20.
Relevant Prior Art
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
US PG-PUB 20200007313 is directed to ON-CHAIN GOVERNANCE OF BLOCKCHAIN: [0060] the transaction can be a deploy, invoke, query, or the like, and may be issued through a client-side application leveraging an SDK, directly through a REST API, or the like. Trusted business networks may provide access to regulator systems 314, such as auditors (the Securities and Exchange Commission in a U.S. equities market, for example). Meanwhile, a blockchain network operator may 308 manage member permissions, such as enrolling the regulator system 310 as an “auditor” and the blockchain user 302 as a “client.” An auditor could be restricted only to querying the ledger whereas a client could be authorized to deploy, invoke, and query certain types of chaincode.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to NICHOLAS E ALLEN whose telephone number is (571)270-3562. The examiner can normally be reached Monday through Thursday 830-630.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Boris Gorney can be reached at (571) 270-5626. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/BORIS GORNEY/Supervisory Patent Examiner, Art Unit 2154
/N.E.A/Examiner, Art Unit 2154