P3P-analysis 62.3 KB
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Analysis of P3P and US Patent 5,862,325</title>
<link type="text/css" rel="stylesheet" href="http://www.w3.org/StyleSheets/TR/W3C-NOTE">
<style type="text/css">
<!--
.text { font-family:	Georgia, 'Minion Web', Palatino, 'Book Antiqua', Utopia, 'Times New Roman', serif; }
table, tr, td { font-family:	Georgia, 'Minion Web', Palatino, 'Book Antiqua', Utopia, 'Times New Roman', serif; }
-->
</style>
</head>

<body>

<p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/WWW/w3c_home" alt="W3C"
height="48" width="72" border="0"></a></p>

<h1>Analysis of P3P and US Patent 5,862,325</h1>

<h2>W3C Note 27-October-1999</h2>

<dl>
  <dt>This version:</dt>
  <dd><a href="http://www.w3.org/TR/1999/NOTE-P3P-analysis-19991027">http://www.w3.org/TR/1999/NOTE-P3P-analysis-19991027</a></dd>
  <dt>Latest version:</dt>
  <dd><a href="http://www.w3.org/TR/P3P-analysis">http://www.w3.org/TR/P3P-analysis</a></dd>
  <dt>Editors:</dt>
  <dd><a href="http://www.w3.org/People/Reagle/Overview.html">Joseph M. Reagle</a>, <a
    href="http://www.w3.org">W3C</a> &lt;<a href="mailto:reagle@w3.org">reagle@w3.org</a>&gt;</dd>
  <dd><a href="http://www.w3.org/People/all#djweitzner%40w3.org">Daniel J. Weitzner</a>., <a
    href="http://www.w3.org">W3C</a> &lt;<a href="mailto:djw@w3.org">djw@w3.org</a>&gt;</dd>
  <dt>Authors:</dt>
  <dd><a href="http://www.pennie.com/bios/reinbfr.htm">Barry D. Rein</a>, <a
    href="http://www.pennie.com">Pennie &amp; Edmonds llp</a><br>
    <a href="http://www.pennie.com/bios/stephensgfr.htm">Garland T. Stephens</a>, <a
    href="http://www.pennie.com">Pennie &amp; Edmonds llp</a><br>
    <a href="http://www.pennie.com/bios/lebowitzhfr.htm">Henry C. Lebowitz</a>, <a
    href="http://www.pennie.com">Pennie &amp; Edmonds llp</a></dd>
</dl>

<p class="copyright"><a rel="Copyright"
href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 1999 <a
href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a> <sup>®</sup> (<a href="http://www.lcs.mit.edu/"> <abbr title="Massachusetts Institute of Technology">MIT</abbr></a>,
<a href="http://www.inria.fr/"><abbr lang="fr" title="Institut National de Recherche en Informatique et Automatique">INRIA</abbr></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All
Rights Reserved. W3C <a
href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a
href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>, <a
rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a>
and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
licensing</a> rules apply.</p>

<h2>Abstract</h2>

<p>This Note is a response to a request from the W3C for Pennie &amp; Edmonds' opinion as
to whether implementations of the W3C's <a href="http://www.w3.org/P3P">Platform for
Privacy Preferences Project</a> (&quot;P3P&quot;) specification would infringe any claim
of Intermind's <a href="http://www.patents.ibm.com/details?&amp;pn=US05862325__">U.S.
Patent No. 5,862,325</a>. </p>

<h2>Status of this document</h2>

<p>This analysis is published as a W3C NOTE for the benefit of P3P implementors and the
Web community&nbsp; Publication of a W3C Note does not imply endorsement by the entire W3C
Membership. A list of current W3C technical reports and publications, including Working
Drafts and Notes, can be found at <a href="http://www.w3.org/TR">http://www.w3.org/TR</a>.</p>

<hr>

<div class="text">

<p><span class="text">Daniel J. Weitzner, Esq.<br>
Mr. Joseph Reagle<br>
World Wide Web Consortium<br>
Massachusetts Institute of Technology<br>
Room NE43-352<br>
545 Technology Square<br>
Cambridge, MA 02139</span></p>

<p><span class="text">Re: <u>United States Patent No. 5,862,325 to Reed et al.</u></span></p>

<p><span class="text">Gentlemen:</span></p>

<p><span class="text">This responds to your request for our opinion as to whether the
protocol for exchanging data specified by the Consortium's Platform for Privacy
Preferences Project (&quot;P3P&quot;) would infringe any claim of Intermind's U.S. Patent
No. 5,862,325 (the &quot;'325 patent,&quot; a copy of which is annexed as Exhibit A).</span></p>

<p><span class="text">By way of summary, P3P is a proposed technical specification of the
World Wide Web Consortium, a non-profit organization that develops World Wide Web
technology standards through industry and public consensus. The proposed standard would
allow client programs such as Web browsers to determine whether a Web service's privacy
practices are acceptable to the user, permitting the service to acquire user information
only to the extent acceptable to the user.</span></p>

<p><span class="text">To accomplish this, the service transfers to the user a P3P Proposal
describing the service's privacy practices; i.e., the types of user information that the
service will gather and the uses it will make of that information. The user's Web browser
then compares the privacy practices specified in the Proposal with the corresponding user
preferences stored in a User Preference file maintained on the user's computer. The User
Preference file specifies what kinds of practices the user will accept, what kinds should
be rejected, and what kinds should cause the program to prompt the user to decide how to
respond. Thus the P3P proposal sent to the user is a purely descriptive, declaratory
statement that is processed by a program resident on the user's computer.</span></p>

<p><span class="text">The only similarity between the '325 patent and P3P is that both
involve transfer of data structures from a server to a client and both relate broadly to
controlling communications. They are otherwise dissimilar. The '325 patent describes an
assertedly unique communications system in which a particular object, called a
&quot;control structure,&quot; is transferred from a server (&quot;provider memory&quot;)
to a client (&quot;consumer memory&quot;). That control structure is a special piece of
software - a &quot;communications object&quot; - which encapsulates both (1) data fully
defining an intended server-client communications relationship, and (2) methods for using
the data to effect that relationship.<a href="#N_1_"><sup>(1)</sup></a> After it is
transferred to the client, the control structure runs on the client side to control
communications between client and server. According to the patent, once the client
computer receives a communications object, it need only call the object's methods; the
object handles all communications details.</span></p>

<p><span class="text">The patent and other documents filed by Intermind in the Patent
Office establish that the P3P Proposal sent to the client computer, a simple descriptive
data file incapable by itself of controlling communications between computers, differs
markedly from the &quot;control structure&quot; sent to the client in accordance with the
patent. Intermind acknowledged as much to the Patent Office, representing that the
abstraction, in the communications object, of all information necessary to completely
define the client-server communications relationship, was what distinguished its claimed
control structure from pre-existing technology. It would not have obtained the patent
without so limiting its claims. <strong>Since P3P does not use the &quot;control
structure&quot; claimed in Intermind's '325 patent, we conclude, and it is our opinion and
judgment, that a properly informed court would hold that use of the P3P protocol would not
infringe any claim of the '325 patent.</strong></span></p>

<p><span class="text">As basis for our opinion we have reviewed the '325 patent, its
prosecution history, and the prior art of record. We have also reviewed written
descriptions of P3P and the APPEL privacy-preferences language (copies annexed as Exhibits
B-D and E, respectively) and have conferred with you regarding the manner in which P3P
operates.</span></p>

<p><span class="text">Importantly, we have <em>not</em> considered all potential defenses
that might be asserted against the '325 patent since the non-infringement basis set forth
above would, we believe, constitute a complete defense against any charge of infringement.</span></p>

<p><span class="text">The sections that follow set forth the analyses underlying our
opinion including: (i) an analysis of the '325 patent and its file history; (ii) our
understanding of the P3P protocol; and (iii) a comparison of P3P to the '325 patent
claims.</span></p>

<h4><span class="text">A. The Prior Art Background To The '325 Patent</span></h4>

<p><span class="text">Transferring metadata (data describing other data) from a client to
a server for controlling communications between them did not originate in the '325 patent.
Long before the '325 patent was applied for in 1996, network computing, and especially the
Internet, had given rise to a large body of sophisticated technologies for transferring
metadata for that purpose. Much of this technology dates back more than 20 years. It
includes the Hypertext Markup Language (HTML) and Hypertext Transport Protocol (HTTP), the
essential technologies underlying the World Wide Web, which were developed by Tim
Berners-Lee and standardized by World Wide Web Consortium (which Berners-Lee directs) and
the Internet Engineering Task Force.</span></p>

<p><span class="text">The suite of technologies underlying the Web includes a number of
high-level tools that allow easy construction of complex two-way data communication
between computers. HTML, for example, provides a syntax for expressing data structures and
associated formatting information in text, typically for transmission between computers
via HTTP. Thus HTML text files have been used for years to provide the same basic
functionality as the '325 patent -- transmitting data structures from a server to a client
to control the transmission of user information from the client to the server.</span></p>

<p><span class="text">One HTML feature used to provide this functionality is the <em>form</em>
element (designated by the &lt;FORM&gt; tag), which (together with related formatting
elements and metadata) defines a <em>form</em> data structure for soliciting information
from a user in a manner akin to a conventional paper form. An HTML form may include text
boxes with associated labels in which a user may type text for transmission, along with
check boxes and other input elements. The <em>form</em> data structure is typically
included in an HTML file transferred from a server to a client via HTTP, whereupon the
client program processes the received form to determine the data to be transferred to the
server, solicits some or all of that information from the user, and controls the transfer
of that data back to the server.</span></p>

<p><span class="text">Similar basic functionality (apart from prompting the user to
provide data), is provided by a &quot;cookie,&quot;which is also acknowledged by Intermind
to be prior art. As described in the '325 patent:</span></p>

<p><span class="text">A cookie is a data structure passed from a web server to a browser
as part of the HTTP protocol. Cookies are produced by the web server and stored locally in
a preferences file by the browser. When the user next connects to the web server with the
browser, the web server can interrogate the browser for the cookie and use it to identify
the user. The cookie can additionally store preference data about the user, whether
entered manually by the user via HTML forms or collected automatically by the web server
based on the user's browsing choices.</span></p>

<p><span class="text">Ex. A, '325 patent, col. 78, ll. 26-35.</span></p>

<p><span class="text">Thus prior art Web technologies, including HTML and HTTP, included
built-in functionality for transferring data structures from a server to a client to
control communications between them. Those data structures included metadata describing
data to be transferred from client to server, and were processed by a client program to
control the data transfer.</span></p>

<h4><span class="text">B. Description Of The Preferred Embodiments Of The '325 Patent</span></h4>

<p><span class="text">Against this prior art background, Intermind's patent and the
patent's prosecution history (the record of proceedings in the Patent Office including
what Intermind told the Patent Office in order to secure the patent), treated below,
establish that its claims are limited to systems involving transfer to a client of a
special type of control structure (Ex. H, IDS at 4) for controlling communications between
client and server. Rather than a simple data structure containing a description of data
and what is to be done with it, like an HTML form, the claimed control structure is a
communications object including data, metadata, and instructions organized using
object-oriented programming to encapsulate the data together with the instructions for
using it. (Ex. A, '325 patent, col. 8, ll. 10-18, 51-63).</span></p>

<p><span class="text">Although all of the patent's 126 claims recite the control
structure, its description of the invention, surprisingly, contains no further mention of
a control structure. The remainder of the description discusses instead a
&quot;communications object,&quot; described as an object-oriented combination of data,
metadata, and methods. And while there is nothing to explicitly equate the claimed
&quot;control structure&quot; with the described &quot;communications object,&quot; a
reading of the patent reveals that they are in fact the same:</span></p>

<blockquote>
  <p><span class="text">Communications objects are the primary data structure transmitted
  from the provider program to the consumer program to control communications between the
  provider and consumer.</span></p>
</blockquote>

<p><span class="text">Ex. A, '325 patent, col. 17, ll. 25-28. Intermind confirmed as much
in the course of securing its patent, as described below.</span></p>

<p><span class="text">According to the patent, the communications objects include methods
that &quot;are used to automate control of underlying communication operations.&quot; Ex.
A, '325 patent, col. 9, ll. 30-32. They do so by specifying processing instructions that
execute on a client computer. Ex. A, '325 patent, col. 20, ll. 50-62. The communications
objects encapsulate everything needed to provide communications and other services, thus
hiding all the complexities of requesting services in a distributed heterogeneous
environment, i.e., they provide location transparency. Ex. A, '325 patent, col. 95, ll.
2-4, 53-61. Programs can therefore communicate and access other services by calling the
methods of a communications object without regard to how or where the services are
provided.</span></p>

<p><span class="text">This location transparency provided by the claimed communications
object allows a communications relationship between provider and consumer to be defined
simply by transferring a communications object. After the transfer, communications
originate from, and are received by, the communications object. Ex. A, '325 patent, col.
42, ll. 40-48.</span></p>

<p><span class="text">To recapitulate then, the patent describes a control structure
including data, metadata, and methods for operating on the data. The control structure is
a communications object, and encapsulates the details of communication and remote services
invocation. It thus provides location transparency and defines the communications
relationship when transferred from one computer to another. As discussed in greater detail
below, Intermind represented to the Patent Office that the abstraction of these
communications functions in a communications object is what distinguished its invention
from the prior art.</span></p>

<h4><span class="text">C. The '325 Patent Claims</span></h4>

<p><span class="text">While the body of the patent describes the communications system,
the scope of Intermind's ability to exclude others from practicing the described
technology is determined by the patent's claims.<a href="#N_2_"><sup>(2)</sup></a> The
'325 patent has 126 claims. Four of these are independent: claims 1, 20, 78, and 109. Each
of the remaining 122 claims depends from (<em>i.e.,</em> incorporates by reference,
directly or indirectly) one of the independent claims.</span></p>

<p><span class="text">All of the claims are directed to a system or method for controlling
communications between a provider memory and a consumer memory. Two of them, claims 1 and
78, deal with controlling the transfer of <em>update</em> information from a provider
memory to a consumer memory while the other two (claims 20 and 109) describe doing the
same for <em>feedback</em> information.</span></p>

<p><span class="text">Notwithstanding the difference in direction of transfer of update
versus feedback information, all four independent claims (and thus all of the patent's
claims) specify a single mechanism for controlling the communication of information,
namely, transferring a &quot;control structure&quot; from the provider memory to the
consumer memory and processing it at the consumer memory to &quot;associate&quot; one or
more processes to control the communication of information.</span></p>

<p><span class="text">The table reproduced below highlights these relationships for the
four independent claims:</span></p>

<table width="100%" border="1">
  <tr valign="top">
    <td>&nbsp;</td>
    <td align="center"><span class="text"><strong>Claim 1</strong></span></td>
    <td align="center"><span class="text"><strong>Claim 20</strong></span></td>
    <td align="center"><span class="text"><strong>Claim 78</strong></span></td>
    <td align="center"><span class="text"><strong>Claim 109</strong></span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">1</span></td>
    <td><span class="text">A computer-based communication system comprising:</span></td>
    <td><span class="text">A computer-based communication system </span><p><span class="text">comprising:<br>
    </span></td>
    <td><span class="text">A computer-based communication method, comprising operating one or
    more computers to communicate by performing the steps of:</span></td>
    <td><span class="text">A computer-based communication method, comprising operating one or
    more computers to communicate by performing the steps of:</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">2</span></td>
    <td><span class="text">a provider memory storing information including provider
    information;</span></td>
    <td><span class="text">a provider memory storing information including provider
    information;</span></td>
    <td><span class="text">in a provider memory, storing information including provider
    information;</span></td>
    <td><span class="text">in a provider memory, storing information including provider
    information;</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">3</span></td>
    <td><span class="text">a consumer memory storing information including consumer
    information;</span></td>
    <td><span class="text">a consumer memory storing information including consumer
    information;</span></td>
    <td><span class="text">in a consumer memory, storing information including consumer
    information;</span></td>
    <td><span class="text">in a consumer memory, storing information including consumer
    information;</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">4</span></td>
    <td><span class="text">association means for creating metadata</span></td>
    <td><span class="text">association means for creating metadata</span></td>
    <td><span class="text">creating metadata</span></td>
    <td><span class="text">creating metadata</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">5</span></td>
    <td><span class="text">associating portions of said information</span></td>
    <td><span class="text">associating portions of said information</span></td>
    <td><span class="text">describing associations with portions of said information</span></td>
    <td><span class="text">describing associations with portions of said information</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">6</span></td>
    <td><span class="text">and defining a <strong>control structure</strong></span></td>
    <td><span class="text">and defining a <strong>control structure</strong></span></td>
    <td><span class="text">and defining a <strong>control structure</strong></span></td>
    <td><span class="text">and defining a <strong>control structure</strong></span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">7</span></td>
    <td><span class="text">for processing </span><p><span class="text">at least at said
    consumer memory</span></td>
    <td><span class="text">for processing </span><p><span class="text">at least at said
    consumer memory</span></td>
    <td><span class="text">which is processed at least at said consumer memory</span></td>
    <td><span class="text">which is processed at least at said consumer memory</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">8</span></td>
    <td><span class="text">to associate with said metadata one or more processes</span></td>
    <td><span class="text">to associate with said metadata processes</span></td>
    <td><span class="text">to associate one or more processes</span></td>
    <td><span class="text">to associate one or more processes</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">9</span></td>
    <td><span class="text">for controlling the communication of said associated information,</span></td>
    <td><span class="text">for controlling the communication of said associated information,</span></td>
    <td><span class="text">for controlling communications of said associated information,</span></td>
    <td><span class="text">for controlling communications of said associated information,</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">10</span></td>
    <td><span class="text">said metadata including update metadata</span></td>
    <td>&nbsp;</td>
    <td><span class="text">said metadata including update metadata</span></td>
    <td>&nbsp;</td>
  </tr>
  <tr valign="top">
    <td><span class="text">11</span></td>
    <td><span class="text">associating a process</span></td>
    <td>&nbsp;</td>
    <td><span class="text">associating a process</span></td>
    <td>&nbsp;</td>
  </tr>
  <tr valign="top">
    <td><span class="text">12</span></td>
    <td><span class="text">for determining when said associated information has been updated</span></td>
    <td>&nbsp;</td>
    <td><span class="text">for determining when said associated information has been updated</span></td>
    <td>&nbsp;</td>
  </tr>
  <tr valign="top">
    <td><span class="text">13</span></td>
    <td><span class="text">and transfer metadata</span></td>
    <td><span class="text">said metadata including data exchange metadata</span></td>
    <td><span class="text">and transfer metadata</span></td>
    <td><span class="text">said metadata including data exchange metadata</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">14</span></td>
    <td><span class="text">associating a process</span></td>
    <td><span class="text">associating a process</span></td>
    <td><span class="text">associating a process</span></td>
    <td><span class="text">associating a process</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">15</span></td>
    <td><span class="text">for transferring at least a portion of the updated information;</span></td>
    <td><span class="text">for controlling the transfer of feedback information,</span></td>
    <td><span class="text">for transferring at least a portion of the updated information;</span></td>
    <td><span class="text">for controlling the transfer of feedback information,</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">16</span></td>
    <td>&nbsp;</td>
    <td><span class="text">said feedback information including at least a portion of said
    consumer information,</span></td>
    <td>&nbsp;</td>
    <td><span class="text">said feedback information including at least a portion of said
    consumer information,</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">17</span></td>
    <td>&nbsp;</td>
    <td><span class="text">to said provider memory;</span></td>
    <td>&nbsp;</td>
    <td><span class="text">to said provider memory;</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">18</span></td>
    <td><span class="text">transfer means for transferring said information,</span></td>
    <td><span class="text">transfer means for transferring said information,</span></td>
    <td><span class="text">transferring said information,</span></td>
    <td><span class="text">transferring said information,</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">19</span></td>
    <td><span class="text">including said metadata defining said control structure,</span></td>
    <td><span class="text">including said metadata defining said control structure,</span></td>
    <td><span class="text">including said metadata defining said control structure,</span></td>
    <td><span class="text">including said metadata defining said control structure,</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">20</span></td>
    <td><span class="text">from said provider memory to said consumer memory; and</span></td>
    <td><span class="text">from said provider memory to said consumer memory;</span></td>
    <td><span class="text">from said provider memory to said consumer memory; and</span></td>
    <td><span class="text">from said provider memory to said consumer memory;</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">21</span></td>
    <td>&nbsp;</td>
    <td><span class="text">feedback transfer means for transferring said feedback information
    from said consumer memory to said provider memory; </span><p><span class="text">and</span></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr valign="top">
    <td><span class="text">22</span></td>
    <td><span class="text">processing means for processing said metadata</span></td>
    <td><span class="text">processing means</span></td>
    <td><span class="text">processing said metadata</span></td>
    <td><span class="text">processing said metadata</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">23</span></td>
    <td><span class="text">to execute instructions external to said control structure</span></td>
    <td><span class="text">for executing instructions external to said control structure to
    perform said processes</span></td>
    <td><span class="text">to execute instructions external to said control structure</span></td>
    <td><span class="text">to execute instructions external to said control structure</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">24</span></td>
    <td><span class="text">to perform said processes.</span></td>
    <td><span class="text">to control communications of said information.</span></td>
    <td><span class="text">to perform said processes.</span></td>
    <td><span class="text">to perform said processes; and</span></td>
  </tr>
  <tr valign="top">
    <td><span class="text">25</span></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td><span class="text">communicating said feedback information from said consumer memory
    to said provider memory.</span></td>
  </tr>
</table>

<p><span class="text">As shown in the table, claim 1 recites a system for controlling the
transfer of update information from a provider memory (element 2) to a consumer memory
(element 3). The claimed system includes several types of metadata (elements 4-6, 10, 13)
including one that defines the &quot;control structure&quot; (element 6) transferred from
the provider memory to the consumer memory (elements 18-19). Processing this control
structure in the consumer memory (element 7, 22) is what causes execution of processes
(element 8, 24) that control communication of the update information to the consumer
memory (element 9).<a href="#N_3_"><sup>(3)</sup></a></span></p>

<p><span class="text">Similarly, claim 20 recites a system for controlling the transfer of
feedback information from a consumer memory (element 3) to a provider memory (element 2).
The claimed system includes several types of metadata (elements 4-6, 10, 13) including one
that defines the &quot;control structure&quot; (element 6) transferred from the provider
memory to the consumer memory (elements 18-19). Processing this control structure in the
consumer memory (element 7, 22) is what causes execution of processes (element 8, 24) that
control communication of the feedback information to the provider memory (element 9).</span></p>

<p><span class="text">The elements of claims 78 and 109 correspond substantially to those
of claims 1 and 20, respectively, including the control structure, but are written as a
series of steps for performing a method rather than as a combination of elements of a
system.</span></p>

<p><span class="text">As originally filed, the single claim of the '325 patent application
did not recite a control structure; that limitation was added during prosecution in
response to the rejection of the original claim, as explained in the next section.</span></p>

<h4><span class="text">D. Prosecution of the '325 patent</span></h4>

<p><span class="text">The '325 patent was filed September 27, 1996 as application serial
No. 08/722,314 (&quot;the '314 application&quot;). Entitled &quot;Communications
System,&quot; it claimed benefit of the filing date of application serial No. 08/609,115
filed February 29, 1996 as a continuation-in-part of that earlier application.<a
href="#N_4_"><sup>(4)</sup></a> The sole claim filed with the original application did <em>not</em>
recite a &quot;control structure.&quot;</span></p>

<p><span class="text">On October 8, 1997, the Patent Office issued an Office Action
(Exhibit F) objecting to the title of the application and rejecting its single claim as
anticipated by (i.e., previously disclosed in) U.S. Patent No. 5,628,005 to Hurvig.
Intermind responded (Exhibit G) by amending the application's title to read
&quot;Computer-Based Communication System and Method Using Metadata Defining a Control
Structure&quot; and canceling claim 1 in favor of newly added claims 2-102. Each of the
new claims recited metadata &quot;defining a control structure which is processed at least
at said consumer memory.&quot; In the remarks accompanying its response, Intermind stated
(in part):</span></p>

<blockquote>
  <p><span class="text">As defined by the [newly added] claims, the system allows a
  definition for control of a communications relationship to be transferred from a provider
  of information to a consumer of information. . . . All [claims] share the use of metadata
  defining a control structure. The art of record does not teach or suggest such a system.
  It does not teach or suggest a structure which is processed to determine updates to
  information in the provider memory and transfer updated information to the consumer
  memory. Certainly, it does not employ metadata defining a control structure or the
  processing of a control structure which is used to determine an update or transfer updated
  information.</span></p>
</blockquote>

<p><span class="text">Ex. G, Response at 28. It is clear, then, that Intermind explicitly
relied on the claimed control structure as the critical element distinguishing its
invention from the prior art.</span></p>

<p><span class="text">Intermind then filed an Information Disclosure Statement
(&quot;IDS&quot;) with the Patent Office listing 72 patents and 69 non-patent references
(Exhibit H) arranged in eight groups. At the beginning of each group, it explained the
distinction between the cited prior art in the group and its claimed invention. Intermind
stated in its IDS that what it was claiming was not just a control structure,<em> but a
special type of control structure, a &quot;communications object.&quot;</em></span></p>

<p><span class="text">Thus, distinguishing the first group of references (relating to
&quot;File, Data and Object Consistency&quot;), Intermind explained:</span></p>

<blockquote>
  <p><span class="text">This art is directed at the problem of maintaining consistency
  between multiple copies of files, data, or objects in a distributed processing network.
  This art is easily confused with a communications object system of the present invention
  because a communications object system also performs automated replication of information
  described by a communications object (including the communications object itself). <em>The
  difference, however, is that a communications object system, as claimed, accomplishes this
  using a special type of control structure - a communications object - that is exchanged
  from the provider to the consumer to define and control the replication.</em><a
  href="#N_5_"><sup>(5)</sup></a></span></p>
</blockquote>

<p><span class="text">Ex. H, IDS at 4. Intermind thus conceded that its claimed control
structure performs the same function (automated replication of described information) as
the cited references, differing only in that the recited control structure is a <em>communications
object</em>.</span></p>

<p><span class="text">The second group of references, relating to &quot;Software
Distribution and Consistency,&quot; was described as a special case of the first group and
distinguished for the same reason. Intermind similarly distinguished the third group,
relating to &quot;Object Transparency and Remote Procedure Calls,&quot; by conceding that
the claimed control structure performed the same function as the cited references,
differing only in that it was a <em>communications object</em> encapsulating the data
necessary to perform the function of remote method calls:</span></p>

<blockquote>
  <p><span class="text">This art is directed at a different problem in distributed object
  systems: how an object on one node can transparently call the methods of another target
  object on another node, i.e., &quot;abstract&quot; the details of knowing how to send and
  receive a message from the target object. Again, a communications object system
  accomplishes this function using a novel new control structure, the <em>communications
  object</em>, which carries the information necessary to perform this abstraction.</span></p>
</blockquote>

<p><span class="text">Ex. H, IDS at 7.</span></p>

<p><span class="text">To distinguish the fourth group of references, relating to
&quot;Communications Transparency and Middleware,&quot; Intermind similarly conceded that
the cited prior art performed the same function as its claimed control structure,
asserting that it differed only in that the latter abstracts the details of communications
to completely define the communications relationship between provider and consumer:</span></p>

<blockquote>
  <p><span class="text">This art relates to a larger-scale version of the proceeding [sic],
  which is to provide complete transparency &quot;layer&quot; (commonly referred to as <em>middleware</em>),
  for abstracting the details of distributing data or sending messages from a communications
  source to a communications destination. <em>A communications object system is a novel new
  approach to this problem by abstracting these details to a control object that completely
  defines the communications relationship between any two nodes, in both directions, via any
  network or protocol, using any middleware.</em></span></p>
</blockquote>

<p><span class="text">In discussing the remaining three groups of cited references,
Intermind similarly relied on the control structure (Ex. H, IDS at 10-12) to distinguish
the prior art from its claimed invention.</span></p>

<p><span class="text">In addition to these remarks expressly limiting its claimed
communications object to a control structure that encapsulates &quot;the details of
distributing data or sending messages from a communications source to a communications
destination&quot; and &quot;completely defines the communications relationship between any
two nodes in both directions, via any network or protocol, using any middleware,&quot;
Intermind used a numeric shorthand for distinguishing each individual reference from the
claims, explaining that:</span></p>

<p><span class="text">At the end of the text relating to each reference, in parentheses,
are one or more numbers keyed to distinguishing remarks identified by the following key
and not repeated textually in order to avoid verbosity:</span></p>

<blockquote>
  <p><span class="text">Key to remarks:</span></p>
  <p><span class="text">1) No control structure transferred from provider to consumer to
  control communications.</span></p>
  <p><span class="text">2) No update determining control, or not performed by control
  structure.</span></p>
  <p><span class="text">3) No transfer control [i.e. no control of the transfer of
  information], or not performed by control structure.</span></p>
  <p><span class="text">4) No feedback control, or not performed by control structure.</span></p>
</blockquote>

<p><span class="text">Ex. H, IDS of May 7, 1998, at 2-3.</span></p>

<p><span class="text">All but six of the references treated in the IDS were distinguished
on all four grounds. Those six (U.S. Patents Nos. 5,625,818 to Zarmer et al., 4,974,149 to
Valenti, 5,566,302 to Khalidi et al., 5,499,343 to Pettus, 5,515,508 to Pettus and
5,548,726 to Pettus) were distinguished only on grounds 2, 3, and 4. As indicated by the
absence of distinction number 1, Intermind realized that these six disclosed control
structures transferred from provider to consumer to control communications between them.
This shows, once again, how Intermind was constrained to distinguish the prior art on the
ground that its claimed control structure was of a specific type - a &quot;communications
object&quot; with special properties. For example, U.S. Patent No. 4,974,149 to Valenti
(Exhibit I) disclosed a system for distributing data across a network using a control
structure (referred to as a &quot;data descriptor&quot;) &quot;produced by a central
system and provided to a remote system. The remote system then uses the information in the
data descriptor to retrieve the described data and install it in the remote system.&quot;
Ex. I, Valenti, col. 28, l. 68 - col. 29, l. 4.</span></p>

<p><span class="text">Valenti's data descriptor identifies data on the central system to
be distributed to the remote system, and includes a destination operation descriptor used
to perform operations related to retrieving the information from the central system:</span></p>

<blockquote>
  <p><span class="text">[Data descriptor] DD 305 is a data structure which must contain data
  identifier (DID) 313, which identifies the data to be distributed from [data source] S 309
  to [data destination] D 311, and may also contain destination operation descriptor (DOD)
  315, which contains information used by [retriever] RETR 307 to perform various operations
  connected with retrieving the data to be distributed and storing it in [data destination]
  D 311. ... Only [data identifier] DID 313 is required for [retriever] RETR 307 to
  successfully distribute data from [data source] S 309 to [data destination] D 311, but the
  addition of [destination operator descriptor] DOD 315 to [data descriptor] DD 305 greatly
  increases the flexibility and efficiency of operation of the present invention.</span></p>
</blockquote>

<p><span class="text">Ex. I, Valenti, col. 6, ll. 6-21.</span></p>

<p><span class="text">Note that Valenti discloses the use of a control structure (the
&quot;data descriptor&quot;) comprising data and metadata that is transferred from server
to client and read by a program (the &quot;retriever&quot;) executing on the client. The
retriever program uses the data and metadata in the data descriptor to perform transfer
control - i.e., it controls various operations connected with retrieving and storing data
to be distributed. Thus, in Intermind's distinction number 3 - &quot;[n]o transfer
control, <em>or</em> not performed by control structure&quot; - the words &quot;not
performed by control structure&quot; must exclude systems where data or metadata is read
by a client program to perform transfer control. Otherwise, Valenti could not have been
distinguished on that ground. Put differently, the distinction requires that transfer
control actually be performed by the control structure. As used in its description of
communications objects, the word &quot;perform&quot; refers to execution of a method. <em>See,
e.g., </em>Ex. A, '325 patent col. 13, ll. 10-13, col. 43, ll. 42-46, col. 57, ll.3-6. A
control structure that is not executed or that does not include methods or instructions
cannot <em>perform</em> transfer control.</span></p>

<p><span class="text">After filing its IDS Intermind made certain additional amendments to
its claims, but merely to correct &quot;certain apparent typographical and grammatical
errors in the claims, including improper dependencies, as well as potential lack of
clarity.&quot; Ex. J, Supplemental Amendment of July 2, 1998, at 22. On July 16, 1998, the
Patent Office issued a Notice of Allowability and the '325 patent issued on January 19,
1999.</span></p>

<h4><span class="text">E. Legal Principles Relating to Claim Construction</span></h4>

<p><span class="text">Three sources of information bear on the proper interpretation of
the claims: (1)&nbsp;the claims themselves; (2)&nbsp;the patent specification (i.e. its
text and drawings); and (3)&nbsp;its prosecution history, i.e., the record of its
examination in the Patent Office.<a href="#N_6_"><sup>(6)</sup></a> These three sources
comprise the &quot;intrinsic evidence of record.&quot;<a href="#N_7_"><sup>(7)</sup></a>
Certain &quot;extrinsic evidence&quot; (such as expert opinion and scholarly works) may
also be considered in interpreting the claims,<a href="#N_8_"><sup>(8)</sup></a> but may
not be used to support an interpretation inconsistent with the intrinsic evidence.<a
href="#N_9_"><sup>(9)</sup></a> The meaning of the claims is a question of law for
decision by a judge, not a jury.<a href="#N_10_"><sup>(10)</sup></a></span></p>

<p><span class="text">The meaning of all claims of the '325 patent hinges on the phrase
&quot;control structure.&quot; We have shown that the patent itself explicitly defines
this term to mean a combination of data, metadata, and instructions organized as an
object-oriented combination of metadata, data, and methods for operating on the data. The
prior art discussed in the patent also compels this construction because under any other
construction the claims would encompass pre-existing technology (including that discussed
in the patent such as HTML forms). Since a patented invention must be novel and
non-obvious, the scope of the claims must exclude pre-existing technology.</span></p>

<p><span class="text">Intermind explicitly acknowledged, by its repeated and forceful
representations to the Patent Office, that its claimed &quot;control structure&quot; is
the &quot;communications object&quot; defined in the patent, and relied upon these
representations to distinguish its claims from the prior art.</span></p>

<p><span class="text">Intermind further narrowed the meaning of &quot;control
structure&quot; by relying with equal force on specific properties of its claimed
communications object to distinguish it from prior art control structures that performed
the same functions. Its claimed control structure must also be construed, therefore, to
include those features of the communications object relied upon by Intermind to
distinguish this prior art, including that:</span></p>

<p><span class="text">(i) the control structure actually performs transfer control,</span></p>

<p><span class="text">(ii) the control structure itself carries the information necessary
to transparently perform remote method calls, and</span></p>

<p><span class="text">(iii) the control structure itself carries the details of
distributing data or sending messages from a communications source to a communications
destination such that it completely defines the communications relationship between any
two nodes in both directions, via any network or protocol, using any middleware.</span></p>

<p><span class="text">In our judgment, therefore, a properly informed court would construe
the term &quot;control structure&quot; in claims 1-126 of the '325 patent as limited to a
combination of metadata, data, and instructions organized as an object-oriented
combination of metadata, data, and methods for operating on the data, to encapsulate
location transparency and completely define the communications relationship between two
computers in both directions via any network, protocol, or middleware.</span></p>

<h4><span class="text">F. P3P Does Not Infringe Any Claim of the Intermind Patent</span></h4>

<p><span class="text">A P3P-compliant Web service (or site) uses a P3P proposal to declare
its privacy practices with respect to information collected from its users. The proposal
and a client-resident User Preferences file are compared by software running on the client
(e.g., a browser), and depending on the result of the comparison the browser can accept
the proposal, reject it, or prompt the user to decide how to respond. The browser may also
store user information (such as the user's name and address) and, if the user desires,
provide the stored information in response to requests from Web sites that declare privacy
practices acceptable to the user.<a href="#N_11_"><sup>(11)</sup></a></span></p>

<p><span class="text">The Web service declares its privacy practices by including a Web
address and a unique identifier for a P3P proposal in its response to a user's request for
a Web page or other resource. The user's Web browser can use the address to retrieve the
proposal, which is a text file conforming to an XML syntax specified by P3P. Statements in
the proposal identify the information the service wants to collect and the uses it will
make of that information. The proposal is thus a static declaration of the service's
policies wholly lacking anything resembling methods. The proposal, its Web address, and
its unique identifier are the only pieces of information that P3P requires be sent from
the server to the browser.</span></p>

<p><span class="text">After retrieving a proposal, the Web browser parses its text to
compare the proposal with the User Preferences file, which uses rules to specify the
user's preferences. Like the proposal, the User Preferences file contains no methods. Each
rule specifies the Web browser behavior desired by the user when a proposal matches the
rule. P3P specifies three behaviors: &quot;accept,&quot; indicating that the proposal is
acceptable; &quot;prompt,&quot; indicating that the user should be consulted to determine
whether the proposal is acceptable; and &quot;reject,&quot; indicating that resources
associated with the proposal should not be accessed.</span></p>

<p><span class="text">P3P preferences may be expressed in a computer language, such as A
P3P Preference Exchange Language (APPEL). Ex. B, P3P Syntax, sections 1.5-1.6. Preferences
so expressed may then be stored in a file and transferred from one computer to another
using conventional file transfer means. A user receiving such a file may, if she desires,
accept the preferences expressed in the file as her own simply by installing the User
Preferences file on her machine. Unlike P3P proposals, User Preferences files are not
intended to be transferred from server to client as part of a browsing session, and
therefore cannot constitute the claimed control structure.</span></p>

<p><span class="text">Hence P3P does not include the control structure of the '325 patent
claims for at least two fundamental reasons: (1) neither the proposal nor the User
Preferences file includes data, metadata, and instructions organized using object-oriented
programming to encapsulate the data together with the instructions for using it, and (2)
neither the proposal nor the User Preferences file provides location transparency or
completely specifies a communications relationship.<a href="#N_12_"><sup>(12)</sup></a>
For these reasons, P3P-compliant Web services and user agents do not literally infringe
any claim of the '325 patent.</span></p>

<p><span class="text">If an accused device does not infringe a claim literally, it may
nevertheless infringe it under the doctrine of equivalents. Under that doctrine, a product
or process will be held to infringe if there is &quot;equivalence&quot; between the
elements of the accused product or process and those of the claim.<a href="#N_13_"><sup>(13)</sup></a>
Two elements are equivalent for that purpose if, in the context of the invention,
substitution of the accused element for the claimed element constitutes merely an
insubstantial change.<a href="#N_14_"><sup>(14)</sup></a></span></p>

<p><span class="text">In our judgment, P3P does not infringe the '325 patent under the
doctrine of equivalents because of the explicit manner in which Intermind limited the
patent during prosecution. By representing to the Patent Office that its claimed system's
use of &quot;a special type of control structure - a communications object&quot;
distinguished it critically from the prior art, Intermind surrendered any right to assert
infringement by any other type of control structure under the doctrine of equivalents. In
other words, its representations to the Patent Office <em>estop</em> it from asserting the
contrary - that its claims are not so limited - in any subsequent proceeding.</span></p>

<p><span class="text">Prosecution history estoppel in this manner limits the degree to
which claims can be expanded beyond their literal terms under the doctrine of equivalents
by excluding from the range of equivalents subject matter disclaimed during prosecution
either by explicit amendments to narrow the claims or as a result of argument to secure
their allowance.<a href="#N_15_"><sup>(15)</sup></a></span></p>

<p><span class="text">Here Intermind did both. In response to the Examiner's rejection,
Intermind canceled originally filed claim 1 in favor of newly added claims, all of which
recited a &quot;control structure&quot; transferred from a provider memory to a consumer
memory for controlling communications. And in its Information Disclosure Statement,
Intermind repeatedly distinguished a large volume of highly relevant prior art on the
basis that its claimed control structure was of a special type - a communications object.</span></p>

<p><span class="text">Application of the prosecution history estoppel doctrine requires a
two-step analysis. First, the purpose of the amendment or argument must be determined. If
presented to distinguish prior art (and perhaps in certain other circumstances<a
href="#N_16_"><sup>(16)</sup></a>), an estoppel is created. Otherwise, no estoppel
results. Second, if an estoppel is created, the scope of the estoppel must be determined.<a
href="#N_17_"><sup>(17)</sup></a></span></p>

<p><span class="text">Here, the first step of the analysis is straightforward: Intermind's
extensive remarks accompanying the limitation of all of its claims to require a
&quot;control structure&quot; explicitly said that the amendment was made to distinguish
the prior art. This triggered application of the doctrine of prosecution history estoppel.</span></p>

<p><span class="text">Having established that prosecution history estoppel applies, the
second step of the analysis is to determine its scope. The scope of the estoppel includes
the subject matter that a reasonable competitor would conclude was surrendered by
Intermind in making the amendment or argument. The determination is made with reference to
the particular prior art and the amendments or arguments made to distinguish it.<a
href="#N_18_"><sup>(18)</sup></a></span></p>

<p><span class="text">Here, Intermind repeatedly asserted that its claimed invention
differed from the prior art <em>because</em> the recited control structure was a
communications object. It conceded that the prior art included a &quot;control structure
transferred from provider to consumer to control communications,&quot; thus surrendering
coverage for control structures that are not communications objects.<a href="#N_19_"><sup>(19)</sup></a></span></p>

<p><span class="text">Intermind further limited the range of equivalents for its claims in
relying on additional characteristics of the communications object to distinguish the
prior art. It characterized communications objects as abstracting the details necessary
for location transparency, and relied upon this characterization to distinguish prior art
performing the same function. Again, the only reasonable conclusion a competitor could
reach from this characterization is that Intermind surrendered coverage for control
structures that do not comprise communications objects encapsulating location
transparency.</span></p>

<p><span class="text">Intermind also distinguished prior art by representing that its
communications object abstracted the details necessary for data distribution and
messaging, and &quot;completely defin[ed] the communications relationship between any two
nodes, in both directions, via any network or protocol, using any middleware.&quot; Here
too, Intermind conceded that the distinguished prior art performed these functions,
surrendering protection for control structures that do not encapsulate these functions.</span></p>

<p><span class="text">The use of P3P does not involve a communications object, much less a
communications object that completely defines the communications relationship between a
provider and consumer, or that provides location transparency. Accordingly, P3P does not
infringe any claim of the '325 patent under the doctrine of equivalents.</span></p>

<h4><span class="text">G. Conclusion</span></h4>

<p><span class="text">For the foregoing reasons, summarized in the second through the
sixth paragraphs of this opinion, we conclude, and it is our opinion and judgment, that
the use of P3P would not infringe any claim of the '325 patent.</span></p>

<p><span class="text">Very truly yours,</span></p>

<blockquote>
  <p><span class="text"><a href="http://www.pennie.com">PENNIE &amp; EDMONDS&nbsp;LLP</a></span></p>
  <p><span class="text">By: /s/ <a href="http://www.pennie.com/bios/reinbfr.htm">Barry D.
  Rein</a><br>
  Barry D. Rein<br>
  A Member of the Firm</span></p>
  <p><span class="text">/s/ <a href="http://www.pennie.com/bios/stephensgfr.htm">Garland T.
  Stephens</a><br>
  Garland T. Stephens<br>
  An Associate of the Firm</span></p>
  <p><span class="text">/s/ <a href="http://www.pennie.com/bios/lebowitzhfr.htm">Henry C.
  Lebowitz</a><br>
  Henry C. Lebowitz<br>
  An Associate of the Firm</span></p>
</blockquote>

<h4><span class="text">List of Exhibits</span></h4>

<p><span class="text">Exhibit A. <a href="http://www.w3.org/1999/10/patent-5862325.pdf">U.S.
Patent No. 5,862,325 to Reed et al.</a>.</span></p>

<p><span class="text">Exhibit B, <a href="http://www.w3.org/TR/WD-P3P/syntax">Platform for
Privacy Preferences (P3P) Syntax Specification,&quot; W3C Working Draft (26 August 1999)</a>
</span></p>

<p><span class="text">Exhibit C, <a href="http://www.w3.org/TR/WD-P3P/basedata">P3P Base
Data Set&quot; W3C Working Draft (26 August 1999)</a> </span></p>

<p><span class="text">Exhibit D, <a href="http://www.w3.org/TR/WD-P3P/vocab">P3P
Harmonized Vocabulary,&quot; W3C Working Draft (26 August 1999)</a></span></p>

<p><span class="text">Exhibit E, <a
href="http://www.w3.org/TR/1998/WD-P3P-preferences-19980814">A P3P Preference Exchange
Language (APPEL) Working Draft</a></span></p>

<p><span class="text">Exhibit F, U.S. Patent Office Action dated October 8, 1997 in the
case that issued as the &#145;325 patent.</span></p>

<p><span class="text">Exhibit G, Intermind&#146;s response, dated April 8, 1998, to U.S.
Patent Office Action dated October 8, 1997.</span></p>

<p><span class="text">Exhibit H, Information Disclosure Statement filed by Intermind in
the case that issued as the &#145;325 patent.</span></p>

<p><span class="text">Exhibit I, <a
href="http://www.patents.ibm.com/details?&amp;pn=US04974149__">U.S. Patent No. 4,974,149
to Valenti.</a></span></p>

<p><span class="text">Exhibit J, Supplemental Amendment, filed by Intermind on July 2,
1998 in the case that issued as the &#145;325 patent.</span></p>

<h4><span class="text">Footnotes</span></h4>

<p><span class="text"><a name="N_1_">1. </a>As used in the field of object-oriented
programming, the word &quot;method&quot; means a set of instructions contained in an
object for operating on the object's data.</span></p>

<p><span class="text"><a name="N_2_">2. </a><em>See</em> <em>Bell Communications Research,
Inc. v. Vitalink Communications Corp.</em>, 55 F.3d 615, 619-20 (Fed. Cir. 1995).</span></p>

<p><span class="text"><a name="N_3_">3. </a>We do not here address the issue of whether
the '325 patent is valid, and it is therefore our intention that even if privilege is
waived with respect to the subject matter of this letter, the waiver would not extend to
issues of validity, or other issues relating to the '325 patent other than
noninfringement. <em>See Applied Telematics, Inc. v. Sprint Corp.</em>, 1995 U.S. Dist
LEXIS 14061 (E.D. Pa. Sept. 21, 1995). We note in passing, however, that in construing the
claims as part of our noninfringement analysis, we have observed that the independent
claims are rife with serious ambiguities. For example, the words &quot;said
information&quot; and &quot;said processes&quot; are repeatedly used without any clear
antecedent. Our noninfringement conclusion is not affected by these ambiguities.</span></p>

<p><span class="text"><a name="N_4_">4. </a>A continuation-in-part is a patent application
filed during the lifetime of an earlier application that repeats some or all of the
earlier application and adds new matter not disclosed in the earlier application. To the
extent that the subject matter of the continuation-in-part appears in the earlier
application, the continuation-in-part is entitled to the filing date of the earlier
application.</span></p>

<p><span class="text"><a name="N_5_">5. </a>All emphasis in quotations in this letter has
been added unless otherwise noted.</span></p>

<p><span class="text"><a name="N_6_">6. </a><em>See Markman v. Westview Instruments, Inc.</em>,
52 F.3d 967, 979 (Fed. Cir. 1995) (en banc), <em>aff'd</em>, 517 U.S. 370 (1996).</span></p>

<p><span class="text"><a name="N_7_">7. </a><em>See</em> <em>Vitronics Corp. v.
Conceptronic, Inc.</em>, 90 F.3d 1576, 1582 (Fed. Cir. 1996).</span></p>

<p><span class="text"><a name="N_8_">8. </a><em>See</em> <em>Markman</em>, 52 F.3d at 980.</span></p>

<p><span class="text"><a name="N_9_">9. </a><em>See</em> <em>Vitronics</em>, 90 F.3d at
1583; <em>Pitney Bowes, Inc. v. Hewlett-Packard Co.</em>, 182 F.3d 1298, 1308-09 (Fed.
Cir. 1999).</span></p>

<p><span class="text"><a name="N_10_">10. </a><em>See Markman</em>, 52 F.3d at 979.</span></p>

<p><span class="text"><a name="N_11_">11. </a>P3P is specified in three documents,
entitled &quot;<a href="http://www.w3.org/TR/WD-P3P/syntax">Platform for Privacy
Preferences (P3P) Syntax Specification,&quot; W3C Working Draft (26 August 1999)</a> (Ex.
B); <a href="http://www.w3.org/TR/WD-P3P/basedata">&quot;P3P Base Data Set&quot; W3C
Working Draft (26 August 1999)</a> (Ex. C); and <a
href="http://www.w3.org/TR/WD-P3P/vocab">&quot;P3P Harmonized Vocabulary,&quot; W3C
Working Draft (26 August 1999)</a> (Ex. D). The P3P Syntax Specification includes the main
body of the specification. The P3P Base Data Set includes the detailed syntax and data
types of the base data set used by P3P, and the P3P Harmonized Vocabulary includes the
human language semantics of the privacy disclosure vocabulary.</span></p>

<p><span class="text"><a name="N_12_">12. </a>We note in passing that a P3P proposal may
be transferred from a computer other than the server governed by the proposal. In that
case, the proposal cannot be the claimed control structure for the additional reason that
it is not used to control communications with the computer from which it was transferred.</span></p>

<p><span class="text"><a name="N_13_">13. </a><em>See</em> <em>Warner-Jenkinson Co. v.
Hilton Davis Chemical Co.</em>, 520 U.S. 17, 21 (1997).</span></p>

<p><span class="text"><a name="N_14_">14. </a><em>See Valmont Indus., Inc. v. Reinke Mfg.
Co., </em>983 F.2d 1039, 1043 (Fed. Cir. 1996).</span></p>

<p><span class="text"><a name="N_15_">15. </a><em>See Sextant Avionique, S.A. v. Analog
Devices, Inc</em>., 172 F.3d 817, 826 (Fed. Cir. 1999) (<em>citing</em> <em>Cybor Corp. v.
FAS Techs., Inc.</em>, 138 F.3d 1448, 1459-60 (Fed. Cir. 1998) (<em>en banc</em>)); <em>Ekchian
v. Home Depot, Inc.,</em> 104 F.3d 1299, 1303-04 (Fed. Cir. 1997).</span></p>

<p><span class="text"><a name="N_16_">16. </a>The Federal Circuit has ordered en banc
review of its decision in <em>Festo Corp v. Shoketsu Kinzoku Kogyo Kabushiki Co.</em>, 172
F.3d 1361 (Fed. Cir. 1999). <em>See</em> <em>Festo Corp v. Shoketsu Kinzoku Kogyo
Kabushiki Co.,</em> 51 USPQ.2d 1959 (Fed. Cir. 1999). Among the questions to be addressed
by the Court are (i) the circumstances in which prosecution history estoppel arises, and
(ii) what scope of equivalents is available for a claim element that is subject to
estoppel.</span></p>

<p><span class="text"><a name="N_17_">17. </a><em>See Sextant</em>, 172 F.3d at 826 (<em>citing
Bai v. L&amp;L Wings, Inc.</em>, 160 F.3d 1350, 1355 (Fed. Cir. 1998)).</span></p>

<p><span class="text"><a name="N_18_">18. </a><em>See Sextant</em>, 172 F.3d at 826-27.</span></p>

<p><span class="text"><a name="N_19_">19. </a><em>See Augustine Med., Inc. v. Gaymar
Indus., Inc.</em>, 181 F.3d 1291, 1299 (Fed. Cir. 1999).</span></p>
</div>
</body>
</html>