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 .
Status of Claims
Claims 1-20 are currently pending in this application.
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-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
Claims 12-20 recites “a computer program product” that does not fall within one of the four categories of patent eligible subject matter (Step 1). The computer program product is merely a set of instructions capable of being executed by a computer. The computer program product itself is not a process and without the non-transitory computer-readable medium, the computer program product’s functionality is considered a nonstatutory functional descriptive material. Therefore, claims 12-26 as recited are not patent eligible. See MPEP § 2106(I). (Note: If claims 12-20 are amended to fall under one of four categories of statutory subject matter, it would further be rejected based on claim limitations that are directed to a judicially recognized exception of an abstract mental and/or mathematical concept. Thus, claims 12-20 would further be rejected under the same rationale as claims 1-11 as follows.)
Independent claim 1:
Step 1:
Claim 1 is drawn to a method of providing a software configuration for a modular plant, therefore claim 1 fall under one of four categories of statutory subject matter (process/method, machines/products/apparatus, manufactures, and compositions of matter).
Step 2A, Prong 1:
Nonetheless, claim 1 is directed to a judicially recognized exception of an abstract idea without significantly more.
Claim 1 recites a step of “generating at least a second function module, wherein the second function module is a derived child object of the first function module that inherits the function information of the first function module” that under its broadest reasonable interpretation, enumerates a mental concept. For example, a human can mentally evaluate changes through inheritance, such as to model the child objects with the inherit changes to a referenced parent function information. Thus, the recited step to generate a child object based on the inherit function information of the parent object is a judicial exception that is no more than a mental abstract idea (See MPEP 2106.04(a)(2)(III)).
Step 2A, Prong 2:
Claim 1 recites an additional step “providing a first function module as a parent object, wherein the first function module comprises a function information of the first function module” that fails to integrate the abstract idea into a practical application. The step of providing a function information of the parent object is a form of insignificant input-solution activity, such that data gathering is necessary for the use of the judicial exception (See MPEP 2106.05(g)).
Step 2B:
The additional element that is a form of insignificant extra-solution activity, does not amount to significantly more than an abstract idea because the court decisions have determined that this additional element to be well-understood, routine, and conventional when claimed in a merely generic manner for data receiving/retrieving (See MPEP § 2106.05(d)(II)(i/iv)). As such, claim 1 is not patent eligible.
Dependent claims 2-11:
Step 1:
Claims 2-11 are drawn to a method of providing a software configuration for a modular plant, therefore claims 2-11 fall under one of four categories of statutory subject matter (process/method, machines/products/apparatus, manufactures, and compositions of matter). Nonetheless, dependent claims 2-11 are also ineligible for the same reasons given with respect to claim 1.
Steps 2A-2B:
Claims 2-11 recites further the insignificant extra-solution activity by narrowing in scope of the type of function information: “wherein the function information of the first function module comprises at least one service defining at least a basic function of the first function module that is inherited by the derived at least second function module” (claim 2/1), “wherein the at least one service comprises a signature which comprises at least a characteristic property of said service” (claim 3/2/1), “wherein the function information of the first function module further comprises at least one device used to implement said defined service” (claim 4/2/1), “wherein the first function module further implements at least an interface information only defining said service that must be implemented by the at least derived second function module” (claim 5/2/1), “wherein the function information in said derived second function module comprises a protected feature that allows to adjust, whether a defined basic function of a service and/or a device from the derived second function module can be used in a further instance of said derived second function module” (claim 6/2/1), “wherein the at least first function module further comprises at least a conditional feature that allows activating/enforcing or disabling the usage of the device and/or service of the first function module and/or the derived second function module” (claim 7/2/1), “wherein the service comprises at least one optional feature” (claim 8/2/1), “wherein the at least second function module comprises a selection function allowing to enforce or disable the usage of the optional function of the service derived from the at least first function module” (claim 9/8/2/1), “wherein the at least second function module comprises a sealed feature allowing to disable inheritance of the at least second function module” (claim 10/1), and “wherein the service is a virtual-typed service, and wherein the at least derived second function module implements the at least service inherited from the parent first function module” (claim 11/2/1) (See MPEP 2106.05(g)). The additional element that is a form of insignificant extra-solution activity, does not amount to significantly more than an abstract idea because the court decisions have determined that this additional element to be well-understood, routine, and conventional when claimed in a merely generic manner for data receiving/retrieving (See MPEP § 2106.05(d)(II)(i/iv)). As such, claims 2-11 are not patent eligible.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-20 are rejected under 35 U.S.C. 102(a)(1) and/or (a)(2) as being anticipated by Resnick et al. (WO 03/001343-A2).
With respect to claims 1 and 12, Resnick teaches a method and a computer program product comprising instructions which, when the program is executed by a processor of a computer, cause the computer to execute a method of providing a software configuration for a modular plant, the method comprising:
providing a first function module as a parent object, wherein the first function module comprises a function information of the first function module; generating at least a second function module, wherein the second function module is a derived child object of the first function module that inherits the function information of the first function module (application model also supports propagating changes through inheritance…child objects inherit changes to a referenced parent template definition, p.7 and lines 23-27; children inherit the designated characteristics of their parent templates…derivation relationship between a child and its parent template is registered in the derived from attribute 314 of the template object, p.28 lines 23-25; templates incorporate an inheritance behavior between a parent template and a child template derived from the parent, p.34 lines 32-33, a generic "$DiscreteDevice" template is customized by a control engineer to create domain-specific "valve," "motor," and "pump" templates…customization of a generic SDiscreteDevice template into domain-specific "valve", "motor", and "pump" templates is performed through the IDE, and only within the IDE, p.35 lines 1-4).
With respect to claims 2 and 13, Resnick teaches further wherein the function information of the first function module comprises at least one service defining at least a basic function of the first function module that is inherited by the derived at least second function module (LMX incorporated into the engine objects (e.g., application engine objects) provides services enabling application objects to access data maintained as attributes on other objects, p.21 and lines 26-33).
With respect to claims 3 and 14, Resnick teaches further wherein the at least one service comprises a signature which comprises at least a characteristic property of said service (The LMX of the application engine includes, by way of example, a set of interfaces…The set of interfaces comprises: IMxSupervisoryConnection and IMxUserConnection… IMxSupervisoryConnection interface defines methods used by application objects to access information from physical devices in a plant, p.22 lines 4-7).
With respect to claims 4 and 15, Resnick teaches further wherein the function information of the first function module further comprises at least one device used to implement said defined service (A model view depicts the application in terms of logical associations between plant/process equipment within a controlled plant process - e.g., a representation of a physical plant layout. A deployment view depicts the physical computer devices and assignment of instantiated objects identified in the model view to the computer devices and engines executing upon the computer devices. A derivation view depicts the sources (inherited property relationships from base template to instance) of objects instantiated from templates to carry out the functionality of the model view elements, p.25 lines 1-7).
With respect to claims 5 and 16, Resnick teaches further wherein the first function module further implements at least an interface information only defining said service that must be implemented by the at least derived second function module (The LMX of the application engine includes, by way of example, a set of interfaces…The set of interfaces comprises: IMxSupervisoryConnection and IMxUserConnection… IMxSupervisoryConnection interface defines methods used by application objects to access information from physical devices in a plant, p.22 lines 4-7).
With respect to claims 6 and 17, Resnick teaches further wherein the function information in said derived second function module comprises a protected feature that allows to adjust, whether a defined basic function of a service and/or a device from the derived second function module can be used in a further instance of said derived second function module (An attribute in a template or instance can be unlocked, locked in parent, or locked in me. Both templates and instances can have unlocked attributes. An unlocked attribute is read-write, and the object has its own copy of the attribute value - i.e., it is not shared by derived objects. A template, but not an instance can have a locked in me attribute status. In the case of a locked in me attribute, the value is read-write. Derived objects do not get their own copy of the attribute value, but instead share the locked value by reference to an ancestor where the attribute is locked. The status of the attribute in the children of a locked in me attribute is "locked in parent." Thus, changes to the value of a locked in me template attribute propagate to all children…. a locked in me attribute in a template can be changed, and the change is cascaded down through all templates and instances derived from the template containing the locked attribute, p.30 lines 16-33).
With respect to claims 7 and 18, Resnick teaches further wherein the at least first function module further comprises at least a conditional feature that allows activating/enforcing or disabling the usage of the device and/or service of the first function module and/or the derived second function module (all alarms in a particular area can be disabled by a single attribute designation within the area object. The compatibility of the host area and hosted objects is determined by checking the "required host features" of the hosted object and the "supported features" specified by the hosting area object. These object attributes are established when the objects are built. If the "required host features" are met by the "supported features," then the host assignment is completed by assigning appropriate values to hosted objects. An object is placed within an area by designating the area name in the area attribute 328 of the common primitive of an application or area object, p.26 lines 7-14).
With respect to claim 8, Resnick teaches further wherein the service comprises at least one optional feature (all alarms in a particular area can be disabled by a single attribute designation within the area object, p.26; The SetAttribute method is used to set a value and/or invoke an action by the object (a pseudo-remote procedure call. The SetAttribute call includes the following inputs: attribute handle, confirmation handle, write type, access level, access level verifier, data in. The SetAttribute call returns an optional response value, p.38 lines 6-9).
With respect to claims 9 and 19, Resnick teaches further wherein the at least second function module comprises a selection function allowing to enforce or disable the usage of the optional function of the service derived from the at least first function module (The SetAttribute method is used to set a value and/or invoke an action by the object (a pseudo-remote procedure call. The SetAttribute call includes the following inputs: attribute handle, confirmation handle, write type, access level, access level verifier, data in. The SetAttribute call returns an optional response value, p.38 lines 6-9).
With respect to claims 10 and 20, Resnick teaches further wherein the at least second function module comprises a sealed feature allowing to disable inheritance of the at least second function module (The status of the attribute in the children of a locked in me attribute is "locked in parent." Thus, changes to the value of a locked in me template attribute propagate to all children. Both templates and instances can have a locked in parent attribute. A locked in parent attribute is read-only, p.30 lines 22-25).
With respect to claim 11, Resnick teaches further wherein the service is a virtual-typed service, and wherein the at least derived second function module implements the at least service inherited from the parent first function module (the application objects comprise a virtually limitless spectrum of classes of executable objects that perform desired supervisory control and data acquisition/integration functions in the context of the supervisory process control and manufacturing information application, p.10 lines 3-6; primitives can be concrete (i.e., they exist within an instance of an object), virtual (i.e., they exist as templates to create concrete primitives, or utility (i.e., they are used by an object or primitive developer to add functionality to the object or primitive such as alarming, history, input, output, output with feedback, etc.). Virtual primitives are used when it is uncertain how may primitives of the specified type will be needed by the object when it is configured, p.36 lines 23-28).
Conclusion
The additional prior arts made of record and have not been relied upon are considered pertinent to applicant's disclosure as follows:
Pereira, "APPLYING OB JECT-ORIENTED CONCEPTS TO THE DEVELOPMENT OF REAL-TIME INDUSTRIAL AUTOMATION SYSTEM", IEEE, 1997, p.264-270;
Becker, "An Object-Oriented Framework for the Development of Real-Time Industrial Automation Systems", IEEE, 2002, p.421-430;
Legris (FR_2864287_A1);
Resnick (US-20020198971-A1);
Thilderkvist (US-20170153617-A1);
Dean (US-10503784-B1, US-10564622-B1; and US-11210278-B1);
Madheswaran (US-10970298-B1); and
Braun (US-20210286346-A1).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HIEN (CINDY) D KHUU whose telephone number is (571)272-8585. The examiner can normally be reached on Monday-Friday 9am-5:30pm.
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, Ken Lo can be reached on 571-272-9774. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/HIEN D KHUU/Primary Examiner, Art Unit 2116 February 6, 2026