EPICREALM DYNAMIC WEBSITE PATENTS CLAIM CONSTRUCTION ANALYSIS Dan - - PowerPoint PPT Presentation
EPICREALM DYNAMIC WEBSITE PATENTS CLAIM CONSTRUCTION ANALYSIS Dan - - PowerPoint PPT Presentation
EPICREALM DYNAMIC WEBSITE PATENTS CLAIM CONSTRUCTION ANALYSIS Dan Ravicher What is a Dynamic Website? Produces a Customized Response to User Input Examples Google, Yahoo and other seach engines Online banking E-Tailors
What is a Dynamic Website?
- Produces a Customized Response to User
Input
- Examples
- Google, Yahoo and other seach engines
- Online banking
- E-Tailors
- U.S.P.T.O.
Family Tree
08/636,477 (Apr. 23, 1996) 5,894,554 (Apr. 13, 1999) D 09/234,048 (Jan. 19, 1999) 6,415,335 (Jul. 2, 2002)
The '554 Patent
- 11 Claims, 3 Independent
- 1. A computer-implemented method for managing a dynamic Web page
generation request to a Web server, said computer-implemented method comprising the steps of: routing said request from said Web server to a page server, said page server receiving said request and releasing said Web server to process other requests, wherein said routing step further includes the steps of intercepting said request at said Web server, routing said request from said Web server to a dispatcher, and dispatching said request to said page server; processing said request, said processing being performed by said page server while said Web server concurrently processes said other requests; and dynamically generating a Web page in response to said request, said Web page including data dynamically retrieved from one or more data sources.
The '335 Patent
- 29 Claims, 3 Independent
- 1. A computer-implemented method for managing a dynamic Web page
generation request to a Web server, said computer-implemented method comprising the steps of: routing a request from a Web server to a page server, said page server receiving said request and releasing said Web server to process other requests wherein said routing step further includes the steps of: intercepting said request at said Web server and routing said request to said page server; processing said request, said processing being performed by said page server while said Web server concurrently processes said other requests; and dynamically generating a Web page in response to said request, said Web page including data dynamically retrieved from one or more data sources.
Specification re Prior Art
- “[The Prior Art methods] do
not ... resolve the problem of managing numerous Web pages and requests at a Web
- site. For example, a single
company may maintain hundreds of Web pages at their Web site. Current Web server architecture also does not allow the Web server to efficiently manage the Web page and process Web client
- requests. Managing these
hundreds of Web pages in a coherent manner and processing all requests for access to the Web pages is thus a difficult task.” 2:1-12.
Specification re Invention
- “When numerous requests are being simultaneously processed by multiple
threads on a single machine, the Web server can slow down significantly and become highly inefficient. The claimed invention addresses this need by utilizing a partitioned architecture to facilitate the creation and management of custom Web sites and servers.” 4:47-54.
Specification re Claim Terms
- “Interceptor 400 intercepts the request and routes it to Dispatcher 402. In one embodiment, Interceptor
400 resides on the Web server machine as an extension to Web server 201. This embodiment is appropriate for Web servers such as Netsite.TM. from Netscape, that support such extensions. ... [I]n an alternate embodiment, Interceptor 400 is an independent module, connected via an 'intermediate program' to Web server 201.” 4:59 – 5:5.
- “Dispatcher 402 resides on a different machine than Web server 201. This embodiment overcomes the
limitation described above, in prior art Web servers, wherein all processing is performed by the processor on a single machine. By routing the request to Dispatcher 402 residing on a different machine than the Web server executable 201(E), the request can then be processed by a different processor than the Web server executable 201(E). Web server executable 201(E) is thus free to continue servicing client requests on Web server 201 while the request is processed 'off-line,' at the machine on which Dispatcher 402 resides. ... Dispatcher 402 can, however, also reside on the same machine as the Web server. The Web site administrator has the option of configuring Dispatcher 402
- n the same machine as Web server 201 ... .” 5:8-23.
- “Dispatcher 402 receives the intercepted request and then dispatches the request to one of a number of
Page servers 404 (1)-(n). For example, if Page server 404 (1) receives the dispatched request, it processes the request and retrieves the data from an appropriate data source ... . Data sources, as used in the present application, include databases, spreadsheets, files and any other type of data
- repository. Page server 404 (1) can retrieve data from more than one data source and incorporate the
data from these multiple data sources in a single Web page. In one embodiment, each Page server 404(1)-(n) resides on a separate machine on the network to distribute the processing of the request.” 5: 37-51.
Prosecution History (1)
Date
- App. 08/636,477 (Apr. 23, 1996)
U.S. Patent 5,894,554 (Apr. 13, 1999)
- App. 09/234,048 (Jan. 19, 1999)
U.S. Patent 6,415,335 (July 02, 2002)
- Apr. 23, 1996
Application 08/636,477 filed.
- Jul. 3, 1997
Office Action (all 16 claims rejected)
- 103 Barbari + Goldberg
- Barbari teaches claimed invention
substantially as claimed.
- Barbari does not “explicitly” teach a WWW
system implementing the disclosed invention.
- Goldberg teaches WWW system.
- Obvious to combine b/c wd have increased
efficiency and throughput of Goldberg's system.
Prosecution History (2)
Date
- App. 08/636,477 (Apr. 23, 1996)
U.S. Patent 5,894,554 (Apr. 13, 1999)
- App. 09/234,048 (Jan. 19, 1999)
U.S. Patent 6,415,335 (July 02, 2002)
- Oct. 7, 1997
Amendment
- Amends
all 16 pending claims
- 103 Barbari + Goldberg's
- Barbari does not teach the invention
substantially as claimed.
- Barbari simply describes a particular type of
database application.
- Focus of claimed invention is management
- f Web requests or Web sites, not
generation or creation of dynamic Web pages.
- Barbari does not teach or suggest claimed
invention's type of “page server” or interaction between a Web server and a page server. Invention's dispatcher maintains a variety of information regarding each page server on the network and dispatches the requests based on this information.
Prosecution History (3)
Date
- App. 08/636,477 (Apr. 23, 1996)
U.S. Patent 5,894,554 (Apr. 13, 1999)
- App. 09/234,048 (Jan. 19, 1999)
U.S. Patent 6,415,335 (July 02, 2002)
- Dec. 31, 1997
Office Action (14 claims rejected; 2 objected)
- Restriction
- System and method for managing and
routing requests
- Method for managing and recreating a site
at a new location.
- 103 Irwin
- Irwin teaches claimed invention
substantially as claimed.
- Irwin does not “explicitly” teach a WWW
system implementing the disclosed invention.
- Obvious to modify Irwin b/c wd have
increased efficiency and throughput of WWW systems.
Prosecution History (4)
Date
- App. 08/636,477 (Apr. 23, 1996)
U.S. Patent 5,894,554 (Apr. 13, 1999)
- App. 09/234,048 (Jan. 19, 1999)
U.S. Patent 6,415,335 (July 02, 2002)
- Mar. 31, 1998
Amendment
- 103 Irwin
- Reference is directed at a method and
system for intercepting and processing boot strap loader requests from a ROM-BIOS, which is a completely different area of technology than the presently claimed invention.
- Irwin does not teach or suggest any type of
management of Internet sites, or a method and system for managing web sites and dynamic web page generation requests, or any type of “page server” that processes a request from a Web server while the Web server concurrently processes a difference request, as claimed.
- Irwin does not teach or suggest dynamically
generating a Web page in response to a request wherein the Web page includes data dynamically retrieved from one or more data sources, as claimed.
Prosecution History (5)
Date
- App. 08/636,477 (Apr. 23, 1996)
U.S. Patent 5,894,554 (Apr. 13, 1999)
- App. 09/234,048 (Jan. 19, 1999)
U.S. Patent 6,415,335 (July 02, 2002)
- Dec. 17, 1998
Interview Summary
- Applicants agreed to
(i) cancel claim 2, (ii) include the limitations of claim 2 into independent claims 1, 11 and 16, and (iii) cancel claims 13, 14 and 15.
- Dec. 29, 1998
Notice of Allowability
- Examiner's Amendment
- Adds to claims 1, 11 and 16: “wherein said
routing step further includes the steps of intercepting said request at said Web server, routing said request from said Web server to a dispatcher, and dispatching said request to said page server”.
- Jan. 19, 1999
Application 09/234,048 filed as divisional of application 08/636,477.
- Apr. 13, 1999
U.S. Patent 5,894,554 issued.
- Jul. 12, 1999
Preliminary Amendment canceling claims 1-16 and adding claims 17-45.
- Feb. 23, 2001
Office Action (all claims rejected)
- Obviousness Double Patenting
- 102(e) Leaf
Prosecution History (6)
Date
- App. 08/636,477 (Apr. 23, 1996)
U.S. Patent 5,894,554 (Apr. 13, 1999)
- App. 09/234,048 (Jan. 19, 1999)
U.S. Patent 6,415,335 (July 02, 2002) May 23, 2001 Response to Office Action
- ODP: Submit terminal disclaimer
- 102(e) Leaf
- Leaf does not teach or suggest “intercepting said
request.” Leaf teaches that the web server routes the request directly to the transaction gateway client. Merely routing a request from a web server to the transaction gateway does not involve interception.
- Leaf does not involve either a connection cache or a
page cache, and neither are inherent in Leaf.
- Leaf does not teach “wherein said page server
includes tag-based text templates for configuring said Web page”; merely teaches that the Transaction Gateway Client may format the data into an HTML document.
- Aug. 27, 2001
Office Action
- 103 Rogers + Malcolm
- Rogers does not explicitly teach the web server
simply intercepting and routing the request.
- Malcolm teaches the usage of a special program in
the server to intercept the request and decide how to fulfill the request.
Prosecution History (7)
Date
- App. 08/636,477 (Apr. 23, 1996)
U.S. Patent 5,894,554 (Apr. 13, 1999)
- App. 09/234,048 (Jan. 19, 1999)
U.S. Patent 6,415,335 (July 02, 2002)
- Nov. 27, 2001
Response to Office Action
- 103 Rogers + Malcolm
- Malcolm's interception of a file open request and
determination of whether to permit execution of a file does not teach or suggest “routing a request from a Web server to a page server” because mere interception and determination do not teach or suggest “routing” the request from one place to another.
- No motivation to combine
Rogers' web server functionality with Malcolm's operating system level functionality
- Rogers does not involve either a connection cache or
a page cache.
- Feb. 8, 2002
Notice of Allowability July 2, 2002 U.S. Patent 6,415,335 issued.
Litigation History
- EpicRealm Licensing, LLC v. Franklin Covey Co. et al.,
C.A. No. 4:05-356 (TX ED).
- EpicRealm Licensing, LLC v. Autoflex Leasing, Inc. et
al, C.A. No. 2:05-163 (TX ED).
- Oracle Corporation et al v. Epicrealm Licensing LP,
C.A. No. 1:06-414 (DE).
- Quinstreet Inc. v. Epicrealm Licensing LP, C.A. No.
1:06-495 (DE).
- EpicRealm Licensing, LP. v. Various, Inc., 2:07-
cv-00030-DF (TX ED).
Claim Construction (1)
'554 Patent Claim Construction (Broadest Reasonable Interpretation)
- 1. A computer-implemented method for
managing a dynamic Web page generation request to a Web server, said computer- implemented method comprising the steps of: “Request” means “a message that asks for content.” “Web server” means “a system capable of processing an HTTP request and producing a response to such a request.” routing said request from said Web server to a page server, “Page server” means “a processing system operable to receive a request and dynamically generate content in response to the request.” said page server receiving said request and releasing said Web server to process other requests, “Releasing” means “freeing.” wherein said routing step further includes the steps of intercepting said request at said Web server, “Intercepting” means “stopping, deflecting, or interrupting the processing of a request.” routing said request from said Web server to a dispatcher, “Routing” means “sending or forwarding data along a path toward a destination.” and dispatching said request to said page server; “Dispatching” means “selecting a page server for processing a request, based on current state information maintained about page servers, and sending the request to the selected page server.”
Claim Construction (2)
'554 Patent Claim Construction (Broadest Reasonable Interpretation) processing said request, said processing being performed by said page server while said Web server concurrently processes said other requests; and “Concurrently processes” means “said processing being performed by said page server while said Web server processes said other requests at the same time (but not literally at the same time).” dynamically generating a Web page in response to said request, said Web page including data dynamically retrieved from one or more data sources. “Dynamically generating” means “creating in response to a request.” “Web page” means “content displayable through a Web browser.” “Data dynamically retrieved” means “data retrieved in response to a request.”
EPICREALM DYNAMIC WEBSITE PATENTS
VALIDITY ANALYSIS Dan Ravicher
Reference Searching
- Searches Performed; Relevant References Identified
- Related Family
- '335 Double Patenting Based on '554?
- Boolean terms: dynamic website, page server, etc.
- Rogers et al.; many other – less applicable – references
found
- Classification:
- U.S.: 707/10,104.1; 709/203,238,245; 719/310 & 358/400
395/800,700,200.68,200.75,200.53,680,200.33 707/104,10
- Int'l: G06F 17/30 (20060101); H04L 29/06 (20060101)
- No additional relevant references found.
Prior Art Determinations
- '554 and '335 Patents EFD = Apr. 23, 1996
- Ref #1: Rogers et al., U.S. Pat. # 5,701,451
- Issued Date = Dec. 23, 1997 .: Not 102(b) or (a) PA
- EFD = Jun. 7, 1995 .: 102(e) Prior Art
- Not of Record for Either '554 or '335
Prior Art Application
Rogers: Invention:
Validity Arguments / Issues re '554 (1)
'554 Patent Rogers
- 1. A computer-implemented method for managing a
dynamic Web page generation request to a Web server, said computer-implemented method comprising the steps
- f:
Rogers taught a computer-implemented method for producing a dynamic Web page in response to a request made to a Web server. 4:52-60; 5:28-35. routing said request from said Web server to a page server, Rogers taught routing requests from Web servers to “open data interpretation system (ODAS) servers,” which acted as page servers. Fig. 7; 5:10-22. said page server receiving said request and releasing said Web server to process other requests, Rogers taught that the ODAS servers received requests from Web servers and that while a particular request was being executed, other requests could be processed. 14:33-43. wherein said routing step further includes the steps of intercepting said request at said Web server, routing said request from said Web server to a dispatcher, and dispatching said request to said page server; Rogers taught that a request was intercepted at the Web server and routed to a “control program agent,” which acted as a dispatcher and dispatched the request to ODAS
- servers. Fig. 7; 4:44-51; 12:49-53.
processing said request, said processing being performed by said page server while said Web server concurrently processes said other requests; and Rogers' ODAS servers processed a request while the control program agent, which could reside within the Web server, processed other requests. Fig. 11; 5:10-16; 14:33-43. dynamically generating a Web page in response to said request, said Web page including data dynamically retrieved from one or more data sources. Rogers' taught the generation of a dynamic Web page with data from various data sources in response to a request. 5:28-39 and 45-53; 7:42-49.
Validity Arguments / Issues re '554 (2)
'554 Patent Rogers
- 2. The computer-implemented method in claim 1 wherein
said step of processing said request includes the step of identifying said one or more data sources from which to retrieve said data. Rogers taught identifying one or more data sources from which to retrieve data while processing a request. Fig. 7; 13:40-45; 15:43-52.
- 3. The computer-implemented method in claim 2 wherein
said step of dynamically generating said Web page includes the step of dynamically retrieving said data from said one or more data sources. Rogers taught dynamic retrieval of data from one or more identified data sources while dynamically generating Web
- pages. 14:44-56.
- 4. The computer-implemented method in claim 3 wherein
said step of processing said request includes the step of said page server maintaining a connection cache to said
- ne or more data sources.
Rogers taught maintaining a connection cache to one or more identified data sources while processing a request.
- Figs. 7 and 11; 14:18-33; 17:23-36. Further, it is inherent
that a cache will be maintained between a page server and a data source when they are connected.
- 5. The computer-implemented method in claim 3 wherein
said step of processing said request includes the step of logging into said one or more data sources. Rogers taught logging into one or more identified data sources while processing a request. 13:46-55.
- 6. The computer-implemented method in claim 3 wherein
said step of dynamically generating said Web page includes the step of maintaining a page cache containing said Web page. Rogers taught maintaining a page cache containing a Web page while dynamically generating Web pages. Fig. 7; 14:50-64; 17:34-35. Further, it is inherent that a cache will be maintained between a page server and a Web server when they are connected.
Validity Arguments / Issues re '335 (1)
'335 Patent Rogers
- 1. A computer-implemented method for managing a
dynamic Web page generation request to a Web server, said computer-implemented method comprising the steps
- f:
Rogers taught a computer-implemented method for producing a dynamic Web page in response to a request made to a Web server. 4:52-60; 5:28-35. routing a request from a Web server to a page server, Rogers taught routing requests from Web servers to “open data interpretation system (ODAS) servers,” which acted as page servers. Fig. 7; 5:10-22. said page server receiving said request and releasing said Web server to process other requests Rogers taught that the ODAS servers received requests from Web servers and that while a particular request was being executed, other requests could be processed. 14:33-43. wherein said routing step further includes the steps of: intercepting said request at said Web server and routing said request to said page server; Rogers taught that a request was intercepted at the Web server and routed to a “control program agent,” which acted as a dispatcher and dispatched the request to ODAS
- servers. Fig. 7; 4:44-51; 12:49-53.
processing said request, said processing being performed by said page server while said Web server concurrently processes said other requests; and Rogers' ODAS servers processed a request while the control program agent, which could reside within the Web server, processed other requests. Fig. 11; 5:10-16; 14:33-43. dynamically generating a Web page in response to said request, said Web page including data dynamically retrieved from one or more data sources. Rogers' taught the generation of a dynamic Web page with data from various data sources in response to a request. 5:28-39 and 45-53; 7:42-49.
Conclusions
- Substantial questions regarding the validity of
each claim of the '554 and '335 patent exist.
- It is reasonable to argue that Rogers
anticipated or rendered obvious each claim of the '554 patent.
- It is reasonable to argue that Rogers