Red Hat, Inc.Download PDFPatent Trials and Appeals BoardSep 2, 20212020003144 (P.T.A.B. Sep. 2, 2021) Copy Citation UNITED STATES PATENT AND TRADEMARK OFFICE UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www.uspto.gov APPLICATION NO. FILING DATE FIRST NAMED INVENTOR ATTORNEY DOCKET NO. CONFIRMATION NO. 15/879,818 01/25/2018 Kabir Khan 1145-066/20171216US 2845 137131 7590 09/02/2021 Red Hat, Inc and Withrow & Terranova, PLLC 106 Pinedale Springs Way Cary, NC 27511 EXAMINER LUU, BINH K ART UNIT PAPER NUMBER 2191 NOTIFICATION DATE DELIVERY MODE 09/02/2021 ELECTRONIC Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the following e-mail address(es): patents@wt-ip.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE ________________ BEFORE THE PATENT TRIAL AND APPEAL BOARD ________________ Ex parte KABIR KHAN ________________ Appeal 2020-003144 Application 15/879,818 Technology Center 2100 ________________ Before RICHARD M. LEBOVITZ, JASON J. CHUNG, and SCOTT E. BAIN, Administrative Patent Judges. CHUNG, Administrative Patent Judge. DECISION ON APPEAL Pursuant to 35 U.S.C. § 134(a), Appellant1 appeals the Final Rejection of claims 1–20. We have jurisdiction under 35 U.S.C. § 6(b). We AFFIRM IN PART. INVENTION The invention relates to providing mechanisms for reducing resource consumption by hierarchically configured applications deployed in cloud- based environments. Spec. ¶ 1. Claim 1 is illustrative of the invention and is reproduced below: 1 We use the word “Appellant” to refer to “applicant” as defined in 37 C.F.R. § 1.42. According to Appellant, Red Hat, Inc. is the real party in interest. Appeal Br. 3. Appeal 2020-003144 Application 15/879,818 2 1. A computing system, comprising: a first computing device comprising a first memory and a first processor device communicatively coupled to the first memory; and a second computing device comprising a second memory and a second processor device communicatively coupled to the second memory; the first computing device to: launch a hierarchically configured application within a first container of a container application platform according to one or more resource descriptions for the hierarchically configured application; determine a state of each service of one or more services initiated by the hierarchically configured application; and generate one or more serialized data structures representing the state of each service of the one or more services; and the second computing device to subsequently launch the hierarchically configured application within a second container of the container application platform based on the one or more serialized data structures. Appeal Br. 16 (Claims Appendix) (emphasis added). REJECTIONS The Examiner rejects claims 1, 2, 8, 11, 12, 18, and 20 under 35 U.S.C. § 103 as being unpatentable over the combination of Reeves (US 9,274,811 B1; issued Mar. 1, 2016) and Tuatini (US 2002/0035645 A1; published Mar. 21, 2002). Ans. 4–10; Final Act. 2–8. The Examiner rejects claims 3–7 and 13–17 under 35 U.S.C. § 103 as being unpatentable over the combination of Reeves, Tuatini, and Wipfel (US 2011/0126207 A1; published May 26, 2011). Ans. 10–16; Final Act. 8–14. Appeal 2020-003144 Application 15/879,818 3 The Examiner rejects claim 9 under 35 U.S.C. § 103 as being unpatentable over the combination of Reeves, Tuatini, and Chouhan (US 2015/0378691 A1; published Dec. 31, 2015). Ans. 16–17; Final Act. 14–15. The Examiner rejects claim 10 under 35 U.S.C. § 103 as being unpatentable over the combination of Reeves, Tuatini, and Liggitt (US 2017/0249177 A1; published Aug. 31, 2017). Ans. 17; Final Act. 15–16. The Examiner rejects claim 19 under 35 U.S.C. § 103 as being unpatentable over the combination of Reeves, Tuatini, Chouhan, and Liggitt. Ans. 18; Final Act. 16. ANALYSIS I. Claims 1, 3–7, 9–11, 13–17, 19, and 20 Rejected Under 35 U.S.C. § 103 The Examiner finds Reeves teaches querying a first server program for a first set of configuration information and identifying sets of environment independent and dependent attributes from the configuration information, which the Examiner maps to the limitation “determine a state of each service of one or more services initiated by the hierarchically configured application” recited in claim 1. Ans. 5, 21 (citing Reeves, 3:24– 32); Final Act. 3 (citing Reeves, 3:24–32). Moreover, the Examiner finds Tuatini teaches that an application program contains application-wide configuration and state information 1200 that provide access to application configuration object 1202. Ans. 7, 21–22 (citing Tuatini ¶ 57); Final Act. 5 (citing Tuatini ¶ 57). The Examiner also finds that Tuatini’s application configuration object provides access to the configuration information that specify initialization parameters 1203 of the application program. Ans. 7, 21–22 (citing Tuatini ¶ 57); Final Act. 5 (citing Tuatini ¶ 57). The Examiner finds that Tuatini teaches accessing Appeal 2020-003144 Application 15/879,818 4 state information via application context object 1201, which the Examiner maps to the limitation “determine a state of each service of one or more services initiated by the hierarchically configured application” recited in claim 1. Ans. 7, 21–22 (citing Tuatini ¶ 57); Final Act. 5 (citing Tuatini ¶ 57). Appellant argues the limitation “service” comprises executable code that “provide[s] the actual functionality required by the hierarchically configured application” and is associated with a “state” after being initiated by the hierarchically configured application, but Reeves merely teaches obtaining configuration information and identifying sets of environment independent and dependent attributes from the configuration information existing on a server program prior to application deployment and then storing those values for the environment independent attributes for use during application deployment. Appeal Br. 11 (emphasis omitted) (citing Spec. ¶¶ 26–27); Reply Br. 2. In addition, Appellant argues Tuatini fails to teach the disputed limitation because it is merely illustrates a state architecture for an application program. Appeal Br. 11–12; Reply Br. 2–3. We disagree with Appellant. At the outset, paragraphs 26 and 27 of the Specification do not provide a specific definition for “service.” Spec. ¶¶ 26–27. Instead, paragraphs 26 and 27 of the Specification discuss “service” with words and phrases such as “examples,” “may,” and “non-limiting examples.” Id. Also, Appellant’s argument that “service” comprises executable code that “provide[s] the actual functionality required by the hierarchically configured application” and is associated with a “state” after being initiated by the hierarchically configured application is not recited in the claim. Appeal Br. Appeal 2020-003144 Application 15/879,818 5 11 (citing Spec. ¶¶ 26–27); Reply Br. 2. “[A]ppellant’s arguments fail from the outset because . . . they are not based on limitations appearing in the claims.” See In re Self, 671 F.2d 1344, 1348 (CCPA 1982). Appellants are attempting to import limitations from the Specification in the claims. Ans. 4. “[A] particular embodiment appearing in the written description may not be read into a claim when the claim language is broader than the embodiment.” SuperGuide Corp. v. DirecTV Enters., Inc., 358 F.3d 870, 875 (Fed. Cir. 2004). “[L]imitations are not to be read into the claims from the specification.” In re Van Geuns, 988 F.2d 1181, 1184 (Fed. Cir. 1993). Reeves describes querying (i.e., determining) a first server program (i.e., service) for a first set of configuration information and identifying sets of environment independent and dependent attributes (i.e., each attribute teaches a “state”) from the configuration information (i.e., hierarchically configured application that initiates a service), which teaches the limitation “determine a state of each service of one or more services initiated by the hierarchically configured application” recited in claim 1. Ans. 5, 21 (citing Reeves, 3:24–32); Final Act. 3 (citing Reeves, 3:24–32). Furthermore, Tuatini teaches an application program (i.e., service) contains application-wide configuration and state information 1200 that provide access to application configuration object 1202. Ans. 7, 21–22 (citing Tuatini ¶ 57); Final Act. 5 (citing Tuatini ¶ 57). Tuatini teaches application configuration object 1202 (i.e., hierarchically configured applications) provides access to the configuration information that specifies initialization parameters 1203 of the application program. Ans. 7, 21–22 (citing Tuatini ¶ 57); Final Act. 5 (citing Tuatini ¶ 57). In addition, Tuatini describes accessing state information (i.e., determining a state) via Appeal 2020-003144 Application 15/879,818 6 application context object 1201, which teaches the limitation “determine a state of each service of one or more services initiated by the hierarchically configured application” recited in claim 1. Ans. 7, 21–22 (citing Tuatini, Fig. 12, ¶ 57); Final Act. 5 (citing Tuatini, Fig. 12, ¶ 57). Appellant does not argue claims 1, 3–7, 9–11, 13–17, 19, and 20 separately with particularity. Appeal Br. 10–14. These claims therefore fall with claim 1. 37 C.F.R. § 41.37(c)(1)(iv). Accordingly, we sustain the Examiner’s rejection of: (1) independent claims 1, 11, and 20; and (2) dependent claims 3–7, 9, 10, 13–17, and 19 under 35 U.S.C. § 103. II. Claims 2 and 12 Rejected Under 35 U.S.C. § 103 The Examiner finds Reeves teaches source environment 102 and target environment 111 and Tuatini teaches application programs execute in a container environment and various containers communicate with each other through container adapters 201, which the Examiner maps to the limitation “the first container comprises a provisioning container of the container application platform; and the second container comprises an execution container of the container application platform” recited in claim 2. Ans. 8, 23–24 (citing Reeves, Fig. 2; Tuatini ¶ 47; Spec. ¶¶ 23–24); Final Act. 6 (citing Reeves, Fig. 2). Appellant argues the claimed “container” is initiated within a “container application platform” such as Red Hat’s OpenShift, and “represents an isolated system that makes a predefined set of resources . . . available for use by applications executing therein.” Appeal Br. 12–13 (citing Spec. ¶¶ 23–24); Reply Br. 3–4 (citing Spec. ¶¶ 23–24). We disagree with Appellant. Appeal 2020-003144 Application 15/879,818 7 As an initial matter, paragraphs 23 and 24 of the Specification do not provide a specific definition for “container.” Spec. ¶¶ 23–24. Instead, paragraphs 23 and 24 of the Specification discuss “container” with words such as “examples,” “may,” and “example.” Id. Also, Appellant’s argument that “container” is initiated within a “container application platform” such as Red Hat’s OpenShift, and “represents an isolated system that makes a predefined set of resources . . . available for use by applications executing therein” is not recited in the claim. Appeal Br. 12–13 (citing Spec. ¶¶ 23– 24); Reply Br. 3–4 (citing Spec. ¶¶ 23–24). “[A]ppellant’s arguments fail from the outset because . . . they are not based on limitations appearing in the claims.” See In re Self, 671 F.2d at 1348. Limitations from the Specification are not ordinarily read into the claims, unless there is clear reason to do so. SuperGuide Corp., 358 F.3d at 875; Van Geuns, 988 F.2d at 1184. Reeves teaches source environment 102 (i.e., provisioning container) and target environment 111 (i.e., execution container). Ans. 8, 23–24 (citing Reeves, Fig. 2; Tuatini ¶ 47; Spec. ¶¶ 23–24); Final Act. 6 (citing Reeves, Fig. 2). And Tuatini teaches application programs execute in a container environment (i.e., container comprises a type of container of a container application platform) and various containers communicate with each other through container adapters 201. Ans. 8, 23–24 (citing Reeves, Fig. 2; Tuatini ¶ 47; Spec. ¶¶ 23–24); Final Act. 6 (citing Reeves, Fig. 2). As a result, the combination of Reeves and Tuatini teaches the limitation “the first container comprises a provisioning container of the container application platform; and the second container comprises an execution container of the container application platform” recited in claim 2. Ans. 8, 23–24 (citing Appeal 2020-003144 Application 15/879,818 8 Reeves, Fig. 2; Tuatini ¶ 47; Spec. ¶¶ 23–24); Final Act. 6 (citing Reeves, Fig. 2). Moreover, Appellant fails to provide an adequate explanation as to why the Examiner erred in finding that the claim 2 limitations are met by the combination of Reeves and Tuatini. In any event, we note that the Federal Circuit has held that the Board may adopt a claim construction of a disputed term that neither party proposes without running afoul of the APA. See, e.g., Praxair Distrib., Inc. v. Mallinckrodt Hosp. Prods. IP Ltd., 890 F.3d 1024, 1034 (Fed. Cir. 2018) (rejecting argument that Board violated patent owner’s “procedural rights by adopting a claim construction that neither party proposed”); WesternGeco LLC v. ION Geophysical Corp., 889 F.3d 1308, 1328 (Fed. Cir. 2018) (“The Board is not bound to adopt either party’s preferred articulated construction of a disputed claim term.”). Parties are well aware that the Board may stray from disputed, proposed constructions. See WesternGeco, 889 F.3d at 1328 (“Having put it at issue, WesternGeco was well aware that the Board could alter its construction in the final written decision.”). Additionally, we note that the limitations “provisioning” and “execution” are non-functional descriptive material because the claim does not recite a function for either term. That is, the informational content of non-functional descriptive material is not entitled to weight in the patentability analysis. See Ex parte Nehls, 88 USPQ2d 1883, 1887–90 (BPAI 2008) (precedential); Ex parte Curry, 84 USPQ2d 1272 (BPAI 2005) (informative) (Federal Circuit Appeal No. 2006-1003), aff’d, Rule 36 (June 12, 2006)); Ex parte Mathias, 84 USPQ2d 1276 (BPAI 2005) (informative), aff’d, 191 F. App’x 959 (Fed. Cir. 2006); see also Spec. ¶¶ 22–23 (discussing provisioning and execution in the context of an “example”). As Appeal 2020-003144 Application 15/879,818 9 a result, we need not decide whether the combination of Reeves and Tuatini teaches the limitations “provisioning” and “execution.” Appellant does not argue claim 12 separately with particularity. Appeal Br. 10–14. Accordingly, we sustain the Examiner’s rejection of claims 2 and 12 under 35 U.S.C. § 103. We have only considered those arguments that Appellant actually raised in the Briefs. Arguments Appellant could have made, but chose not to make, in the Briefs have not been considered and are deemed to be waived. See 37 C.F.R. § 41.37(c)(1)(iv). III. Claims 8 and 18 Rejected Under 35 U.S.C. § 103 Claim 8 depends from claim 1 and further recites: The computing system of claim 1, wherein to subsequently launch the hierarchically configured application within the second container of the container application platform based on the one or more serialized data structures is to: deserialize each instance of each service of the one or more services from the one or more serialized data structures; determine, based on the one or more serialized data structures, whether one or more dependencies exist for each instance of each service of the one or more services; responsive to determining that one or more dependencies exist for each instance of each service of the one or more services, set the one or more dependencies; install the hierarchically configured application into the second container of the container application platform; and execute the hierarchically configured application within the second container. Appeal 2020-003144 Application 15/879,818 10 The Examiner finds Reeves teaches identifying sets of environment independent and dependent attributes and Tuatini teaches deserializing messages and returning a Java object representing the message such that the method performs any processing necessary, which the Examiner maps to the limitation deserializ[ing] each instance of each service of the one or more services from the one or more serialized data structures; determin[ing], based on the one or more serialized data structures, whether one or more dependencies exist for each instance of each service of the one or more services; [and] responsive to determining that one or more dependencies exist for each instance of each service of the one or more services, set[ting] the one or more dependencies recited in claim 8. Ans. 8–10; 25–26 (citing Reeves, 3:24–42, 14:47–60; Tuatini ¶ 83); Final Act. 6–8 (citing Reeves, 14:47–60; Tuatini ¶ 83). Appellant argues Reeves merely teaches sets of environment independent and dependent attributes and Tuatini merely teaches deserializing a message and returning a Java object representing the message, but the combination fails to teach the limitation from the preceding paragraph. Appeal Br. 13; Reply Br. 5. We agree with Appellant. The cited portions of Reeves teach identifying sets of environment independent and dependent attributes and the cited portions of Tuatini teach deserializing messages and returning a Java object representing the message such that the method performs any processing necessary. Ans. 8–10; 25–26 (citing Reeves, 3:24–42, 14:47–60; Tuatini ¶ 83); Final Act. 6–8 (citing Reeves, 14:47–60; Tuatini ¶ 83). However, claim 8 requires a nexus (i.e., the “based on the one or more serialized data structures” limitation) between: (1) the limitation “determin[ing] . . . whether one or more Appeal 2020-003144 Application 15/879,818 11 dependencies exist for each instance of each service of the one or more services” and (2) a preceding condition of “deserializ[ing] each instance of each service of the one or more services from the one or more serialized data structures.” Stated another way, the cited portions of Reeves and Tuatini fail to teach that a preceding condition of “deserializ[ing] each instance of each service of the one or more services from the one or more serialized data structures” triggers the result of “determin[ing] . . . whether one or more dependencies exist for each instance of each service of the one or more services” as required by claim 8. Nor has the Examiner adequately explained how this “based on the one or more serialized data structures” limitation is met. See Ans. 8–10; 25–26 (lacking a sufficient explanation as to the limitation “based on the one or more serialized data structures” recited in claim 8); Final Act. 6–8 (lacking a sufficient explanation as to the limitation “based on the one or more serialized data structures” recited in claim 8). Therefore, Appellant persuades us of error with respect to claim 8, and claim 18 which has similar language. Accordingly, we reverse the Examiner’s rejection of claims 8 and 18 under 35 U.S.C. § 103. Appeal 2020-003144 Application 15/879,818 12 CONCLUSION No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a)(1)(iv). See 37 C.F.R. § 1.136(a)(1)(iv). AFFIRMED IN PART Claim(s) Rejected 35 U.S.C. § Reference(s)/Basis Affirmed Reversed 1, 2, 8, 11, 12, 18, 20 103 Reeves, Tuatini 1, 2, 11, 12, 20 8, 18 3–7, 13–17 103 Reeves, Tuatini, Wipfel 3–7, 13–17 9 103 Reeves, Tuatini, Chouhan 9 10 103 Reeves, Tuatini, Liggitt 10 19 103 Reeves, Tuatini, Chouhan, Liggitt 19 Overall Outcome 1–7, 9–17, 19, 20 8, 18 Copy with citationCopy as parenthetical citation