Writing Software Patent Applications

A patent application that covers a software related invention requires three things:

First, a description of he overall computer architecture of the system.

Second, a single flowchart that depicts the overall working of the software.

Third, a series of flow charts that show with great detail the main program and and subroutines.

Uniform Domain-Name Dispute Resolution Policy

The Uniform Domain-Name Dispute Resolution Policy (UDRP) has been adopted by ICANN-accredited registrars in all gTLDs (.aero, .asia, .biz, .cat, .com, .coop, .info, .jobs, .mobi, .museum, .name, .net, .org, .pro, .tel and .travel).

Dispute proceedings arising from alleged abusive registrations of domain names (for example, cybersquatting) may be initiated by a holder of trademark rights.

The UDRP is a policy is included in registration agreements for all ICANN-accredited registrars.

In Software Patent, the Disiclosure Must Describe Algolrithm

Claiming a software invention as part of a system or apparatus, and using means-plus-function language to define a software element, requires that the patent specification describe the algorithm for performing the specified function.

U.S. software patent law has recently changed.  Aristocrat Technologies Australia PTY Ltd. v. International Game Technology, 521 F.3d 1328, 1333 (Fed. Cir. 2008).

The Aristocrat case involved a patent for an electronic slot machine which allows users to define the winning symbol combination before commencing the game. The invention used a computer processor to control how the game functioned.

The sole independent claim of the patent recited a “game control means” using means-plus-function language.  The claim recited a means for performing a specified function without reciting the structure for performing the function.

The patent specification stated it was within the capability of a worker in the art “to introduce the methodology on any standard microprocessor base[d] gaming machine by means of appropriate programming.”

The CAFC held that the independent claim and all other dependent claims were invalid because it was not “definite” as required by the Patent Act, 35 USC section 112, paragraph 2.

Since the claim used means-plus-function language, the court inquired whether Aristocrat sufficiently disclosed the structure of the “game control means.”

Aristocrat contended its disclosure of a “standard microprocessor” with “appropriate programming” sufficed.  The CAFC rejected Aristocrat’s arguments because it “has consistently required that the structure disclosed in the specification be more than simply a general purpose computer or microprocessor.” 521 F.3d at 1333.

Simply “disclosing a computer as the structure designated to perform a particular function does not limit the scope of the claim to ‘the corresponding structure, material, or acts’ that perform the  function, as required by section 112 paragraph 6.” Id.

Patents must disclose the particular algorithm that a computer uses to execute a function in order to avoid “pure functional claiming.”

The court also rejected Aristocrat’s view that disclosure of “a microprocessor with ‘appropriate programming’”  sufficed because a skilled person could devise an appropriate algorithm. According to the CAFC, “the pertinent question . . . is whether Aristocrat’s patent discloses structure that is used to perform the claimed function.” Id. at
1336.

While the sufficiency of such disclosures should be judged from the viewpoint of a person skilled in the art, an algorithm must still be disclosed.  For software patent drafters, the issue is whether the patent specification itself discloses a software algorithm.  If so, then a means-plus-function element is limited to software programs using such an algorithm.  If not, such claims are invalid for indefiniteness – even if a person of ordinary skill could write appropriate software.

The patent application needs to disclose source code or even a “highly detailed description of the algorithm.”  Aristocrat, 521 F.3d at 1338.

If means-plus-function language is used, the patent application must “at least disclose the algorithm that transforms the general purpose microprocessor to a special purpose computer programmed to perform the disclosed algorithm.”

This may be accomplished by using detailed flowcharts and written descriptions.

The only alternatives are:  1) avoid invoking the requirement for describing an algorithm; or 2) using instead a method claim to define an invention.

Only in the most unusual cases would section 112, paragraph 6 be applied to method claims.

UDRP

The Uniform Domain Name Dispute Resolution Policy is also known as the UDRP Policy.

This policy sets out the legal framework for the resolution of disputes between a domain name registrant and a third party other than the registrar.

Any person or entity wishing to register a domain name in the gTLDs and ccTLDs in question is required to consent to the terms and conditions of the UDRP Policy.

In 1999 the ICANN Board adopted a set of Rules for Uniform Domain Name Dispute Resolution Policy setting out the procedures and other requirements for each stage of the dispute resolution administrative procedure. The procedure is administered by dispute resolution service providers accredited by ICANN. The WIPO Arbitration and Mediation Center (WIPO Center) is such a dispute resolution service provider.

Any person or company in the world can file a domain name complaint concerning a gTLD using the UDRP Administrative Procedure.

The UDRP Administrative Procedure is only available for disputes concerning an alleged abusive registration of a domain name; that is, e.g.:

  1. (i) the domain name registered by the domain name registrant is identical or confusingly similar to a trademark or service mark in which the complainant has rights;
  2. (ii) the domain name registrant has no rights or legitimate interests in respect of the domain name in question; and
  3. (iii) the domain name has been registered and is being used in bad faith

The UDRP Policy gives the following examples of bad faith registration and use of a domain name:

  1. (i) the domain name was registered or acquired primarily for the purpose of selling, renting, or otherwise transferring the domain name registration to the complainant who is the owner of the trademark or service mark or to a competitor of that complainant, for valuable consideration; or
  2. (ii) The domain name was registered in order to prevent the owner of the trademark or service mark from reflecting the mark in a corresponding domain name, provided that the domain name registrant has engaged in a pattern of such conduct; or
  3. (iii) The domain name was registered primarily for the purpose of disrupting the business of a competitor; or
  4. (iv) registrant attempted to attract Internet users to the registrant’s website or other on-line location, by creating a likelihood of confusion with the complainant’s mark as to the source, sponsorship, affiliation, or endorsement of the registrant’s website or location or of a product or service on the registrant’s website or location.

The UDRP is only available to resolve disputes between a third party alleging an abusive registration of a domain name and the domain name registrant.

Software Patents and the Federal Circuit

In 1982 the U.S. Congress created a new court (the Federal Circuit) to hear patent cases to achieve uniform treatment of patent laws.  By the early 1990s the patentability of software was well established.  In 1996 the United States Patent and Trademark Office issued Final Computer Related Examination Guidelines, which stated:

“A practical application of a computer-related invention is statutory subject matter.  This requirement can be discerned from the variously phrased prohibitions against the patenting of abstract ideas, laws of nature or natural phenomena”.

What is Open-Source Software?

Open-source software is uncopyrighted, freely reproducible computer programs.

Open source methods for creating software rely upon software developers to voluntarily disclose their code in the expectation that other developers will reciprocate.

Protecting software through Copyrights

In most countries, the object and source code of computer programs can be protected by copyright.  In the United States, Copyright protection is not contingent upon registration but arises upon creation and rendition to a tangible medium.

However, there is no really good reason not to copyright software because the statutory protections are great and statutory damages are available.

Copyright protection is more limited than patent protection because copyrights cover only the expression of an idea and not the idea itself.   A good strategy is to protect the object code of computer programs by copyright while keeping the source code as a trade secret.

Protecting computer software through Patents.

In some countries, the mathematical algorithms  which improve the functionality of a computer software may be protected by patents, while in others, they are explicitly excluded as unpatentable subject matter.  In these latter countries, software-related inventions may still be patentable, provided the software makes a technical contribution to the state of the art.

Disclaimer of Any Attorney-Client Relationship.

Disclaimer: The information provided is not a substitute for professional legal advice.  Its main purpose is limited to providing basic information.  This Blog/Web Site (“Blog”) does not provide specific legal advice and is for educational purposes only.  Use of this Blog and/or Website does not create any attorney-client relationship between you and Gregory Richardson or his firm.  This Blog does not constitute legal advice and is not a substitute for legal advice.   Any comment posted on the Blog can be read by any Blog visitor.  Please do not post confidential or sensitive information.   Any links to or from other sites are beyond the control of this law firm and do not convey approval, support or any relationship.

Follow

Get every new post delivered to your Inbox.