Opinion
Civil Action No. 9:06-CV-160.
August 10, 2007
MEMORANDUM OPINION AND ORDER CONSTRUING CLAIM TERMS OF UNITED STATES PATENT NOS. 6,128,656; 6,330,600; 6,628,304
Plaintiffs Cisco Systems, Inc. and Cisco Technology, Inc. (collectively, "Cisco") filed suit against Defendant Telcordia Technologies, Inc. ("Telcordia") claiming infringement of United States Patent Nos. 6,128,656 ("the `656 patent"); 6,330,600 ("the `600 patent"); and 6,628,304 ("the `304 patent"). The court conducted a Markman hearing to assist the court in interpreting the meaning of the claim terms in dispute. Having carefully considered the patent, the prosecution history, the parties' briefs, and the arguments of counsel, the court now makes the following findings and construes the disputed claim terms.
The transcript of the hearing, especially the answers of the parties' counsel and experts to questions from the court, is helpful in understanding the reasons for the conclusions set out herein. However, this Order governs in the event of any conflict between the Order and the court's preliminary analysis at the hearing.
I. Claim Construction Standard of Review
Claim construction is a matter of law. Markman v. Westview Instruments, Inc., 517 U.S. 370, 116 S. Ct. 1384 (1996) (" Markman II"). "The duty of the trial judge is to determine the meaning of the claims at issue, and to instruct the jury accordingly." Exxon Chem. Patents, Inc. v. Lubrizoil Corp., 64 F.3d 1553, 1555 (Fed. Cir. 1995) (citations omitted)."`[T]he claims of the patent define the invention to which the patentee is entitled the right to exclude.'" Phillips v. AWH Corp., 415 F.3d 1303, 1312 (Fed. Cir. 2005) ( en banc) (citation omitted). "Because the patentee is required to `define precisely what his invention is,' it is `unjust to the public, as well as an evasion of the law, to construe it in a manner different from the plain import of its terms.'" Phillips, 415 F.3d at 1312 (quoting White v. Dunbar, 119 U.S. 47, 52 (1886)).
The words of a claim are generally given their ordinary and customary meaning. Phillips 415 F.3d at 1312. The "ordinary and customary meaning of a claim term is the meaning that the term would have to a person of ordinary skill in the art in question at the time of the invention." Id. at 1313. Analyzing "how a person of ordinary skill in the art understands a claim term" is the starting point of a proper claim construction. Id.
Based on the patents and their cited references, the tutorials, and the representations of the parties at the hearing, the court finds that "one of ordinary skill in the art" covered by the `656 and `600 patents is someone with the equivalent of a "four-year" degree from an accredited institution (usually denoted in this country as a B.S. degree) in computer science or a related discipline such as electrical engineering, with courses in computer networks and network management, and two years of experience working with computer networks, telephony networks, or other types of communication networks involving computers. Extensive experience and technical training might substitute for educational requirements, while advanced degrees might substitute for some of the experience.
A "person of ordinary skill in the art is deemed to read the claim term not only in context of the particular claim in which the disputed term appears, but in the context of the entire patent, including the specification." Phillips, 415 F.3d at 1313. Where a claim term has a particular meaning in the field of art, the court must examine those sources available to the public to show what a person skilled in the art would have understood the disputed claim language to mean. Id. at 1414. Those sources "include `words of the claims themselves, the remainder of the specification, the prosecution history, and extrinsic evidence concerning relevant scientific principles, the meaning of technical terms, and the state of the art.'" Id. (citation omitted).
"[T]he ordinary meaning of claim language as understood by a person of skill in the art may be readily apparent even to lay judges, and claim construction in such cases involves little more than the application of the widely accepted meaning of commonly understood words." Phillips, 415 F.3d at 1314. In these instances, a general purpose dictionary may be helpful. Id.
However, the Court emphasized the importance of the specification. "[T]he specification `is always highly relevant to the claim construction analysis. Usually it is dispositive; it is the single best guide to the meaning of a disputed term.'" Phillips, 415 F.3d at 1315 (quoting Vitronics Corp. v. Conceptronic, Inc., 90 F.3d 1576, 1582 (Fed. Cir. 1996)). A court is authorized to review extrinsic evidence, such as dictionaries, inventor testimony, and learned treaties. Phillips, 415 F.3d at 1317. But their use should be limited to edification purposes. Id. at 1319.
The intrinsic evidence, that is, the patent specification, and, if in evidence, the prosecution history, may clarify whether the patentee clearly intended a meaning different from the ordinary meaning, or clearly disavowed the ordinary meaning in favor of some special meaning. See Markman v. Westview Instruments, Inc., 52 F.3d 967, 979-80 (Fed. Cir. 1995). Claim terms take on their ordinary and accustomed meanings unless the patentee demonstrated "clear intent" to deviate from the ordinary and accustomed meaning of a claim term by redefining the term in the patent specification. Johnson Worldwide Assoc., Inc. v. Zebco Corp., 175 F.3d 985, 990 (Fed. Cir. 1999).
The "`ordinary meaning' of a claim term is its meaning to the ordinary artisan after reading the entire patent." Phillips, 415 F.3d at 1321. However, the patentee may deviate from the plain and ordinary meaning by characterizing the invention in the prosecution history using words or expressions of manifest exclusion or restriction, representing a "clear disavowal" of claim scope. Teleflex, Inc. v. Ficosa N. Am. Corp., 299 F.3d 1313, 1327 (Fed. Cir. 2002). It is clear that if the patentee clearly intended to be its own lexicographer, the "inventor's lexicography governs." Phillips, 415 F.3d at 1316.
II. Patent Background and Technology
`656 and `600 patent
The patents relate to communication networks comprised of network elements (communication hardware and software that provides communication services to users) and network management systems. `656 patent, col. 1, ll. 14-27; See also `656 patent, col. 3, ll. 8-16. The network management system includes a network manager comprised of hardware and software that manages and coordinates the operation of network elements in the communication network. `656 patent, col. 1, ll 28-33. Each network element stores information about its status and/or configuration in its Management Information Base (MIB). The network manager also maintains in its memory accurate and readily accessible configuration information associated with each network element. This may be in a database, and sometimes, in a more readily accessible cache memory.
Some of the line numbers in this patent are printed as many as 3 or 4 lines away from the line to which they refer by actual count. The court has attempted to use actual line count when citing to the patent.
A network element's configuration information can change for a variety of reasons. When such changes occur, it is desirable to have the network manager's copy of the configuration information updated to reflect those changes so that the network manager has an accurate, current view of the elements on the network. This updating process is called configuration synchronization or database reconciliation.
The patentee asserts that the `656 and `600 patents describe methods and systems to more efficiently accomplish such updates. The patents state that prior art required the network manager to go through a complete configuration synchronization or database reconciliation when configuration information of a network element changed. With these patents, only a partial database reconciliation is needed, which reduces the time needed for the operation.
The `600 patent is a continuation of the `656 patent, and thus, the specifications of the two patents are identical except for some typographical spacing changes, and the inclusion in the `600 patent of cross reference information to the `656 patent.
In some embodiments, the patented methods use certain information (state variables) stored in the network element's MIB to determine whether to perform a partial rather than a full database reconciliation. The network manager obtains a copy of configuration information either by requesting it from a network element (called "polling") or by receiving an unsolicited message (called a "trap") sent by a network element. A trap may also be referred to as an "autonomous message." Each trap includes a trap sequence number, which allows a network manager to detect a trap sequence mismatch, i.e., to determine whether a trap was missed or received out-of-sequence. If a trap sequence mismatch is detected, the network manager begins a partial database reconciliation.
III. Claim Construction
The `656 Patent
Cisco has asserted independent Claims 1 and 20, and dependent Claims 6, 7, 25, and 26 of the `656 patent against Telcordia in this action. Claims 1 and 6 contain the disputed terms, and are set out below with the disputed terms in bold, and the agreed terms in italics.
The agreed definitions are set out in a separate order entered contemporaneously with this one.
Claim 1 recites:
A system for updating a memory storing configuration information of a network element, comprising:
a network element operable to store configuration information; and
a network manager coupled to the network element using a communication network, the network manager operable to store a portion of the configuration information in memory, the network manager further operable to receive a state variable from the network element and to compare the received state variable to a stored state variable, the network manager further operable to receive selected configuration information from the network element to update a selected part of the memory if the received state variable does not match the stored state variable.
Claim 6 reads as follows:
The system of Claim 1, wherein:
the configuration information comprises a plurality of traps; and
the received state variable comprises a trap sequence number associated with a last trap generated by the network element.
1. "state variable" Used in independent Claims 1, 6, 20 and in dependent Claim 25.
This term is commonly used in the mathematical modeling of systems. It was not specifically defined by the patentee acting as his own lexicographer. Cisco proposes that it should mean "something that represents data or a type of data that is used to determine whether to update a memory." Telecordia contends that "state variable" should be defined as "information describing an aspect of a network element."
The arguments of both parties concerning this term are terse, citing only a few places in the specification where the term is used, and making no reference to the prosecution history. In fact, "state variable" is used ten times in independent Claims 1, 6, and 20, once in independent Claim 25, and no fewer than twenty times in the specification.
Cisco points to `656 patent, col. 6, ll. 47-56, which describes three "variables" representing information about, or information stored in, a network element.6 The specification states that these or other "state variables stored in MIB 24" can be used to determine whether to perform a full or partial database reconciliation. `656 patent, col. 6, ll. 57-59.
Claim 1 describes how the "state variable" is used by the network manager to determine whether to update part of the memory. `656 patent, col. 13, ll. 9-16. See also, `656 patent, col. 6, ll. 3-8. Accordingly, as Cisco agreed at the hearing, describing how a state variable is used, in the definition of "state variable," is not necessary.
Telcordia suggests that a state variable is "information describing an aspect of a network element." But the specification makes it clear that each state variable represents certain information — it is not information itself. For example, the variable SRN E represents the number of set requests. . . ." `656 patent, col. 6, ll. 51-53 (emphasis added). See also, `656 patent, col. 6, ll. 45-56. As soon as a value is assigned to that variable, the network manager has information about the number of set requests that have been made at that particular time.
In construing this term, one of ordinary skill in the art would know, and the parties agreed at the hearing that:
1. "Variable" means that it is a data item, the value of which can change;
2. A value can be assigned to a state variable;
3. When a value is assigned to a state variable in this case it tells us something about (or defines) a characteristic of, or event concerning, a network element.
In other words, there is no indication that the patents are using "state variable" in any way other than as commonly used by those skilled in the art, in references cited in the `656 patent, and as defined in technical dictionaries. See U.S. Patent No. 6,058,445, col. 3, ll. 34 — col. 4, ll. 14. "a variable that defines one of the characteristics of a system or component," in this case, a network element. See also, IEEE Standard Dictionary of Electrical and Electronics Terms 1040 (6th ed. 1990). The court will define this term as follows:
" State variable" means "the value of a data item, the value of which can change, that defines a characteristic of, or event concerning, a network element."
2. "trap sequence number" Used in Claims 6 and 25.
Cisco initially proposed that this term should be construed as "a value associated with a trap that can be used to determine the order in which the trap has been sent." Telecordia suggested "a number associated with a trap that indicates the order in which the trap is sent." In its reply brief, Cisco agreed that "number" could be substituted for "value."
The parties agree that a "trap" is "an unsolicited message, notification, or other communication generated by a network element to indicate an event or status of the network element." This comports with the commonly understood meaning of the term in this field of technology. See William Stallings, SNMP, SNMPv2 and CMIP: The Practical Guide to Network Management, p. 133 (1993) Exhibit E of Cisco's Opening Claim Construction Brief, [Doc. #49, Attachment #5, p. 3 of 3]; Exhibit 8 of Telcordia's Responsive Claim Construction Brief, [Doc. #57, Attachment #8, p. 8 of 9]. (defining "trap" as an unsolicited message). Nothing in the claims and specification indicates an intent to ascribe anything but its ordinary meaning to the term.
The specification states that each trap includes "a trap sequence number (TSN)." `656 patent, col. 4, ll. 40-41. A trap sequence number is an example of a "state variable." See `656 patent, col. 6, ll. 44-50. What both parties seem to miss in their respective briefs is that each network element may be sending traps to the network manager, each labeled in sequence. See `656 patent, col. 4, ll. 24-26. For example, if there were three network elements, there could easily be three traps with a sequence number of five. Telcordia's suggestion of a number which indicates the order in which the trap is sent is incomplete because the number five does not really tell the network manager very much. Likewise, Cisco's initial proposal is insufficient, because the number five, by itself, is not enough to determine where the trap falls in the sequence coming from a particular network element.
The trap sequence number is only useful in conjunction with the numbers associated with other traps sent by the same network element. For instance, Method 200 of the patent is described as beginning when a trap is received "from a particular network element 16." `656 patent, col. 8, ll. 49-51. (emphasis added) The trap includes a trap sequence number (TSN). `656 patent, col. 8, ll. 56-57. As part of Method 200, that number is compared with an expected TSN, and the result of the comparison determines what action is taken. `656 patent, col. 8, ll. 60 — col. 9, ll. 10.
Based on this analysis, and the agreements of the parties at the hearing, the court will define this term as follows:
" Trap sequence number" means "a number associated with a trap from a particular network element, which can be, and is, used to determine the order in which that trap has been sent with respect to other traps from the same network element."
The `600 Patent
Cisco has asserted independent Claims 1, 9, 16, 24 and 27, and dependent Claims 2, 4, 10, 11, 17 and 18 of the `600 patent against Telcordia in this action. Claims 1 and 24 contain the disputed terms, and are set out below with the disputed terms in bold, and the agreed terms in italics.
Claim 1 recites:
A communication system, comprising:
a network element operable to generate a plurality of traps; and
a network manager coupled to the network element and operable to receive a trap having a trap sequence number, the network manager further operable to determine if the received trap is out-of-sequence by comparing the trap sequence number to an expected trap sequence number, the network manager further operable to initiate a database synchronization process for configuration information of the network element in response to the received trap being out-of-sequence.
Claim 24 reads as follows:
An apparatus for receiving a plurality of traps from a network element comprising:
means for receiving a trap having a trap sequence number;
means for comparing the trap sequence number to an expected trap sequence number;
means for determining, in response to the comparison, if the received trap is out-of-sequence; and
means for initiating a database synchronization process for configuration information of the network element in response to the received trap being out-of-sequence.
1. "trap sequence number" Used in independent Claims 1, 9, 16, 24, 27 and dependent Claims 2, 10 and 17.
The `600 patent is a continuation of the `656 patent, and has the same specification. The parties agreed at the hearing that there is no reason why this term should be defined differently than it was in the `656 patent. The court will assign to this term in the `600 patent the definition set out above for the `656 patent.
2. "database synchronization process" Used in independent Claims 1, 9, 16, 24 and 27.
The importance of this term is indicated by the prosecution history. The original application for the `600 patent contained Claims 1-29. The applicant filed an amendment, which cancelled these claims and added new Claims 30-49. The PTO Examiner rejected these claims for obviousness. The applicant responded by amending Claims 30, 37, and 43 (now Claims 1, 9, and 16 respectively) to include the language "to initiate a database synchronization process for configuration information of the network element in response to the received trap being out-of-sequence." The applicant also included the new phrase, "for initiating a database synchronization process" in Claims 53 and 58 of the amendment (now Claims 24 and 27 respectively). The Examiner indicated in the Statement of Reasons for Allowance that this distinguished the invention from prior art. Notice of Allowance, July 17, 2001, p. 2, Bates stamped 00000259, Exhibit D part 3 of Cisco's Opening Claim Construction Brief, [Doc. #49, Attachment #2, p. 18 of 25].
To define the term "database synchronization process" Cisco proposes:
"updating configuration information stored at a location other than at a network element with configuration information obtained from the network element."
Telcordia suggests:
"a process that reconciles configuration information of a network element with the configuration information for that network element stored in the network manager database."
The parties have agreed that the "network manager" is hardware and/or software that manages and coordinates the operation of network elements in a communication network.
The parties also agree that "configuration information" is any information maintained in a Management Information Base (MIB) of a network element, and any communications from network elements using a management network. The specification states that the network manager (or server) maintains at least portions of configuration information stored in the MIB of each network element in a memory. This memory may be in the form of one or more caches and/or one or more databases. `600 patent, col. 3, ll. 59-64. Maintaining selected configuration information in one or more caches, as well as maintaining full configuration information in a database, improves access to the information. `600 patent, col. 2, ll. 13-17.
One of ordinary skill in the art would know that cache memory or cache refers to a memory from which data can be accessed more quickly than from a database, and is usually of a more temporary nature. See `600 patent col. 4, ll. 6-8. See IEEE Standard Dictionary of Electrical and Electronics Terms 124 (6th ed. 1990); Steven M. Kaplan, Wiley Electrical and Electronics and Engineering Dictionary 89 (1st ed. 2004).
The specification states that configuration information in a network element can change for a number of reasons. `600 patent, col. 4, ll. 29-33. The network manager keeps track of these changes "to maintain a consistent and accurate view of the managed network element." `600 patent, col. 2, ll. 20-21. In the claims, this process is called the "database synchronization process." `600 patent, col. 13, ll. 19-22.
Telcordia's proposed construction, as written, implies that changes could be made at the MIB of the network element. This is probably not what Telcordia intended, because its brief states: "the specification is clear, and Cisco's brief repeatedly admits, that the copy of the configuration information being updated is stored at the network manager." Telcordia's Responsive Claim Construction Brief, [Doc. #57, Attachment #1, p. 14 of 29].
On the other hand, Cisco's suggestion that information being updated is stored "at a location other than at a network element" seems unnecessarily coy. The configuration information is not being stored in a closet — it is stored in one or more databases. As described repeatedly in the patent it is the network manager or server that maintains the configuration information. See the Abstract; `600 patent, col. 1, ll. 64-67; `600 patent, col. 2, ll. 1-4.
The server "may receive configuration information" in the form of traps, by polling the network elements, or from another network management device or system. `600 patent, col. 2, ll. 18-30. "The present invention manages all of this information to achieve a consistent and accurate view of the network element in both a cache of information immediately available to clients and a database." `600 patent, col. 2, ll. 30-34. Nothing in the claim language, the specification, or the prosecution history, even hints that configuration information from a network element is stored anywhere else.
At the hearing, the court discussed with the parties the possibility that this disputed term referred to updating configuration information being stored in a cache memory. However, the inventors chose the term " database synchronization process." Neither the claim language nor the specification indicates that the inventors chose to specially define "database," as including "cache." To the contrary, the specification consistently distinguishes between the two by describing them separately. "[T]he server maintains one or more caches of selected configuration information readily available to clients, as well as a persistent storage of full configuration information in a database." `600 patent, col. 2, ll. 13-17 (emphasis added). See also `600 Patent, col. 2, ll. 30-34.
The specification notes that configuration information stored in an MIB for a network element is maintained "in a memory, which may include one or more selected caches 30 (referred to generally as cache 30) and one or more databases 32 (referred to generally as database 32)." `600 patent, col. 3, ll. 59-64. (emphasis added) The "cache" includes selected information that is readily accessible, whereas database 32 includes a complete and persistent copy of configuration information stored in MIB 24. `600 patent, col. 3, l. 67 — col. 4, l. 1.
While "database" and "cache" are both used in their normal sense as part of the memory of the system, the inventors did not claim a "memory synchronization process" or a "cache synchronization process." Nothing in the claim language, the specification, or the prosecution history indicates an intent to define "database," as used in this disputed term, as including cache memory. The court will define this term as follows:
" Database synchronization process" means "updating configuration information that is stored by the network manager in one or more databases, based upon the values stored in the MIB of the network elements."
Means-Plus-Function Clauses of the `600 Patent
The remaining terms the parties ask the court to construe in the `600 patent involve means-plus-function clauses under 35 U.S.C. § 112(6). Where a claim includes the word "means," a presumption is invoked that § 112(6) applies. See Harris Corp. v. Ericsson Inc., 417 F.3d 1241, 1248 (Fed. Cir. 2005). This presumption may be rebutted if the claim recites "sufficient structure for performing the claimed function. . . ." Id.
Determining the claimed function and the corresponding structure of means-plus-function clauses are matters of claim construction, so it is appropriate to deal with these issues at the Markman stage. WMS Gaming Inc., v. Int'l Game Tech., 184 F.3d 1339 (Fed. Cir. 1999). Claim construction of a means-plus-function limitation involves two steps. See Medical Instrumentation and Diagnostics v. Elekta AB, 344 F.3d 1205, 1210 (Fed. Cir. 2003). The court must first identify the particular claimed function, and then look to the specification and identify the corresponding structure for that function. Id. "Under this second step, `structure disclosed in the specification is corresponding structure only if the specification or prosecution history clearly links or associates that structure to the function recited in the claim.'" Id. (citations omitted). "While corresponding structure need not include all things necessary to enable the claimed invention to work, it must include all structure that actually performs the recited function." Default Proof Credit Card System, Inc. v. Home Depot U.S.A., Inc., 412 F.3d 1291, 1298 (Fed. Cir. 2005).
Since the functions at issue are computer implemented, the patent must disclose an algorithm to be performed by the computer to accomplish the recited functions. WMS Gaming Inc., 184 F.3d at 1349. This does not mean that the patentee must disclose specific source code for the computer. The term "algorithm" is not limited to a formula of mathematical symbols. For example, the steps, formula, or procedures to be performed by the computer might be expressed textually, or shown in a flow chart. See Application of Freeman, 573 F.2d 1237, 1245 — 46 (C.C.P.A. 1978) and cases cited therein. But, in whatever format, the structure, in this case a computer which executes an algorithm, must be sufficiently disclosed so that one of ordinary skill in the art can determine the limitations on what is claimed. See Budde v. Harley-Davidson, Inc., 250 F.3d 1369, 1381-82 (Fed. Cir. 2001); see also In re Dossel, 115 F.3d 942, 946-47 (Fed. Cir. 1997).
For each of these mean-plus-function terms Cisco initially proposed that the corresponding structure is "hardware and/or software," which is either "connected" to a network or "performs" some algorithms. This tells the reader nothing about the limits of the claim language and would include all conceivable hardware and software that could accomplish the function in any way. Additionally, although Cisco proposed an "and/or" formulation, in the real world one of ordinary skill in the art would not construe these functions as being accomplished by hardware without software or by software without hardware.
The parties agree that each of these claim terms is a means-plus-function clause under 35 U.S.C. § 112(6). Each of these claims terms includes the word "means" so the presumption applies. The pertinent claim language does not recite sufficient structure for performing the claimed function. The court finds that each of these terms is a means-plus-function term.
1. "means for receiving a trap having a trap sequence number" (First means element of Claim 24).
The parties agree that a "trap" is "an unsolicited message, notification, or other communication generated by a network element to indicate an event or status of the network element." The court has defined a "trap sequence number" (TSN) as "a number associated with a trap from a particular network element, which can be, and is, used to determine the order in which that trap has been sent with respect to other traps from the same network element."
The means term in dispute is short and plainly written. Not surprisingly, the parties agree, and the court finds, that the function is "receiving a trap having a trap sequence number."
Cisco originally stated that the structure is "hardware and/or software connected to a communication network consisting of at least network elements and communication links." This tells the reader nothing about the limits of the claim.
Before the hearing, Telcordia contended that the structure should be "software modules process monitor 50 or alarm formatter 52." This is correct, but not complete or specific enough. Telcordia's brief properly notes that the "alarm formatter 52 receives traps generated by network elements 16." `600 patent, col. 5, ll. 60-61. Telcordia also recognizes that the process monitor 50 acts as a conduit for messages between the server and network elements. `600 patent, col. 5, ll. 53-59. The specification also states that network monitor 56 can request and receive configuration information to decide whether to perform a configuration synchronization. `600 patent, col. 6, ll. 4-13. The network monitor 56 determines whether the trap sequence number received is less that the TSN stored. `600 patent, col. 7, ll. 21-22. But the TSN is not a trap so 56 can't be included as structure. Based on this analysis and the agreements of the parties the court finds that the structure associated with the claim term "means for receiving a trap having a trap sequence number" is:
Process monitor 50 or alarm formatter 52 performing the steps identified in box 202 of Figure 5, and equivalents.
2. "means for comparing the trap sequence number to an expected trap sequence number" (Second means element of Claim 24).
Again the language of the term is simply written and the parties have agreed upon the function — "comparing the trap sequence number to an expected trap sequence number."
Cisco initially submitted that the corresponding structure is "hardware and/or software performing one or more of the of the algorithms of Figures 3-6 connected to a communication network." For the reasons set out above, this "and/or" proposal is not helpful.
Telcordia originally suggested "software modules network monitor 56 or alarm formatter 52." The specification states that the alarm formatter 52 monitors traps and processes them "with special attention to missing or out-of-sequence traps." `600 patent, col. 6, ll. 29-32. See also, `600 patent, col. 5, ll. 60 — col. 6, ll. 3. The processes or algorithms used by the alarm formatter are diagramed in box 206 of Figure 5 (described at `600 patent, col. 8, ll. 55 — col. 9, ll. 43.). Accordingly, and consistent with the agreements of the parties the court finds that the structure associated with the claim term " means for comparing the trap sequence number to an expected trap sequence number" is:
Alarm formatter 52 performing the steps identified in box 206 of Figure 5, and equivalents.
3. "means for determining, in response to the comparison, if the received trap is out-of-sequence." (Third means element of Claim 24).
The parties have agreed that the function is "determining, in response to the comparison of the trap sequence number to an expected trap sequence number, if the received trap is out-of-sequence." After the Markman hearing, the parties agreed, and the court finds, that the structure associated with the claim term " means for determining, in response to the comparison, if the received trap is out-of-sequence" is:
Alarm formatter 52 performing the steps identified in boxes 212, 213, 214, 216, and 232 of Figure 5, and equivalents.
4. "means for initiating a database synchronization process for configuration information of the network element in response to the received trap being out-of-sequence." Used in Claim 24.
The parties agreed, and the court concludes, that the function is "initiating a database synchronization process for configuration information of the network element in response to the received trap being out-of-sequence." After discussion at the hearing, the parties agreed, and the court finds that: The structure associated with the claim term "means for initiating a database synchronization process for configuration information of the network element in response to the received trap being out-of-sequence" is:
Process monitor 50, alarm formatter 52, or network monitor 56, performing the steps identified in boxes 103, 104, 106, 108, 110, 114, 116, 118, 120, 122, 124, 126, and 128 of Figure 3, box 234 of Figure 5, box 250 of Figure 6, and boxes 312, 314, and 324 of Figure 7, and equivalents.
The `304 Patent
The `304 patent relates to systems and methods for providing a graphical user interface ("GUI") that represents a "hierarchy" of data related to a computer network and allows a user to navigate through that data.8 According to the patent, the prior art allows a user to view only a small portion of a hierarchy at any one time, making it difficult to move or copy objects from one level to another.
In the present invention, hierarchical data is represented by nodes, beginning with one or more top nodes and extending into lower hierarchical levels by the display of child nodes, grandchild nodes, etc. The parties agree that the terms "node" and "object" are interchangeable and mean "a graphically displayed shape or icon representing a network device."
The nodes displayed on the GUI are scaled in size so that objects on a lower level of the hierarchy are smaller than those on a higher level. A "parent" object or node is one level above its "child" or "children" nodes. A user can navigate through the hierarchical data by selecting any visible node and zoom-in or zoom-out to view the selected node. One application to network management, would allow errors in low level devices within a network to be visually propagated to the upper levels of the hierarchy.
1. "at least one object represents multiple objects" Used in Claim 1.
2. "at least one child object represents multiple child objects" Used in Claim 6.
"at least one object is a graphical representation of multiple objects." "at least one child object represents multiple child objects on the same level of the hierarchy."
Since the parties have agreed on the construction of the similar terms in Claims 1 and 6, a comparison of the language of the three claims is helpful. All three of the claims describe the limitation of the number of nodes/objects around another node/object. All three claims also describe using one object to represent multiple objects. For clarity, this will be referred to as the "representative node." The question is whether in Claim 9 this representative node can only represent nodes on the same level of hierarchy (as agreed for Claim 6) or can represent nodes on more than one level (as agreed for Claim 1).
Unlike Claim 1, Claim 6 and Claim 9 refer to child objects or nodes representing other child objects or nodes. Claim 1's only limitation is that "one object represents multiple objects" with no limitation that the represented objects be "child" objects. Claim 9 is therefore more like Claim 6, in which the parties have agreed the "representative node" represents only nodes on the same level of the hierarchy.
Cisco argues that the representative child node of Claim 9 could also be a parent node and represent children and/or grandchildren nodes on lower levels, so that it would be like Claim 1, in which "one object represents multiple objects." A close examination of the claim language shows that this is a tortured interpretation.
Claim 9 describes "a method for displaying hierarchical data" in which the second step describes a plurality of child nodes being arranged "adjacent to the parent node. . . ." `304 patent, col. 21, ll. 45-46. (emphasis added). Grammatically, the use of the definite article "the" generally indicates a single or unique parent node.
Continuing on in the second step, each child node depends from " the parent node in the hierarchy . . ." `304 patent, col. 21, ll. 46-48. (emphasis added). Then we get to the term in dispute which is contained in the following phrase:
. . . limiting the number of child nodes depending from the parent node to within a predetermined number of child nodes by having at least one representative child node represent a subset of the child nodes . . .
`304 patent, col. 21, ll. 53-56. (emphasis added). The emphasized terms raise two points.
First, the definite article "the" is again used with "parent node." The patentee had unbridled discretion in his choice of words, and he chose to use the definite article each time "parent node" is used in this claim. This is an odd choice if he intended the representative child node to also be a "parent node."
Second, the nodes which depend from the parent, the nodes whose number is predetermined, the "representative node," and the nodes which it represents, are all "child nodes." Cisco argues that this is some sort of generic use of "child." But the specification is very consistent in using "child" to refer to a node depending directly from a parent. An indirect node, or a node more than one hierarchical level below a given parent node is referred to as a "grand-child" or "great-grand-child." `304 patent, col. 8, l. 51; col. 9, ll. 61-63; col. 10, ll. 4-6; col. 11, ll. 13-14 20-21; and col. 14, ll. 55-57.
Likewise, the other claims are also consistent in using "grand-child" when referring to nodes more than one level down from a "parent." See `304 patent, Claim 7, col. 21, ll. 1-5; 304 patent, Claim 11, col. 22, ll. 10-17; and `304 patent, Claim 33, col. 24, ll. 16-17. Claims 11 and 33 are also significant because they describe limiting the number of "child or grand-child objects," whereas Claim 9, like Claim 6, speaks only of limiting the number of "child" nodes or objects. The use of different language in the claims supports the interpretation that the "child nodes" of Claim 9 are on the same hierarchical level, just as the parties have agreed the "child objects" of Claim 6 are on the same hierarchical level.
Cisco contends that the prosecution history suggests that the `virtual' hierarchy enabling one object to represent multiple levels was used to overcome the prior art, U.S. Patent No. 6,144,962 ("the Weinberg patent"). The applicant argued that "a `virtual' hierarchy that includes objects that represent multiple objects" was a critical feature distinguishing their invention over that of Weinberg. Application, January 13, 2003, Bates stamped 00000508-509, p. 10, Exhibit F of Cisco's Opening Claim Construction Brief, [Doc. #51, Attachment #3]. Such a statement relates to the phrase in Claim 1, which Telcordia agrees, may encompass multiple objects on multiple levels. However, when discussing the claim at issue, the applicant argued that "a parent node in the hierarchical structure of objects has child nodes that exceed that predetermined number, a single object may be created to represent a subset of the child nodes. . . ." Id. Although this does not, as Telcordia suggests, unambiguously restrict the claims to one child node representing other child nodes that are on the same level, it certainly indicates that the applicant recognized a distinction between a claim using merely "one object" to represent "multiple objects," and a claim with the additional limitation that one "child node" or child object" represents other "child nodes" or "child objects." The court construes this disputed term as follows:
" having at least one representative child node represent a subset of the child nodes" means "at least one representative child node represents a subset of the child nodes located on the same level of the hierarchy."
4. "grouped automatically or manually" Used in Claims 13 and 17.
5. "the predetermined number is within about a reasonable number for human capacity" Used in Claims 14, 18, and 30.
"arranged by the system or by a user in a group."
35 U.S.C. § 112 ¶ 2 requires that the claims of a patent particularly point out and distinctly claim the subject matter which the applicant regards as his invention. "In ruling on a claim of patent indefiniteness, a court must determine whether those skilled in the art would understand what is claimed when the claim is read in light of the specification. " Bancorp Servs., LLC v. Hartford Life Ins. Co., 359 F.3d 1367, 1371 (Fed. Cir. 2004). "If the claim is subject to interpretation, i.e., it is not insolubly ambiguous, it is not invalid for indefiniteness." Bancorp Servs., 359 F.3d at 1371. "[T]he definiteness of claim terms depends on whether those terms can be given any reasonable meaning." Datamize, LLC v. Plumtree Software, Inc., 417 F.3d 1342, 1347 (Fed. Cir. 2005). In determining whether a claim is insolubly ambiguous, the court should construe the terms according to the general principles of claim construction. Id.
The disputed term appears in Claim 14, which is dependent upon Claim 1. Claim 1 states "the number of objects displayed are limited to within a predetermined number. . . ." `304 patent, col. 19, ll. 62-63. (emphasis added). So the "predetermined number" of Claim 14 refers to a number of objects displayed. The problem with this claim language is that nobody of ordinary skill in the art is given any guidance as to what range of objects is encompassed by the "predetermined number."
Cisco asserts that there is a well known principle of psychology that humans have a capacity for remembering a limited number of items before confusion begins, with the number being generally accepted at being about seven. Cisco says this is known as the "rule of seven." Indeed, Claim 15 refers to the predetermined number being "about seven." `304 Patent, col. 22, ll. 65. That might be definite enough. But the disputed term is limited only by "human capacity."
There is no good indication in the claim language or the specification of the time in which the person will have to view, comprehend, and make use of the number of objects displayed. Obviously a person with plenty of time can review and keep track of a greater number of objects than one under pressure to make immediate decisions in a constantly changing environment. Nothing in the patent indicates that one viewing a graphic display will be trying to memorize what is displayed, so extrinsic references to short term human memory studies do not make this term more definite.
Cisco notes that a computer program filed with the patent application was incorporated in the specification. `304 patent, col. 1, ll. 9-13. Cisco asserts that it identifies eight as the number the court should use. Application, December 9, 1998, p. 38, Bates stamped 00000359, Exhibit F part 2 of Cisco's Opening Claim Construction Brief, [Doc. #50, Attachment #2, p. 16 of 25]. But that use of "eight" is in reference to a program called "Soapbubbles." There is no indication it is tied to any measure of human capacity.
Cisco also argues that the number is related to the size of the screen of the display, so that at some point a viewer would not understand what is being displayed because objects would be too small or would occlude each other. But the patent does not place a limit on the size of the screen, so that the graphic display which is impossible to read when shown on the screen of a hand-held unit might easily be within "human capacity" on a twenty-one inch monitor.
The range of human capacity to understand numbers and numbers of objects is almost unlimited, and varies greatly. Some poorly educated humans in a rural environment have the capacity to visualize a large number of objects, such as the number of cattle in a herd. On the other hand, many with advanced degrees seem to have little grasp of the actual total number of dollars represented in tax legislation. The average high school quarterback preparing to receive a snap must keep track of twenty-one other players and the ball. How does this, let alone the number of objects on the graphic display screen of an air traffic controller, tie in with a "rule of seven," which is not mentioned in the patent or prosecution history?
The disputed term purports to identify a number of objects, or range within which a number of objects will be, but in actuality, has no discernable limit. There is no objective standard to allow one of ordinary skill to design around the invention. If someone created a GUI with twenty objects, the patentee could assert that since it had been created, twenty was within "human capacity." The court concludes that this term is indefinite.
IV. Conclusion
The jury shall be instructed in accordance with the court's interpretations of the disputed claim terms in the `656, `600 and `304 patent.
So ORDERED.