29
1 Software Patents Software Patents Christine Q. McLeod Registered Patent Attorney Beusse Brownlee Bowdoin & Wolter, P.A. Orlando March 2003 March 2003 March 2003 (c) 2003 Christine Q. McLeod (c) 2003 Christine Q. McLeod (c) 2003 Christine Q. McLeod 2 Topics Overview Topics Overview l Why would you want a Software Patent? l Computers and Software Defined l Legal Protection for Software l Brief History of Software Patents l Searching Software Technology l Drafting Software Patents l International Software Protection l Examples of Software Patents March 2003 March 2003 March 2003 (c) 2003 Christine Q. McLeod (c) 2003 Christine Q. McLeod (c) 2003 Christine Q. McLeod 3 Stac Stac Electronics v. Microsoft Electronics v. Microsoft

Software Patents - University of Florida

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

1

Software PatentsSoftware Patents

Christine Q. McLeodRegistered Patent Attorney

Beusse Brownlee Bowdoin & Wolter, P.A.Orlando

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 2

Topics OverviewTopics Overview

l Why would you want a Software Patent?l Computers and Software Definedl Legal Protection for Softwarel Brief History of Software Patentsl Searching Software Technologyl Drafting Software Patentsl International Software Protectionl Examples of Software Patents

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 3

Stac Stac Electronics v. MicrosoftElectronics v. Microsoft

2

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 4

Who was STAC?Who was STAC?

l Stac was the leading supplier of high performance data compression products for personal computers.

l Stac’s data compression utility program known as STACKER attaches to DOS operating systems and compresses/decompresses data on the hard disk.

l STAC protected its software under U.S. Patent No. 5,016,009 (1991) and 4,701,745 (1987).

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 5

Who is Microsoft?Who is Microsoft?

l Well… Microsoft is the world's largest software company.

l At the time, Microsoft produced and marketed the MS-DOS OS for IBM and IBM-compatible personal computers.

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 6

The Licensing Discussions…The Licensing Discussions…

l Bill Gates wanted Stac's data compression technology and met with Stac's President at the Fall Comdex-91 ceremony in Las Vegas.

l Soon “licensing” discussions began but Microsoft steadfastly refused to pay Stac any royalty forStac's patented data compression technology.

l Instead, Microsoft stated that if Stac didn’t agree, Microsoft would just incorporate another vendor’s software and put Stac out of business.

3

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 7

The Infringement The Infringement ––or the slap in the face?or the slap in the face?l In 1992 Stac broke off discussions.l In late1992 Microsoft released “DoubleSpace”

compression in its DOS programs.l Microsoft even admitted its DoubleSpace

infringed Stac’s patent!l Trying to set an industry standard, Microsoft even

offered to license - for free - the infringing DoubleSpace technology to independent hardware and software vendors!

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 8

The Lawsuit…The Lawsuit…

January 25, 1993

UNITED STATES DISTRICT COURTCENTRAL DISTRICT OF CALIFORNIA

STAC ELECTRONICS, a California corporation, Plaintiff, v.

MICROSOFT CORPORATION, a Delaware corporation, Defendant.

COMPLAINT FOR PATENT INFRINGEMENTDEMAND FOR JURY TRIAL

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 9

The Verdict…The Verdict…

l Microsoft Corp. was found guilty of patent infringement and ordered to pay $120 million in damages

l Jurors said they calculated the damages based on about $5.50 per unit of MS-DOS.

l Ultimately, the two companies signed a cross licensing agreement.

4

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 10

The Evolution of ComputersThe Evolution of Computers

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 11

1945 1945 –– ENIAC ENIAC Electronic Numerical Integrator and ComputerElectronic Numerical Integrator and Computer

Hard wired programmable computerHard wired programmable computer

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 12

1951 1951 –– UNIVAC /von NeumannUNIVAC /von NeumannProgrammable computers with Programmable computers with

instruction sequencersinstruction sequencers

5

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 13

1970s 1970s –– Microprocessors Microprocessors and and Microcontrollers Microcontrollers

l The first microprocessor was developed by what was then a small company called Intel (short for Integrated Electronics) in the early 1970s.

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 14

1975 1975 –– MITS MITS Altair Altair 88008800

One of the earliest commercially available personal computers.

In 1975, Paul Allen and Bill Gates(then a student at Harvard), decided to write a programming language to run on the Altair.

They wrote a scaled down version of BASIC, and thus began Microsoft (the company).

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 15

1980s 1980s –– Apple’s ComputersApple’s Computers

The LISA had a graphical user interface (GUI) which included a mouse.

Priced at $10,000, the LISA was soon replaced by the affordable Macintosh.

With the advent of the Apple Macintosh in 1984, personal computing changed forever.

6

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 16

Today’s Desktop ComputersToday’s Desktop Computers

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 17

Evolution of Computer SoftwareEvolution of Computer Software

Hard Wired Machines

ENIAC was hard wired and could not use software

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 18

Evolution of Computer SoftwareEvolution of Computer Software

Machine Language(01100011)

UNIVAC/von Neumann Machines were programmable with sequenced instructions

for stored binary values (0s and 1s)

7

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 19

Evolution of Computer SoftwareEvolution of Computer Software

Assembly Language(ADD = 01100011)

Used mnemonics rather than binary code with an assembler to convert language to binary

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 20

Evolution of Computer SoftwareEvolution of Computer Software

High-Level Language(If x>y, then x+1)

Human readable notations with subroutines and modules

(FORTRAN, BASIC, COBOL, PASCAL, C)

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 21

Evolution of Computer SoftwareEvolution of Computer Software

Object-Oriented Languageclass Student{int myAge = 5;int temp;temp = myAge +2:myAge = temp;}

Data and procedures that act upon the dataare treated as a single object

(SIMULA, C++, VISUAL BASIC, JAVA)

8

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 22

Source Code v. Object CodeSource Code v. Object Code

l Source Code – High-level language or object oriented language readable by humans (If x then y, else z)

l Object Code – Machine language readable by the computer as a series of 1s and 0s produced when source code is compiled (11000101110101...)

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 23

Source Code/ C++Source Code/ C++

public boolean action(Event evt, Object arg) { // . . . if (arg. equals ("Search")) { System.out.println("Search event is detected"); PeString firstName = new PeString (entry_1.getText ( )( ); PeMessage msg = new PeMessage ("Search"); msg.addDataElement (firstName); PeDebug.println("====>msg is: "+msg); //send this event to the UI adaptor pc.sendMessage (msg); } return true; }

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 24

Protection of SoftwareProtection of Software

There are more ways to legally protect computer software than virtually any other product: – Copyrights– Trade Secrets– Patents– Trademarks

9

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 25

Overlap of ProtectionOverlap of Protection

Each of these bodies of law may be used to protect different aspects of

computer software, although there is a great deal of overlap.

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 26

Copyright Law Copyright Law ©©l Original work of authorship fixed in a

tangible medium of expressionl Protects the “expression of the idea”

not the idea itselfl Exclusive control to reproduce

copies, prepare new works, distribute copies, perform the work in public

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 27

Copyright InfringementCopyright Infringement

l Proof of infringement consists of establishing copying (access and substantial similarity)

l Remedies include injunctions, destruction of infringing copies, actual damages and infringer’s profits or, if registered, statutory damages up to $100,000 for willful infringement and attorney fees

10

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 28

Copyright Registration of Copyright Registration of SoftwareSoftwarel Source code, object code, and screen

displays are literary works eligible for copyright protection

l Multimedia works are audiovisual works eligible for copyright protection

l Deposit materials with copyright office may include a request for special relief for trade secrets (1st and last 25 pages of source code with trade secret portions of code blocked out)

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 29

Limitations of CopyrightLimitations of Copyright

l Protects “expression” not “idea”l Does not protect procedures, systems, or

methods of operation

l Infringement requires substantial similarity of protectable expression, not just an overall similarity of the works

l Filtration Test: 3 steps – abstraction of program, filtration of non-protectable elements, comparison of remaining “golden nugget”

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 30

Other Limitations of CopyrightOther Limitations of Copyright

l Merger Doctrine: if idea can be expressed only in one way, the expression is not protected (e.g., using efficient sorting algorithms)

l Elements dictated by external programming considerations not protectable expression (standards, industry practices)

11

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 31

Trade SecretsTrade Secrets

A trade secret is any formula, pattern, physical device, idea, process, compilation of information or virtually any other information that:1. is not generally known or readily ascertainable by a competitor, 2. offers an economic advantage, and 3. for which reasonable steps to maintain secrecy are taken.

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 32

Trade Secrets in SoftwareTrade Secrets in Software

l Computer code (object and source)l Design specificationsl Flowchartsl Technical notesl Software development toolsl System documentationl Formulas, algorithmsl Data structures and compilationsl Customer lists

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 33

Limitations of Trade SecretsLimitations of Trade Secrets

l Does not protect against reverse engineering

l Does not apply to independent creation

l Public disclosure ends the protection

12

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 34

Trademarks ®Trademarks ®

A trademark is a distinctive word, phrase, logo, or other device that is used to identify the source of a product and to distinguish the product from others.

e.g., Microsoft, IBM, AOL, PowerPoint, Norton Utilities, Myst

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 35

A A BriefBrief History of Software PatentsHistory of Software Patents

From 1972 to Present….

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 36

The View in the 70’sThe View in the 70’s

l 1972 - Gottschalk v. Bensonl 1978 – Parker v. Flookl 1978 – In re Freeman

Software technologies not patentable since patent would preempt

mathematical algorithm

13

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 37

The View in the 80’sThe View in the 80’s

l 1980 – In re Walterl 1981 – Diamond v. Diehrl 1982 – In re Abelel 1989 – In re Iwahashi

Software is patentable as a process, if it does not preempt

mathematical algorithm

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 38

The View in the Early 90’sThe View in the Early 90’s

l 1994 - In re Alappat, In re Schrader, In re Lowry, In re Trovato, In re Warmerdam, In re Beauregard

l 1996 – PTO’s Examination Guidelines for Computer Related Inventions

90’s test for patentability of software:1. Specific machine for performing a process2. Series of steps which performs independent physical

acts (postcomputer process activity)3. Manipulates data to achieve a practical application

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 39

The View in the Late 90’sThe View in the Late 90’s

l 1998 – State Street Bank v. Signature Financial Group (apparatus claims)

l 1999 – AT&T v. Excel (method claims)

Software is patentable provided it it produces a “useful, concrete,

tangible result”

14

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 40

Patentability of Software TodayPatentability of Software Today

l Produces a useful, concrete, and tangible result, is applied in a useful way, or is reduced to a practical application

l Physical transformation not requiredl No exception to patentability for

business methods

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 41

Software Patent StatisticsSoftware Patent Statistics

0

5000

10000

15000

20000

25000

1990 1992 1994 1996 1998

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 42

Who are getting software patents?*Who are getting software patents?*

l United States 60% l Japan 25% l Europe 9% l Asia 3% l Others 3%

*as of 1999

15

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 43

Software Patents by Companies in Software Patents by Companies in 19981998l 1200 IBM l 360 Motorola

l 330 Fujitsu l 330 Canon

l 310 Microsoft l 300 Lucent / BellCore

l 280 NEC l 260 Sun

l 260 HP l 250 Sony

l 250 Hitachi l 240 Xerox/Fuji Xerox

l 240 Mitsubishi l 230 Intel

l 220 Toshiba l 190 Apple Computer

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 44

Searching Software TechnologySearching Software Technology

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 45

Search Resources and DatabasesSearch Resources and Databases

l Variation of a known technology – search U.S. or foreign patents by keyword and class/subclass (LEXIS, INPADOC, JAPIO, USPTO.GOV, etc.)

l Cutting edge technology – search literature databases and the Internet in addition to patents (LEXIS/NEXIS, SPI, DIALOG: COMPENDEX, INSPEC, MATHSCI, SOFT, Micro Computer INDEX, etc. )

16

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 46

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 47

Drafting Software PatentsDrafting Software Patents

Patent applications for computer-related inventions (software)

generally are best described as a process or method (i.e., a series of

steps to perform a function)

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 48

Format of ApplicationFormat of Application

l Title -- Method, System, Apparatus for…l Background (Field of Invention) – identify

the problems and why there is a need for a better method

l Summary – Mirrors independent claims (Method, System, Media, GUI)

l Brief Description of Drawingsl Detailed Descriptionl Claims

17

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 49

Written Description RequirementWritten Description Requirement

1. Written description of the invention and the manner and process of making and using it

2. Enable reproduction of the invention by one skilled in the art without undue experimentation

3. Provide the best mode of practicing the invention, including any necessary drawings

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 50

Organization of DescriptionOrganization of Description

1. Describe the static physical structure of the invention (hardware)

2. Describe the operation or function of the invention (software)

3. Provide specific examples and/or results of operation of the invention

4. Provide alternate embodiments for drafting claims of sufficient scope

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 51

Disclosure of Computer CodeDisclosure of Computer Code

l Disclosure of source code is notnecessary

l If you choose to include code, new guidelines allow you to include the code on a CD as an appendix (rather than microfiche)

l Disclosing code will satisfy the enablement and best mode requirement

l Copyright protection may be retained but trade secret protection is obviously lost

18

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 52

Copyright Notification in PatentCopyright Notification in Patent

COPYRIGHT NOTIFICATION

“Portions of this patent application contain materials that are subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document, or the patent disclosure, as it appears in the Patent and Trademark Office.”

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 53

Types of Software DrawingsTypes of Software Drawings

Hardware/Components

If the invention includes hardware components, then a block diagram or circuit diagram should be included

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 54

System Diagram

19

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 55

Block Diagram

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 56

Circuit Diagram

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 57

Types of Software DrawingsTypes of Software Drawings

Flowcharts

In an application describing a software process, one or more flowcharts

should be included that correspond to the process claims (each of the

blocks is a step in a specific sequence)

20

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 58

Flow Chart

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 59

Types of Software DrawingsTypes of Software Drawings

Functional Block Diagrams

For object-oriented programs, functional block diagrams should be used to show essential connections

between processes and relevant data structures (show connectivity not

process flow)

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 60

Object Diagram

21

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 61

Other Types of DrawingsOther Types of Drawings

l Database Tablesl Graphical Displaysl Source Code Listings

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 62

Database Table

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 63

Graphical Display

22

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 64

Software Patent ClaimsSoftware Patent Claims

The basic claim types for software patents are as follows:

– Method/Process– Apparatus/Machine– Article of manufacture

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 65

Method/Process ClaimsMethod/Process Claims

l Used to define an invention as a series of steps for a process

l Usually the easiest to write since software is, in essence, a series of steps for a process

l Broadest type of claim available

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 66

Apparatus/Machine ClaimsApparatus/Machine Claims

l Used to define a device/system with active components (processor, memory, database, printer, etc.)

l May be drafted in 2 ways:– Structural components, and– Means -plus -function language

23

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 67

Article of Manufacture ClaimsArticle of Manufacture Claims

l Used to define a device with no active components (e.g., computer-readable medium, data structure claims)

l Advantage is that the software manufacturer or distributor can be the infringer

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 68

Other Types of ClaimsOther Types of Claims

l GUI – Graphical User Interface claiml API – Application Program Interface

claiml Signal Processing Claim – electronic

circuits

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 69

Priceline’s Method Claim Priceline’s Method Claim (simplified) (simplified) U.S. Pat. No. 5,794,207U.S. Pat. No. 5,794,207A method for facilitating transactions

between a buyer and a plurality of sellers comprising:

1. inputting an offer price2. inputting a credit card3. outputting the offer to sellers4. inputting acceptance by seller5. paying the seller

24

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 70

Sample Apparatus/Machine ClaimSample Apparatus/Machine Claim

A system for facilitating transactions between a buyer and a plurality of sellers comprising:a storage device, a processor, an input device, etc. the processor programmed to

1. receive an offer price2. receive a credit card3. output the offer to sellers4. receive acceptance by seller5. pay the seller

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 71

Sample Article of Manufacture Claim Sample Article of Manufacture Claim

A computer readable media containing program instructions for facilitating transactions between a buyer and a plurality of sellers comprising program instructions for:

1. receiving an offer price2. receiving a credit card3. outputting the offer to sellers4. receiving acceptance by seller5. paying the seller

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 72

Sample “Means Plus Function”Sample “Means Plus Function”

A system for facilitating transactions between a buyer and a plurality of sellers comprising:

1. means for receiving an offer price2. means for receiving a credit card3. means for outputting the offer to sellers4. means for receiving acceptance5. means for paying the seller

25

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 73

Sample Data Structure ClaimSample Data Structure Claim

A computer-readable medium having stored thereon a data structure comprising:

1. a first field containing data representing identification of a buyer;

2. a second field containing data representing an offer price of a buyer in said first field;

3. a third field containing data representing identification of a seller;

4. a forth field containing data representing acceptance by a seller in said third field of an offer in said second field; etc.

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 74

Sample GUI claimSample GUI claim

l A graphical user interface (GUI) having windowing capability comprising– first windowing means for inputting an

offer price– second windowing means for displaying

an acceptance of the offer by a seller– etc.

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 75

International PatentsInternational Patents

l More than half of the 176 countries in the world that grant patents permit the patenting of software-related inventions, at least to some degree.

l The most widely followed doctrine governing the scope of patent protection for software-related inventions is the "technical effects" doctrine that was first promulgated by the European Patent Office ("EPO").

26

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 76

Software Patents in the EPOSoftware Patents in the EPO

l The EPO law regarding patentability of software is more liberal than the individual laws of EPO member countries Spain, Switzerland, and the U.K.

l Better to file EPO application designating those countries rather than filing separate patents applications

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 77

Software Patents in JapanSoftware Patents in Japan

l Japan is similar to Europe and the USl A computer program that simply performs a

mathematical algorithm is not patentablel If software is used as a means for

materializing a law of nature and is linked to appropriate hardware elements, it may be patentable (i.e., claim the computer)

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 78

Software Patent in CanadaSoftware Patent in Canada

l 1994 Guidelines: Mere scientific principles are not patentable and presence of computer does not lend to or subtract from patentability

l New and useful process incorporating computer program, if integrated with another practical system is patentable

l Claims should have sufficient precomputer and postcomputer steps to create a novel system

27

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 79

Foreign Protection of Software (2001 Update)Foreign Protection of Software (2001 Update)

YesYesGermany

YesYesFranceMaybeYesChinaNoYesChileYesYesCanadaMaybeYesBrazilNoYesBosnia

YesYesAustraliaNoYesArgentinaPatent?Copyright?Country

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 80

Foreign Protection of Software (2001 Update)Foreign Protection of Software (2001 Update)

YesYesUK

YesYesTaiwanNoYesSouth AfricaNoYesSaudi ArabiaNoYesRussiaNoYesPanamaMaybeYesMexico

NoYesMalaysiaYesYesJapanPatent?Copyright?Country

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 81

Examples of Software PatentsExamples of Software Patents

28

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 82

Operating SystemsOperating Systems

l Intercepting calls to a network operating system by replacing the first few instructions of an entry point by a call to an intercept routine. [#5,257,381- Intel].

l Statically allocating an initial amount of memory when a program is first loaded according to a size value contained in the program header. [#5,247,674 -Fujitsu].

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 83

Graphics and Windowing SystemsGraphics and Windowing Systems

l Use of different colors to distinguish the nesting level of nested expressions in computer programs. [#4,965,765-IBM].

l The computer graphics representation of a surface using and array of dots, rather than the more traditional wire frame model. [#5,257,347-GEC].

l A calendar tool that includes a bar graph of the duration of each meeting and a composite bar graph of all meetings. [#5,247,438-Infoassist ].

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 84

Cryptography and Data CompressionCryptography and Data Compression

l Diffie/Hellman secret key exchange patent. [#4,200,770].

l Hellman/Merkle public key cryptography patent. [#4,218,582].

l Compressing a font by detecting rows and columns that are entirely blank and encoding them separately. [#5,272,768].

l LZW compression patent. [#4,558,302].

29

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 85

MultimediaMultimedia

l A document storage system that has a digital camera to scan in documents, stores the documents on an optical disk, and uses character recognition software to construct an index. [#4,941,125 - Smithsonian].

l Compton's famous multimedia search patent. [#5,241,671- Compton].

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 86

Word ProcessorsWord Processors

l A word processor that monitors the sequence of keys you type and tries to teach you about new features. [#4,947,346 - Sharp].

l Any word processor with a separate mode that the user selects when they wish to type in a mathematical formula. [#5,122,953 - Canon].

l A word processor which marks and makes correction to a document using two additional different colors. [#5,021,972 - Sharp].

March 2003March 2003March 2003 (c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod(c) 2003 Christine Q. McLeod 87

SpreadsheetsSpreadsheets

l A spreadsheet that has an outline mode to automatically collapse rows that are hierarchically subordinate to another row. [#5,255,356 - Microsoft].

l A spreadsheet in which each cell has a "next cell" attribute defining the next cell to advance to after having entering data into the current cell. [#5,121,499-IBM].

l Combining two or more spreadsheet tables together to produce a new table in accordance with the indicated row and column headings. [#5,272,628-Microsoft].