djstein.com | projects | USPTO Proxy

USPTO Proxy

Abstract: This application is a tool for accessing the database of patents and patent applications hosted by the U.S. Patent & Trademark Office (USPTO). This database is conventionally accessed through the web, which is sufficient (though clumsy) for human-readable access, but inadequate for automated applications that need well-formatted data. The USPTO has made some progress in this regard (see ABX and ePave), but their efforts are focused on delivery of data (via XML) to the USPTO for the submission of a patent application, and not on the disclosure of data from the USPTO for automated analysis.

This application provides a class library (DLL) called USPTOProxy that can be dropped into an application and used as a simple, effective proxy interface for the database. The application can fetch patents and patent applications, with the results returned as structured objects. The application also allows the user to query the database of patents and patent applications with a standard "advanced query" string (e.g., "ttl/neuron and an/merck"), and the user may specify whether the results should be returned as an array of references that match the query or as an array of patent/patent application objects. These operations can be performed synchronously, asynchronously with polling, or asynchronously with event notification. Some fault tolerance has been incorporated for those occasions where the USPTO database is unreachable or unresponsive.

This package also includes a demonstration application; the source code for this application illustrates the usage of the USPTOProxy class, and the executable illustrates the output of the proxy for different operations.

Version: 1.0 - last updated Monday, December 19, 2005

Links: Download (Contents: Executable (Windows), Class Library (.dll), Source Code (C#))

Screenshots: