Office Action 1: Non-Final Rejection (2024-06-21)
Rejection types: 101 - Patent-Eligible Subject Matter, 103 - Obviousness

CLAIMS:
WHAT IS CLAIMED:

1\. A method comprising:
receiving, using a computer system, an instruction to define or modify a permission constraint corresponding to one or more files;
determining a period of time during which the defined or modified permission constraint is to apply to the one or more files;
determining that the one or more files are to be deleted following completion of the period of time;
storing, in one or more data stores, a permission-instruction data set representing the permission constraint and a flag indicating that the one or more files are to be deleted following completion of the period of time;
detecting that the period of time has ended; and
in response to the detection, deleting the one or more files.
2\. The method of claim 1, further comprising:
subsequent to an end of the period of time, intercepting a user request to access a particular file;
querying the one or more data stores to determine whether the requested access is to be permitted;
determining, in response to the query, that the permission-instruction data set corresponds to the particular file;
outputting a response to the user request, wherein the response indicates that the particular file is not accessible.
3\. The method of claim 2, wherein an operating system performs the intercepting the user request, the querying the data store, and the determining that the permission-instruction data set corresponds to the particular file.
4\. The method of claim 2, further comprising:
detecting that the permission-instruction data set includes the flag indicating that the one or more files are to be deleted following completion of the period of time;
wherein the detecting that the period of time has ended occurs in response to detecting that the permission-instruction data set includes the flag.
5\. The method of claim 1, wherein the one or more files are deleted using a background deletion process that scans the one or more data stores for permission-instruction data sets that include the flag and corresponding to a period of time that has ended.
6\. The method of claim 1, wherein the determining that the one or more files are to be deleted following completion of the period of time includes determining that a same or different instruction indicates that the one or more files are to be deleted following completion of the period of time.
7\. The method of claim 1, wherein the instruction indicates that files having a particular attribute are to be locked to prevent modification for a particular duration of time from a specified type of trigger event, wherein each of the one or more files has the particular attribute, and wherein the period of time begins at an occurrence of a particular trigger event associated with the one or more files and has the particular duration of time.

8\. A system comprising:
one or more data processors; and
a non-transitory computer readable storage medium containing instructions which, when executed on the one or more data processors, cause the one or more data processors to perform a set of actions including:
receiving an instruction to define or modify a permission constraint corresponding to one or more files;
determining a period of time during which the defined or modified permission constraint is to apply to the one or more files;
determining that the one or more files are to be deleted following completion of the period of time; storing, in one or more data stores, a permission-instruction data set representing the permission constraint and a flag indicating that the one or more files are to be deleted following completion of the period of time;
detecting that the period of time has ended; and
in response to the detection, deleting the one or more files.
9\. The system of claim 8, wherein the set of actions further includes:
subsequent to an end of the period of time, intercepting a user request to access a particular file;
querying the one or more data stores to determine whether the requested access is to be permitted;
determining, in response to the query, that the permission-instruction data set corresponds to the particular file;
outputting a response to the user request, wherein the response indicates that the particular file is not accessible.

10\. The system of claim 9, wherein an operating system performs the intercepting the user request, the querying the data store, and the determining that the permission-instruction data set corresponds to the particular file.

11\. The system of claim 9, wherein the set of actions further includes:
detecting that the permission-instruction data set includes the flag indicating that the one or more files are to be deleted following completion of the period of time;
wherein the detecting that the period of time has ended occurs in response to detecting that the permission-instruction data set includes the flag.

12\. The system of claim 8, wherein the one or more files are deleted using a background deletion process that scans the one or more data stores for permission-instruction data sets that include the flag and corresponding to a period of time that has ended.
13\. The system of claim 8, wherein the determining that the one or more files are to be deleted following completion of the period of time includes determining that a same or different instruction indicates that the one or more files are to be deleted following completion of the period of time.

14\. The system of claim 8, wherein the instruction indicates that files having a particular attribute are to be locked to prevent modification for a particular duration of time from a specified type of trigger event, wherein each of the one or more files has the particular attribute, and wherein the period of time begins at an occurrence of a particular trigger event associated with the one or more files and has the particular duration of time.

15\. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause one or more data processors to perform a set of actions including:
receiving an instruction to define or modify a permission constraint corresponding to one or more files;
determining a period of time during which the defined or modified permission constraint is to apply to the one or more files;
determining that the one or more files are to be deleted following completion of the period of time;
storing, in one or more data stores, a permission-instruction data set representing the permission constraint and a flag indicating that the one or more files are to be deleted following completion of the period of time;
detecting that the period of time has ended; and
in response to the detection, deleting the one or more files.

16\. The computer-program product of claim 15, wherein the set of actions further includes:
subsequent to an end of the period of time, intercepting a user request to access a particular file;
querying the one or more data stores to determine whether the requested access is to be permitted;
determining, in response to the query, that the permission-instruction data set corresponds to the particular file; outputting a response to the user request, wherein the response indicates that the particular file is not accessible.

17\. The computer-program product of claim 16, wherein an operating system performs the intercepting the user request, the querying the data store, and the determining that the permission-instruction data set corresponds to the particular file.

18\. The computer-program product of claim 16, wherein the set of actions further includes:
detecting that the permission-instruction data set includes the flag indicating that the one or more files are to be deleted following completion of the period of time;
wherein the detecting that the period of time has ended occurs in response to detecting that the permission-instruction data set includes the flag.

19\. The computer-program product of claim 15, wherein the one or more files are deleted using a background deletion process that scans the one or more data stores for permission-instruction data sets that include the flag and corresponding to a period of time that has ended.

20\. The computer-program product of claim 15, wherein the determining that the one or more files are to be deleted following completion of the period of time includes determining that a same or different instruction indicates that the one or more files are to be deleted following completion of the period of time. 46 47 48 49 50 ORC21134082-US-CIP 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

OFFICE ACTION:
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This Office action is in response to communications filed on 9/12/2022.
Claims 1-20 are pending.
DETAILED ACTION
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, 6-8, 13-15, and 20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
The following is the Principles of Law:
A patent may be obtained for any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof'.
The Supreme Court has long held that this provision contains an important implicit exception [:] Laws of nature, natural phenomena, and abstract ideas are not patentable.
Under the now familiar two-part test described by the Supreme Court in Alice, “[W]e must first determine whether the claims at issue are directed to a patent-ineligible concept”, such as an abstract idea. Alice Corp. Pty. Ltd. v. CLS Bank Int'l, 134 S. Ct. 2347, 2355 (2014). If so, we must then “consider the elements of each claim both individually and 'as an ordered combination' to determine whether the additional elements 'transform the nature of the claim' into a patent-eligible application. Id. (quoting Mayo, 132 S. Ct. at 1298, 1297). For the reasons set forth below, we find that the claims are directed to the abstract idea of classifying and storing digital images in an organized manner and fail to add an inventive concept sufficient to confer patent eligibility.
The examiner is bound by and applies the framework as set forth by the Court in Mayo and reaffirmed by the Court in Alice for determining whether the claims are directed to patent-eligible subject matter.
As reference, the examiner relies on the steps outlined by the 2019 Revised Subject Matter Eligibility Guidance published on Monday, January 7, 2019. The steps are as follows:
Step one: Are the claims at issue directed to a process, machine, manufacture, or composition of matter?
The examiner concludes that claims 1-20, are directed towards statutory subject matter.
Step two: Are the claims directed to a law of nature, a natural phenomenon, or an abstract idea? In accordance with judicial precedent, and to increase consistency in examination practice, the 2019 Revised Patent Subject Matter Eligibility Guidance sets forth a procedure to determine whether a claim is ‘‘directed to’’ a judicial exception. The procedures for step two includes two sub-steps:
Step 2A: This is a two prong inquiry. In Prong One, examiners evaluate whether the claim recites a judicial exception.
Regarding claims 1, 6-8, 13-15, and 20, the examiner has determined that the limitations include an abstract idea. For example, the limitations of claim 1 recite
A method comprising:
receiving, using a computer system, an instruction to define or modify a permission constraint corresponding to one or more files;
determining a period of time during which the defined or modified permission constraint is to apply to the one or more files;
determining that the one or more files are to be deleted following completion of the period of time;
storing, in one or more data stores, a permission-instruction data set representing the permission constraint and a flag indicating that the one or more files are to be deleted following completion of the period of time;
detecting that the period of time has ended; and
in response to the detection, deleting the one or more files..
The limitations are thus directed to the abstract idea of “certain methods of organizing human activity” since it essentially claims a concept for organizing and manipulating information. Further, the idea as a whole could be performed by a human. For example, receiving an instruction could be performed through observation. Determining a period of time and determining to delete a file could be performed by evaluation or judgement. Storing data such as an instruction data-set could be performed mentally or with the help of rudimentary tools such as pencil and paper. Deleting a file could be performed manually by physically destroying the file or an object storing the file.
In prong two, the examiners evaluate whether the claim, as a whole, integrates the recited judicial exception into a practical application. To do this, additional elements recited in the claim are identified. The additional elements recited in claim 1 include a computer system for receiving the instructions, and a data store to store the permission instruction data set.
The examiner concludes that the additional elements do not reflect an improvement in the functioning of a computer, or other technology or technical field (the devices, systems, and networks in the claim are simply there to transmit/receive and process information). Receiving, storing, and processing information could be performed by systems that are well-known in the art.
The additional elements also fail to implement the judicial exception with a particular machine or manufacture integral to the claim. As mentioned above, transmitting, receiving, and processing data could be performed by any known computer in the art.
The additional elements do not reflect a transformation or reduction of a particular article to a different state.
The additional elements do not apply the judicial exception to effect a particular treatment or prophylaxis for a disease or medical condition.
The additional elements do not apply the judicial exception in some other meaningful way beyond generally linking the use of the judicial exception to a particular technology environment.
Therefore, under Step 2A, the claim is found to be directed towards a judicial exception.
Step 2B: Does the claim provide an inventive concept? The examiner concludes that the claim lacks specific limitations that are not well-understood, routine, or conventional in the field. For example, receiving computer instructions processing data (such as determining to delete a file, using a countdown time, etc.) and storing data are processes that do not necessitate any non-conventional knowledge. For example, data retention policies have been in place for decades in order to reduce the cost of storing large amounts of data, and therefore, deleting a file after a period of time expires is well-understood in the art.
Regarding claims 6-7, the claims further limit the invention of claim 1. However, they simply define the policies or rules to be followed to determine when to delete files. Therefore, claims 6-7 fail to transform the idea of claim 1 into significantly more than an abstract idea.
Regarding claims 8, 13-15, and 20 the limitations recite features similar in scope to those of claims 1 and 6-7.
Claims 8 and 13-14 further recite “A system comprising: one or more data processors; and a non-transitory computer readable storage medium containing instructions which, when executed on the one or more data processors, cause the one or more data processors to perform a set of actions”. However, simply executing an abstract idea in a computer system does not transform the idea into significantly more than the abstract idea.
Therefore, claims 8 and 13-14 are rejected for the same reasons as set forth in the rejection of claims 1 and 6-7, above.
Claims 15 and 20 further recite “A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause one or more data processors to perform a set of actions”. However, simply executing an abstract idea in a computer system does not transform the idea into significantly more than the abstract idea.
Therefore, claims 15 and 20 are rejected for the same reasons as set forth in the rejection of claims 1 and 6, above.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA  35 U.S.C. 102 and 103 (or as subject to pre-AIA  35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA  to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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, 5-8, 12-15, and 19-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Scrivano (US 20210097190 A1) in view of Sarferaz (US 20200380155 A1).
Regarding claim 1, Scrivano discloses a method comprising:
receiving, using a computer system, an instruction to define or modify a permission constraint corresponding to one or more files (¶[0053], At action 202, a first permission of a file or directory is copied to a second permission of the file or directory);
storing, in one or more data stores, a permission-instruction data set representing the permission constraint (¶[0053], In some examples, the file or directory is stored on the host file system. In some examples, the first permission of the file or directory is stored in the attributes of the file or directory, and the second permission of the file or directory is stored in the extended attributes of the file or directory);
Scrivano does not disclose determining a period of time during which the defined or modified permission constraint is to apply to the one or more files; determining that the one or more files are to be deleted following completion of the period of time; storing a flag indicating that the one or more files are to be deleted following completion of the period of time; detecting that the period of time has ended; and in response to the detection, deleting the one or more files.
Sarferaz discloses determining a period of time during which the defined or modified permission constraint is to apply to the one or more files (¶[0046], application data 232 can be annotated, for example, with information identifying various consent policies, rules, or definitions available in the consent management component 228, or with annotations related to a retention manager 236; ¶[0049], archive manager 244 can track whether data is active, and useable by applications (or, at least as long as other policies, such as consent, are complied with));
determining that the one or more files are to be deleted following completion of the period of time (¶[0050], If there is a change in status for data (e.g., data is to be changed from active to blocked or deleted, or from blocked to deleted), an annotation engine 252 of the retention manager 246 can issue block/delete commands 248, such as to one or both of the archive 240 or a data store hosting application data 232. The annotation engine 252 can access a rules store 256. The rules store 256 can provide rules that determine when data to be archived can be deleted or must be deleted. The rules store 256 can also provide rules that determine when access to archived data should be limited, and users, and optionally purposes, authorized to access particular data; ¶[0051], Using rules of the rules store 256, the annotation engine 252 can assign one or more dates to data to be archived, such as in metadata 260 of a data object 264 stored in the archive 240. The date can be an expiration date, such as a date after which the data may be deleted, a date after which the data must be deleted, or are a combination of these dates);
storing a flag indicating that the one or more files are to be deleted following completion of the period of time (¶[0050], If there is a change in status for data (e.g., data is to be changed from active to blocked or deleted, or from blocked to deleted), an annotation engine 252 of the retention manager 246 can issue block/delete commands 248; ¶[0051], Using rules of the rules store 256, the annotation engine 252 can assign one or more dates to data to be archived, such as in metadata 260 of a data object 264 stored in the archive 240. The date can be an expiration date, such as a date after which the data may be deleted, a date after which the data must be deleted, or are a combination of these dates);
detecting that the period of time has ended (¶[0054], The retention policy executor 274 can, at least for some data objects 264, periodically determine if an expiration date has passed, and, if so, and there are no status flags (e.g., legal holds) set, delete the data object from the archive 240); and
in response to the detection, deleting the one or more files (¶[0054], The retention policy executor 274 can, at least for some data objects 264, periodically determine if an expiration date has passed, and, if so, and there are no status flags (e.g., legal holds) set, delete the data object from the archive 240).
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to modify Scrivano in view of Sarferaz for determining a period of time during which the defined or modified permission constraint is to apply to the one or more files; determining that the one or more files are to be deleted following completion of the period of time; storing a flag indicating that the one or more files are to be deleted following completion of the period of time; detecting that the period of time has ended; and in response to the detection, deleting the one or more files.
One of ordinary skill in the art would have been motivated because it would facilitate restricting data used for machine learning applications to data where the proposed use is consistent with the consent (or other authorization) that exists for the data (Sarferaz, ¶[0035]).
Regarding claim 5, the combined system of Scrivano and Sarferaz discloses the invention substantially as applied to claim 1, above, wherein the one or more files are deleted using a background deletion process that scans the one or more data stores for permission-instruction data sets that include the flag and corresponding to a period of time that has ended (Sarferaz, ¶[0050], The annotation engine 252 can access a rules store 256. […] rules store 256 can also provide rules that determine when access to archived data should be limited, and users, and optionally purposes, authorized to access particular data; ¶[0053], the annotation engine 252 can determine which rules of the rules store 138 apply to particular data using metadata associated with the data; ¶[0054], The retention policy executor 274 can, at least for some data objects 264, periodically determine if an expiration date has passed, and, if so, and there are no status flags (e.g., legal holds) set, delete the data object from the archive 240).
Regarding claim 6, the combined system of Scrivano and Sarferaz discloses the invention substantially as applied to claim 1, above, wherein the determining that the one or more files are to be deleted following completion of the period of time includes determining that a same or different instruction indicates that the one or more files are to be deleted following completion of the period of time (Sarferaz, ¶[0050], If there is a change in status for data (e.g., data is to be changed from active to blocked or deleted, or from blocked to deleted), an annotation engine 252 of the retention manager 246 can issue block/delete commands 248, such as to one or both of the archive 240 or a data store hosting application data 232. The annotation engine 252 can access a rules store 256. The rules store 256 can provide rules that determine when data to be archived can be deleted or must be deleted. The rules store 256 can also provide rules that determine when access to archived data should be limited, and users, and optionally purposes, authorized to access particular data; ¶[0051], Using rules of the rules store 256, the annotation engine 252 can assign one or more dates to data to be archived, such as in metadata 260 of a data object 264 stored in the archive 240. The date can be an expiration date, such as a date after which the data may be deleted, a date after which the data must be deleted, or are a combination of these dates; ¶[0095], API 626 can operate in a “pull” mode, a “push” mode, or in both modes. In a “pull” mode, the compliance manager 622 can request updates of data status changes that may have occurred with respective to archiving objects 630 of the local system 610, wherein an archiving object can identify one or more data records, a use status associated with the one or more data records, and one or more retention policies that apply to the one or more data records; ¶[0097],  change the status of data associated with an archiving object 630. In other cases, the archive development kit 638 can process archiving objects 630 according to a retention policy, such as implemented by a retention management component 642. That is, for example, the retention management component 642 can determine whether conditions associated with an archiving object 630 (e.g., a retention policy) indicate that a status associated with an archiving object should be updated. In some cases, a condition can be the passage of a period of time or the satisfaction of date or other criteria, which can cause the status of an archiving object 630 to be updated, such as from “active” to “blocked,” from “active” to “deleted,” or from “blocked” to “deleted.”).
Regarding claim 7, the combined system of Scrivano and Sarferaz discloses the invention substantially as applied to claim 1, above, wherein the instruction indicates that files having a particular attribute are to be locked to prevent modification for a particular duration of time from a specified type of trigger event, wherein each of the one or more files has the particular attribute, and wherein the period of time begins at an occurrence of a particular trigger event associated with the one or more files and has the particular duration of time (Sarferaz, ¶[0054], retention policy executor 274 can, at least for some data objects 264, periodically determine if an expiration date has passed, and, if so, and there are no status flags (e.g., legal holds) set, delete the data object from the archive 240. If the date has passed, and the status flag has been set, deletion can be postponed until, and if, the status flag is cleared. For other data objects 264, the retention policy executor 274 can process requests to manually delete data objects from the archive 240. If the retention policy executor 274 determines that a date for the data object 264 has passed, and there are no status flags indicating that the data object should not be deleted, the data object can be deleted. If the expiration date has not passed, or a status flag has been set, the retention policy executor 274 does not delete the data object 264, and can return an error message in response to the deletion request).
Regarding claims 8 and 12-14, Scrivano discloses a system comprising: one or more data processors; and a non-transitory computer readable storage medium containing instructions which, when executed on the one or more data processors, cause the one or more data processors to perform a set of actions (¶[0004], A system of one or more computers can be configured to perform particular operations or actions by virtue of having software, firmware, hardware, or a combination thereof installed on the system that in operation causes or cause the system to perform the actions. One or more computer programs can be configured to perform particular operations or actions by virtue of including instructions that, when executed by data processing apparatus, cause the apparatus to perform the actions. One general aspect includes a system including: a non-transitory memory, and one or more hardware processors coupled to the non-transitory memory to execute instructions from the non-transitory memory to perform operations).
The remaining limitations of claims 8 and 12-14 are similar in scope to those of claims 1 and 5-7. Therefore, claims 8 and 12-14 are rejected for the same reasons as set forth in the rejection of claims 1 and 5-7, above.
Regarding claims 15 and 19-20, Scrivano discloses a computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause one or more data processors to perform a set of actions (¶[0004], A system of one or more computers can be configured to perform particular operations or actions by virtue of having software, firmware, hardware, or a combination thereof installed on the system that in operation causes or cause the system to perform the actions. One or more computer programs can be configured to perform particular operations or actions by virtue of including instructions that, when executed by data processing apparatus, cause the apparatus to perform the actions. One general aspect includes a system including: a non-transitory memory, and one or more hardware processors coupled to the non-transitory memory to execute instructions from the non-transitory memory to perform operations).
The remaining limitations of claims 15 and 19-20 are similar in scope to those of claims 1 and 5-6. Therefore, claims 15 and 19-20 are rejected for the same reasons as set forth in the rejection of claims 1 and 5-6, above.
Claim(s) 2-4, 9-11, and 16-18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Scrivano (US 20210097190 A1) in view of Sarferaz (US 20200380155 A1), as respectively applied to claims 1, 8, and 15, above, and further in view of Perlman (US 20220237148 A1).
Regarding claim 2, the combined system of Scrivano and Sarferaz discloses the invention substantially as applied to claim 1, above, further comprising: subsequent to an end of the period of time, intercepting a user request to access a particular file (Sarferaz, ¶[0050], receipt of a suitable command from a user or from an application; ¶[0110], A data view associated with the request is retrieved at 806. The data view includes computer-implementable instructions to retrieve a first selected portion of data from the data store);
querying the one or more data stores to determine whether the requested access is to be permitted (Sarferaz, ¶[0050], The annotation engine 252 can access a rules store 256. […] rules store 256 can also provide rules that determine when access to archived data should be limited, and users, and optionally purposes, authorized to access particular data);
determining, in response to the query, that the permission-instruction data set corresponds to the particular file (¶[0053], the annotation engine 252 can determine which rules of the rules store 138 apply to particular data using metadata associated with the data; ¶[0055], If data is deleted from the application data 232, or removed from the application data and placed in the archive 240, it is no longer available to the data view 224);
The combined system of Scrivano and Sarferaz does not disclose outputting a response to the user request, wherein the response indicates that the particular file is not accessible.
Perlman discloses outputting a response to the user request, wherein the response indicates that the particular file is not accessible (¶[0052], In the event that the client is asking for data for which the retention time has passed and the server has deleted the data, the read request will fail with a corresponding error.).
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to modify the combined system of Scrivano and Sarferaz in view of Perlman for outputting a response to the user request, wherein the response indicates that the particular file is not accessible.
One of ordinary skill in the art would have been motivated because it would enable users to know that the request was received and processed but that the data is not accessible.
Regarding claim 3, the combined system of Scrivano, Sarferaz and Perlman discloses the invention substantially as applied to claim 2, above, wherein an operating system performs the intercepting the user request, the querying the data store, and the determining that the permission-instruction data set corresponds to the particular file (Sarferaz, ¶[0014], computing systems and tangible, non-transitory computer readable storage media configured to carry out, or including instructions for carrying out, an above-described method; ¶[0120], operating system software (not shown) provides an operating environment for other software executing in the computing system 900, and coordinates activities of the components of the computing system 900; ¶[0121], storage 940 stores instructions for the software 980 implementing one or more innovations described herein).
Regarding claim 4, the combined system of Scrivano, Sarferaz and Perlman discloses the invention substantially as applied to claim 2, above, further comprising: detecting that the permission-instruction data set includes the flag indicating that the one or more files are to be deleted following completion of the period of time (Sarferaz, ¶[0050], If there is a change in status for data (e.g., data is to be changed from active to blocked or deleted, or from blocked to deleted), an annotation engine 252 of the retention manager 246 can issue block/delete commands 248; ¶[0051], Using rules of the rules store 256, the annotation engine 252 can assign one or more dates to data to be archived, such as in metadata 260 of a data object 264 stored in the archive 240. The date can be an expiration date, such as a date after which the data may be deleted, a date after which the data must be deleted, or are a combination of these dates);
wherein the detecting that the period of time has ended occurs in response to detecting that the permission-instruction data set includes the flag (Sarferaz, ¶[0050], If there is a change in status for data (e.g., data is to be changed from active to blocked or deleted, or from blocked to deleted), an annotation engine 252 of the retention manager 246 can issue block/delete commands 248; ¶[0051], Using rules of the rules store 256, the annotation engine 252 can assign one or more dates to data to be archived, such as in metadata 260 of a data object 264 stored in the archive 240. The date can be an expiration date, such as a date after which the data may be deleted, a date after which the data must be deleted, or are a combination of these dates; ¶[0054], The retention policy executor 274 can, at least for some data objects 264, periodically determine if an expiration date has passed, and, if so, and there are no status flags (e.g., legal holds) set, delete the data object from the archive 240).
Regarding claim 9, the combined system of Scrivano and Sarferaz discloses the invention substantially as applied to claim 9, above.
The remaining limitations of claim 9 are similar in scope to those of claim 2. Therefore, claim 9 is rejected for the same reasons as set forth in the rejection of claim 2, above.
Regarding claims 10-11, the combined system of Scrivano, Sarferaz, and Perlman discloses the invention substantially as applied to claim 9, above.
The remaining limitations of claims 10-11 are similar in scope to those of claims 3-4. Therefore, claims 10-11 are rejected for the same reasons as set forth in the rejection of claims 3-4, above.
Regarding claim 16, the combined system of Scrivano and Sarferaz discloses the invention substantially as applied to claim 15, above.
The remaining limitations of claim 16 are similar in scope to those of claim 2. Therefore, claim 16 is rejected for the same reasons as set forth in the rejection of claim 2, above.
Regarding claims 17-18, the combined system of Scrivano, Sarferaz, and Perlman discloses the invention substantially as applied to claim 16, above.
The remaining limitations of claims 17-18 are similar in scope to those of claims 3-4. Therefore, claims 17-18 are rejected for the same reasons as set forth in the rejection of claims 3-4, above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure: US 10521401 B2, which discloses, col. 2, lines 30-38, many polices may specify that data is to be locked down into a protected state for data retention purposes, such as being stored with write-once-read-many (WORM) access. Because a data scanner may periodically or continuously scan files to determine which files satisfy a data retention criteria (e.g., files that have not been modified within an auto commit time period may be stored into lockdown retention storage for a lockdown retention period), col. 9, lines 5-13, A data retention policy may specify a data retention criteria where data is to be committed to lockdown retention storage for a lockdown retention period (e.g., stored with read only access for 4 months) [...] a data scanner may scan files of a volume to identify files that satisfy the data retention criteria, and col. 10, lines 37-45, In an example where the data object is comprised with a volume, a speculative volume expiry time for the volume may be maintained based upon a modification time (e.g., a change time) of the data object and/or a lockdown retention period (e.g., a volume default retention period). The speculative volume expiry time may specify a time period after which the volume is allowed to be deleted during a volume auto commit process.


NEXT OFFICE ACTION: 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 .
Response to Amendment
This action is in response to communications filed on 9/20/2024.
Claims 1-2, 8-9, and 15-16 have been amended.
Claims 1-20 are pending.
Allowable Subject Matter
Claims 1-20 are allowed.
REASONS FOR ALLOWANCE
The following is an examiner’s statement of reasons for allowance:
The prior art of record fails to teach, neither singly nor in combination, the claimed limitations of “receiving a request to access at least one of the one or more files from the data management system after the period of time has ended but before the at least one of the one or more files is deleted from the data management system; based at least in part on the request: accessing the permission-instruction data set to determine that the at least one of the one or more files is to be deleted following completion of the period of time; detecting that the period of time has ended; and in response to the detection, responding to the request indicating that the at least one of the one or more files is not available even though the at least one file was not yet deleted from the data management system; and deleting the one or more files after receiving the request” as recited in claim 1 and similarly stated in claim(s) 8 and 15. These limitations, in conjunction with other limitations in the independent claim(s), are not specifically disclosed or remotely suggested in the prior art of record. A review of claim(s) 1-20 indicates claim(s) 1-20 are allowable over the prior art of record.
Conclusion
Any comments considered necessary by applicant must be submitted no later than the payment of the issue fee and, to avoid processing delays, should preferably accompany the issue fee.  Such submissions should be clearly labeled “Comments on Statement of Reasons for Allowance.”

CITED REFERENCE SUMMARIES: Ref US10521401B2: Claims:
A method comprising: specifying an auto commit time period for a data container comprising a data object, the auto commit time period indicating that the data object is to be locked into a locked down state for a lockdown retention period based upon the data object not being changed for the auto commit time period, wherein a change time field within an inode associated with the data object is updated with a current time value based upon an attribute change that modifies the inode; receiving a command to modify the data object; determining whether the data object is in the locked down state based upon a difference between a current time of a clock and a current value of the change time field exceeding the auto commit time period; and blocking the command based upon the data object being considered in the locked down state, wherein the command is blocked before a data scanner traverses the data object for committing data objects to lockdown retention storage for the lockdown retention period.
specifying an auto commit time period for a data container comprising a data object, the auto commit time period indicating that the data object is to be locked into a locked down state for a lockdown retention period based upon the data object not being changed for the auto commit time period, wherein a change time field within an inode associated with the data object is updated with a current time value based upon an attribute change that modifies the inode;
receiving a command to modify the data object;
determining whether the data object is in the locked down state based upon a difference between a current time of a clock and a current value of the change time field exceeding the auto commit time period; and
blocking the command based upon the data object being considered in the locked down state, wherein the command is blocked before a data scanner traverses the data object for committing data objects to lockdown retention storage for the lockdown retention period.
The method of claim 1 , wherein the data object comprises a file, and the method comprising: updating the change time field based upon a file permission change for the file.
updating the change time field based upon a file permission change for the file.
The method of claim 1 , comprising: updating the change time field based upon a relocation of the data object.
updating the change time field based upon a relocation of the data object.
The method of claim 1 , the blocking the command comprising: updating the auto commit time period of the data container to a new value based upon an auto commit time period modification request.
updating the auto commit time period of the data container to a new value based upon an auto commit time period modification request.
The method of claim 1 , comprising: executing the data scanner to commit the data objects within the data container to the lockdown retention storage based upon the change time field and the auto commit time period.
executing the data scanner to commit the data objects within the data container to the lockdown retention storage based upon the change time field and the auto commit time period.
The method of claim 1 , comprising: updating the auto commit time period of the data container to a new value based upon an auto commit time period modification request, wherein the update is triggered upon the data scanner traversing the data container for committing the data objects within the data container to the lockdown retention storage.
updating the auto commit time period of the data container to a new value based upon an auto commit time period modification request, wherein the update is triggered upon the data scanner traversing the data container for committing the data objects within the data container to the lockdown retention storage.
The method of claim 1 , comprising: updating the lockdown retention period to a new value based upon a lockdown retention period modification request, wherein the update is triggered upon the data scanner traversing the data container for committing the data objects within the data container to lockdown retention storage.
updating the lockdown retention period to a new value based upon a lockdown retention period modification request, wherein the update is triggered upon the data scanner traversing the data container for committing the data objects within the data container to lockdown retention storage.
The method of claim 1 , comprising: determining that the clock has transitioned at a first time to a time value that is greater than the change time field and the auto commit time period, wherein the data object is considered as being in the locked down state within a threshold timespan of the first time.
determining that the clock has transitioned at a first time to a time value that is greater than the change time field and the auto commit time period, wherein the data object is considered as being in the locked down state within a threshold timespan of the first time.
The method of claim 1 , wherein the data container is hosted by a first computing device, the method comprising: implementing a replication command to replicate the data container from the first computing device to a second computing device as a replicated data container comprising a replicated data object corresponding to the data object, a replicated inode corresponding to the inode, and a replicated clock corresponding to the clock, wherein lockdown retention is implemented for the replicated data container.
implementing a replication command to replicate the data container from the first computing device to a second computing device as a replicated data container comprising a replicated data object corresponding to the data object, a replicated inode corresponding to the inode, and a replicated clock corresponding to the clock, wherein lockdown retention is implemented for the replicated data container.
The method of claim 1 , wherein the data object is comprised within a volume, the method comprising: maintaining a speculative volume expiry time for the volume, the speculative volume expiry time corresponding to a sum of a change time of the data object and a lockdown retention period, the speculative volume expiry time specifying a time period after which the volume is allowed to be deleted during a volume auto commit process.
maintaining a speculative volume expiry time for the volume, the speculative volume expiry time corresponding to a sum of a change time of the data object and a lockdown retention period, the speculative volume expiry time specifying a time period after which the volume is allowed to be deleted during a volume auto commit process.
The method of claim 10 , the lockdown retention period comprising a volume default retention period for the volume.
The method of claim 10 , comprising: setting a current volume expiry time to the speculative volume expiry time based upon a determination that the current volume expiry time is less than the speculative volume expiry time.
setting a current volume expiry time to the speculative volume expiry time based upon a determination that the current volume expiry time is less than the speculative volume expiry time.
The method of claim 12 , comprising: determining the current volume expiry time based upon the data object being committed to lockdown retention storage in the locked down state by a data scanner.
determining the current volume expiry time based upon the data object being committed to lockdown retention storage in the locked down state by a data scanner.
The method of claim 1 , comprising: determining a predicted retention time of the data object based upon a creation time of the data object, the predicted retention time specifying a predicted time at which the data object is to be committed to lockdown retention storage in the locked down state.
determining a predicted retention time of the data object based upon a creation time of the data object, the predicted retention time specifying a predicted time at which the data object is to be committed to lockdown retention storage in the locked down state.
A non-transitory machine readable medium having stored thereon instructions, which when executed by a machine, causes the machine to: specify an auto commit time period for a data container comprising a file, the auto commit time period indicating that the file is to be locked into a locked down state for a lockdown retention period based upon the file not being changed for the auto commit time period, wherein a change time field within an inode associated with the file is updated with a current time value based upon a file ownership change that modifies the inode; receiving a command to modify the file; determine whether the file is in the locked down state based upon a difference between a current time of a clock and a current value of the change time field exceeding the auto commit time period; and block the command based upon the file being considered in the locked down state, wherein the command is blocked before a data scanner traverses the file for committing files to lockdown retention storage for the lockdown retention period.
specify an auto commit time period for a data container comprising a file, the auto commit time period indicating that the file is to be locked into a locked down state for a lockdown retention period based upon the file not being changed for the auto commit time period, wherein a change time field within an inode associated with the file is updated with a current time value based upon a file ownership change that modifies the inode;
receiving a command to modify the file;
determine whether the file is in the locked down state based upon a difference between a current time of a clock and a current value of the change time field exceeding the auto commit time period; and
block the command based upon the file being considered in the locked down state, wherein the command is blocked before a data scanner traverses the file for committing files to lockdown retention storage for the lockdown retention period.
A computing device comprising: a memory comprising machine executable code; and a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to: specify an auto commit time period for a data container comprising a data object, the auto commit time period indicating that the data object is to be locked into a locked down state for a lockdown retention period based upon the data object not being changed for the auto commit time period, wherein a change time field within an inode associated with the data object is updated with a current time value based upon a file permission change that modifies the inode; receive a command to modify the data object; determine whether the data object is in the locked down state based upon a difference between a current time of a clock and a current value of the change time field exceeding the auto commit time period; and block the command based upon the data object being considered in the locked down state, wherein the command is blocked before a data scanner traverses the data object for committing data objects to lockdown retention storage for the lockdown retention period.
a memory comprising machine executable code; and
a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to: specify an auto commit time period for a data container comprising a data object, the auto commit time period indicating that the data object is to be locked into a locked down state for a lockdown retention period based upon the data object not being changed for the auto commit time period, wherein a change time field within an inode associated with the data object is updated with a current time value based upon a file permission change that modifies the inode; receive a command to modify the data object; determine whether the data object is in the locked down state based upon a difference between a current time of a clock and a current value of the change time field exceeding the auto commit time period; and block the command based upon the data object being considered in the locked down state, wherein the command is blocked before a data scanner traverses the data object for committing data objects to lockdown retention storage for the lockdown retention period.
specify an auto commit time period for a data container comprising a data object, the auto commit time period indicating that the data object is to be locked into a locked down state for a lockdown retention period based upon the data object not being changed for the auto commit time period, wherein a change time field within an inode associated with the data object is updated with a current time value based upon a file permission change that modifies the inode;
receive a command to modify the data object;
determine whether the data object is in the locked down state based upon a difference between a current time of a clock and a current value of the change time field exceeding the auto commit time period; and
block the command based upon the data object being considered in the locked down state, wherein the command is blocked before a data scanner traverses the data object for committing data objects to lockdown retention storage for the lockdown retention period.
The computing device of claim 16 , wherein the machine executable code causes the processor to: update the lockdown retention period to a new value based upon a lockdown retention period modification request.
update the lockdown retention period to a new value based upon a lockdown retention period modification request.
The computing device of claim 16 , wherein the machine executable code causes the processor to: update the auto commit time period to a new value based upon an auto commit time period modification request, wherein the update is triggered upon a data scanner traversing the data container for committing data objects within the data container to lockdown retention storage.
update the auto commit time period to a new value based upon an auto commit time period modification request, wherein the update is triggered upon a data scanner traversing the data container for committing data objects within the data container to lockdown retention storage.
The computing device of claim 16 , wherein the data container is hosted by a first computing device, and the machine executable code causes the processor to: implement a replication command to replicate the data container from the first computing device to a second computing device as a replicated data container comprising a replicated data object corresponding to the data object, a replicated inode corresponding to the inode, and a replicated clock corresponding to the clock, wherein lockdown retention is implemented for the replicated data container.
implement a replication command to replicate the data container from the first computing device to a second computing device as a replicated data container comprising a replicated data object corresponding to the data object, a replicated inode corresponding to the inode, and a replicated clock corresponding to the clock, wherein lockdown retention is implemented for the replicated data container.
The computing device of claim 16 , wherein the machine executable code causes the processor to: maintain a speculative volume expiry time for the volume, the speculative volume expiry time corresponding to a sum of a change time of the data object and a lockdown retention period, the speculative volume expiry time specifying a time period after which the volume is allowed to be deleted during a volume auto commit process.
maintain a speculative volume expiry time for the volume, the speculative volume expiry time corresponding to a sum of a change time of the data object and a lockdown retention period, the speculative volume expiry time specifying a time period after which the volume is allowed to be deleted during a volume auto commit process.
Ref US20200380155A1: Claims:
A computing system comprising: memory; one or more processing units coupled to the memory; and one or more non-transitory computer readable storage media storing instructions that, when loaded into the memory, cause the one or more processing units to perform operations for: receiving a request from or on behalf of a machine learning application for data stored in a data store; retrieving a data view associated with the request, the data view comprising computer-implementable instructions to: (1) retrieve a first selected portion of data from the data store; and (2) filter, and not return in response to the request, a second portion of data selected from the first selected portion of data and comprising data of the first selected portion of data having an indicator that a given data element of the first selected portion of data has been blocked from use; causing the computer-implementable instructions to be executed; receiving query results in response to the execution of the computer-implementable instructions; and sending the query results as a response to the request.
one or more processing units coupled to the memory; and
one or more non-transitory computer readable storage media storing instructions that, when loaded into the memory, cause the one or more processing units to perform operations for:
receiving a request from or on behalf of a machine learning application for data stored in a data store;
retrieving a data view associated with the request, the data view comprising computer-implementable instructions to: (1) retrieve a first selected portion of data from the data store; and (2) filter, and not return in response to the request, a second portion of data selected from the first selected portion of data and comprising data of the first selected portion of data having an indicator that a given data element of the first selected portion of data has been blocked from use;
causing the computer-implementable instructions to be executed;
receiving query results in response to the execution of the computer-implementable instructions; and
sending the query results as a response to the request.
The computing system of claim 1 , wherein the computer-implementable instructions are in a query language.
The computing system of claim 1 , wherein the computer-implementable instructions corresponding to the filter comprise a condition on an attribute of a table in a relational database system. The computing system of claim 1 , the operations further comprising: receiving, by the data store, instructions from a retention manager to update a status associated with a record of the data store from an unblocked status to a blocked status.
receiving, by the data store, instructions from a retention manager to update a status associated with a record of the data store from an unblocked status to a blocked status.
The computing system of claim 1 , wherein the instructions from a retention manager are based on a data privacy or data protection policy.
The computing system of claim 1 , the operations further comprising: automatically creating the data view in response to receiving the request.
automatically creating the data view in response to receiving the request.
The computing system of claim 6 , wherein the automatically creating the data view is carried out in further response to determining that the request is associated with the machine learning application.
The computing system of claim 7 , further comprising storing the data view.
In a computing system comprising a memory and one or more processors, a method comprising: defining a data view for use with a machine learning application, the data view comprising computer-implementable instructions for retrieving data from a database, the computer-implementable instructions comprising: (1) a reference to at least a
[Truncated to input limit]