Cooperative Patent Classification (CPC)
The Cooperative Patent Classification (CPC) system replaced both the ECLA classification system in Europe and the USPC classification system in the US. This was done in an effort by the USPTO and the EPO to harmonize the patent classification systems.
The CPC system is based on the European system called ECLA, which itself was based on WIPO's IPC class structure. The chief difference between IPC and CPC is that CPC is far more detailed. However, they are both based on the same high-level structure.
Patents are classified with CPC codes as either "Inventive" classes or "Additional" classes (formerly called Non-Inventive). In AcclaimIP, you can query patents by Inventive, Additional, or both, using different field codes (shown in the examples below).
Additionally, note that the Inventive classes are displayed in Bold text in the expander rows in both the search result grid and the document details window.
Note that in the example above, there are bold CPC classes (for example, B05B3/1057) and CPC classes that are not bolded (for example, B05B1/3046). The ones in bold are the CPC Inventive classes for the patent. In other words, they are the classes that go to the disclosed invention portion. They are usually the ones that are allocated to the "mandatory" section of the classification forms. In contrast, the CPC classes that are not bolded are based on disclosed information that is not "inventive." They are usually the CPC codes that are allocated to the "discretionary" section of the classification form.
CPC class filters appear in the Search Results' Refine panel (1). CPC class titles are broken up into their hierarchy just like the other classification systems in AcclaimIP. You can click on a specific CPC filter (1) to view the fully exposed class hierarchy. The smart tooltips can also be found in the expander rows (2), the Document Details window, and in the open CPC Filters/Facets once you open them.
The CPC field code finds patents classified by both the "Inventive" and the "Additional" classes.
- CPC:H04L69/14 --> Finds all documents in this class.
- CPC:H04L69/14+ --> Finds documents in the /14 class, and all children classes.
- CPC:(H04N21/236 AND H04L69/14) --> Finds documents in both classes.
The CPCF field codes finds patents where the specified field code is listed first. CPCF ignores all classes listed after the first one. The significance of CPCF is that it allows you to search for patents by the class the examiner deemed as the best or most representative of the inventive step of the patent. Note that all CPCF classes are also CPCI (Inventive) classes. It is just the first (or "Primary") CPCI class.
- CPCF:A61K38/193 --> Finds patents where A61K38/193 is listed on the patent first.
The CPCI field code searches ONLY for those documents with the searched for CPC code listed as an "Inventive" class. CPCI ignores the "Additional" classes listed on a document.
- CPCI:(B60K2350/1024 AND D05B3/1064 --> Finds patents classified by both field codes.
The CPCA field code searches ONLY for those documents with the searched for CPC code listed as an "Additional" class. CPCA ignores the "Inventive" classes listed on a document.
The CPC system is "naturally hierarchical" only to the Main Group. 95.5 percent of all classifications fall below the main group or deep "in the dots." In AcclaimIP, the entire CPC hierarchy can be queried. To query a two dot subclass, for example, and all its children classes with a single query, use the special + switch at the end of the class code you define.
Querying the Natural Hierarchy
If you enter a partial CPC class code, AcclaimIP assumes you want to query the hierarchy and includes all subclasses. For example, all these queries, up to the Main Group, are hierarchal queries.
- CPC:G --> This is a CPC Section. It is very broad (for example, G is "Physics" and H is "Electricity").
- CPC:G06 --> This is a Class. Certainly, it is slightly less broad than a CPC Section, but it is still quite broad (for example, G06 is "Computing; Calculating; Counting").
- CPC:G06F --> This is a Subclass. Here we start to focus in a bit, although the subclass classification is still fairly inclusive (for example, G06F is "Electrical Digital Data Processing").
- CPC:G06F3 --> This is a Main Group. At this level, the definitions are no longer as short, but can still be inclusive (for example, G06F3 is "Input arrangements for transferring data to be processed into a form capable of being handled by a computer; Output arrangements for transferring data from processing unit to output unit; e.g. interface arrangements").
You can see that at the Main Group level, most searches will not be narrow enough to isolate a single technology. In fact, there are 244,218 (~a quarter million) classes below the main group level in CPC.
Querying the Dot Hierarchy
You can append any class code at any level with a plus sign ( + ) and AcclaimIP will automatically return patents in its children subclasses as well.
- CPCI:G06F3/03+ --> Finds patents in the /03 subclass and all of its 45 children classes. This query returns thousands of US patents. At the time of this writing, it returns almost 50,000.
- CPCI:G06F3/03 --> Finds only patents in the /03 subclass. This query only returns a few hundred US Patents. At the time of this writing, it returns about 500 US patents. That's only about 1% of the above search with the (+).
The + switch works on CPC, CPCI and CPCA field codes (and IPCR, IPCRI and IPCRA field codes, too, if you are still using them).
Tip: Use the tooltips to read the class titles and determine at what level you want to query the hierarchy. For full CPC class titles and definitions there is a nice reference on the USPTO.gov site:
You can use Booleans to create complex CPC queries. One of my favorites is:
- CPCA:G06F3/03+ NOT CPCI:G06F3/03+ --> This finds patents and applications that are not inventively G06F3/03+, but rather cross reference these classes by way of an Additional classification. It is a good way to look for potential applications of a patented technology.
But, really, most any Boolean Operator works.