Ex Parte Saxena et alDownload PDFPatent Trial and Appeal BoardNov 23, 201611954739 (P.T.A.B. Nov. 23, 2016) Copy Citation UNITED STA TES p A TENT AND TRADEMARK OFFICE APPLICATION NO. FILING DATE FIRST NAMED INVENTOR 111954,739 12/12/2007 Abhishek Saxena 42425 7590 11/28/2016 HICKMAN PALERMO BECKER BINGHAM/ORACLE 1 Almaden Boulevard Floor 12 SAN JOSE, CA 95113 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 ATTORNEY DOCKET NO. CONFIRMATION NO. 50277-3321 4451 EXAMINER KRAFT, SHIH-WEI ART UNIT PAPER NUMBER 2194 NOTIFICATION DATE DELIVERY MODE 11/28/2016 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): usdocket@h35g.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte ABHISHEK SAXENA, NEERJA BHATT, and JAMES W. STAMOS Appeal2015-000770 Application 11/954,739 Technology Center 2100 Before CARLA M. KRIVAK, HUNG H. BUI, and JEFFREY A. STEPHENS, Administrative Patent Judges. BUI, Administrative Patent Judge. DECISION ON APPEAL Appellants 1 seek our review under 35 U.S.C. § 134(a) of the Examiner's Final Rejection of claims 1, 4--8, 12, 27, 30-34, 38, and 41--45, which are all the claims pending in the application. We have jurisdiction under 35 U.S.C. § 6(b). We AFFIRM-IN-PART. 2 1 According to Appellants, the real party in interest is Oracle International Corporation. App. Br. 1. 2 Our Decision refers to Appellants' Appeal Brief filed April 16, 2014 ("App. Br."); Reply Brief filed October 10, 2014 ("Reply Br."); Examiner's Answer mailed August 11, 2014 ("Ans."); Final Office Action mailed October 24, 2013 ("Final Act."); and original Specification filed December 12, 2007 ("Spec."). Appeal2015-000770 Application 11/954,739 STATEMENT OF THE CASE Appellants 'Invention Appellants' invention relates to a system and method, shown in Figure 2, for managing event monitors within a database and adjusting the amount of notifications by those event monitors so as to achieve an effective balance between probability of notification loss and available notification bandwidth, and provide a better quality of service to database users. Spec. i-f 1; Abstract. Appellants' Figure 2 shows a system that implements an event processing architecture across multiple server instances. Figure 2 is reproduced below. FIG. 2 l11stance 224(1) instance 224(2) instance 224(N) r··r~~;~~11 t:vent monitor 104 I/ c I s~ IL_ s s s I SGA I c s s s ! L~~, _____ __, l----·----------····-------·--·-.. J ,--~~---~--- \~-------- global communications channel 212 ---~~~~-~-·-·-·-·-~-~---~~~ ~~-~~· + / regisirant Figure 2 depicts a system that implements an example event processing architecture across multiple instances. Spec. i-fi-1 6-7. As shown in Appellants' Figure 2, a database system and eventing infrastructure 200 includes multiple server instances 224(1 ), 224(2) ... 224(N). Each server instance has its own event monitor 104--a server 2 Appeal2015-000770 Application 11/954,739 background process that receives and maintains grouping registration requests from registrants, to produce event notifications. Spec. i-fi-f 12-13, 18-19. Event monitors associated with a grouping registration are designated as grouping slaves (GSes), of which one GS is designated as a grouping coordinator (GC) for the registration. Spec. i155. The GC is responsible for sending notifications to registrants, where a notification represents a group of events that satisfy one or more grouping criteria. Spec. i-fi-f 18-19, 55. Representative Claim Claims 1, 27, and 38 are independent. Representative claim 1 is reproduced below with disputed limitations in italics: 1. A computer-implemented method for communicating notifications between a plurality of server instances in a multi- server-instance system, comprising: registering a registrant to receive notifications of events that occur after completing said registering, wherein said notifications are generated by a coordinator process among a plurality of processes executing on said multi-server-instance system, wherein at least one process of said plurality of processes executes on each server instance of said plurality of server instances; wherein said registering a registrant includes receiving one or more grouping criteria for grouping a plurality of events into said notifications; in response to said registering a registrant, [l(i)] on each server instance of said plurality of server instances, selecting a slave process, of said plurality of processes, that is executing on said each server instance to group events for said registrant, thereby forming a set of selected slave processes to group events for said registrant; [l(ii)] among the set of selected slave processes of said plurality of processes, selecting a specific selected 3 Appeal2015-000770 Application 11/954,739 slave process as said coordinator process to send said notifications to said registrant; according to said grouping criteria, each selected slave process in said set of selected slave processes grouping said plurality of events for said notifications, wherein [2] each selected slave process in said set of selected slave processes grouping said plurality of events for said notifications includes, for each notification of said notifications, grouping a respective subset of events from said plurality of events for said each notification according to said grouping criteria into partial grouped event data; and said coordinator process generating said notifications based on said partial grouped event data from said each selected slave process and sending said notifications to said registrant. App. Br. 23-24 (Claims Appendix) (brackets and numbering added). Novik et al. Bauer et al. Evidence Considered US 6,275,957 Bl US 7,664,125 Bl Examiner's Re} ections3 Aug. 14, 2001 Feb. 16,2010 (1) Claims 1, 4--8, 12, 27, 30-34, 38, and 41--45 stand rejected under 35 U.S.C. § 112, first paragraph, as failing to comply with the written description requirement. Final Act. 2--6. 3 The Examiner withdrew the 35 U.S.C. § 112, second paragraph rejection of claims 1, 4--8, 12, 27, 30-34, 38, and 41--45 (Final Act. 6-7) in the Examiner's Answer (Ans. 39). Additionally, claims 1, 4--8, 12, 27, 30-34, 38, and 41--45 stand objected to due to informalities. Final Act. 7-8. However, claim objections are petitionable, not appealable, matters and generally are not within the jurisdiction of the Board. See MPEP § § 1002 and 1201. 4 Appeal2015-000770 Application 11/954,739 (2) Claims 1, 4, 5, 7, 8, 12, 27, 30, 31, 33, 34, 38, 41, 42, 44, and 45 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over Bauer and Novik. Final Act. 8--41. Issues on Appeal Based on Appellants' arguments, the dispositive issues on appeal are: (1) Whether the Examiner erred in rejecting claims 1, 4--8, 12, 27, 30-34, 38, and 41--45 under 35 U.S.C. § 112, first paragraph, for failing to comply with the written description requirement. In particular, the issue turns on whether Appellants' Specification describes "grouping a respective subset of events from said plurality of events for said each notification according to said grouping criteria into partial grouped event data," as recited in Appellants' independent claim 1 and similarly recited in independent claims 27 and 38 (emphasis added). App Br. 6-10, 24; Reply Br. 2--4. 4 (2) Whether the Examiner erred in rejecting claims 1, 4, 5, 7, 8, 12, 27, 30, 31, 33, 34, 38, 41, 42, 44, and 45 under 35 U.S.C. § 103(a) as being unpatentable over Bauer and Novik. In particular, the issue turns on whether the combination of Bauer and Novik discloses or suggests the following limitations of Appellants' independent claims 1, 27, and 38: (i) the "selecting" limitation ("each server instance of said plurality of server instances, selecting a slave process ... [and] among the set of selected slave processes of said plurality of processes, selecting a specific selected slave process as said coordinator process"), 4 We count Reply Brief pages (which are not numbered) starting from the first page. 5 Appeal2015-000770 Application 11/954,739 (ii) the "grouping" limitation ("grouping a respective subset of events from said plurality of events for said each notification according to said grouping criteria into partial grouped event data"). App Br. 11-21; Reply Br. 4--8. ANALYSIS § 112, First Paragraph Rejection of Claims 1, 4-8, 12, 27, 30-34, 38, and 41-45 The Examiner finds Appellants' Specification fails to disclose "grouping a respective subset of events from said plurality of events for said each notification according to said grouping criteria into partial grouped event data," as recited in independent claims 1 and 27. Final Act. 3-6 (emphasis added); Ans. 39--47. Appellants contend the Specification teaches that each slave process groups events for each notification into a partial group of events-also called partial grouped event data-and sends the partial grouped event data to the coordinator process. App. Br. 7-9 (citing Spec. i-fi-f 18, 20, 55, 58, 63- 64, 73, 82); Reply Br. 3--4. Appellants further cite paragraphs 18, 20, 49- 54, and 58 of the originally filed Specification to show grouping events according to grouping criteria as recited in claims 1 and 27. App. Br. 8-9 (citing Spec. i-fi-f 18, 20, 49-54, 58); Reply Br. 2--4. We agree with Appellants. Paragraphs 49-54 of Appellants' Specification explicitly teach grouping criteria examples, and paragraphs 18, 55, and 58 of Appellants' Specification teach each slave process (event monitor grouping slave GS) groups a subset of events for each notification into partial grouped event data according to grouping criteria. See Spec. 6 Appeal2015-000770 Application 11/954,739 ilil I 8 ("a single notification that represents a group of events that each satisfies one or more grouping criteria"), 49-55, 58 ("sending messages containing partially grouped data of events (also called partial group of events) from GSes to a GC ... a partial group is grouped data of events."). For the reasons set forth above, we find error in the Examiner's written description rejection. Accordingly, we do not sustain the Examiner's written description rejection of claims 1, 4--8, 12, 27, 30-34, 38, and 41--45. § 103(a) Rejection of Claims 1, 4, 5, 7, 8, 12, 27, 30, 31, 33, 34, 38, 41, 42, 44, and 45 based on Bauer and Novik With respect to independent claim 1 and similarly, independent claims 27 and 38, the Examiner finds Bauer teaches a method and apparatus including Appellants' claimed "set of selected slave processes to group events for said registrant" in the form of nodes in a communication tree or database domain, the nodes used to monitor events for a registered subscriber in accordance with a subscriber's specified filter. Final Act. 9, 11-13 (citing Bauer 3:25-32, 8:1-12, 8:57---65, 12:13-18, Figs. 8A-8B). In addition, the Examiner finds Bauer teaches Appellants' claimed "coordinator process" selected from among the set of selected slave processes, in the form of an indication consolidator node used to send event notifications from all domain nodes to the subscriber. Id. at 13-15 (citing Bauer 3:21-25, 11:64-- 12:22). The Examiner acknowledges Bauer does not explicitly disclose Appellants' claimed "grouping a respective subset of events from said plurality of events for said each notification according to said grouping criteria into partial grouped event data," but relies on Novik for teaching 7 Appeal2015-000770 Application 11/954,739 these features to support the conclusion obviousness. Id. at 18-19 (citing Novik 3:55--4:13, 10:19-35, 11:35--45, 11:49-12:1, Figs. 4 and 5A). Appellants dispute the Examiner's factual findings regarding Bauer and Novik. In particular, Appellants argue neither Bauer nor Novik teaches or suggests (1) the "selecting" limitation, and (2) the "grouping" limitation, as reproduced below: 1. registering a registrant to receive notifications of events that occur after completing said registering ... in response to said registering a registrant, on each server instance of said plurality of server instances, selecting a slave process, of said plurality of processes, that is executing on said each server instance to group events for said registrant, thereby forming a set of selected slave processes to group events for said registrant; [and] among the set of selected slave processes of said plurality of processes, selecting a specific selected slave process as said coordinator process to send said notifications to said registrant; and 2. each selected slave process in said set of selected slave processes grouping said plurality of events for said notifications includes, for each notification of said notifications, grouping a respective subset of events from said plurality of events for said each notification according to said grouping criteria into partial grouped event data. App Br. 11-21; Reply Br. 4--8. With respect to the "selecting" limitation of claim 1, Appellants contend Bauer fails to disclose selecting on each server instance a slave process to group events for a registrant thereby forming a set of selected slave processes, and then selecting a specific slave process-from the set of 8 Appeal2015-000770 Application 11/954,739 selected slave processes-to be a coordinator process. App. Br. 13. In particular, Appellants argue Bauer's indication consolidator is not a coordinator process as claimed because Bauer's "indication consolidator is the generator of the communication tree" of nodes, and is, therefore, established before identifying nodes (slave processes) for inclusion in the communication tree. App. Br. 15 (citing Bauer 13:25-32, 14:22-29). According to Appellants, "there is no longer any need in Bauer for selecting a specific node/entity (or slave process under the Final Office Action's analogies) from the nodes/entities in the communication structure to be the consolidator" because "the indication consolidator is already established as the consolidator before any nodes or components are included in the communication structure." App. Br. 14. As such, Appellants argue Bauer teaches away from the approach of claim 1 because Bauer discloses "the coordinator process [is] selected before registering occurs" and "before the communication tree is generated or constructed." Reply Br. 8; App. Br. 17. We do not find Appellants' arguments persuasive. Rather, we find the Examiner has provided a comprehensive response to Appellants' arguments supported by a preponderance of evidence. Ans. 47---64. Therefore, we adopt the Examiner's findings and explanations provided therein. Id. For additional emphasis, we note claim terms are given their broadest reasonable interpretation consistent with the Specification. In re Am. Acad. of Sci. Tech Ctr., 367 F.3d 1359, 1369 (Fed. Cir. 2004). Under the broadest reasonable interpretation, claim terms are given their ordinary and customary meaning, as would be understood by one of ordinary skill in the art in the context of the entire disclosure. In re Translogic Tech., Inc., 504 F.3d 1249, 1257 (Fed. Cir. 2007). The term "slave process" is not explicitly defined in 9 Appeal2015-000770 Application 11/954,739 Appellants' Specification, but is described generally in a non-limiting fashion as follows: Within a database system, many available classes of events occur .... [A]n event monitor, in the form of a background process, can be used to send a notification for each of the various registered events .... In an embodiment, a database system and eventing infrastructure comprises a plurality of instances. An instance comprises a set of operating system processes and memory structures that interact with data storage . ... [A] notification server background process known as an event monitor sends notifications for each of various registered events. . . . A grouping registration will be associated with an event monitor slave Son each instance (shown in FIG. 2 as a grouping slave or GS). Spec. i-fi-12, 12-13, 55 (emphasis added). In other words, the term "slave process" is a "background process" executing in a "set of operating system processes and memory structures that interact with data storage" (a server instance). Id. at i-f 12. Based on Appellants' Specification, the Examiner has broadly interpreted the term "slave process" as encompassing Bauer's node functionality. Ans. 51-55; Final Act. 11-13 (citing Bauer 2:45---65, 3:25-32, 8:1-12 and 57---65, 12:13-18, Figs. 8A-8B). We find the Examiner's interpretation reasonable and consistent with Appellants' Specification. As such, we agree with the Examiner that Bauer teaches a set of slave processes as recited in claim 1. Ans. 51-55; Final Act. 11-13. Bauer's node functionality---executing on a data storage system and monitoring events in a communication structure-is commensurate with the broad description of "slave process" that is "executing on a server instance" in Appellants' 10 Appeal2015-000770 Application 11/954,739 Specification. Ans. 51-55 (citing Bauer 3:28-32, 12:6-15); Final Act. 11- 13 (citing Bauer 2:46-51, 8:44--48). As further recognized by the Examiner, Bauer's slave processes (nodes) monitor events and fire event indications occurring on each node in accordance with requests by particular subscribers, thereby teaching a set of selected slave processes to group events for a registrant/subscriber as required by claim 1. Ans. 51-52 (citing Bauer 3:28-32, 12:43--45); Final Act. 11-13 (citing Bauer 2:56-57, 8:42--48 and 59---61, 9:32-33, 12:13-18). Moreover, Bauer discloses a single node from all nodes in the domain is selected as an indication consolidator node that "asks other nodes in the domain to report to it" (see Bauer 12: 13-14), thereby teaching or at least suggesting a coordinator process selected from a previously-selected set of slave processes as required by claim 1. Final Act. 13-15 (citing Bauer 2 :48- 51, 3 :21-23 ("selecting another one of said plurality of nodes as said new indication consolidator node." (emphasis added)), 12: 1-22 (the indication consolidator "asks other nodes in the domain to report to it any event indications occurring on their respective nodes," "may be characterized as a role that may be assumed by any node in the domain," and "may change if the selected indication consolidator node fails.")); Ans. 52-53. Bauer therefore discloses selecting a specific selected slave process as said coordinator process, as claimed. Bauer further teaches if a registered client determines an indication consolidator is unavailable, another one of the plurality of nodes is selected as an indication consolidator. See Bauer 3: 19-23; see also Final Act. 13-14 (citing Bauer 2:44--3 :32). Bauer therefore discloses a coordinator process/indication consolidator is selected after registering the client, 11 Appeal2015-000770 Application 11/954,739 contrary to Appellants' contention that "Bauer is actually requiring that the coordinator process be selected before registering occurs." Reply Br. 8. For these reasons, we agree with the Examiner that Bauer teaches and suggests the "selecting" limitation recited in claim 1 and similarly recited in independent claims 27 and 38. Ans. 51-55. With respect to the "grouping" limitation recited in claim 1, Appellants argue although "Novik may teach a component ('event-filtering definition') that might hypothetically be used as grouping criteria during grouping of events," Novik's filtering "does not require grouping of events [and] ... imposes no constraint as to which notification has which events." Reply Br. 4--5. Thus, according to Appellants, Novik does not teach or suggest grouping a respective subset of events from a plurality of events for each notification according to grouping criteria into partial grouped event data, as recited in claim 1. Reply Br. 4---6; App. Br. 18-21. We disagree. Rather, we agree with the Examiner that Novik teaches grouping a subset of events, from a plurality of events for each notification, according to grouping criteria into partial grouped event data, as recited in claim 1. 5 Ans. 60-63; Final Act. 18-19 (citing Novik 3:43--4:60, 10:19-35, 11:35--45, 11:49-12: 15). Specifically, Novik teaches that "events are compared with the event-filtering definitions to identify the events that are to be reported to the subscriber programs." See Novik 4:5-8. In Novik, 5 We note the claimed "partial grouped event data" merely designates a partial group of events in Appellants' Specification. See Spec. i-f 5 8 ("sending messages containing partially grouped data of events (also called partial group of events) from GSes to a GC for every grouping registration. For a given grouping registration, a partial group is grouped data of events, for that registration." (emphasis added)). 12 Appeal2015-000770 Application 11/954,739 "events that satisfy one or more of the event-filtering definitions are reported to the corresponding subscriber programs" by "transmitting notifications of events." See Novik 4:9--11, 3:56-57. Thus, Novik's event-filtering definitions teach grouping criteria for grouping events for each notification as required by claim 1. Ans. 60-63; see also Novik 11:55-12:1 (discussing grouping of breach events according to building number and entrance number criteria, to report security breaches for specific locations). Appellants also argue Novik does not disclose that "each server instance groups a subset of events into partial grouped event data used by a coordinator process to generate notifications to a registrant," as recited in claim 1; rather, Novik teaches a registrant "can define a subset of possible events to receive reports ... [which] only shows that an event subscriber does not wish to receive all possible events but only a subset of possible events." App. Br. 20 (citing Novik 11 :35--45); see also Reply Br. 6. We are unpersuaded by Appellants' argument because the rejection of the "grouping" limitation is based on a combination of Bauer and Novik. See In re Keller, 642 F.2d 413, 426 (CCPA 1981). Specifically, the Examiner asserts Bauer teaches event grouping by slave processes executing on each server instance, and a coordinator process generating notifications for a registrant. Ans. 59 (citing Bauer 2:59--61, 11 :60-12:6, 12:62---63, 21 :48- 53); Final Act. 13-15, 17. The Examiner asserts Novik teaches grouping a subset of events into partial grouped event data based on grouping criteria. Final Act. 18-19 (citing Novik 3:43--4:60, 10:19--35, 11:35--45, 11:49-- 12: 15). As discussed supra, we agree with the Examiner that Bauer teaches slave and coordinator processes as claimed, and Novik teaches grouping a subset of events into partial grouped event data according to grouping 13 Appeal2015-000770 Application 11/954,739 criteria. Appellants' arguments do not persuade us of error in the Examiner's findings as to the combined teachings of Bauer and Novik. Ans. 61---62; Final Act. 17-19. For the reasons set forth above, Appellants have not persuaded us of Examiner error. Accordingly, we sustain the Examiner's§ 103(a) rejection of independent claim 1, and similarly, independent claims 27 and 38, and their respective dependent claims 4, 5, 7, 8, 30, 31, 33, 34, 41, 42, 44, and 45, which Appellants do not argue separately. App. Br. 21. CONCLUSION On the record before us, we conclude Appellants have demonstrated the Examiner erred in rejecting claims 1, 4--8, 12, 27, 30-34, 38, and 41--45 under 35 U.S.C. § 112, first paragraph. We also conclude Appellants have not demonstrated the Examiner erred in rejecting claims 1, 4, 5, 7, 8, 12, 27, 30, 31, 33, 34, 38, 41, 42, 44, and 45 under 35 U.S.C. § 103(a). DECISION As such, we REVERSE the Examiner's final rejection of claims 1, 4-- 8, 12, 27, 30-34, 38, and 41--45 under 35 U.S.C. § 112, first paragraph and AFFIRM the Examiner's final rejection of claims 1, 4, 5, 7, 8, 12, 27, 30, 31, 33, 34, 38, 41, 42, 44, and 45 under 35 U.S.C. § 103(a). No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a)(l )(iv). AFFIRMED-IN-PART 14 Copy with citationCopy as parenthetical citation