Apple, Inc. v. Motorola, Inc. et al
Filing
109
Declaration of Carlos A. Rodriguez filed by Defendants Motorola Mobility, Inc., Motorola, Inc. re: 95 Motion Requesting Claims Construction by Defendants. (Attachments: # 1 Exhibit 1 - Excerpts from Patent No. 6,275,983 Prosecution History, # 2 Exhibit 2 - Excerpts from Patent No. 6,212,575 Prosecution History, # 3 Exhibit 4 - July 4, 1011 Correspondence from Erwine to Haskett, # 4 Exhibit 5 - Excerpts from Patent No. 6,175,559 Prosecution History, # 5 Exhibit 6 - Excerpts from July 13, 2011 Deposition of Leonard Cimini, Ph.D., # 6 Exhibit 7 - Excerpts from American Heritage College Dictionary) (Hansen, Scott) Modified on 7/18/2011 (llj).
EXHIBIT 2
08/435377
PATENT APPLICATION SERIAL NO.___
U.S. DEPARTMENT OF COMMERCE
PATENT AND TRADEMARK OFFICE
FEE RECORD SHEET
J. I " "
PTO-1556
(5/8 7)
05G
C*;h
0
P1525/112007-08
UNITED STATES PATENT APPLICATION
Of
Nfichael A. Cleron
Stephen Fisher
and
Timo-Bruck
for
EXTENSIBLE, REPLACEABLE NETWORK COMPONENT SYSTEM
P1525/112007-08
ABSTRACT
An extensible and replaceable network-oriented component system
provides a platform for developing network navigation components that
operate on a variety of hardware and software computer systems. These
5
navigation components include key integrating components along with
components configured to deliver conventional services directed to computer
networks, such as Gopher-specific and Web-specific components.
Communication among these components is achieved through novel
application programming interfaces (APIs) to facilitate integration with an
10
underlying software component architecture. Such a highly-modular
cooperating layered-arrangement between the network component system and
the component architecture allows any existing component to be replaced,
and allows new components to be added, without affecting operation of the
network component system.
P1525/112007-08
08/435377
RAY
CROSS-REFERENCE TO RELATED APPLICATIONS
This invention is related to the following copending U.S. Patent
Applications:
oeq~27q
U.S. Patent Application Serial No. 441-6)', tidled REPLACEABLE
5
AND EXTENSIBLE NOTEBOOK COMPONENT OF A NETWORK
COMPONENT SYSTEM;
615W
U.S. Patent Application Serial No.A464 titled REPLACEABLE
AND EXTENSIBLE LOG COMPONENT OF A NETWORK
COMPONENT SYSTEM;
10
U.§.,Patent Application Serial No. ,04428), titled REPLACEABLE
AND EXTEN4SIBLE CONNECTION DIALOG COMPONENT OF A
NETWORK COMPONENT SYSTEM;
oi
jU-
U.S. Patent Application Serial No.(P+529, titled EMBEDDING
INTERNET BROWSER/BUTTONS WITHIN COMPONENTS OF A
15
NETWORK COMPONENT SYSTEM;-an
U. S. Patent Application Serial-No. 4443ft t4tled ENCAPSULATED
NETWORK ENTITY REFERENCE OF A NETWORK COMPONENT
SYSTEM, each of which was filed on May 5, 1995 and assigned to the
assignee of the present invention.
20.
FIELD OF THE INVENTION
This invention relates generally to computer networks and, more
particularly, to an architecture for building Internet-specific services._
P1525/112007-08
BACKGROUND OF THE INVENTION
The Internet is a system of geographically distributed computer
networks interconnected by computers executing networking protocols that
allow users to interact and share information over the networks. Because of
5
such wide-spread information sharing, the Internet has generally -evolved into
an "open7' system for which developers can design software for performing
specialized operations, or services, essentially without restriction. These
services are typically implemented in accordance with a client/server
architecture, wherein the clients, e.g., personal computers or workstations,
10 are responsible for interacting with the users and the servers are computers
configured to perform the services as directed by the clients.
Not surprisingly, each of the services available over the Internet is
generally defined by its own networking protocol. A protocol is a set of rules
governing the format and meaning of messages or "packets" exchanged over
15
the networks. By implementing services in accordance with the protocols,
computers cooperate to perform various, operations, or similar operations in
various ways, for users wishing to "interact" with t61% networks. The services
typically range from browsing or searching for information-having a particular
data format using a particular protocol to actually acquiring information of a
20
different format in accordance with a different protocol.
For example, the file transfer protocol (FTP) service facilitates the
transfer and sharing of files across the Internet. The Telnet service allows
users to log onto computers coupled to the networks, while the netnews
-2-
P1525/112007-08
protocol provides a bulletin-board service to its subscribers. Furthermore, the
various data formats of the information available on the Internet include JPEG
images, MPEG movies and g-law sound files.
Coincident with the design of these services has been the development
5
of applications for implementing the services on the client/server architecture.
Accordingly, applications are available for users to obtain ifies from
computers connected to the Internet using the FTP protocol. Similarly,
individual applications allow users to log into remote computers (as though
they were logging in from terminals attached to those computers) using the
10
Telnet protocol and, further, to view JPEG images and NTEG movies. As a
result, there exists a proliferation of applications directed to user activity on
the Internet.
A problem with this vast collection of application-specific protocols is
that these applications,are generally unorganized, thus requiring users to plod
15
through them in order to satisfyingly, rd profitably, utilize the iternet. Such
lack of uniformity is time consuming and disorienting to users that want to
access particular types of information but are forced to use unfamiliar
applications. Because of the enormous amount of different types of
information available on the Internet and the variety of applications needed to
20
access those information types, the experience of using the Internet may be
burdensome to these users.
An alternative to the assortment of open applications for accessing
information on the Internet is a "closed" application system, such as Prodigy,
P1525/112007-08
CompuServe or America Online. Each of these systems provide a full range
of well-organized services to their subscribers; however, they also impose
restrictions on the services developers can offer for their systems. Such
constraint of "new" service development may be an unreasonable alternative
s
for many users.
Two fashionable services for accessing information over the Internet
are Gopher and the World-Wide Web ("Web"). Gopher consists of a series
of Internet servers that provide a "list-oriented" interface to information
available on the networks; the information is displayed as menu items in a
10
hierarchical nmanner. Included in the hierarchy of menus are documents,
which can be displayed or saved, and searchable indexes, which allow users
to type keywords and perform searches.
Some of the menu items displayed by Gopher are links to information
available on other sewvers located,on the networks. In this case, the user is
15
presented with a list of available information documents that can be opened.
The opened documents may display additional lists &rthey may contain
various data-types, such as pictures or text; occasionally, the opened
documents may "transport" the user to another computer on the Internet.
The other popular information service on the Internet is the Web.
20
Instead of providing a user with a hierarchical list-oriented view of
information, the Web provides the user with a "linked-hypertext" view.
Metaphorically, the Web perceives the Internet as a vast book of pages, each
of which may contain pictures, text, sound, movies or various other types of
-4-
P1525/112007-08
data in the form of documents. Web documents are written in HyperText
Markup Language (HTML) and Web servers transfer HTML documents to
each other through the HyperText Transfer Protocol (HTTP).
The Web service is essentially a means for naming sources of
s
information on the Internet. Armed with such a general naming convention
that spans the entire network system, developers are able to build information
servers that potentially any user can access. Accordingly, Gopher servers,
HTTP servers, FTP servers, and E-mail servers have been developed for the
We&.IMoreover, the naming convention enables users to identify resources
10
(Such as§ directories and documents) on any of these servers connected to the
Internet andtallow access to those resources.
As an example, a user "traverses" the Web by following hot items of a
page displayed on a graphical Web browser. These hot items are hypertext
links whose presence are indicated on the page by visual cues, e.g.,
15
underlined words, icons or buttons. When a user. follows a link (usually by
clicking on the cue with a mouse), the browser displays the target pointed to
by the link which, in some cases, may be another HINE document.
The Gopher and Web information services represent entirely different
approaches to interacting with information on the Internet. One follows a list-
20
approach to information that "looks" like a telephone directory service, while
the other assumes a page-approach analogous to a tabloid newspaper.
However, both of these approaches include applications for enabling users to
browse information available on Internet servers. Additionally, each-of these
-5-
U)
P1525/112007-08
applications has a unique way of viewing and accessing the information on
the servers.
Netscape Navigator7m ("Netscape") is an example of a monolitbic Web
browser application that is configured to interact with many of the previously5
described protocols, including HTTP, Gopher and FTP. When instructed to
invoke an application that uses one of these protocols, Netscape "translates"
the protocol to hypertext. This translation places the user farther away from
the protocol designed to run the application and, in some cases, actually
thwarts the user's Internet experience. For example, a discussion system
10
requmrng.an interacti"re exchange between participants may be bogged down
by hypertext translations.
The Gopher and Web services may further require additional
applications to perform specific functions, such as playing sound or viewing
movies, with respect to the data types contained in the documents. For
15
example, Netscape employs helper applicationsfior executing applications
having data formats it does not "undeitandll. Execution of these functions on
a computer requires interruption of processing and6&ontext switching (i.e.,
saving of state) prior to invoking the appropriate application. Thus, if a user
operating withini the Netscape application "opens" an MPEG movie, that
20
browsing application must be saved (e.g., to disk) prior to opening an
appropriate MPEG application, e.g., Sparkle, to view the image. Such an
arrangement is inefficient and rather disruptive to processing operations of the
computer.
-6-
.
P1525/112007-08
Typically, a computer includes an operating system and application
software which, collectively, control the operations of the computer. The
applications are preferably task-specific and independent, e.g., a word
processor application edits text, a drawing application edits drawings and a
5
database application interacts with information stored on a database storage
unit. Although a user can move data from one application to the other, such
as by copying a drawing into a word processing file, the independent
applications must be invoked to thereafter manipulate that data,
>Generally, the application program presents information to a user
10
through a'vwIindow of a graphical user interface by drawing images, graphics
or text within the window region. The user, in turn, communicates with the
application by "pointing" at graphical objects in the window with a pointer
that is controlled by a hand-operated pointing device, such as a mouse, or by
pressing keys of a keyboard.
is
The graphical objects typically included with each window region are
sizing boxes, buttons and scroll bars. These objects represent user interface
elements that the user can point at with the pointer (or a cursor) to select or
manipulate. For example, the user may manipulate these elements to move
the windows around on the display screen, and change their sizes and
20
appearances so as to arrange the window in a convemient manner. When the
elements are selected or manipulated, the underlying application program is
informed, via the window environment, that control has been appropriated by
the user.
-7-
P1525/112007-08
A menu bar is a finrther example of a user interface element that
provides a list of menus available to a user. Each menu, in turn, provides a
list of command options that can be selected merely by pointing to them with
the mouse-controlled pointer. That is, the commands may be issued by
5
actuating the mouse to move the pointer onto or near the command selection,
and pressing and quickly releasing, i.e., "clicking" a button on the mouse.
In contrast to this typical application-based computing environment a
software component architecture provides a modular document-based
computing arrangement using tools such as viewing editors. The key to~
10
document-based computing is the compound document, i.e., a document
composed of many different types of data sharing the same file. The types of
data contained in a compound document may range from text, tables and
graphics to video and sound. Several editors, each designed to handle a
particular data type or format, can work on the contents of the document at
15
the same time, unlike the application-based computing environment.
Since many editors may work together on th&'same document, the
compound document is apportioned into individual modules of content for
manipulation by the editors. The compound-nature of the document is
realized by embedding these modules within each other to create a document
20
having a mixture of data types. The software component architecture
provides the foundation for assembling documents of differing contents and
the present invention is directed to a system for extending this capability to
network-oriented services.
P1525/112007-08
Therefore, it is among the objects of the present invention to simplify a
user's experience on computer networks without sacrificing the flexibility
afforded the user by employing existing protocols and data types available on
those networks.
5
Another object of the invention is to provide a system for users to
search and access information on the Internet without extensive understanding
or knowledge of the underlying protocols and data formats needed to access
that information.
Still another object of the invention is to provide a document-based
10
computing system that enables users to develop modules for services directed
to information available on computer networks.
Still yet another object of the invention is to provide a platform that
allows third-party developers to extend a layered network component system
by building new components- that seamlessly interact with the system
15
components.
SUMMARY OF THE INVENTION
Briefly, the invention comprises an extensible and replaceable networkoriented component system that provides a platform for developing network
navigation components that operate on a variety of hardware and software
20
computer systems. These navigation components include key integrating
components along with components, such as Gopher-specific and Web-9-
P1525/112007-08
specific components, configured to deliver conventional services directed to
computer networks. Communication among these components is achieved
through novel application programming interfaces (APIs) to facilitate
integration with an underlying software component architecture. Such a
5
highly-modular cooperating layered-arrangement between the network
component system and the component architecture allows any existing
component to be replaced, and allows new components to be added, without
affecting operation of the novel network component system.
According to one aspect of the present invention, the novel system
10
provides a network navigating service for browsing and accessing information
available on the computer networks. The information may include various
data types available from Avariety of sources coupled to the computer
networks. Upon accessing the desired information, component viewing
editors are provided to modify' or display, either visually or acoustically, the
15
contents of the data types regardless of-the source of the underlying data.
Additional components and*component viewing editor.s.may be created in
connection with the underlying software component architecture to allow
integration of different data types and protocols needed to interact with
information on the Internet.
20
In accordance with another aspect of the invention, the component
system is preferably embodied as a customized framework having a set of
interconnected abstract classes for defining network-oriented objects. These
abstract classes include Cybertem, CyberStream and CyberExtension, and
-10-
P1525/112007-08
the objects they define are used to build the novel navigation components.
Interactions among these latter components and existing components of the
underlying software architecture provide the basis for the extensibility and
replaceability features of the network component system.Specifically, CyberItemn is an object abstraction which represents a
5
"resource on a computer network" , but which may be Rirther expanded to
include resources available at any accessible location. CyberStrearn is an
object abstraction representing a method for downloading information from a
remote, location on the computer network, while CyberExtension represents
10
additionEl,behaviors provided to the existing components for integration with
the network'component system.
The novel network system captures the essence of a "componentbased" approach to browsing and retrieving network-oriented information as
opposed to the monolithic application-based approach of prior browsing
15
systems. Such a component-based system has a number of advantages. First,
if a user does not like the way a partiqpar component operates, that
component can be replaced with a different compod&nft provided by another
developer. In contrast, if a user does not like the way a monolithic
application handles certain protocols, the only recourse is to use another
20
service because the user cannot modify the application to perform the
protocol funmctions in a different manner. Clearly, the replaceability feature of
the novel network component system provides a flexible alternative to the
user.
P1525/112007-08
Second, the use of components is substantially less disruptive than
using helper applications in situations where a monolithic application
confronts differing data types and formats. Instead of "switching" application
layers, the novel network system merely invokes the appropriate component
5
and component viewing editor configured to operate with the data type and
format. Such "seamless" integration among components is a significant
feature of the modular cooperating architecture described herein.
A third advantage of the novel network system is directed to the
10
cooperating relationship between the system and the underlying software
component architecture. Specifically, the novel network components are
based'on the component architecture technology to therefore ensure
cooperation between all components in an integrated manner. The software
component architecture is configured to operate on a plurality of computers,
and is preferably implemented as a software layer adjoining the operating
ii
system.
BRIEF DESCRIPTION OF THE DRAWINGS
The above and firrther advantages of the invenition may be better
understood by referring to the following description in conjunction with the
accompanying drawings in which:
20
Fig. 1 is a block diagram of a network system including a collection of
computer networks interconnected by client and sewver computers;
-12-
P1525/112007-08
Fig. 2 is a block diagram of a client computer, such as a personal
computer, on which the invention may advantageously operate;
Fig. 3 is a block diagram of a server computer of Fig. 1;
Fig. 4 is a highly schematized block diagram of a layered component
5
computing arrangement in accordance with the invention;
Fig. 5 is a schematic illustration of the interaction of a component, a
software component layer and an operating system of the computer of Fig. 2;
Fig. 6 is a schematic illustration of the interaction between a
component, a component layer and a window manager in accordance with the
10
invention-,Fig. 7 is a simplified class hierarchy diagram illustrating a base class
Cyberltem, and its associated subclasses, used to construct network
component objects in accordance with the invention;
Fig. 8 is a simplified class heirarchy diagram illustrating a base class
15
CyberStream, and its associated subclasses, in accordance with the invention;
and
Fig. 9 is a simplified class hierarchy diagram illustrating a base class
CyberExtension, and its associated subclasses, in accordance with the present
invention.
20
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENT
Fig. 1 is a block diagram of a network system 100 comprising a
collection of computer networks 110 interconnected by client computers
-13-
jz4f
P1525/112007-08
("clients") 200, e.g., workstations or personal computers, and sewver
computers ("servers") 300. The servers are typically computers having
hardware and software elements that provide resources or services for use by
the clients 200 to increase the efficiency of their operations. It will be
5
understood to those skilled in the art that in an alternate embodiment, the
client and sewver may exist on the same computer; however, for the
illustrative embodiment described herein, the client and server are separate
computers.
Several types of computer networks 110, including local area networks
10
(LANs) and. wide area networks (WANs), may be employed in the system
100. A LAN is a limited area network that typically consists of a
transmission medium, such as coaxial cable or twisted pair, while a WAN
may be a public or private telecommunications facility that interconnects
computers widely dispersed. In the illustrative embodiment, the network
15
system 100 is the Internet system of geographically distributed computer
networks.
Computers coupled to the Internet typically communicate by
exchanging discrete packets of information according to pr.edefined
networking protocols. Execution of these networking protocols allow users
20
to interact and share information across the networks. As an illustration, in
response to a user's request for a particular service, the client 200 sends an
appropriate information packet to the server 300, which performs the service
and returns a result back to the client 200.
-14-
P1525/112007-08
Fig. 2 illustrates a typical hardware configuration of a client 200
comprising a central processing unit (CPU) 210 coupled between a memory
214 and input/output ([/0) circuitry 218 by bidirectional buses 212 and 216.
The memory 214 typically comprises random access memory (RAM) for
5
temporary storage of information and read only memory (ROM) for
permanent storage of the computer's configuration and basic operating
commands, such as portions of an operating system (not shown). As
described further herein, the operating system controls the operations of the
CPU,210 and client computer 200.
The,I/O circuitry 218, in turn, connects the computer to computer
10
networks, such as the Internet computer networks 250, via a bidirectional bus
222 and to cursor/pointer control devices, such as a keyboard 224 (via cable
226) and a mouse 230 (via cable 228). The mouse 230 typically contains at
least one button 234 operated by a user of the computer. A conventional
15
display monitor 232 having a dsplay screen 23.5 is also connected to 1/0
circuitry 218 via cable 238. A pointei,(cursor) 240,is displayed on windows
244 of the screen 235 and its position is controllabl via the mouse 230 or the
keyboard 224, as is well-known. Typically, the 110 circuitry 218 receives
information, such as control and data signals, from the mouse 230 and
20
keyboard 224, and provides that information to the CPU 210 for display on
the screen 235 or, as described further herein, for transfer over the Internet
250.
-15-
P1525/112007-08
.Fig. 3 illustrates a typical hardware configuration of a server 300 of the
network system 100. The server 300 has many of the same units as employed
in the client 200, including a CPU 310, a memory 314, and 110 circuitry 318,
each of which are interconnected by bidirectional buses 312 and 316. Also,
5
the 1/0 circuit connects the computer to computer networks 350 via a
bidirectional bus 322. These units are configured to perform functions similar
to those provided by their corresponding units in the computer 200. In
addition, the server typically includes a mass storage unit 320, such as a disk
drive, connected to the 110 circuitry 318 via bidirectional bus 324.
10
It-is to be understood that the 1/0 circuits within the computers 200 and
300 contain'the necessary hardware, e.g., buffers and adapters, needed to
interface with the control devices, the display monitor, the mass storage unit
and the networks, Moreover, the operating system includes the necessary
software drivers to control, e.g., network adapters within the 110 circuits
15
when performing 1/0 operations,, such as the transfer of data packets between
the client 200 and server 300.
The computers are preferably personal computers of the Macintosh®
series of computers sold by Apple Computer Inc., although the invention may
also be practiced in the context of other types of computers, including the
20
IBM® series of computers sold by International Business Machines Corp.
These computers have resident thereon, and are controlled and coordinated
by, operating system software, such as the Apple® System 7®,1I3M 0S2®,
or the Microsoft® Windows®D operating systems.
P1525/112007-08
As noted, the present invention is based on a modular document
computing arrangement as provided by an underlying software component
architecture, rather than the typical application-based environment of prior
computing systems. Fig. 4 is a highly schematized diagram of the hardware
5
and software elements of a layered component computing arrangement 400
that includes the novel network-oriented component system of the invention.
At the lowest level there is the computer hardware, shown as layer 4 10.
Interfacing with the hardware is a conventional operating system layer 420
that includes a window manager, a graphic system, a file system and network-
10
specific interfacing, such as a TCP/IP protocol stack and an Apple-talk
protocol stack.
The software component architecture is preferably implemented as a
component architecture layer 430. Although it is shown as overlaying the
operating system 420, the component architecture layer 430 is actually
15
independent of the operating system and, more precisely, resides side-by-side
with the operating system. This relationship allows.he component
architecture to exist on multiple platforms that employ different operating
systems.
In accordance with the present invention, a novel network-oriented
20
component layer 450 contains the underlying technology for implementing the
extensible and replaceable network component system that delivers services
and facilitates development of navigation components directed to computer
networks, such as the Internet. As described finther herein, this technology
-17-
d
1
P1525/112007-08
includes novel application programming interfaces (APIs) that facilitate
comimunication among components to ensure integration with the underlying
component architecture layer 430. These novel APIs are preferably delivered
in the form of objects in a class hierarchy.
5
It should be noted that the network component layer 450 may operate
with any existing system-wide component architecture, such as the Object
Linking and Embedding (OLE) architecture developed by the Microsoft
Corporation; however, in the illustrative embodiment, the component
architecture is preferably OpenDoc, the vendor-neutral, open standard for
10
compound documents developed by, among others, Apple Computer, Inc.
Using iools such as viewing editors, the component architecture layer
430 creates a compound document composed of data having different types
and formats. Each differing data type and format is contained in a
fundamental unit called a computing part or, mote generally, a "component"
15
460 comprised of a viewing editor along with the data content. An example
of the computing component 460 mayinclude a MacDraw component. The
editor, on the other hand, is analogous to an applic,Alion program in a
conventional computer. That is, the editor is a software component which
provides the necessary functionality to display a component's contents and,
20
where appropriate, present a user interface for modifying those contents.
Additionally, the editor may include menus, controls and other user interface
elements.
-18-
ClO,
P1525/112007-08
According to the invention, the network component layer 450 extends
the functionality of the underlying component architecture layer 430 by
defining network-oriented components 480. Included among these
components are key integrating components (such as notebook, log and
5
connection dialog components) along with components configured to deliver
conventional services directed to computer networks, such as Gopher-specific
and Web-specific components. Moreover, the components may include FTPspecific components for transfering files across the networks, Telnet-specific
components for remotely logging onto other computers, and JPEG-specific
to
and MPEtG-specific components for viewing image and movie data types and
formats.
A feature of the invention is the ability to easily extend, or replace, any
of the components of the layered computing arrangement 400 with a different
component to provide a user with customized network-related services. As
15
described herein, this feature is made possible by the cooperating relationship
between the network component 1ayer 50 and its grderlying component
architecture layer 430. The integrating component"communicate and interact
with these various components of the system in a "seamlessly integrated"
manner to provide basic tools for navigating the Internet computet networks.
20
Fig. 4 also illustrates the relationship of applications 490 to the
elements of the layered computing arrangement 400. Although they reside in
the same "user space" as the components 460 and network components 480,
the applications 490 do not interact with these elements and, thus, interface
-19-
P1525/112007-08
directly to the operating system layer 420. Because they are designed as
monolithic, autonomous modules, applications (such as previous Internet
browsers) often do not even interact among themselves. In contrast, the
components of the arrangement 400 are designed to work together via the
5
common component architecture layer 430 or, in the case of the network
components, via the novel network component layer 450.
Specifically, the invention features the provision of the extensible and
replaceable network-oriented component system which, when invoked,
causes actions to take place that enhance the ability of a user to interact with
10
the comp uter to search for, and obtain, information available over computer
networks such as the Internet. The information is manifested to a user via a
window environment, such as the graphical user interface provided by System
7 or Windows, that is preferably displayed on the screen 235 (Fig. 2) as a
graphical display to facilitate interactions between the user and the computer,
15
such as the client 200. This behavior of the system is brought about by the
interaction of the network components.with a seriesof system software
routines associated with the operating system 420."~These system routines, in
turn, interact with the co mponent architecture layer 430 to create the
windows and graphical user interface elements, as described further herein.
20
The window environment is generally part of the operating system
software 420 that includes a collection of utility programs for controlling the
operation of the computer 200. The operating system, in turn, interacts with
the components to provide higher level functionality, including a direct
-20-
P1525/112007-08
interface with the user. A component makes use of operating system
functions by issuing a series of task commands to the operating system via
the network component layer 450 or, as is typically the case, through the
component architecture layer 430. The operating system 420 then performs
s
the requested task. For example, the component may request that a software
driver of the operating system initiate transfer of a data packet over the
networks 250 or that the operating system display certain information on a
window for presentation to the user.
10
TFig. 5 is a schematic illustration of the interaction of a component 502,
software'eomponent layer 506 and an operating system 510 of a computer
500, which is'siilar to, and has equivalent elements of, the client computer
200 of Fig. 2. As noted, the network component layer 450 (Fig. 4) is
integrated with the component architecture layer 430 to provide a cooperating
architecture that allows any component to be replaced or extended, and
15
allows new components to be added, without affecting operation of the
network component system; accordingly, for purposes of the present
discussion, the layers 430 and 450 may be treated A-a single software
component layer 506.
The component 502, component layer 506 and operating system 510
20
interact to control and coordinate the operations of the computer 500 and
their interaction is illustrated schematically by arrows 504 and 508. In order
to display information on a screen display 535, the component 502 and
component layer 506 cooperate to generate and send display commands to a
-21-
P1525/112007-08
window manager 514 of the operating system 510. The window manager 514
stores information directly (via arrow 516) into a screen buffer 520.
The window manager 514 is a system software routine that is generally
responsible for managing windows 544 that the user views during operation
of the network component system. That is, it is generally the task of the
5
window manager to keep track of the location and size of the window and
window areas which must be drawn and redrawn in connection with the
network component system of the present invention.
Under control of various hardware and software in the system, the
contents of the screen buffer 520 are read out of the buffer and provided, as
10
indicated schematically by arrow 522, to a display adapter 526. The display
adapter contains hardware and software (sometimes in the form of firmware)
which converts the information in the screen buffer 520 to a form which can
be used to drive a display screen, 53 '5of a monitor 532. The monitor 532 is
15
.
connected to display adapter 526 by cable 528.
Similarly, in order to transfer information as a>packet over the
computer networks, the component 502 and component layer 506 cooperate
to generate and send network commands, such as remote procedure calls, to a
network-specific interface 540 of the operating system 510. The network
20
interface comprises system software routines, such as "stub" procedure
software and protocol stacks, that are generally responsible for formating the
information into a predetermined packet format according to the specific
network protocol used, e.g., TCP/IP or Apple-talk protocol.-
P1525/112007-08
Specifically, the network interface 540 stores the packet directly (via
arrow 556) into a network buffer 560. Under control of the hardware and
software in the system, the contents of the network buffer 560 are provided,
as indicated schematically by arrow 562, to a network adapter 566. The
5
network adapter incorporates the software and hardware, i.e., electrical and
mechanical interchange circuits and characteristics, needed to interface with
the particular computer networks 550. The adapter 566 is connected to the
computer networks 550 by cable 568.
via a preferred embodiment, the invention described herein is
10
implemented in an object-oriented programming (QOP) language, such as
C++ , using' Systemn Object Model (SOM) technology and OOP techniques.
The C++ and SOM languages are well-known and many articles and texts are
available which describe the languages in detail. In addition, C++ and SOM
compilers are copnercially available from several vendors, Accordingly, for
15
reasons ofQIw*41, the details of the C++ and SOM languages and the
operations of their compilers will not-be discussed firther in detail herein.
As will be understood by those skilled in thArt, OOP techniques
involve the definition, creation, use and destruction of "objects". These
objects are software entities comprising data elements and routies, or
20
functions, which manipulate the data elements. The data and related
functions are treated by the software as an entity that can be created, used
and deleted as if it were a single item. Together, the data and finctions
enable objects to model virtually any real-world entity in terms of its
-23-
P1525/112007-08
characteristics, which can be represented by the data elements, and its
behavior, which can be represented by its data manipulation finctions. In this
way, objects can model concrete things like computers, while also modeling
abstract concepts like numbers or geometrical designs.
5
Objects are defined by creating "classes" which are not objects
themselves, but which act as templates that instruct the compiler how to
construct an actual object. A class may, for example, specify the number and
typ'e,of data variables and the steps involved in the functions which
manipulate the data. An object is actually created in the program by means of
i0
a special fumction called a "constructor" which uses the corresponding class
definition and additional information, such as arguments provided during
object creation, to construct the object. Likewise objects are destroyed by a
special function called a "destructor". Objects may be used by manipulating
their data and invoking their functions.
15
The principle benefits of OOP techniquesarise out of three basic
principles: encapsulation, polymorphI§m and inheritance. Specifically,
objects can be designed to hide, or encapsulate, all, or a portion of, its
internal data structure and internal functions. More specifically, during
program desig n, a program developer can define objects in which all or some
20
of the data variables and all or some of the related functions are considered
"4private" or for use only by the object itself. Other data or functions can be
declared "public" or available for use by other programs. Access to the
private variables by other programs can be controlled by defining public
-24-
P9tC)
P1525/112007-08
functions for an object which access the object's private data. The public
functions form a controlled and consistent interface between the private data
and the "outside" world. Any attempt to write program code which directly
accesses the private variables causes the compiler to generate an error during
s
program compilation which erroi stops the compilation process and prevents
the program from being run.
Polymorphism is a concept which allows objects and functions that
have the same overall format, but that work with different data, to function
differently in order to produce consistent results. Inheritance, on the other
10
hand, allows program developers to easily reuse pre-existing programs and to
avoid creating software from scratch. The principle of inheritance allows a
software developer to declare classes (and the objects which are later created
from them) as related. Specifically, classes may be designated as subclasses
of other base classes. A subclass "inherits" and has access to all of the
15
public functions of its base classes just as if te'se functions appeared in the
subclass. Alternatively, a subclass can-override some or all of its inherited
functions or may modify some or all of its inherited functions merely by
defining a new function with the same form (overriding 'ormodification does
not alter the function in the base class, but merely modifies the use of the
20
function in the subclass). The creation of a new subclass which has some of
the functionality (wit selective modification) of another class allows
software developers to easily customize existing code to meet their particular
needs.
-25-
Ul
P1525/112007-08
In
accordance
with
the
present
invention,
the
component
502
and
windows 544 are "objects" created by the component layer 506 and the
window manager 514, respectively, the latter of which may be an objectoriented program. Interaction between a component, component layer and a
5
window manager is illustrated in greater detail in Fig. 6.
In general, the component layer 606 interfaces with the window
manager 614 by creating and manipulating objects. The window manager
itself may be an object which is created when the operating system is started.
Specifically, the component layer creates window objects 630 that cause the
10
window manager to create associated windows on the display screen. This is
shown schemfatically by an arrow 608. In addition, the component layer 606
creates individual graphic intefce objects 650 that are stored in each
window object 630, as shown schematically by arrows 612 and 652. Since
many graphic interface objects may be created in order to display many
is
interface elements on the display screen, the window object 630
communicates with the window manager by means of a sequence of drawing
commands issued from the window object to the wi4dow manager 614, as
illustrated by arrow 632.
As noted, the component layer 606 functions to embed components
20
within one another to form a compound document having mixed data types
and formats. Many different viewing editors may work together to display, or
modify, the data contents of the document. In order to direct keystrokes and
-26-
P1525/112007-08
mouse events initiated by a user to the proper components and editors, the
component layer 606 includes an arbitrator 616 and a dispatcher 626.
The dispatcher is an object that communicates with the operating
system 6 10 to identify the correct viewing editor 660, while the arbitrator is
5
an object that informs the dispatcher as to which editor "owns" the stream of
keystrokes or mouse events. Specifically, the dispatcher 626 receives these
"human-interface" events from the operating system 610 (as shown
schematically by arrow 628) and delivers them to the correct viewing editor
660 'via arrow 662. The viewing editor 660 then modifies or displays, either
10
visually or acoustically, the contents of the data types.
Although
OOP offers significant improvements over other
programming concepts, software development still requires significant outlays
of time and effort, especially if no pre-existing software is available for
modification. Consequently,. a prior art approach has been to provide a
15
developer with a set of predefined, interconnected classes which create a set
of objects and additional miscellaneous,routines that pre all directed to
performing commonly-encountered tasks in a particular environment. Such
predefined classes and libraries are typically called "frameworks" and
essentially provide a pre-fabricated structure for a working document.
20
For example, a framework for a user interface might provide a set of
predefined graphic interface objects which create windows, scroll bars,
menus, etc. and provide the support and "default" behavior for these interface
objects. Since frameworks are based on object-oviented techniques,-the
-27-
P1525/112007-08
predefined classes can be used as base classes and the built-in default
behavior can be inherited by developer-defined subclasses and either
modified or overridden to allow developers to extend the framework and
create customized solutions in a particular area of expertise. This object5
oriented approach provides a major advantage over traditional programming
since the programmer is not changing the original program, but rather
extending the capabilities of that original program. In addition, developers
are not blindly working through layers of code because the framework
provides architectural guidance and modeling and, at the same time, frees the
10
developers to supply specific actions unique to the problem domain.
There are many kinds of frameworks available, depending on the level
of the system involved and the kind of problem to be solved. The types of
frameworks range from high-level frameworks that assist in developing a user
interface, to lower-level frameworks that provide basic system software
is
services such as communications, printing, file systems support, graphics, etc.
Commercial examples of application-type frameworks include MacApp
(Apple), Bedrock (Symantec), OWL (B~orland), NeXT Step App Kit (NeXT)
and Smalltalkc-80 MVC (ParcPlace).
While the framework approach utilizes all the principles of
20
encapsulation, polymorphism, and inheritance in the object layer, an'd is a
substantial improvement over other programming techniques, there are
difficulties which arise. These difficulties are caused by the fact that it is easy
for developers to reuse their own objects, but it is difficult for the developers
-28-
P1525/112007-08
to use objects generated by other programs. Further, frameworks generally
consist of one or more object "layers" on top of a monolithic operating
system and even with the flexibility of the object layer, it is still often
necessary to directly interact with the underlying system by means of
5
awkward procedure calls.
In the same way that a framework provides the developer with prefab
fun ctionality for a document, a system framework, such as that included in the
preferred embodiment, can provide a prefab functionality for system level
services *which developers can modf or override to create customized
10
solutions, thereby avoiding the awkward procedural calls necessary with the
prior art frameworks. For example, consider a customnizable network
interface framework which can provide the foundation for browsing and
accessing information over a computer network. A software developer who
needed these capabilities would ordinarily have to write specific routines to
is
provide them. To do this with a framework, the developer only needs to
supply the characteristic aind behavior of the finishd{output, while the
framework provides the actual routines which perform the tasks.
A preferred embodiment takes the concept of frameworks and applies
it throughout the entire system, including the document, component,
20
component layer and the operating system. For the commercial or corporate
developer, systems integrator, or OEM, this means all of the advantages that
have been illustrated for a framework, such as MacApp, can be leveraged not
only at the application level for things such as text and graphical user
-29-
P1525/112007-08
interfaces, but also at the system level for such services as printing, graphics,
multi-media, file systems and, as described herein, network-specific
operations.
Referring again to Fig. 6, the window object 630 and the graphic
5
interface object 650 are elements of a graphical user interface of a network
component system having a customizable framework for greatly enhancing
the ability of a user to navigate or browse through information stored on
servers coupled to the network. Moreover, the novel network system
provides a platform for developing network navigation components for
10
operation on a variety of hardware and software computer systems.
As noted, the network components are preferably implemented as
objects and communication among the network component objects is effected
through novel application programming interfaces (APIs). These APIs are
preferably delivered in-the form of objects in a class hierarchy that is
15
extensible so that developers can create new components and editors. From
an implementation viewpoint, the objects can be subclassed and can inherit
from base classes to build customizdo, components allow users to see different
kinds of data using different kinds of protocols, orto create components that
function differently from existing components.
20
In accordance with the invention, the customized framework has a set
of interconnected abstract classes for defining network-oriented objects used
to build these customized network components. These abstract classes
include Cyberltemn, CyberStream and CyberExtension and the objects they
-30-
P1525/112007-08
define are used to build the novel network components. Interactions among
these latter components and existing components of the underlying software
architecture provide the basis for the extensibility and replaceability features
of the network component system.
5
In order to further understand the operations of these network
component objects, it may be useful to examine their construction together
with the major function routines that comprise the behavior of the objects. In
examining the objects, it is also useful to examine the classes that are used to
construct, the objects (as previously mentioned the' classes serve as templates
10 for the construction of objects). Thus, the relation of the classes and the
functions inherent in each class can be used to predict the behavior of an
object once it is constructed.
Fig. 7 illustrates a simplified class hierarchy diagram 700 of the base
class CyberItem 702 used to construct the network component object 602. In
15
general, Cyberltemn is an abstraction that may rel3iesent resources available at
any location accessible from the client,200. However, in accordance with the
illustrative embodiment a Cyberltem is preferably a small, self-contained
object that represents a resource, such as a service, available on the Internet
and subclasses of the Cyberltern base class are used to construct various
20
network component objects configured to provide such services for the novel
network-oriented component system.
For example, the class GopherItemn 704 may be used to construct a
network component object representing a "thing in Gopher space", such as a
-31-
P1525/112007-08
Gopher directory, while the subclass WebItemu 706 is derived from CyberItem
and encapsulates a network component object representing a "tbing in Web
space, e.g., a Web page.
Similarly, the subclass NewsGroupItem
708 may be
used to construct a network object representing a newsgroup and the class
5
Article 7 10 is configured to encapsulate a network component object
representing an article resource on an Internet sewver.
Since each of the classes used to construct these network component
objects are subclasses of the CyberItem base class, each class inherits the
functional operators and methods that are available from that base class. For
10
example, methods associated with the CyberItem base class for returning an
icon family and a name are assumed by the subclasses to allow the network
components to' display CyberItem. objects in a consistent manner. The
methods associated with the CyberItem base class include (the arguments
have been omitted for simplicity):
15
GetRefCount 0-,
IncrementRefUount
0;
Release 0;
SetUpFromURL 0;
20
ExternalizeContent 0;
StreamToStorageUnit 0;
StreamFromStorageUnit 0;
Clone 0;
Compare 0;
25
GetStringProperty 0;
SetDefaultName 0;
GetURL 0;
GetIconSuite 0;
CreateCyberStream
0;
-32-
P1525/112007-08
Open 0;
OpenInFrame 0;
FindWindow 0.
In some instances, a CyberItem object may need to spawn a
5
CyberStreamn object in order to obtain the actual data for the object it
represents. Fig. 8 illustrates a simplified class hierarchy diagram 800 of the
base class CyberStrearn 802. As noted, CyberStream is an abstraction that
serves as an API between a component configured to display a particular data
format and the method for obtaining the actual data. Tbig allows developers
10
to design viewing editors that can display the content of data regardless of the
protocol required to obtain that data.
For example, a developer may design a picture viewing editor that uses
the CyberStream API to obtain data bytes describing a picture. The actual
data bytes are obtained by a subclass of CyberStream configured to construct
is
a component object that implements a particular protocol, such as Gopher and
HTTP. That is, the CyberStream object contains the software commands
necessary to create a "data stream" fo tfransfering,iWormation from one
object to another. According to the invention, a GopherStream subclass 804
is derived from the CyberStream base class and encapsulates a network
20
object that implements the Gopher protocol, while the class WebStreami 806
may be used to construct a network component configured to operate in
accordance with the HTTP protocol.
-33-
P1525/112007-08
The methods associated with the CyberStream class, and which wre
contained in the objects constructed from the subclasses, include (the
arguments have been omitted for simplicity):
0;
GetTotalDataSize 0;
GetStrearnError 0;
GetStatusString 0;
OpenWithCallback 0;
Open 0;
GetBuffer 0;
ReleaseBuffer 0;
Abort 0.
GetStreamStatus
5
10
Fig. 9 is' a simplified class hierarchy diagram of the base class
CyberExtension 902,which represents additional behaviors provided to
15
components of the underlying software component architecture. Specifically,
CyberExtensions are the mechanisms for adding functionality to, and
extending the APIs of, existing components so that they may communicate
with the novel network components. '4s a result, the CyberExtension base
class 902 operates in connection with a Component base class 906 through
20
their respective subclasses BaseExtension 904 and BaseComponent 908.
The CyberExtension base class provides an API for accessing other
network-specific components, such as notebooks and logs, and for supporting
graphical user interface elements, such as menus. CyberExtension objects are
used by components that display the contents of Cyberltem objects. This
25
includes browser-like components such as a Gopher browser or Web
browser, as well as JPEG-specific components which display particular types
P1525/112007-08
of data such as pictures. The CyberExtension objects also keep track of the
CyberItem objects which these components are responsible for displaying.
In accordance with the invention, the class GopherBrowser 910 may be
used to construct a Gopher-like network browsing component and the class
5
WebBrowser 912 may be used to construct a Web-like network browsing
component. Likewise, a TextViewer subclass 918 may encapsulate a
network component configured to display text and a Picture Viewer subclass
920 may construct a component for displaying pictures. The methods
associAed with the CyberExtension class include (the arguments have been
10
omitted fbi simplicity):
0;
ICyberExtension
Components displaying the contents of CyberItem
object
n-----------------------------------------
---------
0;
GetCyberltem 0;
SetCyberltem
15
GetCyberltemWindow 0;
IsCyberltemSelected 0;
GetSelectedCyberItems 0"
---------- ---- - - - - - - - - - - - - - - - - - - -
20--
Notebook and Log Tools
--
-
-
-
-
-
-
-
-
-
-
--
-
-
-
-
AddCyberltemToLog
-
-
-
-
-
-
0;
ShowLogWindow 0;
25
30
--
IsLogWindowShown 0;
AddCyberItemToNotebook 0;
AddCyberltemsToNotebook 0;
ShowNotebookWindow 0;
IsNotebookWindowShown 0;
SetLogFinger 0;
-35-
-
-
-
-
-
-
-
-
-
-
P1525/112007-08
ClearLogFinger
0;
Notebook and Log Menu Handlers
InstallServicesMenu 0;
AdjustMenus 0;
DoCommand 0.
s
TIn summary, the novel network system described herein captures the
essence of a "component-based" approach to browsing and retrieving
10
network-oriented information as opposed to the monolithic application-based
approach of prior browsing systems. Advantages of such a component-based
system include the ability to easily replace and extend components because of
the cooperating relationship between the navel network-oriented component
system and the underlying component architecture. This relationship also
15
facilitates "seamless" integration and cooperation between components and
component viewing editors when confronted with differing data types and
formats.
WVhile there has been shown and'described an illustrative embodiment
for implementing an extensible and replaceable network component system, it
20
is to be understood that various other adaptations and modifications may be
made within the spirit and scope of the invention. For example, additional
system software routines may be used when implementing the invention in
various applications. These additional system routines include dynamic link
libraries (DLL), which are program files containing collections of window
25
environment and networking functions designed to perform specific classes of
-36-
P1525/112007-08
0
operations. These functions are invoked as needed by the software
component layer to perform the desired operations. Specifically, DLLs,
which are generally well-known, may be used to interact with the component
layer and window manager to provide network-specific components and
5
functions.
The foregoing description has been directed to specific embodiments of
this invention. It will be apparent, however, that other variations and
modifications may be made to the described embodiments, with the
attainment of some or all of their advantages. Therefore, it is the object of the
io
appended claims to cover all' such variations and modifications as come
within the true spirit and scope of the invention.
What is claimed is:
-37-
9y
P1525/112007-08
CLAIMS
An extensible and replaceable layered component computing arrangement
2
resi ig on a computer coupled to a computer network, the layered
3
arrange
nt comprising:
a so
e component architecture layer interfacing with an operating
system to contro
e operations of the computer, the software component
4
5
architecture layer de
6
ig a plurality of computing components; and
a network compo nt layer for developing network navigation
7
8
coipponents that provide se 'ces directed to the computer network, the
9
network component layer coup dto the software component architecture
10
layer in integrating relation to faci
I
I
te communication among the computing
and network navigation components.
1 2. The computing arrangement of Claim 1 wh ein the network navigation
2
components are objects and wherein the network omponent layer comprises
3
application programming interface,s delivered in the
4
hierarchy.
of objects in a class
3. The computing arrangZement f Claim 2 wherein the application
2
programming interfaces inclu e a CyberItem class for constructing a first
3network
4
navigation object epresenting a network resource available at any
location on the comput networks.
P1525/1 12007-08
4. The computing arrangement of Claim 3 fherein the application
berStream class for constructing
2
programming interfaces further include a
3
a second network navigation object repr senting a data stream for transfering
4
information among objects of the anT
1
ement.
5. The computing arrangement of laim 4 wherein the first network
object and the second network navigation
2
navigation object is a CyberIte
3
object is a CyberStream obje
4
CyberStream object to obt "information from the network resource that the
5
CyberItem object represe s.
1
6. The computing arr gement of Claim 4 wherein the application
2
programming interfa es fafther include a CyberExtension class for
3
constructing a thir network navigation objeci representing additional
4
behaviors provid dto -computing components otihe software component
5
I
13
3
and wherein the Cyberltem object spawns the
architecture lay r to thereby enable commumication between the computing
components
6
,
d the network navigation components.
ext 'le and replaceable layered component computing arrangement
for providing se
directed to information available on computer
~An
networks, the computing
4
a processor;
5
an operating system;
gement compnismg:
P1525/112007-08
6
a so
7
system to contro
8
architecture layer de
are component architecture layer coupled to the operating
e operations of the processor, the software component
a plurality of computing components; and
9
a network componen
10
components configured to search
11
computer networks, the network corn'qnent layer integrally coupled to the
12
software component architecture layer to
13
computing and network navigation component
yet for creating network navigation
d obtain information available on the
sure communication among the
IAt
PRINT OF DRAuJINGS
AS ORICINAL
ILH
6
118
f08/435377
I
I
wj1L116w.CD
U
A
F
It'
PRUNT OF DRPvl,(N GS
FLED
AS ORIGLNAI
2/8
0I4N
C
coN
N
D0
w
NN
(I-i
U
08/435377
PULNT OF I)PAWLNGS
FTLED
AS ORIGENA!
3/8
CC
~.
*
.
,
Sfl
o
IPU1NTOF DRA 11,LNGS
.kS ORIGLNA:
FILED
08/43537eii
P 02
PRINT OFDRAu TNGS
FILED
AS ORILNAM
08/43537 i
PUINT OF DR.A %A,
NGS
.AS ORIGNA
ELED
I..
-
'6/8
...........
08/43537-1'
.J.*1........-
PUINT OF D)RA%LLNGS
AIS ORIGIINAI
FILED
08/43537fl
FIG. 7
/800
FIW28
PR.iNT OF DRA'6UiGS
AS ORIGIN,#
FILED
08/435377
11/435377
P1525/112007-08
PATENT
s1ok.
J0
MAY,
s9JTUIJTED STATES PATENT AND TRADEMARX OFFICE
1
Re-Th'e Application of:Michael A. Cleron, et al..
Serial No. Not yet assigned)
)Examiner:
Not yet assigned
Filed: Herewith)
)Art Unit:
)
Not yet assigned
For: EXTENSIBLE, REPLACEABLE
NETWORK COMPONENT SYSTEM)
Cesari and McKenna
30 Rowes Wharf
Boston, MA 02110
(617) 261-6800
CERTIFICATE OF EXPRESS MAILING
"Express Mail" mailing label number TB 196655437
Date of Deposit: May 5, 1995
Thereby certify that the accompanying Patent Application (including 41
pages and 7 claims), Informal Drawings (8 sheets), New Application Transmittal
Letter and check in the amount of $730.00 is being deposited wit the United
States Postal Service "Express Mail Post Office to Addressee" service pursuant
to 37 C.F.R. §1.10 on the date indicated above in an envelope addressed to the
Commissioner of Patents and Trademarks, Washington, D.C. 2023 1.
Michelina Tizzano
06/435377
P1525/112007/08
PATENT
May 5, 1995
oner of Patents and Trademarks
NEW..APPLICATION TRANSMITTAL LETTER
Tg
.ntted.herewith filing is the Patent Application of Inventor(s):
for
'0 ?ac1N
Ceron,Stephen Fisher and Timo Bruck
For: EXTENSIBLE, REPLACEABLE NETWORK COMPONENT SYSTEM
Enclosed are the following papers required to obtain a filing date under 37 C.F.R.
§1.53(b):
8
41
7
Sheets of Informal Drawings
Pages of Spe cification, Including Claims and Abstract
Claims
The following papers, if indicated by an X, are also enclosed:
X
A Declaration and Power of Attorney
An Assignment of the invention
An Information-Disclosure Statement, Form PTO- 1449 and a copy of
each cited reference
A Small-Entity Declaration
A Certificate of Express Mailing, Express Mail Label1No. TB196655437
FEE CALCULATION
0 X $22.00
=
$000,00
3 = 0 X $76.00
=
$000.00
Total Claims:
7 - 20
Independent Claims:
2
Basic Fee:
-
=
$730.00
TOTAL:
$730.00
X A check in the amount of $730.00 is enclosed to cover the Filing Fee.
A check in the amount of $40.00 is enclosed to cover the Recording Fee
for the Assigntnent.
The Commissioner is hereby authorized to charge any fees under 37 C.F.R.
§§1. 16 and 1.17 that may be required by this paper or any paper filed in
connection with this Patent Application, or credit any overpayment, to our
Deposit Account No. 03-1237.
Please address all communications and telephone calls to the undersigned.
Respectfhlly submitted,
e gNo. 32,959
CESARI AND MCKENNA
02110
Boston MAM
(617) 261-6800
i w1qN
UNITED r-TATES DEPARTMENT OF COMMERCE
*Patent
&&
APPLICATION NUMBER
and Trademark Office
Address: COMMISSIONER OF PATENTS AND TRADEMARKS
Washington. D.C. 20231
AM,Y DOCKET NOJTTLE
FIRST NMED APPLICANT
FILING DATE
[YIA,
~~12
7121t.-
C.0(1:(
DATE MAILED:
NOTICE TO FILE MISSING PARTS OF APPLICATION
FILING DATE GRANTED
0/3
/9 S
An Application Number and Filing Date have been assigned to this application. However, the items indicated
below are missing. The required items and fees identified below must be time y u tted ALONG WITH
for large entities or
THE PO&YWNT OF A SURCHARGE for items 1 and 3-6 only of $ tz&~who have filed a verified statement claiming such status. The surcharge is set forth in
for small entities
$-1II2
37 CFR 1.16(e).
If all required items on this form are filed within the perloosbelow, the total amount owed by applicant as a 'arge
entity, 0 small entity (verified statement filed), is $-
1. EC The statutory basic filing fee is: El missing 0 insufficient. Applicant as a C large entity C small
to complete the basic filing fee.
_
entity, must subit $
aE large entity, 0 Small entity, including any
2. El Additional claim fees of $a
required multiple dependent claim fee, are required. Applicant must submit the additional claim
due.
claims for which fees are
3,ees or cancel the additional
Th oath or declaration:
8missing.
-Z does not cover items omitted at time of execution.
An oath or declaration in compliance with 37 CFR 1.63, iderItfying the application by the above
Application Number and Filing Date is required.
4. 0 The oath or declaration does not identify the application to which.1t.applies. An oath or declaration
in compliance with 37 CFR 1.63, identifying the application by the above Application Number and
Filing Date, is required.
5.0C The signature(s) to the oath or declaration is/are: C missing; C by a person other than the inventor
or a person qualified under 87 CFR 1.42, 1.43, or 1.47. A properly Signed oath or declaration in
compliance with 37 CFR 1.83, identifying the application by the above Application Number and
Filing Date, is required.
6.0C The signature of the following joint inventor(s) is missing from the oath or declaration:
____________________An
oath or declaration listing the names of all inventors and signed by
the omitted inventor(s), identifying this application by the above Application Number and Filing
Date, is required.
7.0C The application was filed in a language other than English. Applicant must file a verified English
under 37 CFR 1.17(k), unless this fee has
_
translation of the application and a fee of $
already been paid.
8.0C A $
(37 CFR 1.21(m)).
processing fee is required since your check was returned without payment.
9. j Your filing receipt was mailed in error because your check was returned without payment.
10.0C The application does not comply with the Sequence Rules. See attached Notice to Comply with
Sequence Rules 37 CFR 1.821-1.825.
li.0 Ot r.
Direct t e response and any questions about this notice to, Attention: Application Processing Division,
Special Processing and Correspondence Branch (703) 308-1202.
A Pon, nf thiiP-7v
--- UST be returned with the response.
(&)w
UNITED STATES DEPAR4TMENT OF COMMERCE
Patent and Trademark Office
avgT.o/
APPLICATION NO
,FILING
4.,,
DATE
k,'UU
t4-~
.J
LLIfUI
Address:
COMMISSIONER OF PATENTS AND TRADEMARKS
Washington, D.C. 20231
FIRST NAMED INVENTOR
ArTORINE
LM21/ 0305
CESARI (AND MCKENNA
30 RkOW'ES WHARF
BO1:STON MAlf02110
DOCKETNO
Uu
2'2/2
EXAMINER
ART UNIT
DATE MAILED:
PAPER NUIMBER3
03/05/98
Please find below and/or attached an Office communication concerning this application or
proceedIng. \,
Commissioner of Patents and Trademarks
PT0.90C (Rev 2195)
*UAGOVERNMENT
PRINING OFFICE
IM6411-51/C7M
1- File Copy
Applicant(s)
Application No.
08/435,377
Examiner
Office Action Summary
Cleran at al
Group Art Unit
1
Patricia Caldwell
2755
1I illil
m
11
K Responsive to communication(s) filed on Dec 15, 1997
N This action is FINAL.
D Since this application is in condition for allowance except for formal matters, prosecution as to the merits Isclosed
in accordance with the practice under Ex parte Quayle, 1935 C.D. 11; 453 O.G. 213.
month(s), or thirty days, whichever
3
A shortened statutory period for response to this action is set to expire
the mailing date of this communication. Failure to respond within the period for response will cause the
is longer, from
application to become abandoned. (35 U.S.C. § 133). Extensions of time may be obtained under the provisions of
37 CFR 1.136(a).
Disposition of Claims
X
Claim(s)
1-20
pending In the application.
____________________is/are
is/are withdrawn from consideration.
Of the above, claim(s)
EB Claimn(s)
________________is/are
allowed.
X Claimn(s) 1-20
_______________is/are
rejected.
_______________is/are
objected to.
B Claim(s)
EH Claims
are subject to restriction or election requirement.
Application Papers
il See the attached Notice df Draftsperson's Patent Drawing Review, PTO-948.
LD The drawing(s) filed on
is/are objected to by the Examiner.
_________
[I The proposed drawing correction,,filed on
Dipproved
__________is
LDisapproved.
[I The specification is objected to by the-Examiner.
l The oath or declaration is objected to by the Examiner.
Priority under 35 U.S.C. § 119
LB Acknowledgement is made of a claim for foreign prior.ity under 35 Ut§.C. §11 9(a)-(d).
D All E]Some* EJNone of the CERTIFIED copies,of the priority documents have been
0 received.$
El received in Application No. (Series Code/Serial Number)
__________
H received in this national stage application from the International Bureau (PCT Rule 17.2(a)).
*Certified copies not received:
_____________________________________
El Acknowledgement is made of a claim for domestic priority under 35 U.S.C. I11 9(e).
Attachment(s)
X Notice of References Cited, PTO-892
F- Information Disclosure Statement(s), PTO-1449, Paper No(s).
0 Interview Summary, PTO-413
F- Notice of Draftsperson's Patent Drawing Review, PTO-948
El Notice of Informal Patent Application, PTO-1 52
____
--EE OFFICE ACTION ON THE FOLLOWING PAGES..
S
U. S. Pat.nmard Tramark Offica
Office Action Summary
Part of Paper No.
13
Page 2
Serial Number: 08/435377
Art Unit: 2755
DETAILED ACTION
1.
This action is in response to amendment received 12-15-97. Claims 1-20 are
pending in application 08/435377.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. §103 which forms the basis for all
obviousness rejections set forth in this Office action:
A patent may not be obtained though the invention is not identically disclosed
or described as set forth in section 102 of this title, if the differences between
the subject matter sought to be patented and1,he prior art are such that the
subject matter as a whole would hA6 been obvious at the time the invention
was made to a person having ordinary skill in the art to which said subject
matter pertains. Patentability shall not be negatived by the manner in which
the invention was made.
Subject matter developed by another person, which qualifies as prior art only
under subsection (f) dr (g) of section 102 of this title, shall not preclude
patentability under this section where the subject matter and the claimed
Serial Number: 08/435377
Page 3
Art Unit: 2755
invention were, at the time the invention was made, owned by the same person
or subject to an obligation of assignment to the same person.
This application currently names joint inventors. In considering patentability
of the claims under 35 U.S.C. §103, the examiner presumes that the subject matter of
the various claims was commonly owned at the time any inventions covered therein
were maJe, absent any evidence to the contrary. Applicant is advised of the
obligation under 37 C.F.R. § 1.56 to point out the inventor and invention dates of
each claim that was not commonly owned at the time a later invention was made in
order for the examiner to consider the applicability of potential 35 U.S.C. § 102(f) or
(g) prior art under 35 U.S.C. § 103.
Claims 1-5, 7-15, 17-20 are rejected uhtder 35 U.S..
§103 as being
unpatentable over Duggan et al (US 5 584 035) in view of Norr, Henry,
"Cyberdog could be a breakthrough if it's kept on a lease", MacWeck Vol. 8,
Number 45, p. 50, 14 November 1994.
Serial Number: 08/435377
Page 4
Art Unit: 2755
As per independent claim 1, Duggan et al disclose the invention as claimed
Duggan et al disclose an extensible and replaceable layered component
computing arrangement for providing services directed to information available on
computer networks (distributed object based system), operating system (12) [column
4, line 43 through column 5, line 2].
Duggan et al disclose a software component architecture layer (object software
24 in which.objects are contained and the the contained information can be
comprised of various formats, including text and images) coupled to an operating
system and defining a plurality of computing components ( container objects)
[column 5, line 25 through column 6, line 4].
However, Duggan et al do not explicitly teach a network component layer for creating
network navigation components configured to sear&'Uand obtain information
available on computer networks.
Norr discloses network navigation components configured to search and obtain
information on the computer networks (suite of OpenDoc components with
networking and communications capabilities including Internet browsing tools) [first
page of enclosed copy of article].
Serial Number: 08/435377
Page 5
Art Unit: 2755
It would have been obvious to one skilled in the art at the time the invention was
made to modify the system of Duggan et al to include the retrieval functions as
taught by Norr to enable users to locate information locally and remotely and to
embed this information directly into documents.
As per claim 2, Duggan et al do not explicitly disclose an computing
arrangement wherein the network navigation components are objects and the
network component layer comprises application programming interfaces delivered in
the form of objects in a class hierarchy.
Norr discloses an environment wherein the network navigation components are
objects and the network component layer comprises application programming
interfaces in a class hierarchy (suite of OpenDoc components with networking and
commiunications capabilities) [middle of first page of enclosed copy of article].
It would have been obvious'to one of ordinary skill at the time the invention was
made to modify the system as taught by Duggan et al by implementing the
Serial Number: 08/435377
Page 6
Art Unit: 2755
application programming interfaces that are delivered in the form of objects in a class
hierarchy because it would provide the system of Duggan et al with an improved
capability of an interface for network communications.
As per claim 3, Duggan et al as modified by Norr teach an application programming
interface which includes a first class [Norr: suite of OpenDoc components having
network ahd communications capabilities; first page of enclosed copy of article].
As per claim 4, Duggan et al as modified by Norr teach an application programming
interface which includes a second class [Norr :connection capabilities as software
components; first page of enclosed, article, last paragraph].
As per claim 5, Duggan et al as modified by Norr teach,Q means for spawning the
stream object (linking) [Duggan: column 8, line 50 through column 10, line 12].
As per claim 7:
Duggani et al disclose an extensible and replaceable layered component computing
arrangement for providing services directed to information available on computer
Serial Number: 08/435377
Page 7
Art Unit: 2755
networks (distributed object based system), operating system (12) [column 4, line 43
through column 5, line 2]..
Duggan et al teach a processor [col. 12, lines 20-21].
Duggan et al disclose a software component architecture layer (object software 24
which includes objects which are contained and the contained information is
comprised of various data formats, such as text and images) coupled to an operating
system and defining a plurality of computing components (container objects) [column
5, line 25 through column 6, line 4].
However, Duggan et al do not explicitly teach a network component layer for creating
network navigation components configured to search and obtain information
available on computer networks.
Norr discloses network navigation components configured to search and obtain
information on the computer networks (suite of OpenDoc components with
networking and communications capabilities including Internet browsing tools) [first
page of enclosed copy of article].
Serial Number: 08/435377
Page 8
Art Unit: 2755
It would have been obvious to one skilled in the art at the time the invention was
made to modify the system of Duggan et al to include the retrieval functions as
taught by Norr to enable users to locate information locally and remotely and to
embhed this information directly into documents.
As per claift 8:
Duggan et al ini combination with Norr teach a means for embedding components
hiavipg mixed data types and formats (embedding extracts from anywhere on a global
network ) [Norr :first page o f enclosed copy, fourth paragraph of text
J
As per claim 9:
Duggan et al in combination with Norr teach-application.Orogramming interfaces
(windows interface software 14, windows software 22) [Duggan : column 4, lines 6263; column 5, lines 21-24]
As per claim 10:
Duggan et al in combination "With Norr teach means for constructing a network
navigation component representing a resource available on the computer network
Serial Number: 08/435377
Page 9
Art Unit: 2755
(objects, icons) [Duggan :column 5, lines 2 5-65; column 7, lines 3-7; column 11,
lines 19-40].
As per claim 11:
Duggan et at in combination with Norr teach network navigation component that
implements a protocol (http implemented by clicking on Web link) [Norr: first page
of enclosed copy of article, sixth paragraph of full ten].
As per claim 12:'
Duggan et al in combination with Norr teach network navigation components
providing additional functionalities (extension of Internet-based data presentation)
[Norr : first page of enclosed copy, fifth paragraph of text]
As per claim 13:
Duggan et al in combination with Norr teach a computing part having a viewing
editor and data content (windows) [Duggan: column 6, line 23 through column 7,
line 2].
Serial Number: 08/435377
Page 10
Art Unit: 2755
As per claim 14:
Duggan et al in combination with Norr teach transferring files over networks
(locating information from a network and extracting information directly into
presentations) [Norr
first page of enclosed copy of article, fourth paragraph of text
As per claim 15:
Duggan et al ilItcombination with Norr teach a browsing component (browser) [Norr
first page of enclosed copy of article, fifth paragraph of full text].
As per claim 17:
Duggan et al disclose control-ling operations of a computer system with a operating
system coupled to a software component architecture layer (object software 24)
[column 5, line 25 through column column 6, line 4].
However, Duggan et al do not explicitly teach a network component layer for creating
network navigation components configured and providing a network service.
Serial Number: 08/435377
Page I I
Art Unit: 2755
Norr discloses network component layer for creating a plurality of components and
invoking a component to provide network service (suite of OpenDoc components
with networking and communications capabilities including Internet browsing tools)
[first page of enclosed copy of article].
It would have been obvious to one skilled in the art at the time the invention was
made to,rmodify the system of Duggan et al to include the retrieval functions as
taught'by Nprr to enable users to access information from various locations across a
network.
As per claim 118:
Duggan et al in combination wihNorr tecxending navigation components
(linking from one resource to another) [Norr first,page of enclosed copy of article,
fourth through sixth paragraphs of full te;it)
As per claim 19:
Duggan et al in combination with Norr teach browsing IINorr : first page of enclosed
copy of article, fifth paragraph of full text].
Serial Number: 08/435377
Page 12
Art Unit: 2755
As per claim 20:
Duggan et al in combination with Norr teach a platform for developing components
for operation on a variety of hardware and software computer systems (suite of
OpenDoc components with networking capabilities, including a set of Internet
browsing tools) [Norr :first page of enclosed copy of article, third paragraph of full
text].,,
Claims 6 and 16 are rejected under 35 U.S.C. §103 as being unpatentable
over Duggan (US 5 584 035) in view of Norr, Henry, "Cyberdog could be a
breakthrough if it's kept on a lease', MacWeek , Vol. 8, Number 45, p. 50, 14
November 1994 as applied to claims 4 and 13 above, and further in view of
Harkey et al, "Object component suites: the whole4,s. greater than the parts',
Datamation, 15 February 1995, Vol. 41, Number 3, page 44.
Harkey et al teach a third class wvhich can construct an network navigation object
representing additional behaviors (customizing behaviors) provided to computer
components [Section Components and Frameworks, second and third pages of enclosed
Serial Number: 08/435377
Page 13
Art Unit: 2755
copy of article and Section Client/Sewper Component Suites, fourth page of enclosed copy
of article, second paragraph].
It would have been obvious to one of ordinary skill at the time the invention was
made to modify the system as taught by Duggan et al and Norr with extension
capabilities to provide the capabilities of user customnization of applications.
As per claim 16.
Duggan et al in combination with Norr teach displaying text [Duggan: Figures 28
and 29]. However, Duggan.et al in combination with Norr do not teach displaying
movies.
Harkey et al explicitly teach components. which canlandle movies [page 3 of
enclosed article, section Parts:- Components"Opendoc St4i,je, second paragraph]. It
would have been obvious to one of ordinary silil at the time that the invention was
made to modify Duggan et al and Norr to extend the functionality of the system to
include data formatted for movie viewing.
Serial Number: 08/435377
Page 14
Art Unit: 2755
Response to Arguments
2.
Applicant's arguments filed 12- 15-97 have been fully considered but they are
not persuasive.
Applicants argue that Duggan does not disclose a "software component architecture".
In response, a software component architecture, as defined by Applicants'
specificaion (page 8, lines 8-15) "... provides a modular document-based computing
arrangement-.using such tools as viewing editors". Duggan et al teach a container
application which serves as a framework for presenting the users with a number of
individual components which may consist of different data types and can be viewed
and which can be linked together within a document [col. 5, lines 44-65]
.As
such,
Duggan et al broadly meets the claimed limitation.
Applicant argues that the Norr reference is not considerei to be prior art.
In response, as addressed in the previous action (paper item 10, mailed 7/25/97), if
Applicant intends to swear behind the Norr reference, Applicant must provide an
affidavit for consideration (see M.P.E.P. 715.01, 715.01(c), 715.07, 716.10).
Page 15
Serial Number: 08/435377
Art Unit: 2755
Applicants argue that Norr "fails to reveal any suggestion of a network component
layer as claimed". Applicants further argue that while "Norr merely makes a
statement that product
...
include a suite of OpenDoc components with networking
and communications capabilities, it never states how these capabilities will be
provided."
In response, Duggan et al in combination with Nbrr suggests that such a combination
can be miaderas a extension of the Internet-based data presentation and linking
scheme and can*be provided as software components [page 1 of enclosed copy of
article, fifth and seventh paragraphs of page].
Conclusion
3.
THIS ACTION IS MADE FINAL. Applicant ie$teminded of the extension of
time policy as set forth iii 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire
THREE MONTHS from the mailing date of this action. In the event a first reply is
filed within TWO MONTHS of the mailing date of this final action and the advisory
action is not mailed until after the end of the THREE-MONTH shortened statutory
Serial Number: 08/435377
Page 16
Art Unit: 2755
period, then the shortened statutory period wil expire on the date the advisory action
is mailed, and any extension fee pursuant to 37 CFR 1.136(a) will be calculated from
the mailing date of the advisory action. In no event will the statutory period for reply
expire later than SIX MONTHS from the date of this final action.
Ayinquiry concerning this communication or earlier communications from
the examinei- should be directed to Patricia Caldwell whose telephone number is
N
(703) 305-3805.'-
Any response to this final action should be mailed to:
Box AF
Commissioner of Patents and Trademarl6-:'
Washington, D.C. 20231
or faxed to:
(703) 305-9051, (for formal communications; please mark "EXPEDITED
PROCEDURE")
Page 17
Serial Number: 08/435377Pae1
Art Unit: 2755
Or:
(703) 305-9051/52 (for informal or draft communications, please label
"PROPOSED" or "DR-AFT")
Hand-delivered responses should be brought to Crystal Park 11, 2021 Crystal
Drive, Arlington. VA., Sixth Floor (Receptionist).
z
....
20
'O
YA
B 'E
A
Y
/
N
Applicant(s)
Application No.
Claron et al
Notice of References Cited
Exam ineor
I
ZDOCUMENT
Group Art Unit
2755
Patricia Caldwell
Page Ilof 1
U.S. PATENT DOCUMENTS
NO.
CLASS
SUBCL.ASS
CLASS
NAME
OATE
SUBCLASS
F
G
K
LN
M
FOREIGN PATENT DOCUMENTS
DOCUMENT NO.
COUNTRY
DATE
NAME
N
0
P
A
S
TI
77
NON-PATENT DO9.UMENTS
DOCUMENT finduding Author Tie, Sm"rc, ard Pertinent P8gs)I
DATE
u Potel et al; The Architecture of the Taligent System; Dr. Dobbs Journal on CD-ROMSP9
Rush, Jeff; OpenDoc; Dr. Dobb's Journal on CD-ROM
v
94
,SP
P-iersol, Kurt; A Close-Up of OpenDoc; AlXpert
w
6/94
x
U.S, Patent
and Trademark Ofk.c
PTO-892 (Rev. 9-95)
Notice of References Cited
Pr of Paper No.
Part fPprN.
13
1
0
112007-0008
4'dTRA
IN THE UNITED STATES PATENT AND TRADEMARK OFFICE
In Re The Application of:)
Michael A. Cleron et al.)
Serial No.: 08/435,377
)
Examiner: Caldwell, P.
Filed: May 5, 1995)
For: EXTENSIBLE REPLACEABLE
NETWORK COMPONENT SYS-
)
)
) Art Unit: 2755
TEM)
Cesari and McKenna, LLP
30 Rowes Wharf
Boston, MA 02110
March 26, 1999
CERTIFICATE OF EXPRESS MAILING
"Express Mail" Mailing-Label Number:
EL024702326US
I hereby certify, that the following Communication, Continued Prosecution Application (CPA) Request Transmittal, check in the amount of.$760.00 and Declaration Under 37 C.F.R. § 1.31 are being deposited with the United States Postal Service "Express
Mail Post Office to Addressee" service pursuant to 37 C.F.R. §1.10 in an envelope addressed to the Assistant Commissioner for Patents, ox CPA, Washington, D.C. 20231,
on March 26, 1999.
'e
Honorable Assistimt Commissioner for Patents
Washington, D.C. 20231
Sir:
.r
PATENTS
1%
ert 0 oyer:J
~
'
PATENTS
1 12007-0008
COMMUNICATION
These remarks are being submitted together with a Continued Prosecution Application (CPA) in the above-referenced matter. The parent application was finally rejected
in an Office Action mailed November 2, 1998.
In the Final Office Action claims 1-5, 7-15 and 17-20 were rejected under 35
U.S.C. §103 in view of U.S. Patent No. 5,584,035 to Duggan et al. (hereinafter
"Duggan") in view of H. Norr, Cyberdog Could Be A BreakthroughIf It's Kept On A
Leash M4acWeek, Vol. 8, No. 45, p. 50 (Nov. 14, 1994) (hereinafter "Nonr"). Claims 6
and 16 wer6'rejected under §103 based on Duggan, Norr and Harkey et al. Object Comnponent Suites: Tke. Whole Is Greater Than The PartsDatamation, Vol 41, No. 3, p."4
(Feb. 15, 1995).
Applicants also submit the Declaration of Sari Harrison under 37 C.F.R. §1.13 1.
Ms. Harrison is an Engineering Mariager, Applied Security at Apple Computer, Inc., who
is the assignee of the present application, afi'd is familiar -withthe claims currently pending in this application. In her Declaration, Ms. Harrison stat@1that she worked on the
project that gave rise to the present application. Declaration Under 37 C.F.R. §1.13 1,
dated March 11, 1999 at 5 (herein after "Harrison Dec."). More specifically, Ms. Harrison joined the project in November 1994. Prior to November 1994, Ms. Harrison personally witnessed a demonstration by one of the co-inventors of the present invention.
Harrison Dec. at T3. The demfonstration included the running of computer code implementing each component of the invention. Harrison Dec. 4. Accordingly, Ms. Harrison
PATENTS
11 2007-0008
avers that, based on her personal knowledge, the present invention was demonstrated to
work for its intended purpose prior to November 1994. Harrison Dec. at 6.
Based on the facts presented in Ms. Harrison's Declaration, applicants submit that
the present invention was reduced to'practice in this country prior to November 1994,
which is the effective date of the Norr reference. Therefore, pursuant to 37 C.F.R.
§1. 1, the Norr reference is no longer a bar to the grant of a patent on this application.
13
Since all of the rejections are based, at least in part, on Norr, the removal of Norr as a reference renders the claims in condition for allowance.
Applicants submit that the application is in condition for allowance and early favorable action is requested.
Please chprge any additional fee occasioned by this paper to our Deposit Account
No. 03-1237.
Respectfully submitted,
Michael R. Reinemnarn
Reg. Not,38,280
CESARI AND MCKEVNA, LLP
30 Rowes Wharf
Boston, MA 02110-2699
(617) 951-2500
flU -5 7
Ileo~e type a plus sign (+) Inside this bo6x mD
4991
ONTINUED PROSECUTION APPLICATION (CPA)
REQUEST TRANSMITTAL
CHECK BOX ff. pplicabla
Fl1 DUPLICATE
submit an original, and a duplicate for fee processing.
(Only for Confinualron orojDwacnal appficatimn under 37 C F.R. § .53(d))
dre-gfAttorn
Ad
ey
Docket No.
First Named Inventor
Assistant Commissioner for Patents Examiner Name
Box CPAGru/rUnt25
Washington, DC 20231GruAtUnt25
112007-0008
Michael A.
Cleron at al .:Z
c'C
Caldwell, P.
Express Mail Label No.
EL024702326US
I-
This is a request for a N continuation or Lii divisional application under 37 C.FR. §1.53(d),(ctiu
prosecution application (CPA)) of prior application number 08/435, 377, filed on September 3, 1998,
entitled EXTENSIBLE REPLACEABLE NETWORK COMPONENT SYSTEM
__
enty-y
d
pa t eypovselo ofp
ar
tThet
EPRES$~~
ABNONEI OF&PRI APCiao I
noprviiIa apiation
5. ~
Inomto
l
C
Diclsresatmn
~
760.00 OP
reoa
filin of this
e
thebeit
pRIrunnpris
nlAnwpwr or thriatoofaet(TSB8)ienlsd
-o iatoney
DS is enclosed:enalic2
bnfopisofa aDSpitations
senloed
00000004ar am843537
033/1.NEA
01 FC:131
a()
applicationdta
?P;sareu
badntri
11
netrs n
a.~~~~~~h olwn alDLT
4..tit
ri.§1
isonsapiain
4
ayhv
ao
P16--se type a plus sign (+) Inside this uc,x W
6. Small entity status:
a.
A small entity statement isenclosed, if (b)and (c)do not apply.
b. EA small entity statement was filed in the prior nonprovisional application
and such status is still proper and desired.
c. flis no longer claimed.
7. The Commissioner is hereby authorized to credit overpayments or charge the following fees to
Deposit Account No. 03 - 1237.
a. Z Fees Required under 37 C.F.R. § 1.16.
b. Z Fees-Required under 37 C.F.R. § 1.17.
c. F- Fees Required under 37 C.F.R. § 1.18.
8. A check in the am ount of $760. 00 isenclosed.
9.f Other:
18. NEW CORRESPONDENCE ADDRESS
or
Customer Number or Bar Code
LabelOsr.uso
o
Name
BostonIStt
1ee
Cesari and McKenna, LLP
30 Rowes Wharf
City
I
Michael R. Reinemann
Address
oa
Correspondence address below
MAZpCd
10
LSignature
/'11.
SIGNATURE OF APPLICANT, ATTORNEY OR AGENT REQUIRED
Name (Print/Type)
Registration No. Attorney/Agent)
_Date
Michael R. Reinemann
,l
6.
2
2
38, 280
March 26,
1999
4
2
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?