throbber
Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 1 of 30
`
`
`
`
`
`
`
`
`
`UNITED STATES DISTRICT COURT
`NORTHERN DISTRICT OF CALIFORNIA
`
`FINJAN, INC.
`Plaintiff,
`
`vs.
`
`QUALYS INC.,
`Defendant.
`
`CASE NO. 4:18-cv-07229-YGR
`
`
`CLAIM CONSTRUCTION ORDER
`Re: Dkt. Nos. 42, 65
`
`
`
`
`
`
`Plaintiff Finjan, Inc. (“Finjan”) brings this patent infringement action against Defendant
`Qualys Inc. (“Qualys”), alleging that Qualys infringes U.S. Patent Nos. 8,677,494 (the “’494
`Patent”). 6,154,844 (the “’844 Patent”), 8,141,154 (the “’154 Patent”), 6,965,968 (the “’968
`Patent”), 7,418,731 (the “’731 Patent”), 7,975,305 (the “’305 Patent), and 8,225,408 (the “’408
`Patent”). Now before the Court are the parties’ claim construction disputes. A technology tutorial
`was held on May 22, 2020.
`Having carefully considered the papers submitted, the parties’ arguments presented at the
`May 27, 2020 claim construction hearing, and the pleadings in this action, and for the reasons set
`forth below, the Court hereby adopts the constructions set forth herein.
`
`I.
`
`BACKGROUND
`Finjan asserts seven patents. Although each patent has different claims and specification,
`several of the patents are related. Specifically, the ’844, ’731, ’305, ’408, ’494 Patents are
`continuations-in-part of the same parent application: No. 08/694,388.1 All of the patents relate
`
`
`1 Because these patents are related, their common claim terms are interpreted consistently
`across patents unless distinctions are “necessary.” NTP, Inc. v. Res. In Motion, Ltd., 418 F.3d
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 2 of 30
`
`
`
`generally to computer network security, most commonly at the network gateway. (See ’494 Patent
`at 1:60-63; ’844 Patent at 1:23-26; ’154 Patent at 1:7-9; ’968 Patent at 1:63-67, 2:12-16; ’731
`Patent at 1:20-21; ’305 Patent at 1:24-25; ’408 Patent at 1:19-20.)
`Figure 1 of the ’408 Patent illustrates the basic architecture common to several patents
`below. A network gateway (or “gateway computer”) “acts as a conduit for content from the
`Internet entering into a corporate intranet, and for content from the corporate intranet exiting to the
`Internet.” (’408 Patent at 3:62-67.) The gateway contains a scanner that inspects incoming
`content to identify malicious code (e.g., viruses). (Id. at 4:54-56.) The scanner uses security
`policies to decide whether to block incoming content—for example, blocking “severely malicious”
`content but allowing “less malicious” content. (Id. at 4:53-5:2.) The intranet is also coupled to a
`cache that stores content to avoid re-retrieval and re-scanning. (Id. at 5:10-15.) The Court
`addresses patent-specific implementations in the body of this Order.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`1282, 1293 (Fed. Cir. 2005), abrogated on other grounds as stated in IRIS Corp. v. Japan Airlines
`Corp., 769 F.3d 1359, 1361 n.1 (Fed. Cir. 2014)
`2
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 3 of 30
`
`
`
`II.
`
`LEGAL PRINCIPLES
`Claim construction is a question of law for the court. Markman v. Westview Instruments,
`Inc., 517 U.S. 370, 384 (1996). “The purpose of claim construction is to determine the meaning
`and scope of the patent claims asserted to be infringed.” O2 Micro Int’l Ltd. v. Beyond Innovation
`Tech. Co., 521 F.3d 1351, 1360 (Fed. Cir. 2008). “When the parties raise an actual dispute
`regarding the proper scope of the[] claims, the court, not the jury, must resolve the dispute.” Id.
`However, claim construction needs only “resolve the controversy”; it is not “an obligatory
`exercise in redundancy” where no dispute exists. See id. at 1361-62; U.S. Surgical Corp. v.
`Ethicon, Inc., 103 F.3d 1554, 1568 (Fed. Cir. 1997).
`
`A.
`The Ordinary Meaning Construction
`Claim terms are generally given the “ordinary and customary meaning” that they would
`have to a person of ordinary skill in the art at the time of the invention. Phillips v. AWH Corp.,
`415 F.3d 1303, 1312-13 (Fed. Cir. 2005) (en banc). The ordinary and customary meaning is not
`the meaning of the claim term in the abstract. Id. at 1321. Rather, it is “the meaning to the
`ordinary artisan after reading the entire patent.” Id.; see also Trs. of Columbia U. v. Symantec
`Corp., 811 F.3d 1359, 1364 (Fed. Cir. 2016) (“The only meaning that matters in claim
`construction is the meaning in the context of the patent.”).
`To determine the ordinary meaning, the court examines the claims, specification, and
`prosecution history of the patent, which form the “intrinsic evidence” for claim construction.
`Phillips, 415 F.3d at 1313; Vitronics Corp. v. Conceptronic, Inc., 90 F.3d 1576, 1582 (Fed. Cir.
`1996). “[T]he context in which a term is used in the asserted claim can be highly instructive.”
`Phillips, 415 F.3d at 1314. Additionally, “[d]ifferences among claims can also be a useful guide
`in understanding the meaning of particular claim terms.” Id. However, a person of ordinary skill
`in the art is “deemed to read the claim term not only in the context of the particular claim in which
`the disputed term appears, but in the context of the entire patent, including the specification.” Id.
`at 1313. The specification “is always highly relevant to the claim construction analysis” and
`usually “dispositive.” Id. at 1315 (quoting Vitronics, 90 F.3d at 1582). Nevertheless, it is
`improper to limit the claimed invention to the preferred embodiments or to import limitations from
`
`3
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 4 of 30
`
`
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`the specification unless the patentee has demonstrated a clear intent to limit claim scope. Martek
`Biosci. Corp. v. Nutrinova, Inc., 579 F.3d 1363, 1380-81 (Fed. Cir. 2009).
`In addition to the claims and specification, the prosecution history may be used “to
`provide[] evidence of how the PTO and the inventor understood the patent.” Philips, 415 F.3d. at
`1317. “Any explanation, elaboration, or qualification presented by the inventor during patent
`examination is relevant, for the role of claim construction is to ‘capture the scope of the actual
`invention’ that is disclosed, described and patented.” Fenner Inv., Ltd. v. Cellco P’ship, 778 F.3d
`1320, 1323 (Fed. Cir. 2015). Finally, a court may consider extrinsic evidence—such as
`dictionaries, inventor testimony, and expert opinion—if it is helpful. Phillips, 415 F.3d at 1319.
`However, extrinsic evidence “is unlikely to result in a reliable interpretation of patent claim scope
`unless considered in the context of the intrinsic evidence.” Id.
`There are two exceptions to the ordinary meaning construction: “1) when a patentee sets
`out a definition and acts as his own lexicographer,” and “2) when the patentee disavows the full
`scope of a claim term either in the specification or during prosecution.” Thorner v. Sony Comp.
`Entm’t Am. LLC, 669 F.3d 1362, 1365 (Fed. Cir. 2012) (citing Vitronics, 90 F.3d at 1580). To act
`as a lexicographer, the patentee “must ‘clearly set forth a definition of the disputed claim term’
`other than its plain and ordinary meaning.” Id. (quoting CCS Fitness, Inc. v. Brunswick Corp.,
`288 F.3d 1359, 1366 (Fed. Cir. 2002)). To disavow claim scope, the specification or prosecution
`history must “make[] clear that the invention does not include a particular feature” even though
`the language of the claims “might be considered broad enough to encompass the feature in
`question.” Id. at 1366 (quoting SciMed Life Sys., Inc. v. Adv. Cardiovascular Sys., Inc., 242 F.3d
`1337, 1341 (Fed. Cir. 2001)).
`
`B. Means-Plus-Function Terms
`Under 35 U.S.C. § 112 ¶ 6, a patentee may express claim terms as means or steps for
`performing a specified function “without the recital of structure, material, or acts in support
`thereof.” Such means-plus-function claims must be construed “to cover the corresponding
`structure, material, or acts described in the specification and equivalents thereof.” 35 U.S.C. § 112
`¶ 6. To construe means-plus-function claims, the court must first determine if Section 112
`4
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 5 of 30
`
`
`
`paragraph 6 applies. Williamson v. Citrix Online, LLC, 792 F.3d 1339, 1348 (Fed. Cir. 2015).
`Generally, the use of the term “means” creates a presumption that it does. See id. at 1349. The
`absence of the term “means” creates the opposite presumption. Id. A party may overcome the
`presumption by showing that the claims recite (or do not recite) “sufficiently definite structure” to
`adequately perform the claimed function. Id.
`If means-plus-function applies, the court engages in a two-step inquiry to construe the
`claims: first, “[t]he court must identify the claimed function,” and second, “the court must
`determine what structure, if any, disclosed in the specification corresponds to the claimed
`function.” Id. at 1351. A structure corresponds to the claimed function if “the specification or
`prosecution history clearly links or associates that structure to the function recited in the claim.”
`Noah Sys., Inc. v. Intuit Inc., 675 F.3d 1302, 1311 (Fed. Cir. 2012) (quoting B. Braun Med., Inc. v.
`Abbott Labs., 124 F.3d 1419, 1424 (Fed. Cir. 1997)). The structure must be adequate to perform
`the function; if the intrinsic evidence fails to disclose adequate corresponding structure, the claim
`is indefinite. Id.
`
`III. CLAIM CONSTRUCTION
`A.
`Disputed Terms in the ’408 Patent
`By way of background, the ’408 Patent is directed to scanning network content for exploits
`(e.g., viruses). (’408 Patent at 1:19-20.) Unlike traditional anti-virus software, which focuses on
`discrete “signatures” of viruses, the ’408 Patent focuses on patterns of tokens indicating exploits.
`(Id. at 1:34-55.) It does so using adaptive rule-based (ARB) scanners. (Id. at 1:65-66.) Each
`ARB scanner may contain three modules: (1) a tokenizer, (2) a parser, and (3) an analyzer. (Id. at
`2:35-46, Fig. 2.) The tokenizer receives incoming source material and identifies specific
`“tokens”—lexical constructs such as keywords or names for variables. (Id. at 6:51-59.) The
`parser creates a tree out of the tokens to identify groups of tokens that form a pattern. (Id. at 8:18-
`28.) Finally, the analyzer uses a set of rules to identify which patterns indicate exploits. (Id. at
`9:19-21.)
`
`5
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 6 of 30
`
`
`
`1.
`
`“instantiating, by the computer, a scanner for the specific programming
`language”
`
`
`
`Finjan’s Proposed
`Construction
`No construction necessary –
`Plain and ordinary meaning
`
`Court’s
`Construction
`generating or requesting a
`scanner that can scan the
`programming language by
`providing a generic scanner
`instance with language-
`specific data, rules, or both
`
`The term “instantiating, by the computer, a scanner for the specific programming
`
`language” appears in asserted claim 1 and unasserted claim 22 of the ’408 Patent. Claim 1 and 22
`recite methods that involve first determining the programming language of an incoming stream of
`program code and then instantiating a scanner “comprising parser rules and analyzer rules for the
`specific programming language” in response to the aforementioned determining. (’408 Patent at
`claims 1, 22; see also id. at claims 9 (claim reciting a “scanner instantiator” that performs the
`instantiating step).)
`
`The parties’ dispute stems from an unclear relationship between two parts of the
`specification. On the one hand, the specification states that “[t]he content scanners of the present
`invention are referred to as adaptive rule-based (ARB) scanners.” (’408 Patent at 1:65-66; see
`also id. at 6:35-40.) ARB scanners differ from other types of scanner because they are not “hard-
`coded for one particular type of content,” but can instead be “enabled to scan any specific type of
`content by providing appropriate rule files, without the need to modify source code.” (’408 Patent
`at 1:66-2:6.) Thus, in ARB scanners, “[r]ules files” for a particular language “serve as adaptors, to
`adapt an ARB content scanner to a specific type of content.” (Id. at 2:14-15; see also id. at 6:17-
`20 (“An ARB scanner system is preferably designed as a generic architecture that is language-
`independent, and is customized for a specific language through use of a set of language-specific
`rules.”), 6:35-40 (“[T]he present invention provides a flexible content scanning method and
`system, which can be adapted to any language by means of a set of rules.”).) These disclosures
`describe the “present invention” and suggest that the claimed “instantiating” does not require
`
`Qualys’ Proposed
`Construction
`substituting specific data,
`instructions, or both into a
`scanner to make it usable for
`scanning the programming
`language
`
`6
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 7 of 30
`
`
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`creating new scanners for different languages. Rather, the same scanner can be adapted to
`different programming languages simply by substituting new rules files. Qualys thus proposes
`construing this limitation as “substituting specific data, instructions, or both into a scanner to make
`it usable for scanning the programming language.” 2
`
`On the other hand, the specification also describes an embodiment where a “scanner
`factory module” creates an ARB scanner repository containing a “multitude of content scanners,”
`one for each possible language. (See id. at 14:65-15:67.) In this embodiment, rules files for
`different languages are combined into an “archive file.” (Id. at 15:5-14.) An “ARB scanner
`factory module” then uses the archive file to instantiate a scanner repository that “produces a
`single instance of each ARB scanner defined in the archive file.” (Id. at 15:15-33.) For example,
`Figure 6 shows a scanner repository containing an HTML scanner, a JavaScript scanner, and a
`URI scanner. (Id. at Fig. 6; see also id. at 15:39-41, Fig. 7.) When the client device downloads
`content from the Internet, the computer requests an appropriate scanner from the ARB scanner
`factory to process the content. (Id. at 15:49-63.) This embodiment suggests that new instances of
`a scanner really are created for different languages by the “ARB scanner factory.” Finjan thus
`proposes construing the term according to its “plain and ordinary meaning,” which online
`dictionaries define as “the realization of a predefined object” in which “a class of object is
`defined” and “[a]n instance of that object may then be declared.”
`
`The differing treatment in the specification has led different courts to adopt different
`constructions for this term. In Finjan, Inc. v. Rapid7, Inc., Judge Noreika in the District of
`Delaware adopted Finjan’s plain meaning construction of “instantiating” as “generating or
`requesting a scanner that can scan the specific programming language,” citing the column 15
`
`
`2 Qualys’ proposed construction stems from the IPR proceedings for the ’408 Patent. The
`Court takes sua sponte notice of those proceedings. There, the U.S. Patent and Trial Appeals
`Board (“PTAB”) rejected both parties’ proposed constructions—which were similar to Finjan’s—
`because they were broader than the specification allows. Palo Alto Networks, Inc. v. Finjan, Inc.,
`Nos. IPR2015-02001, IPR2016-00157, Paper 10 at 10-12 (PTAB Mar. 29, 2016). Instead, it
`adopted a dictionary definition based on “substituting,” which was closer to the specification. Id.
`(citing ’408 Patent at 15:30-34.) Although the PTAB applies a different claim construction
`standard than the district courts, the PTAB’s standard is broader than the Phillips standard.
`Accordingly, the PTAB’s finding that even under the broadest reasonable interpretation, Finjan’s
`construction is too broad has persuasive value.
`
`7
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 8 of 30
`
`
`
`disclosure that “[a]n advantage of the present invention is the ability to generate . . . a multitude of
`content scanners within a unified framework.” No. 18-1519 (MN), 2020 WL 565377, at **12-13
`(D. Del. Feb. 5, 2020) (citing ’408 Patent at 15:56-58). But in Finjan, Inc. v. Sonicwall, Inc.,
`Judge Freeman in this District adopted Qualys’ construction, relying on the disclosures that ARB
`scanners adopt to different languages through rules files. No. 17-cv-04467-BLF, 2019 WL
`1369938, at **15-17 (N.D. Cal. Mar. 26, 2019) (citing ’408 Patent at 1:65-2:24, 6:17-20). Both
`parties argue that their preferred decision is entitled to deference, but neither substantively
`addresses the other court’s construction.
`
`Despite the differing treatment, a thorough analysis reveals no real tension between the
`constructions. The “scanner factory module” embodiment makes clear that the “factory”
`instantiates different ARB scanners using the “archive file” that contains rules for different
`languages. Read in conjunction with the column three and six disclosures, the ARB scanner
`factory instantiates the ARB scanner repository by creating generic ARB scanners and then
`substituting (or inputting) language-specific rules from the archive file. Accordingly, both parties
`are correct. Finjan is correct in that the ’408 Patent uses “instantiating” according to its ordinary
`meaning of creating a specific instance of a scanner based on a pre-defined template.3 And Qualys
`is correct that the descriptions of the “present invention” limit the way in which scanners are
`instantiated by requiring the ABH scanner to remain the same while language-specific rules are
`input to adapt to different content. See Verizon Serv. Corp. v. Vonage Holdings Corp., 503 F.3d
`1295, 1308 (Fed. Cir. 2007) (“When a patent [] describes the features of the ‘present invention’ as
`a whole, this description limits the scope of the invention.”); see also Techtronic Indus. Co. v. Int’l
`Trade Comm’n, 944 F.3d 901, 907 (Fed. Cir. 2019) (“It is axiomatic that, where the specification
`describes the present invention as having a feature, that representation may disavow contrary
`embodiments.”). Accordingly, the appropriate construction combines both parties’ proposals.4
`
`
`3 Judge Freeman did not find otherwise: Sonicwall found that “the patentee’s use of
`‘instantiating’ . . . describes a procedure of customizing or setting up ‘a scanner for the specific
`programming language,’” which was consistent with its construction. 2019 WL 1369938, at *16.
` In the preferred embodiment, ARB scanners are created prior to the determination of the
`incoming content language. (See ’408 Patent at 15:30-35, 15:56-58.) The PTAB noted the
`8
`
` 4
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 9 of 30
`
`
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`The Court makes three adjustments to the combined construction. First, “specific data,
`
`instructions, or both” is changed to “specific data, rules, or both.” The term “instructions” could
`be interpreted to mean “source code,” but the specification makes clear that source code does not
`change in adapting the ARB scanner. (’408 Patent at 2:4-6.) Second, the Court changes
`“substituting” to “providing.” As Judge Noreika noted, the term “substitution” could be read to
`exclude embodiments where scanners are created from scratch. Rapid7, 2020 WL 565377, at *13.
`Although this Court does not believe there is an inconsistency, the term “providing” better reflects
`the intrinsic evidence that rule files may be provided without substitution. (See ’408 Patent at 2:3-
`6.) Finally, the Court adds that the scanner is a “generic instance” that receives “language-
`specific” rules files. Although (as Judges Freeman and Noreika both noted) the term “generic” is
`used in a preferred embodiment, the change here clarifies that the source code and basic operation
`of the scanner do not change when adapting to different languages, making it “generic” as to
`language, as described for the “present invention.” (See id. at 2:2-6, 6:35-43.) These changes are
`made for purposes of clarity and do not alter the substantive scope of the combined constructions
`previously adopted in the district courts.
`Accordingly, the Court construes “instantiating, by the computer, a scanner for the specific
`programming language” as “generating or requesting a scanner that can scan the programming
`language by providing a generic scanner instance with language-specific data, rules, or both.”
`
`B.
`Disputed Terms in the ’968 Patent
`The ’968 Patent is directed to “management of a single cache so as to control content
`relative to a plurality of policies.” (Id. at 1:64-67.) “Conventional caching is used to avoid
`repeating the same computations or the same data transmission” by caching content “after it is
`received from a web server” so that “the second time around,” the content is “already available on
`
`
`inconsistency with the claim language—which requires instantiating an ARB scanner “in response
`to said determining [of the programming language]”— in adopting a construction based on
`substitution.” IPR2016-00157, Paper 10 at 10-12. However, substitution of language-specific
`rules also appears to take place prior to the determination step. (See ’408 Patent at 15:1-4, Fig. 6
`(showing language-specific scanners prior to serialization to a user device).) Accordingly, the
`Court agrees with Judge Noreika’s construction of “instantiating” as “generating or requesting a
`scanner,” to reflect the Figure 6 embodiment where scanners are generated prior to a request based
`on specific content.
`
`9
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 10 of 30
`
`
`
`the user’s computer for rendering.” (Id. at 1:10-23.) In addition to storing recently used content
`and calculations, caching may be used in conjunction with “content control” to “control what
`content is delivered to client computers.” (Id. at 1:38-39.) Such operations “filter[] incoming
`content according to a ‘policy’ that includes one or more rules.” (Id. at 1:40-42.)
`The ’968 Patent addresses the problem of different users having different policies. (Id. at
`4:14-18.) Conventional cache managers cannot enforce more than one policy. (Id. at 4:18-19.)
`Accordingly, if one user requests content that is allowable under her policy, the content becomes
`available through the cache to a second user, even if the second user’s policy forbids it. (Id. at
`4:20-32.) To solve this problem, the ’968 Patent proposes the use of a “policy-based index,”
`which is “a data structure indicating allowability of cached content relative to a plurality of
`policies.” (Id. at 2:3-6, 4:33-38.) The policy-based index allows the system to “check whether
`cached content is allowable for a different user than the original user who requested it, and thus
`block cached content from being delivered to users for whom it is not allowed.” (Id. at 2:6-11.)
`
`2.
`
` “dynamically generating a policy index”
`
`
`
`Finjan’s Proposed
`Construction
`No construction necessary –
`plain and ordinary meaning
`
`Qualys’ Proposed
`Construction
`creating or updating a policy
`index in response to user
`requests for cached or non-
`cached content
`
`
`Court’s
`Construction
`adding allowability
`information to a policy index
`in response to requests for
`cached or non-cached content
`
`
`
`The term “dynamically generating a policy index” appears in asserted claims 26, 32, and
`
`33, as well as unasserted claims 24 and 25 of the ’968 Patent. In claims 26 and 32, dynamically
`generating the policy index comprises the steps of: (1) “determining . . . whether the piece of
`digital content is allowable for a given policy,” and (2) “storing an indication of the results . . .
`within the policy index,” either by “adding an entry in the policy index” or by “modifying an
`already existing entry.”5 (’968 Patent at claims 26, 32.)
`
`
`5 Finjan interprets claim 26 to indicate that the “dynamically generating” is accomplished
`by “indicating pieces of cached content known to be allowable relative to a given policy.” The
`better interpretation is that the “indicating” clause modifies how the policy index “relate[s] cached
`10
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 11 of 30
`
`
`
`The parties dispute whether a policy index may be created or updated in response to
`something other than user requests.6 Qualys argues that “dynamic” generation refers to creating or
`updating the policy index “in response to user requests for cached or non-cached content.” As
`support, Qualys points out that the specification states that “the present invention allows for
`policy-based cache index 190 to be updated dynamically as user requests for cached and non-
`cached content arrive.” (’968 Patent at 5:66-6:2.) Qualys further points out that every
`embodiment disclosed in the specification involves creating policy index entries in response to
`user requests. (See id. at Fig. 2, 6:22, 6:31-35, 9:17-18, 8:33-40.) Qualys thus argues that this
`description of “the present invention” disavows other types of “dynamic” generation of the policy
`index. See Techtronic, 944 F.3d at 907.
`
`Finjan disputes that every embodiment involves creating or updating a policy index in
`response to user requests and points to contrary embodiments. For example, the specification
`describes initially creating an empty policy index—not apparently in response to user requests—
`which is then filled in with policy entries in response to user requests. (See ’968 Patent at 6:12-
`13.) The specification also describes an embodiment of “resetting” the policy index by deleting
`policy index entries (or setting them to “null”) when policies are changed to avoid mistakenly
`delivering content that is not allowed. (See id. at 7:57-67; see also id. at 8:1-7.) Accordingly,
`Finjan argues that the descriptions of dynamically generating the policy index are “not uniform,”
`which prevents the term “present invention” from creating disclaimer. See Absolute Software, Inc.
`v. Stealth Signal, Inc., 659 F.3d 1121, 1136-37 (Fed. Cir. 2011).
`
`As an initial matter, the Court agrees that the description of “the present invention” at
`5:55-6:2 does not indicate disavowal. Descriptions of the “present invention” only limit claim
`scope when they describe the invention, not the embodiments of that invention. See David Netzer
`
`
`content and policies,” not how the index is generated.
` The parties also dispute whether the term requires construction. Finjan proposes “plain
`and ordinary meaning” for this and all other terms. However, a “plain and ordinary meaning”
`construction is only appropriate when a single “ordinary” meaning exists and fully resolves the
`parties’ disputes. See O2 Micro, 521 F.3d at 1361. Unless otherwise noted, the Court finds that
`disputes exist and preclude a plain and ordinary meaning construction in this Order.
`
`
` 6
`
`11
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 12 of 30
`
`
`
`1
`2
`3
`4
`5
`6
`7
`8
`9
`10
`11
`12
`13
`14
`15
`16
`17
`18
`19
`20
`21
`22
`23
`24
`25
`26
`27
`28
`
`Consulting Eng. LLC v. Shell Oil Co., 824 F.3d 989, 994 (Fed. Cir. 2016) (requiring clear and
`unmistakable statements, like “the present invention includes,” “the present invention is,” or “all
`embodiments of the present invention are”). Here, the specification states that the invention
`“allows” for updating content in response to user requests—permissive language that implies that
`such updating is not essential or critical to the invention. Cf. Blackbird Tech LLC v. ELB Elecs.,
`Inc., 895 F.3d 1374, 1377-78 (Fed. Cir. 2018). Moreover, not all claims require “dynamic”
`generation of the policy index, which means that dynamic generation cannot be required for the
`invention as a whole. (Compare ’968 Patent at claims 1, 13, with id. at claims 24, 25.)
`
`Notwithstanding the lack of disclaimer, the Court finds that Qualys’ construction accords
`with the ordinary meaning of “dynamically generating a policy index,” as used in the ’968 Patent.
`The specification distinguishes “dynamic” generation of the policy index from creating a complete
`policy index at the start to “include all allowability links from [each policy] to [all] allowable
`content.” (Id. at 5:52-6:2.) A complete policy index would “conclusively determine whether or
`not the given content is allowable relative to the given policy.” (Id. at 5:55-63.) However, it
`would “require an exponential amount of computations . . . as the size of the cache and the number
`of policies increase.” (Id. at 6:2-6.) To avoid expanding such resources, “it is not necessary for
`policy-based cache index 190 to be complete” in the ’968 Patent, and it may instead “be updated
`dynamically as user requests for cached and non-cached content arrive.” (Id. at 5:64-6:2.) Thus,
`in the preferred embodiment, the policy index is inconclusive for a given policy-content
`combination until a user governed by that policy requests the content, at which point its
`allowability or non-allowability information is added to the policy index. (See id. at 6:7-7:2.)
`Accordingly, the purpose of “dynamic” generation in the ’968 Patent is to leave the policy index
`incomplete—thus avoiding unnecessary expenditure of resources—until a user request for content
`makes a determination of allowability necessary.7
`
`
`7 Finjan argues that content may be retrieved without user requests—e.g., “push” content.
`However, Finjan provides no evidence that content could be retrieved without a request at the time
`of the ’968 Patent. Moreover, the parties disagree about the technical operation of push content.
`In light of the largely-unbriefed technical dispute, and given the state of the record, the Court
`construes the term in light of the intrinsic evidence to require requests. Cf.
`https://www.twilio.com/docs/ (defining push notifications to involve server-side requests).
`12
`
`Northern District of California
`United States District Court
`
`

`

`Case 4:18-cv-07229-YGR Document 74 Filed 06/11/20 Page 13 of 30
`
`
`
`Finjan is correct, however, that the policy index itself may exist independent of user
`
`requests. (Id. at 6:12-13.) Finjan is also correct that policy index entries may be updated to delete
`allowability information or to create null entries in response to other changes (such as policy
`updates). (See id. at 7:57-8:7, 9:20-22.) However, allowability (or non-allowability) information
`is only added in response to user requests, in order to avoid unnecessary computations. (See id. at
`4:42-51, 5:52-7:2.) Accordingly, “generating” the policy index properly refers to filling out the
`policy index with allowability information, not creating the index itself. The term “adding” also
`better aligns with the claim language,

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket