HEWLETT PACKARD ENTERPRISE DEVELOPMENT LPDownload PDFPatent Trials and Appeals BoardMay 6, 20212020000960 (P.T.A.B. May. 6, 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/340,102 11/01/2016 Avigad Mizrahi 90257422 1096 146568 7590 05/06/2021 MICRO FOCUS LLC 500 Westover Drive #12603 Sanford, NC 27330 EXAMINER TSUI, WILSON W ART UNIT PAPER NUMBER 2178 NOTIFICATION DATE DELIVERY MODE 05/06/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): software.ip.mail@microfocus.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE ____________ BEFORE THE PATENT TRIAL AND APPEAL BOARD ____________ Ex parte AVIGAD MIZRAHI, ELAD LEVI, and RAN BAR ZIK ____________ Appeal 2020-000960 Application 15/340,102 Technology Center 2100 ____________ Before JOHN A. JEFFERY, KRISTEN L. DROESCH, and BETH Z. SHAW, Administrative Patent Judges. JEFFERY, Administrative Patent Judge. DECISION ON APPEAL Under 35 U.S.C. § 134(a), Appellant1 appeals from the Examiner’s decision to reject claims 1–23. We have jurisdiction under 35 U.S.C. § 6(b). We AFFIRM. 1 We use the word “Appellant” to refer to “applicant” as defined in 37 C.F.R. § 1.42. Appellant identifies the real party in interest as EntIT Software LLC. Appeal Br. 3. Appeal 2020-000960 Application 15/340,102 2 STATEMENT OF THE CASE Appellant’s invention toggles an application’s feature flags based on user sentiment that is inferred from the user’s biometric data while the user uses the application to enable or disable executable code based on the inferred sentiment. See Abstract; Spec. ¶ 10. Claim 1 is illustrative: A non-transitory computer-readable storage medium comprising instructions executable by a processor to: infer a user sentiment of an end user that is interacting with an application executing on a client computing device based on biometric data of the end user; and toggle a feature flag of the application to enable or disable an associated section of executable code based on the inferred user sentiment. Appeal Br. 22 (Claims Appendix). THE REJECTIONS The Examiner rejected claims 1–23 under 35 U.S.C. § 101 as ineligible. Ans. 3–8.2 The Examiner rejected claims 1–3, 5, 9–12, 15, 16, and 18–21 under 35 U.S.C. § 102(a)(2) as anticipated by DeLaet (US 9,669,297 B1; issued June 6, 2017). Ans. 9–15. The Examiner rejected claims 4 and 6–8 under 35 U.S.C. § 103 as unpatentable over DeLaet and Kamal (US 2015/0113262 A1; published Apr. 23, 2015). Ans. 15–17. 2 Throughout this opinion, we refer to (1) the Appeal Brief filed May 31, 2019 (“Appeal Br.”); (2) the Examiner’s Answer mailed September 19, 2019 (“Ans.”); and (4) the Reply Brief filed November 18, 2019 (“Reply Br.”). Appeal 2020-000960 Application 15/340,102 3 The Examiner rejected claim 13 under 35 U.S.C. § 103 as unpatentable over DeLaet and Rassi (US 2013/0080437 A1; published Mar. 28, 2013). Ans. 17–18. The Examiner rejected claim 14 under 35 U.S.C. § 103 as unpatentable over DeLaet, Rassi, and Nichols (US 2013/0127909 A1; published May 23, 2013). Ans. 19. The Examiner rejected claim 17 under 35 U.S.C. § 103 as unpatentable over DeLaet and Verma (US 2007/0162256 A1; published July 12, 2007). Ans. 20. The Examiner rejected claim 22 under 35 U.S.C. § 103 as unpatentable over DeLaet and Abraham (US 2006/0195328 A1; published Aug. 31, 2006). Ans. 21. The Examiner rejected claim 23 under 35 U.S.C. § 103 as unpatentable over DeLaet and Mills (US 2011/0016240 A1; published Jan. 20, 2011). Ans. 22–23. THE INELIGIBILITY REJECTION The Examiner determines that the claimed invention is directed to an abstract idea, namely a mental process that is not integrated into a practical application. See Ans. 3–4. According to the Examiner, the additional recited computer elements, including the recited client computing device, application, processor, and memory, perform generic computer functions that do not add significantly more to the abstract idea. See Ans. 3– 4, 23–31. Appellant argues that the claimed invention is eligible because, among other things, it is not directed to a judicial exception. Appeal Br. 7–9; Reply Appeal 2020-000960 Application 15/340,102 4 Br. 1–2. According to Appellant, not only does the claimed invention not fall within any of the enumerated categories under the U.S. Patent & Trademark Office (USPTO) eligibility guidelines, it is unclear how toggling an application’s feature flag based on an inferred user sentiment as claimed can occur entirely mentally. Appeal Br. 7–9; Reply Br. 1–2. Appellant adds that each claim as a whole integrates the purported recited judicial exception into a practical application by (1) being necessarily rooted in, and inextricably tied to, computer technology, and (2) improving that technology, namely by improving an application based on biometric data that is used as a basis to enable or disable feature flags. Appeal Br. 9–10; Reply Br. 2. Appellant also contends that each claim amounts to significantly more than the purported judicial exception because the claims are directed to inventive concepts. Appeal Br. 10–12; Reply Br. 2. According to Appellant, the Examiner fails to satisfy the requisite evidentiary burden to show that any of the purported additional elements, including toggling a feature flag based on inferred user sentiment, are well-understood, routine, or conventional. Appeal Br. 11–12; Reply Br. 2. ISSUE Under § 101, has the Examiner erred in rejecting claims 1–13 as directed to ineligible subject matter? This issue turns on whether the claims are directed to an abstract idea and, if so, whether the recited elements— considered individually and as an ordered combination—transform the nature of the claims into a patent-eligible application of that abstract idea. Appeal 2020-000960 Application 15/340,102 5 PRINCIPLES OF LAW An invention is patent-eligible if it claims a “new and useful process, machine, manufacture, or composition of matter.” 35 U.S.C. § 101. However, the Supreme Court has long interpreted 35 U.S.C. § 101 to include implicit exceptions: “[l]aws of nature, natural phenomena, and abstract ideas” are not patentable. See, e.g., Alice Corp. v. CLS Bank Int’l, 573 U.S. 208, 216 (2014). In determining whether a claim falls within an excluded category, we are guided by the Supreme Court’s two-step framework, described in Mayo and Alice. Id. at 217–18 (citing Mayo Collaborative Servs. v. Prometheus Labs., Inc., 566 U.S. 66, 75–77 (2012)). In accordance with that framework, we first determine what concept the claim is “directed to.” See Alice, 573 U.S. at 219 (“On their face, the claims before us are drawn to the concept of intermediated settlement, i.e., the use of a third party to mitigate settlement risk.”); see also Bilski v. Kappos, 561 U.S. 593, 611 (2010) (“Claims 1 and 4 in petitioners’ application explain the basic concept of hedging, or protecting against risk.”). Concepts determined to be abstract ideas, and thus patent ineligible, include certain methods of organizing human activity, such as fundamental economic practices (Alice, 573 U.S. at 219–20; Bilski, 561 U.S. at 611); mathematical formulas (Parker v. Flook, 437 U.S. 584, 594–95 (1978)); and mental processes (Gottschalk v. Benson, 409 U.S. 63, 67 (1972)). Concepts determined to be patent eligible include physical and chemical processes, such as “molding rubber products” (Diamond v. Diehr, 450 U.S. 175, 191 (1981)); “tanning, dyeing, making water-proof cloth, vulcanizing India rubber, smelting ores” (id. at 182 n.7 (quoting Corning v. Burden, 56 U.S. Appeal 2020-000960 Application 15/340,102 6 (15 How.) 252, 267–68 (1854))); and manufacturing flour (Benson, 409 U.S. at 67 (citing Cochrane v. Deener, 94 U.S. 780, 785 (1876))). In Diehr, the claim at issue recited a mathematical formula, but the Supreme Court held that “a claim drawn to subject matter otherwise statutory does not become nonstatutory simply because it uses a mathematical formula.” Diehr, 450 U.S. at 187; see also id. at 191 (“We view respondents’ claims as nothing more than a process for molding rubber products and not as an attempt to patent a mathematical formula.”). That said, the Supreme Court also indicated that a claim “seeking patent protection for that formula in the abstract . . . is not accorded the protection of our patent laws, . . . and this principle cannot be circumvented by attempting to limit the use of the formula to a particular technological environment.” Id. (citing Benson and Flook); see, e.g., id. at 187 (“It is now commonplace that an application of a law of nature or mathematical formula to a known structure or process may well be deserving of patent protection.”). If the claim is “directed to” an abstract idea, we turn to the second step of the Alice and Mayo framework, where “we must examine the elements of the claim to determine whether it contains an ‘inventive concept’ sufficient to ‘transform’ the claimed abstract idea into a patent- eligible application.” Alice, 573 U.S. at 221 (quotation marks omitted). “A claim that recites an abstract idea must include ‘additional features’ to ensure ‘that the [claim] is more than a drafting effort designed to monopolize the [abstract idea].’” Id. (alterations in original) (quoting Mayo, 566 U.S. at 77). “[M]erely requir[ing] generic computer implementation[] fail[s] to transform that abstract idea into a patent-eligible invention.” Id. Appeal 2020-000960 Application 15/340,102 7 Under the subject matter eligibility guidance in the Manual of Patent Examining Procedure (MPEP) (9th ed. Rev. 10.2019, June 2020), we first look to whether the claim recites: (1) any judicial exceptions, including certain groupings of abstract ideas (i.e., mathematical concepts, certain methods of organizing human activity such as a fundamental economic practice, or mental processes) (see MPEP § 2106.04); and (2) additional elements that integrate the judicial exception into a practical application (see MPEP §§ 2106.04, 2106.04(d), 2106.05(a)–(c), (e)–(h)). Only if a claim (1) recites a judicial exception, and (2) does not integrate that exception into a practical application, do we then look to whether the claim: (3) adds a specific limitation beyond the judicial exception that is not well-understood, routine, and conventional in the field (see MPEP § 2106.05(d)); or (4) simply appends well-understood, routine, and conventional activities previously known to the industry, specified at a high level of generality, to the judicial exception. See MPEP § 2106.05. ANALYSIS Claims 1–17 and 21–23: Alice/Mayo Step One Representative independent claim 1 recites a non-transitory computer- readable storage medium comprising instructions executable by a processor to perform two functions, namely (1) “infer a user sentiment of an end user that is interacting with an application executing on a client computing device Appeal 2020-000960 Application 15/340,102 8 based on biometric data of the end user”; and (2) “toggle a feature flag of the application to enable or disable an associated section of executable code based on the inferred user sentiment.” As the Specification explains, a feature flag, also known as a feature toggle, is a coding technique where a software application’s features may be toggled by, for example, enabling, disabling, or hiding those features. Spec. ¶ 1. Feature flags can be used to test an application with different users by selectively deploying features of an application. Id. ¶ 8. In this environment, a feature flag can be implemented as an “if-else” or equivalent statement in the application’s code according to parameters, such as logged user role, the user’s geographic location, randomly selected users, etc., and the features toggled, namely enabled or disabled, according to those parameters. Id. ¶ 9. This toggling, however, may not account for a sufficient amount of user information and, therefore, features may not be selectively deployed in a way that optimizes testing. Id. Appellant’s invention overcomes this drawback by toggling an application’s feature flags based on user “sentiment” that is inferred from the user’s biometric data while the user uses the application. Spec. ¶ 10. This “sentiment” is the end user’s attitude, for example, towards the application being used by that user. Id. This attitude may be an affective state of the end user, such as a feeling or emotion. Id. To infer this user “sentiment,” biometric data is collected and logged, including actions and states, such as (1) mouse clicks; (2) mouse movements; (3) screen touches; (4) text inputs; (5) sequences of pressed keyboard keys; (6) facial expressions captured by a camera on a client computing device; (7) geolocation; (8) client computing device movements; Appeal 2020-000960 Application 15/340,102 9 etc. See Spec. ¶¶ 19, 27–30. For example, Appellant’s Table 1 shows that a mouse movement’s speed can indicate a user sentiment with different types of negative emotions: a very fast mouse movement can indicate an angry user, but a slow mouse movement can indicate an upset user. See Spec. ¶ 28. On the other hand, a straight or smooth mouse movement can indicate the user’s positive emotions. See id. Turning to claim 1, we first note that the claim recites a computer- readable storage medium and, therefore, falls within the manufacture category of § 101. But despite falling within this statutory category, we must still determine whether the claim is directed to a judicial exception, namely an abstract idea. See Alice, 573 U.S. at 217. To this end, we must determine whether the claim (1) recites a judicial exception, and (2) fails to integrate the exception into a practical application. See MPEP § 2106.04(II). If both elements are satisfied, the claim is directed to a judicial exception under the first step of the Alice/Mayo test. See id. The Examiner determines that claim 1 is directed to an abstract idea, namely a mental process, which is said to lack integration into a practical application. See Ans. 3–4, 24–26. To determine whether a claim recites an abstract idea, we (1) identify the claim’s specific limitations that recite an abstract idea, and (2) determine whether the identified limitations fall within Appeal 2020-000960 Application 15/340,102 10 certain subject matter groupings, namely, (a) mathematical concepts3; (b) certain methods of organizing human activity4; or (c) mental processes.5 Here, apart from the recited (1) “computer-readable storage medium comprising instructions executable by a processor”; (2) “application executing on a client computing device”; (3) “toggling a feature flag of the application”; and (4) “executable code,” all of claim 1’s recited limitations fit squarely within at least one of the above categories of the USPTO’s eligibility guidelines. When read as a whole, the recited limitations are directed to allowing or prohibiting particular application features based on the user’s sentiment determined while using the application. That is, apart from the recited (1) “computer-readable storage medium comprising instructions executable by a processor”; (2) “application executing on a client computing device”; (3) “toggling a feature flag of the application”; and (4) “section of executable code,” the claimed limitations recite mental processes and certain methods of organizing human activity. See MPEP §§ 2106.04(a)(2)(II)–(III). 3 Mathematical concepts include mathematical relationships, mathematical formulas or equations, and mathematical calculations. See MPEP §§ 2106.04(a), 2106.04(a)(2)(I). 4 Certain methods of organizing human activity include fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including social activities, teaching, and following rules or instructions). See MPEP §§ 2106.04(a), 2106.04(a)(2)(II). 5 Mental processes are concepts performed in the human mind including an observation, evaluation, judgment, or opinion. See MPEP §§ 2106.04(a), 2106.04(a)(2)(III). Appeal 2020-000960 Application 15/340,102 11 First, the limitation calling for “infer[ring] a user sentiment of an end user that is interacting with an application based on biometric data of the end user” can be done entirely mentally by merely (1) observing the user’s facial expressions, physical movements, and other behavior while the user interacts with the application, and (2) drawing an inference from that observation using judgment and logical reasoning. Cf. CyberSource Corp. v. Retail Decisions, Inc., 654 F.3d 1366, 1372 (Fed. Cir. 2011) (noting that a recited step that utilized a map of credit card numbers to determine validity of a credit card transaction could be performed entirely mentally by using logical reasoning to identify a likely instance of fraud by merely observing that numerous transactions using different credit cards all originated from the same IP address). Therefore, the recited user sentiment inference fits squarely within the mental processes category of the USPTO’s eligibility guidelines and, therefore, recites an abstract idea. See MPEP §§ 2106.04(a), 2106.04(a)(2)(III). Second, the limitation calling for “enabl[ing] or disabl[ing] an associated [application feature] based on the inferred user sentiment” also recites an abstract idea by merely allowing or prohibiting the user to use a particular application feature based on that inferred sentiment. That is, an observer, such as the user’s supervisor or parent, may decide that a particular application feature is inappropriate for that user based on the user’s observed reaction to the application, and simply not allow the user to use that feature. On the other hand, the observer, namely the user’s supervisor or parent, could allow the user to use a particular application feature based on the user’s observed reaction to the application. In either case, the observer Appeal 2020-000960 Application 15/340,102 12 effectively enables or disables that particular feature, at least with respect to that particular user. In short, allowing or prohibiting a user from using a particular application feature effectively manages personal behavior, relationships, or interactions between people, including following rules or instructions. Cf. DISH Network Corp. v. Customedia Technologies, LLC, CBM2017-00019, Paper 56 at 54–55 (PTAB July 25, 2018) (Final Written Decision) (holding ineligible claim reciting a system allowing no more than a specified number of audio, video, or music programs to be recorded onto a portable storage device as directed to an abstract idea), aff’d, 783 F. App’x 1041 (Fed. Cir. 2019) (non-precedential) (Rule 36); VeriPath, Inc. v. Didomi, 2021 WL 422817, at *1–3 (Fed. Cir. 2021) (non-precedential) (holding ineligible claim reciting, in pertinent part, (1) presenting an offer to a user to provide access to an enhanced function of an application in exchange for a required permission; and (2) providing the user with access to that enhanced function responsive to the user providing the required permission as directed to an abstract idea); Ericsson Inc. v. TCL Comm. Tech. Holdings Ltd., 955 F.3d 1317, 1325–31 (Fed. Cir. 2020) (holding ineligible claimed platform access control system that recited, in pertinent part, (1) an interception module for receiving a request from requesting application domain software to access a software services component; (2) a security access manager for determining if the request should be granted, and if so, granting access to the software services component via an interface as directed to the abstract idea of controlling access to resources). Accordingly, the recited enablement or disablement based on inferred user sentiment fits squarely within the certain methods of organizing human activity category of the USPTO’s eligibility Appeal 2020-000960 Application 15/340,102 13 guidelines and, therefore, recites an abstract idea. See MPEP §§ 2106.04(a), 2106.04(a)(2)(II). Notably, the (1) “computer-readable storage medium comprising instructions executable by a processor”; (2) “application executing on a client computing device”; (3) “toggling a feature flag of the application”; and (4) “section of executable code,” are the only recited elements beyond the abstract idea, but these additional elements, considered individually and in combination, do not integrate the abstract idea into a practical application when reading claim 1 as a whole. First, we are not persuaded that the claimed invention improves a computer or its components’ functionality or efficiency, or otherwise changes the way those devices function, at least in the sense contemplated by the Federal Circuit in Enfish LLC v. Microsoft Corporation, 822 F.3d 1327 (Fed. Cir. 2016). The claimed self-referential table in Enfish was a specific type of data structure designed to improve the way a computer stores and retrieves data in memory. Enfish, 822 F.3d at 1339. To the extent Appellant contends that the claimed invention uses such a data structure to improve a computer’s functionality or efficiency, or otherwise change the way that device functions, there is no persuasive evidence on this record to substantiate such a contention. To the extent that Appellant contends that the claimed invention is rooted in technology because it is ostensibly directed to a technical solution (see Appeal Br. 9–16; Reply Br. 2–8), we disagree. Even assuming, without deciding, that the claimed invention can allow or prohibit particular application features based on the user’s sentiment determined while using the application faster or more efficiently than doing so manually, any speed Appeal 2020-000960 Application 15/340,102 14 or efficiency increase comes from the capabilities of the generic computer components—not the recited process itself. See FairWarning IP, LLC v. Iatric Systems, Inc., 839 F.3d 1089, 1095 (Fed. Cir. 2016) (citing Bancorp Services, LLC v. Sun Life Assurance Co., 687 F.3d 1266, 1278 (Fed. Cir. 2012) (“[T]he fact that the required calculations could be performed more efficiently via a computer does not materially alter the patent eligibility of the claimed subject matter.”)); see also Intellectual Ventures I LLC v. Erie Indemnity Co., 711 F. App’x 1012, 1017 (Fed. Cir. 2017) (non-precedential) (“Though the claims purport to accelerate the process of finding errant files and to reduce error, we have held that speed and accuracy increases stemming from the ordinary capabilities of a general-purpose computer ‘do not materially alter the patent eligibility of the claimed subject matter.’” (citation omitted)). Like the claims in FairWarning, the focus of claim 1 is not on an improvement in computer processors as tools, but on certain independently abstract ideas that use generic computing components as tools. See FairWarning, 839 F.3d at 1095. Nor is this invention analogous to that which the court held eligible in McRO, Inc. v. Bandai Namco Games America, Inc., 837 F.3d 1299 (Fed. Cir. 2016), despite Appellant’s arguments to the contrary (Appeal Br. 9). There, the claimed process used a combined order of specific rules that rendered information in a specific format that was applied to create a sequence of synchronized, animated characters. McRO, 837 F.3d at 1315. Notably, the recited process automatically animated characters using particular information and techniques—an improvement over manual three- dimensional animation techniques that was not directed to an abstract idea. Id. at 1316. Appeal 2020-000960 Application 15/340,102 15 But unlike the claimed invention in McRO that improved how the physical display operated to produce better quality images, the claimed invention here allows or prohibits particular application features based on the user’s sentiment determined while using the application. This generic computer implementation is not only directed to mental processes and certain methods of organizing human activity, but also does not improve a display mechanism as was the case in McRO. See SAP Am. v. InvestPic, LLC, 898 F.3d 1161, 1167 (Fed. Cir. 2018) (distinguishing McRO). Rather, Appellant’s claimed invention is more analogous to that which the court held ineligible in Zuili v. Google LLC, 722 F. App’x 1027, 1029– 31 (Fed. Cir. 2018) (non-precedential). There, the court held ineligible claims directed to abstract idea of collecting, transmitting, analyzing, and storing data to detect fraudulent and/or invalid clicks based on the time between two requests by the same device or client. Zuili, 722 F. App’x at 1030. Our emphasis underscores that the claimed invention in Zuili effectively inferred a user’s “sentiment,” namely fraudulent behavior, based on the user’s interaction with an application by measuring the time between the user’s clicks on a certain link. See id. at 1030–31. The claimed invention in Zuili also effectively enabled a section of executable code based on that inferred user sentiment, namely code associated with detected fraudulent activity. See id. Appellant’s claimed invention is also analogous to that which the court held ineligible in Performance Pricing Holdings, LLC v. Google LLC, 757 F. App’x 1013 (Fed. Cir. 2019) (non-precedential). There, the court summarily affirmed the Board’s decision holding ineligible a claimed system for presenting an advertisement message to viewers of a website Appeal 2020-000960 Application 15/340,102 16 where the system (1) detected a quantity of actions performed by users of at least one viewer computer, and (2) decreased the advertising message’s cost per impression as the quantity of detected actions increased. See Google Inc. v. Performance Pricing Holdings, LLC, CBM2016-00050, Paper 33 at 4–32 (PTAB Sept. 13, 2017) (Final Written Decision), aff’d, 783 F. App’x 1041 (Fed. Cir. 2019) (non-precedential) (Rule 36). Our emphasis underscores that the claimed invention in Google effectively inferred a user’s “sentiment,” namely interest in a particular advertisement, based on the user’s interaction with an application by detecting and counting the user’s actions on a computer on which the message was viewed. See Google at 4–5, 18–21. The claimed invention in Google also effectively enabled a section of executable code based on that inferred user sentiment, namely code associated with decreasing the cost per impression as the number of detected user actions increased. See id. Appellant’s claimed invention is likewise analogous to that which the court held ineligible in Trading Technologies International, Inc. v. IBG LLC, 921 F.3d 1084 (Fed. Cir. 2019). There, the court held ineligible a claimed computer-based method for facilitating and placing an order for an item that, among other things, (1) selected and moved an order icon with a user input device to a location associated with a price along an associated price axis; and (2) sent an order associated with the icon, where the order’s parameters included the particular item’s quantity and price corresponding to the location at which the icon was moved. Trading Technologies, 921 F.3d at 1088, 1092–93. Our emphasis underscores that the claimed invention in Trading Technologies effectively inferred a user’s “sentiment,” namely interest in a particular item, including its quantity and price, based on the Appeal 2020-000960 Application 15/340,102 17 user’s interaction with an application by detecting the particular location on a display where the user moved a selected icon associated with that item with an input device. See id. The claimed invention in Trading Technologies also effectively enabled a section of executable code based on that inferred user sentiment, namely code associated with sending an order consistent with the parameters indicated by the location to which the user moved the selected icon. See id. On this record, then, the claimed invention does not recite additional elements that (1) improve a computer itself; (2) improve another technology or technical field; (3) implement the abstract idea in conjunction with a particular machine or manufacture that is integral to the claim; (4) transform or reduce a particular article to a different state or thing; or (5) apply or use the abstract idea in some other meaningful way beyond generally linking the abstract idea’s use to a particular technological environment, such that the claim as a whole is more than a drafting effort designed to monopolize the exception. See MPEP §§ 2106.04(d)(I), 2106.05(a)–(c), (e). In short, the claim’s additional elements do not integrate the abstract idea into a practical application when reading claim 1 as a whole. In conclusion, although the recited functions may be beneficial by allowing or prohibiting particular application features based on the user’s sentiment determined while using the application, a claim for a useful or beneficial abstract idea is still an abstract idea. See Ariosa Diagnostics, Inc. v. Sequenom, Inc., 788 F.3d 1371, 1379–80 (Fed. Cir. 2015). We, therefore, agree with the Examiner that claim 1 is directed to an abstract idea. Appeal 2020-000960 Application 15/340,102 18 Claims 1–17 and 21–23: Alice/Mayo Step Two Turning to Alice/Mayo step two, claim 1’s additional recited elements, namely the recited (1) “computer-readable storage medium comprising instructions executable by a processor”; (2) “application executing on a client computing device”; (3) “toggling a feature flag of the application”; and (4) “section of executable code”—considered individually and as an ordered combination—do not provide an inventive concept that amounts to significantly more than the abstract idea when reading claim 1 as a whole. See Alice, 573 U.S. at 221; see also MPEP § 2106.05. As noted above, the claimed invention merely uses generic computing components to implement the recited abstract idea. Here, the claimed (1) “computer-readable storage medium comprising instructions executable by a processor”; (2) “application executing on a client computing device”; (3) “toggling a feature flag of the application”; and (4) “section of executable code” are the additional recited elements whose generic computing functionality is well-understood, routine, and conventional. See Fair Warning, 839 F.3d at 1096 (noting that using generic computing components like a microprocessor or user interface do not transform an otherwise abstract idea into eligible subject matter); accord Spec. ¶¶ 74–77 (disclosing various general-purpose computer components used to implement the invention); Ans. 4, 6 (citing this disclosure). To the extent that Appellant contends that the recited limitations other than the four additional elements enumerated above, namely those detailed above in connection with Alice step one, add significantly more to the abstract idea to provide an inventive concept under Alice/Mayo step two (see Appeal 2020-000960 Application 15/340,102 19 Appeal Br.), these limitations are not additional elements beyond the abstract idea, but rather are directed to the abstract idea as noted previously. See BSG Tech LLC v. Buyseasons, Inc., 899 F.3d 1281, 1290 (Fed. Cir. 2018) (explaining that the Supreme Court in Alice “only assessed whether the claim limitations other than the invention’s use of the ineligible concept to which it was directed were well-understood, routine and conventional” (emphasis added)); see also MPEP §§ 2106.05(II), 2106.05(d) (instructing that additional recited elements should be evaluated in Alice/Mayo step two to determine whether they (1) add specific limitations that are not well- understood, routine, and conventional in the field, or (2) simply append well-understood, routine, and conventional activities previously known to the industry). Rather, the claimed (1) “computer-readable storage medium comprising instructions executable by a processor”; (2) “application executing on a client computing device”; (3) “toggling a feature flag of the application”; and (4) “section of executable code” are additional recited elements whose generic computing functionality is well-understood, routine, and conventional. See Mortgage Grader, Inc. v. First Choice Loan Servs. Inc., 811 F.3d 1314, 1324–25 (Fed. Cir. 2016) (noting that components such an “interface,” “network,” and “database” are generic computer components that do not satisfy the inventive concept requirement); accord Spec. ¶ 1 (noting in the Background section that a feature flag is a coding technique where an application’s features can be toggled); ¶¶ 8–9 (describing using feature flags in known continuous delivery applications); ¶ 51 (describing generic computer components used to implement the invention); Ans. 4, 24– 26, 30–31 (determining that the recited additional elements are generic Appeal 2020-000960 Application 15/340,102 20 computing components that do not add significantly more to the abstract idea). Appellant’s contention that the Examiner allegedly did not comply with the USPTO’s evidentiary requirements for ineligibility rejections after Berkheimer v. HP, Inc., 881 F.3d 1360, 1369 (Fed. Cir. 2018) (Appeal Br. 11–12; Reply Br. 2) is unavailing. To be sure, the Examiner must show— with supporting facts—that certain claim elements are well-understood, routine, and conventional where such a finding is made. See Berkheimer, 881 F.3d at 1369 (noting that whether something is well-understood, routine, and conventional to a skilled artisan at the time of the invention is a factual determination). In light of this factual determination, the USPTO requires that Examiners support a finding that an additional element, or combination of additional elements, is well-understood, routine, and conventional. See MPEP § 2106.05(d)(I)(2). As noted previously, the recited (1) “computer-readable storage medium comprising instructions executable by a processor”; (2) “application executing on a client computing device”; (3) “toggling a feature flag of the application”; and (4) “section of executable code” are additional recited elements whose generic computing functionality is well-understood, routine, and conventional. Therefore, to the extent that Appellant contends that the Examiner failed to provide evidence that all recited elements—including those other than the additional elements enumerated above—are well- understood, routine, and conventional (see Appeal Br. 11–12; Reply Br. 2), such an argument is not commensurate with the more limited scope of the Examiner’s finding in this regard. Rather, the Examiner’s finding is that the elements other than the abstract idea, namely the additional computer- Appeal 2020-000960 Application 15/340,102 21 based elements, provide generic computing functionality that is well- understood, routine, and conventional. See Ans. 4, 24–26, 30–31 (noting that the recited additional elements are conventional generic computing components and, therefore, do not add significantly more to the abstract idea). As noted previously, there is ample evidence of this generic computing functionality in not only the cited case law, but also Appellant’s own Specification. See, e.g., FairWarning, 839 F.3d at 1096 (noting that using generic computing components like a microprocessor or user interface do not transform an otherwise abstract idea into eligible subject matter); Spec. ¶ 1 (noting in the Background section that a feature flag is a coding technique where an application’s features can be toggled); ¶¶ 8–9 (describing using feature flags in known continuous delivery applications); ¶ 51 (describing generic computer components used to implement the invention); Ans. 30–32 (citing relevant authority). In conclusion, the additional recited elements—considered individually and as an ordered combination—do not add significantly more to the abstract idea to provide an inventive concept under Alice/Mayo step two when reading claim 1 as a whole. See Alice, 573 U.S. at 221; see also MPEP § 2106.05. Therefore, we are not persuaded that the Examiner erred in rejecting claim 1, and claims 2–17 and 21–23 not argued separately with particularity. Appeal 2020-000960 Application 15/340,102 22 Claims 18–20 We also sustain the Examiner’s ineligibility rejection of claims 18–20 for reasons similar to those indicated previously in connection with claim 1 as well as those indicated by the Examiner. See Ans. 6–8, 26–31. Independent claim 18 recites, in pertinent part, a memory comprising instructions executable by a processor to estimate whether a user sentiment is positive, negative, or neutral based on biometric data units, and, based on this estimated sentiment, toggling an application feature to enable or disable an associated executable code section using an application feature flag. Despite Appellant’s arguments to the contrary (Appeal Br. 8–9), the minor recited distinctions emphasized above do not alter our determination that the claim as a whole is directed to an abstract idea for the reasons noted above and by the Examiner We reach the same conclusion regarding claims 19 and 20. Independent claim 19 recites a processor that (1) collects biometric data associated with an end user from a client computing device hosting an application operated by that user; (2) determining user sentiment data representing a user sentiment based on the biometric data; and (3) toggling an application’s feature flag to enable or disable a section of executable code based on the determined user sentiment data. Despite Appellant’s arguments to the contrary (Appeal Br. 9), these minor recited distinctions emphasized above do not alter our determination that the claims as a whole are directed to an abstract idea for the reasons noted above and by the Examiner. Therefore, we are not persuaded that the Examiner erred in rejecting claims 18–20. Appeal 2020-000960 Application 15/340,102 23 THE ANTICIPATION REJECTION Regarding independent claim 1, the Examiner finds that DeLaet discloses a computer-readable storage medium with instructions executable by a processor to (1) infer a user sentiment, namely the mood, of an end user interacting with an application based on the user’s biometric data, and (2) toggle a feature flag of the application to enable an associated section of executable code, namely code associated with a presenting game content, such as notification, hints, or virtual item availability, based on the inferred sentiment. Final Act. 9; Ans. 32. In reaching this finding, the Examiner interprets the recited feature flag as any logical action that identifies a certain feature to invoke the feature. Ans. 32. Appellant argues that DeLaet does not toggle an application’s feature flag to enable or disable an enable an associated section of executable code based on inferred user sentiment as claimed. Appeal Br. 13–14; Reply Br. 3–4. According to Appellant, DeLaet does not disclose a feature flag, much less toggle a feature flag as claimed. Appeal Br. 13–14; Reply Br. 3– 4. Appellant adds that DeLaet does not inherently toggle a feature flag because identifying and presenting online game content may be done in ways other than toggling a feature flag as claimed. Appeal Br. 13. Appellant argues other recited limitations summarized below. ISSUE Under § 102, has the Examiner erred by finding that DeLaet discloses a computer-readable storage medium with instructions executable by a processor to: Appeal 2020-000960 Application 15/340,102 24 (1) toggle a feature flag of an application to enable or disable an associated section of executable code based on an inferred user sentiment as recited in claim 1? (2) processor-executable instructions to cause a feature flag library to be integrated with the application, where to toggle the feature flag comprises to toggle the feature flag using the library as recited in claim 5? ANALYSIS Claims 1–3, 9–12, 15, 16, and 18–21 We begin by construing the key disputed limitation of claim 1 that recites, in pertinent part, a “feature flag.” According to the Specification’s paragraph 1, “[a] feature flag, also known as a feature toggle, is a coding technique whereby features of an application (i.e., a software application) may be toggled (e.g., enable, disabled, hidden, etc.).” The Specification’s paragraphs 23 and 24 add that feature flags can be statements in application code or, alternatively, included in an external library. Given this alternative implementation, the Specification refers to the term “feature flag of an application” as “a feature flag that operates on the application, regardless of whether it is included in code of the application or in an external library.” Spec. ¶ 24. The import of this description is that a feature flag is a coding technique that can toggle an application’s features to, among other things, enable or disable those features. See Spec. 1. According to the Specification’s paragraph 9, feature flags can be implemented in a variety of ways including, for example, “if-else” or equivalent statements in an application’s code according to certain parameters, such as the user’s Appeal 2020-000960 Application 15/340,102 25 geographic location, where the application’s features are toggled according to these parameters. Although this description informs our understanding of feature flags, as well as exemplary forms of these flags, the Specification does not limit a feature flag to any particular code to realize this functionality. Rather, the Specification provides non-limiting examples to describe a “feature flag” in terms of a technique that can toggle an application’s features via code either internal or external to the application. Nor does the Specification define the term “flag” to so limit its interpretation, unlike other terms whose concrete definitions leave no doubt as to their meaning. See Spec. ¶¶ 6, 10 (defining various terms explicitly). We, therefore, construe the term “flag” with its plain meaning in the art. A noted computer dictionary defines the term “flag” as “[b]roadly, a marker of some type used by a computer in processing or interpreting information: a signal indicating the existence or status of a particular condition. Flags are used in such areas as communications, programming, and information processing.” Flag, MICROSOFT COMPUTER DICTIONARY 216 (5th ed. 2002) (“Microsoft Computer Dictionary”). According to that dictionary, “[d]epending on its use, a flag can be a code, embedded in data, that identifies some condition, or it can be one or more bits set internally by hardware or software to indicate an event of some type, such as an error or the result of comparing two values.” Id. (emphasis added). Our emphasis on the term “or” underscores that, under the first alternative in the above definition, a flag can be embedded code that identifies some condition. Appeal 2020-000960 Application 15/340,102 26 Given this recognized identification function of a flag, we see no error in the Examiner’s reliance on the functionality of DeLaet’s content adjustment module for anticipating the recited feature flag that is toggled to enable an associated section of executable code based on an inferred user sentiment. See Ans. 9, 32 (interpreting the term “feature flag” as any logical action that identifies a certain feature to invoke the feature, and finding that DeLaet’s system identifies game content and enables an associated section of executable code). As DeLaet’s Abstract explains, DeLaet’s system adjusts content presented to users in an online game based on a user’s “mood profile” that characterizes the user’s mood or emotional state, namely whether the user is happy, sad, angry, annoyed, confused, etc.—an emotional state that can indicate the user’s current sentiment towards game participation or engagement. See DeLaet Abstract; col. 4, ll. 54–63; col. 8, ll. 4–18; col. 9, ll. 38–64. To this end, a mood module 22 determines a user’s mood profile based on biometric characteristic information, such as information regarding the user’s facial features, retina, pulse rate, etc. DeLaet Abstract; col. 3, ll. 37–46; col. 8, ll. 19–38; Fig. 1. Based on the user’s mood profile, DeLaet’s content adjustment module 24 then identifies and presents game content, such as notifications or hints, to the user. DeLaet Abstract; col. 11, ll. 49–67; Fig. 1. Given this content identification and presentation functionality, DeLaet’s content adjustment module effectively toggles a feature flag, namely via software code that enables particular application features regarding game content identification and presentation when certain identified conditions are satisfied. We reach this conclusion emphasizing Appeal 2020-000960 Application 15/340,102 27 that the functionality of DeLaet’s content adjustment module comports with that of a flag under the above-noted definition of the term, namely embedded code that identifies some condition. See Microsoft Computer Dictionary, at 216. To be sure, the Examiner’s interpreting the term “feature flag” as any logical action that identifies a certain feature to invoke the feature (Ans. 32) is somewhat inartful because, in the context of the claimed invention, a flag is technically not an action as Appellant indicates. See Reply Br. 3–4. Rather, as noted above, a flag is embedded code that performs an action, namely identifying a condition. See Microsoft Computer Dictionary, at 216. Despite this grammatical inconsistency, we nonetheless see no harmful error in the Examiner’s interpretation, for it correctly articulates the key identification function of a flag under the term’s meaning in the art. Nor do we see error in the Examiner’s finding that the feature flag associated with DeLaet’s content adjustment module is toggled, at least to the extent that the associated software code identifies a particular condition and associated game content, such as notifications. See Ans. 32. This feature flag toggling effectively enables an associated section of executable code, namely that associated with presenting the identified game content to the user based on user’s mood profile. See DeLaet col. 11, ll. 49–67; Ans. 32–33. That the user’s mood profile reflects an emotional state that can indicate the user’s current sentiment towards game participation or engagement (see DeLaet col. 8, ll. 4–18; col. 9, ll. 38–64) means that DeLaet’s feature flag toggling based on that profile is also based on an inferred user sentiment. Appellant’s contention, then, that DeLaet does not disclose a feature flag, much less toggle a feature flag as claimed (Appeal Appeal 2020-000960 Application 15/340,102 28 Br. 13–14; Reply Br. 3–4) is unavailing and not commensurate with the scope of the claim that does not preclude the functionality of DeLaet’s content adjustment module. Therefore, we are not persuaded that the Examiner erred in rejecting claim 1, and claims 2, 3, 9–12, 15, 16, and 18–21 not argued separately with particularity. Claim 5 We also sustain the Examiner’s rejection of claim 5 reciting processor-executable instructions to cause a feature flag library to be integrated with the application, where to toggle the feature flag comprises to toggle the feature flag using the library. See Ans. 10, 33–34. Appellant’s Specification does not define the term “feature flag library,” unlike other terms whose concrete definitions leave no doubt as to their meaning. See Spec. ¶¶ 6, 10 (defining various terms explicitly). Appellant’s Specification does, however, explain that feature flag integrator 118 may integrate a feature flag library 132 with applications 112, where the library may (1) comprise code; (2) be stored in feature toggling system 114; and (3) be copied to each client computing device hosting application instances. Spec. ¶ 20. The feature flag library can then be integrated with applications 112, for example, responsive to user input, such that the feature flag library is accessible by, and interacts with, the applications, such as a plugin to the applications. Spec. ¶ 21. For each application, the feature flag library may act as a client side agent that can toggle application feature flags based on end user sentiment data. Id. Appeal 2020-000960 Application 15/340,102 29 Although this description informs our understanding of the recited feature flag library, it is not limiting. We, therefore, construe the term “feature flag library” under its plain meaning in the art. The term “library” is defined, in pertinent part, as “[a] collection of software or data files.” Microsoft Computer Dictionary, at 309. A “feature flag library,” then, is a collection of software or data files pertaining to feature flags. With this interpretation, we see no error in the Examiner’s finding that DeLaet’s content adjustment module includes a feature flag library, namely a collection of software or data files pertaining to feature flags. See Ans. 10, 33–34 (citing DeLaet col. 1, ll. 61–67; col. 11, ll. 35–43, 61–65; col. 12, ll. 1–29). Even assuming, without deciding, that DeLaet does not use the term “library” explicitly as Appellant contends (Appeal Br. 15), DeLaet nonetheless discloses a feature flag library, namely a collection of software or data files pertaining to feature flags, that the content adjustment module uses to toggle a feature flag as claimed. That Appellant does not squarely address—let alone persuasively rebut—the Examiner’s additional citations to various passages in DeLaet’s column 11 and 12 for teaching the recited feature flag library (Ans. 33–34) further weighs in favor of the Examiner. See Reply Br. 4–5. Therefore, we are not persuaded that the Examiner erred in rejecting claim 5. THE OBVIOUSNESS REJECTION OVER DELAET AND KAMAL Claim 6 We also sustain the Examiner’s rejection of claim 6 reciting the feature flag is in code of the application. Despite Appellant’s arguments to Appeal 2020-000960 Application 15/340,102 30 the contrary (Appeal Br. 16–17; Reply Br. 5), we see no error in the Examiner’s reliance on DeLaet and Kamal for collectively at least suggesting the recited limitations. See Ans. 16, 26–37. First, the Examiner’s obviousness rejection is not based on Kamal alone, but rather on both DeLaet and Kamal. Therefore, Appellant’s arguments regarding Kamal’s alleged failure to disclose a feature flag and toggling an application’s feature flag (Appeal Br. 16–17; Reply Br. 5) are not only unpersuasive for the reasons noted by the Examiner, these arguments are not germane to the Examiner’s reliance on DeLaet for teaching those particular features. As noted previously, we find no error the Examiner’s reliance on DeLaet in that regard. In short, Appellant’s arguments regarding Kamal’s individual shortcomings do not show nonobviousness where, as here, the rejection is based on the cited references’ collective teachings. See In re Merck & Co., 800 F.2d 1091, 1097 (Fed. Cir. 1986). Nor does Appellant persuasively rebut the Examiner’s reliance on Kamal for at least suggesting providing a feature flag, such as that in DeLaet, in an application’s code. Kamal’s user device 210 includes an application that generates a program to control device 240—control that is responsive to an identified condition, including the user’s mood. See Kamal ¶¶ 12, 17, 20. Given this functionality, we see no error in the Examiner’s rejection because Kamal at least suggests embedding in application code functionality that identifies a condition for control purposes and, in light of this teaching, it would have been obvious to embed a feature flag, such as that in DeLaet, in application code as claimed. Notably, the very definition of a flag is Appeal 2020-000960 Application 15/340,102 31 embedded code that identifies some condition (see Microsoft Computer Dictionary, at 216) as noted previously—a point that only further weighs in favor of the Examiner. That Appellant does not squarely address—let alone persuasively rebut—the Examiner’s additional citations to various passages in Kamal’s paragraphs 17, 24, and 27 (Ans. 36–37) only further weighs in favor of the Examiner. See Reply Br. 6. Therefore, we are not persuaded that the Examiner erred in rejecting claim 6. Claim 7 For reasons similar to those indicated for claim 6, we also sustain the Examiner’s rejection of claim 7 reciting the feature flag is in code of the feature flag library. See Ans. 16–17, 37. Appellant’s arguments with respect to Kamal’s purported shortcomings regarding the alleged failure to disclose the recited feature flag library (Appeal Br. 17–18) do not show nonobviousness where, as here, the rejection is not based on Kamal alone, but rather the collective teachings of both DeLaet and Kamal. See Merck, 800 F.2d at 1097. In short, Appellant does not persuasively rebut the Examiner’s rejection in this regard, particularly given our interpretation of the recited feature flag library noted previously, namely a collection of software or data files pertaining to feature flags. In short, DeLaet and Kamal collectively at least suggest providing a feature flag in code of a feature flag library for the reasons noted above and by the Examiner. That Appellant does not squarely address—let alone persuasively rebut—the Examiner’s additional citations Appeal 2020-000960 Application 15/340,102 32 to various passages in Kamal’s paragraphs 17, 24, and 27 (Ans. 36–37) only further weighs in favor of the Examiner. See Reply Br. 6. Therefore, we are not persuaded that the Examiner erred in rejecting claim 7. Claim 8 We also sustain the Examiner’s rejection of claim 8 reciting toggling a feature flag by performing a dependency injection of code from the feature flag library to the application. Despite Appellant’s arguments to the contrary (Appeal Br. 18–19), we see no error in the Examiner’s reliance on the cited prior art for at least suggesting the recited limitations for the reasons noted above and by the Examiner. Ans. 17, 37–38. That Kamal’s user device generates a program to control a device (see Kamal ¶¶ 12, 17, 20) also at least suggests a dependency code injection and, accordingly, the weight of the evidence on this record favors the Examiner. Therefore, we are not persuaded that the Examiner erred in rejecting claim 8. THE OTHER OBVIOUSNESS REJECTIONS We also sustain the Examiner’s obviousness rejections of claims 4, 13, 14, 17, 22, and 23. Ans. 15, 17–23. Despite nominally arguing these claims separately, Appellant reiterates similar arguments made in connection with claim 1, and alleges that the additional cited references fail to cure those purported deficiencies. Appeal Br. 16, 19–21. We are not persuaded by these arguments for the reasons previously discussed. Appeal 2020-000960 Application 15/340,102 33 CONCLUSION In summary: Claims Rejected 35 U.S.C. § Reference(s)/ Basis Affirmed Reversed 1–23 101 Eligibility 1–23 1–3, 5, 9– 12, 15, 16, 18–21 102 DeLaet 1–3, 5, 9–12, 15, 16, 18–21 4, 6–8 103 DeLaet, Kamal 4, 6–8 13 103 DeLaet, Rassi 13 14 103 DeLaet, Rassi, Nichols 14 17 103 DeLaet, Verma 17 22 103 DeLaet, Abraham 22 23 103 DeLaet, Mills 23 Overall Outcome 1–23 TIME PERIOD FOR RESPONSE 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. § 41.50(f). AFFIRMED Copy with citationCopy as parenthetical citation