WORLD INTELLECTUAL PROPERTY ORGANIZATION
SPECIAL UNION FOR THE INTERNATIONAL PATENT
CLASSIFICATION
(IPC UNION)
Internet Publication (IPCPUB) URLs and Services
Contents ii
Date By Version Status Modification
September 4, 2014 Collioud 5.1 PF approved
Created from and replaces
IPC_Internet_URL_Web_Services_specifi
cation_V5
November 19, 2014 Collioud 5.3 Revised Added “Get XML Fragment” service
September 22, 2015 Collioud 6.2 Revised IPCPUB 6.2
October 9, 2015 Collioud 6.3 Revised IPCPUB 6.3
April 10, 2017 Collioud 7.0 Revised IPCPUB 7.0
December 5, 2017 Collioud 7.6 Revised
IPCCAT categorization at subgroup level.
Addition of revision-project to
concordance-to service.
Contact: WIPO: Patrick FIÉVET ([email protected])
Table of Contents
1. Introduction ........................................................................................................................ 3
2. URLs .................................................................................................................................. 4
2.1. Scheme ....................................................................................................................... 4
2.2. RCL ............................................................................................................................ 5
2.3. Catchwords ................................................................................................................. 5
2.4. Compilation ................................................................................................................ 6
2.5. Definitions with their embedded illustrations ............................................................ 6
2.6. Search modes .............................................................................................................. 6
STATS Assistance (advance search) .................................................................. 6 2.6.1.
IPCCAT Assistance (advance search) ................................................................ 6 2.6.2.
Smart search ....................................................................................................... 6 2.6.3.
Other Advance search options ............................................................................ 7 2.6.4.
2.7. Functionality “Store specific information about current client session status on
application server” .................................................................................................................. 7
2.8. Example ...................................................................................................................... 7
3. Services .............................................................................................................................. 8
3.1. XML Services Layer .................................................................................................. 8
XML Web Services ............................................................................................ 8 3.1.1.
3.1.1.1. “XML2HTML” service .................................................................................. 8
3.1.1.2. “Get XML Fragment” service ...................................................................... 10
Other XML services ......................................................................................... 14 3.1.2.
3.1.2.1. IPC Scheme XML files ................................................................................ 14
3.1.2.2. IPC Definitions XML files ........................................................................... 14
3.1.2.3. CPC Scheme in IPC compliant format ......................................................... 14
3.1.2.4. FI Scheme in IPC compliant format ............................................................. 14
3.2. Other Web Services .................................................................................................. 14
“Check IPC Symbol Validity” service ............................................................. 14 3.2.1.
3.2.1.1. Example using JQuery ................................................................................. 16
3.2.1.2. Example using Python .................................................................................. 16
“Get Concordance To” service ......................................................................... 17 3.2.2.
3.2.2.1. Example using JQuery ................................................................................. 18
3.2.2.2. Example using Python .................................................................................. 19
Contents ii
“Get Selected IPC Symbol” service ................................................................. 19 3.2.3.
3.2.3.1. Example using JQuery ................................................................................. 20
“STATS Assistance” service ............................................................................ 21 3.2.4.
“Get Classifications Versions” service ............................................................ 22 3.2.5.
“IPCCAT” service ............................................................................................ 23 3.2.6.
3.2.6.1. Examples ...................................................................................................... 23
3.2.6.2. XML response description ........................................................................... 24
3.1. Other services ........................................................................................................... 25
IPC Scheme HTML files .................................................................................. 25 3.1.1.
IPC Scheme doc files ....................................................................................... 25 3.1.2.
IPC Definitions HTML files ............................................................................ 25 3.1.3.
IPC Definitions doc files .................................................................................. 25 3.1.4.
Inventory of ever used IPC Symbols ................................................................ 25 3.1.5.
4. Prototypes ......................................................................................................................... 25
Internet Publication (IPCPUB) URLs and Services 3/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
1. Introduction The purpose of this file is to document how some of functionality of the IPC Internet
publication (IPCPUB) proposed by WIPO can be accessed through:
URL e.g. to hyperlink IPC symbols in a patent document to the corresponding
place in the IPC internet publication in authentic languages (hosted by WIPO)
or to the corresponding place in the internet publication of national translation
of the IPC for IP offices using IPCPUB.
Services:
o Web Services that are accessible through an HTTP based API
o Products made publicly available on WIPO web site or delivered on
demand.
The URL of the IPC Internet publication is made of a fixed character string e.g.
http://www.wipo.int/classifications/ipc/ipcpub/ and can optionally be concatenated
with a number of parameters that can be used to indicate specific aspects of what
should be displayed.
The parameters are set through a list of statements in the form of
parameter_name=value and separated by &.
Part of the terminology used in this document is explained in the on-line help of the
system.
In the following, mandatory parameters i.e. without which nothing would be
displayed are indicated by (*) and parameter default values are indicated by (+).
Note that parameter_name and value are case sensitive excepted for symbol value.
Internet Publication (IPCPUB) URLs and Services 4/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
2. URLs Access to specific functionality of part of the user interface
2.1. Scheme
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters and values:
Parameter Description Values Meaning
NONE The scheme at Section level for the
current edition of the IPC with all
default values
notion IPC Scheme scheme scheme
version version of the IPC in YYYYMMDD
format e.g., 20060101
(+) Current version i.e.
version in force
latest Latest published
version of the IPC
symbol 14 character string with zero padding (same convention described in the XML
validity file) e.g. [A01N0065000000]
none Displays the list of
IPC sections
viewmode Different ways to view of the IPC.
f (+) Fulltext
a Path
h Hierarchic view
m Maingroup view
notes presentation of the notes yes (+) | no
headings presentation of the guidance headings yes (+) | no
indexes Allows the presentation of the
subsection, class and subclass indexes. yes | no (+)
showdeleted
If yes, deleted entries are presented (for
the 8th edition, valid only on the
advanced level).
yes(+) | no
menulang The language of the interface (menu,
buttons, …
FR French
EN (+) English
lang Language(s) in which the IPC is
displayed.
en (+) English
fr French
enfr double language
EN/FR presentation
fipcpc Display of FI and/or CPC related
information cpc | fi | no (+)
tree
Display of guiding lines instead of
dots below Groups to better visualize
the tree structure
yes | no (+)
definitions Display of specified Symbol (see
symbol parameter above) Definitions yes | no (+)
Internet Publication (IPCPUB) URLs and Services 5/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
2.2. RCL
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters and values:
Parameter Description Values Meaning
notion (*) Reverse Concordance List rcl RCL
symbol 14 character string with zero padding, e.g. [A01N0065000000]
If not specified the RCL summary page is accessed
direction Whether the concordance is shown from the old
version to the new or the opposite.
o2n (+) Old-to-new
n2o New-to-old
version
Target version of the IPC in YYYYMMDD format
e.g., 20100101 to get the RCL from IPC 2009.01 to
IPC 2010.01
(+)
Current version i.e.
version in force
latest Latest published
version of the IPC
menulang The language of the interface (menu, buttons, …) EN (+) English
FR French
2.3. Catchwords
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters and values:
Parameter Description Values Meaning
notion (*) Catchword Index cw
Catchword
Index
initial A capital letter, the initial of the catchword entry.
cwid
An integer with “CW” prefix, as defined in the catchword master file as the unique
identifier for any catchword entry.
If not specified the Catchword index summary page is accessed
version version of the IPC in YYYYMMDD format e.g.,
20060101
(+) Current version
latest Latest
published
version of the
IPC
lang Language(s) in which the IPC is displayed.
en (+) English
fr French
enfr Both English
and French
menulang The language of the interface (menu, buttons… EN (+) English
FR French
Internet Publication (IPCPUB) URLs and Services 6/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
2.4. Compilation
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters and values:
Parameter Description Values Meaning
notion (*) Compilation of changes in the full IPC
compilation Full IPC
compilation
version version of the IPC in YYYYMMDD format e.g.,
20060101
(+) Current version
latest Latest published
version of the IPC
lang Language(s) in which the IPC is displayed. en (+) English
fr French
menulang The language of the interface (menu, buttons…) EN (+) English
FR French
2.5. Definitions with their embedded illustrations
Definitions including their embedded illustrations are accessible in IPCPUB through
the Scheme URL for the corresponding Symbol.
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters and values:
Parameter Description Value Meaning
symbol (*) 14 character string with zero padding (same convention described in the XML
validity file) e.g. [A01N0065000000]
definitions (*) Display of definitions. yes
2.6. Search modes
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters:
STATS Assistance (advance search) 2.6.1.
Parameter Description Value Meaning
searchmode (*) Search options to be
displayed stats
STATS search options tab is displayed,
advance search options are enabled and
Smart search is unselected.
IPCCAT Assistance (advance search) 2.6.2.
Parameter Description Value Meaning
searchmode (*) Search options to be
displayed ipccat
IPCCAT search options tab is displayed,
advance search options are enabled and
Smart search is unselected.
Smart search 2.6.3.
Parameter Description Value Meaning
searchmode (*) Search mode smart (+) Smart search is selected and advance
search options are disabled.
Internet Publication (IPCPUB) URLs and Services 7/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
Other Advance search options 2.6.4.
Parameter Description Values Meaning
searchmode (*)
Search mode (and
options to be
displayed)
advance Smart search is unselected and advance
search options are enabled.
terms
Terms search options tab is displayed,
advance search options are enabled and
Smart search is unselected.
xrefs
Cross-references search options tab is
displayed, advance search options are
enabled and Smart search is unselected.
2.7. Functionality “Store specific information about current client session status on application server”
Caution: web browser must accept Cookies from wipo.int in order to use this service.
This option stores the information specified as value of the parameter in a file
associated to the current client session. This is used for example to retrieve later an
IPC symbol previously selected by the user (using the Get IPC Symbol web service
described under the next section) from other IPC related web applications.
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters:
Parameter Description Values Meaning
store
The IPC notion to be stored. Activates the automatic storage of
the “Current symbol”.
symbol The symbol in the
“Current Symbol” box
2.8. Example
Shows English version of the IPC internet publication scheme in standardized
sequence order for symbol A01N 3/04:
http://www.wipo.int/classifications/ipc/ipcpub/?version=20100101&symbol=A01N00030400
00& priorityorder=yes
Internet Publication (IPCPUB) URLs and Services 8/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
3. Services Caution: parameters must be in the same order as in each table below.
3.1. XML Services Layer
XML Web Services 3.1.1.
3.1.1.1. “XML2HTML” service
This service is for viewing an IPC compliant XML fragment through layout rules and
style sheets used in the IPC internet publication. This is done through transformation
of the received XML fragment into HTML fragment returned to the calling
application.
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters:
Parameter Description Values Meaning
xml2html(*) Parameter called by an
IPC related application. Definition
(#)
Ask for xml2html service and define
the type of XML data sent to the
service in the HTTP request body
lang(*) Language(s) in which the
IPC is displayed.
en English
fr French
symbol (*) 14 character string with zero padding,
e.g. [A01N0065000000] IPC Symbol
imagedir (*)
A string made of letters, numbers and
0 or more underscore or minus (_ or -)
character.
This must be set to “none” if there is
no image used.
Directory name where images are
stored client side. An image is then
accessed by the client application by
using an URL such as
http://client.com/temp/pub/imagedir
/imagename.ext
(# ) may be extended with other types of XML fragment (e.g. scheme) in future
Example using Python 3.1.1.1.1.
Get IPC A01N XML definition file converted into HTML through a call to
IPC internet publication service.
A01N.xml fragment file is prepared:
<?xml version="1.0" encoding="utf-8"?>
<IPC-DEFINITION IPC="A01N">
<DEFINITION-TITLE>Preservation of bodies of humans….
….for preventing or destroying rodents, e.g. rats, mice or making them less
harmful.</PARAGRAPH-TEXT>
…</GLOSSARYOFTERMS>
</IPC-DEFINITION>
This XML file is sent through HTTP protocol to the XML2HTML
service and the returned HTML file saved to the local storage as
follows:
Internet Publication (IPCPUB) URLs and Services 9/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
import httplib2 # see http://code.google.com/p/httplib2/
xml = open('A01N.xml', 'r')
url = 'http://www.wipo.int/classifications/ipc/ipcpub/’ +\
’?xml2html=definition’ +\
’&lang=en’ +\
’&symbol=A01N’ +\
’&imagedir=none'
http = httplib2.Http()
resp, content = http.request(url,
body=xml.read(),
headers={'Content-Type': 'application/xml'})
xml.close()
html = open('A01N.htm', 'w')
html.write(content)
html.close()
The returned HTML to be used for viewing A01N according to IPCPUBPREP
style and layout is as follows:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title class="trans" id="IPC_Definitions">IPC Definition: A01N</title>
<link rel="stylesheet"
href="http://www.my.org/ipcpub/definition/definition.css"
type="text/css" media="screen,print">
</head>
<body class="defpopup">
<div id="def"><div class="texts"><p class="title"><a name=""
href="index.html?symbol=A01N" target="_blank"
onclick="javascript:goToSymbol(\'A01N\');return false">A01N</a> -
Definition </p>…</div></body></html>
Internet Publication (IPCPUB) URLs and Services 10/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
3.1.1.2. “Get XML Fragment” service
The purpose of the service is to return an XML fragment associated to a given IPC,
CPC or FI Group Symbol. The content of this XML fragment includes:
The hierarchical path of the specified Group Symbol,
IPC, CPC or FI subdivisions below this Group Symbol.
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters:
Parameter Description Values Meaning
get_xml_fragment(*)
The kind of
information to be
returned.
scheme
IPC Scheme XML data of the
specified Group Symbol is to
be returned
classification(*)
Patent Classification
Scheme(s) to be
considered
IPC IPC only
CPC IPC + CPC subdivisions
FI IPC + FI subdivisions
lang(*) Language in which
data is to be returned.
en English
fr French
version(*)
version of the IPC in
YYYYMMDD
format e.g.,
20060101
current Current version
latest Latest published version of the
IPC
symbol(*) Group Symbol: 14 (IPC or CPC) or 18 (FI) character string with
zero padding, e.g. [A01N0065000000]
Returned code
The service is returning the following HTTP code:
Success: 200
Unknown resource: 404
System error: 500
Returned data
Note: The current version of this service can only return IPC Scheme data.
Internet Publication (IPCPUB) URLs and Services 11/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
In case of successful call:
The data returned is a compressed set of files made of:
An XML file which complies with either IPC Scheme XML specification or
its CPC or FI derivative (see IPC_scheme_specs_v3_1,
subcpc2ipc_scheme_specs_v3_1 and fi2ipc_scheme_specs_v3_1).
External files (e.g. images, chemical formulae …) if any referenced in the
XML fragment.
The XML fragment contains the specified Group Symbol as well as:
all its descendants, i.e. all subdivisions of the specified classification below
this symbol,
all its ascendants up to the root level of the IPC,
elements that are part of the above hierarchy for which “kind” attribute equals
“t”, “n”, “i” or “g” (Even if such elements are not ancestors of requested
Symbol they are nevertheless necessary to fully qualify the context of the
specified Symbol).
In case of unknown resource, i.e. when at least one of the resources is not
available in IPCPUB, one of following error code is returned in this order of
decreasing priority:
1: Unknown classification
2: Unknown language
3: Unknown IPC Version
4: Unknown classification for selected IPC Version
5: Unknown language for selected classification
6: Unknown Group Symbol for selected IPC Version and classification
7: Requested data is too large and thus cannot be returned by the service
Internet Publication (IPCPUB) URLs and Services 12/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
Example using Python 3.1.1.2.1.
import requests
url = 'http://www.wipo.int/classifications/ipc/ipcpub/' +\
'?get_xml_fragment=scheme' +\
'&classification=CPC' +\
'&lang=en' +\
'&version=current' +\
'&symbol=A01D0034030000'
request = requests.get(url)
with open('A01D0034030000.zip', 'wb') as zipfile:
zipfile.write(request.content)
The above returned zip file is containing this A01D0034030000.xml file:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE revisionPeriods SYSTEM "ipcr_scheme_1-02.dtd">
<revisionPeriods>
<revisionPeriod>
<ipcEdition edition="20140101" …>
<en>
<staticIpc …>
<ipcEntry kind="s" symbol="A" …>…
<ipcEntry kind="t" symbol="A01" …>…</ipcEntry>
<ipcEntry kind="c" symbol="A01" …>…
<ipcEntry kind="u" symbol="A01D" …>…
<ipcEntry kind="n" symbol="A01D" …>…</ipcEntry>
<ipcEntry kind="i" symbol="A01D" …>…</ipcEntry>
<ipcEntry kind="g" symbol="A01D0034000000" …>…</ipcEntry>
<ipcEntry kind="m" symbol=" A01D0034000000" …>…
<ipcEntry kind="1" symbol=" A01D0034010000" …>…
<ipcEntry kind="2" symbol="A01D0034020000" …>…
<ipcEntry kind="3" symbol="A01D0034030000" …>…
<ipcEntry scheme="cpc" kind="4" symbol="A01D0034032000" …>…
<ipcEntry scheme="cpc" kind="5" symbol="A01D0034035000" …>…</ipcEntry>
</ipcEntry>
<ipcEntry scheme="cpc" kind="4" symbol="A01D0034037000" …>…</ipcEntry>
</ipcEntry>
</ipcEntry>
</ipcEntry>
</ipcEntry>
</ipcEntry>
</ipcEntry>
</ipcEntry>
</staticIpc>
</en>
</ipcEdition>
</revisionPeriod>
</revisionPeriods>
Note: in order to highlight the structure of the XML fragment, only the ipcEntry and
top level elements are shown in above example.
Internet Publication (IPCPUB) URLs and Services 13/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
Example using Python (with images) 3.1.1.2.2.
import requests
url = 'http://www.wipo.int/classifications/ipc/ipcpub/' +\
'?get_xml_fragment=scheme' +\
'&classification=FI' +\
'&lang=en' +\
'&version=current' +\
'&symbol=A01N0047120000'
request = requests.get(url)
with open('A01N0047120000.zip', 'wb') as zipfile:
zipfile.write(request.content)
The above returned zip file is containing these files:
A01N0047120000.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE revisionPeriods SYSTEM "ipcr_scheme_1-02.dtd">
<revisionPeriods>
<revisionPeriod>
<ipcEdition edition="20140101" …>
<en>
<staticIpc …>
…
<ipcEntry kind="3" symbol="A01N0047120000" …>…
<ipcEntry kind="4" symbol="A01N0047120000000A" scheme="fi"…>
<textBody>
<title>
<titlePart>
<text>with a group Figure; Thio-anologues thereof
<img src="A01N0047120000000A-01.gif"/>
</text>
</titlePart>
</title>
</textBody>
</ipcEntry>
<ipcEntry kind="4" symbol="A01N0047120000000B" scheme="fi"…>
<textBody>
<title>
<titlePart>
<text>with a group (O or S) Figure; Thio-anologues thereof
<img src="A01N0047120000000B-01.gif"/>
</text>
</titlePart>
</title>
</textBody>
</ipcEntry>
…
</ipcEntry>
…
</staticIpc>
</en>
</ipcEdition>
</revisionPeriod>
</revisionPeriods>
a01n0047120000000a-01.gif
a01n0047120000000b-01.gif
Internet Publication (IPCPUB) URLs and Services 14/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
Other XML services 3.1.2.
3.1.2.1. IPC Scheme XML files
It provides XML files at specified granularity (i.e. one per Section, Class or Subclass).
3.1.2.2. IPC Definitions XML files
It provides a set of XML files, one per Symbol.
3.1.2.3. CPC Scheme in IPC compliant format
It provides a subset of CPC XML Scheme (and referenced files such as images) in
IPC-like XML format (see subcpc2ipc_scheme_specs_v3_1).
3.1.2.4. FI Scheme in IPC compliant format
It provides the CPC XML Scheme (and referenced files such as images) in IPC-like
XML format (see fi2ipc_scheme_specs_v3_1).
3.2. Other Web Services
“Check IPC Symbol Validity” service 3.2.1.
This service is for checking the validity of an IPC symbol.
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters:
Parameter Description Values Meaning
get (*) Parameter called by an IPC
related application. validity Call IPC validity service
symbol (*) 14 character string with zero padding, e.g.
[A01N0065030000] Symbol to check for validity
version (*)
version of the IPC in
YYYYMMDD format e.g.,
20090101
version of
the IPC in
YYYYMM
DD format
Version for which the
symbol must be valid
latest
Latest published version of
the IPC
jsonpcallback(*)
If set to a value other than
“none”, this parameter allow
for cross-domain call of the
service from JavaScript
enabled web browsers and
returns a JSON object instead
of an XML fragment
Key or none
Key is a value which allow
client and server sides of the
application to identify each
other.
It is more safe to leave the
generation of Key to the
client application (see
example below)
If jsonpcallback is set to “none”, this service returns an XML fragment such as:
<ipc-validity-check>
<classification-ipcr>
<version>20130101</version>
<section>A</section>
Internet Publication (IPCPUB) URLs and Services 15/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
<class>01</class>
<subclass>N</subclass>
<main-group>0065</main-group>
<subgroup>030000</subgroup>
<ipc-version-indicator>20090101</ipc-version-indicator>
<symbol-category>I</symbol-category>
<classification-validity>V</classification-validity>
</classification-ipcr>
</ipc-validity-check>
With:
version: version of the IPC in YYYYMMDD format.
section, class, subclass, main-group, subgroup: describe the concerned IPC symbol. These
elements are defined in the IPC validity file specification.
ipc-version-indicator: IPC version in which the symbol was last revised (YYYYMMDD
format).
As all symbols were considered revised at the opportunity of the IPC reform in
January 2006, the following convention is used: if the symbol is marked in the IPC
scheme as last revised in a version before 2006.01 the returned ipc-version-indicator
is 2006.01.
This element is not returned if symbol is not valid.
symbol-category: “K”, “I “or “D” (see entry-type in IPC validity file specification).
This element is not returned if symbol is not valid.
classification-validity: “V” or “N” (Valid / Not valid). The value in this element is
the binary result of checking existence of symbol defined by section, class, subclass,
main-group, subgroup in the IPC version referred to by version.
If jsonpcallback is different to “none”, this service returns a JSON object such as:
key({
"version": "20130101",
"section": "A",
"class": "01",
"subclass": "N",
"main_group": "0065",
"subgroup": "030000",
"ipc_version_indicator": "20090101",
"symbol_category": "K",
"classification_validity": "V"
})
Internet Publication (IPCPUB) URLs and Services 16/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
3.2.1.1. Example using JQuery
To call the service from JavaScript in a web browser and to check the validity
of an IPC symbol A01N0001000000 for the latest version of the IPC: jQuery.getJSON('http://www.wipo.int/classifications/ipc/ipcpub/?get=
validity&symbol=A01N&version=latest&jsonpcallback=?',
function(data){
if(data.classification_validity=='V')
alert('Your symbol is valid!');
else
alert('Your symbol is NOT valid!');
});
3.2.1.2. Example using Python
from urllib2 import urlopen
from xml.etree import ElementTree
# Call the service
request = urlopen(
'http://www.wipo.int/classifications/ipc/ipcpub/?get=validity'+\
'&symbol=A01N0001000000'+\
'&version=20100101'+\
'&jsonpcallback=none')
# Load HTTP response body into an XML Element Tree
xmltree = ElementTree.fromstring(request.read())
# Find validity element
validity = xmltree.find(
'classification-ipcr/classification-validity')
# Test validity element content
if validity.text == 'V':
print 'Your symbol is valid!'
else:
print 'Your symbol is NOT valid!'
Internet Publication (IPCPUB) URLs and Services 17/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
“Get Concordance To” service 3.2.2.
The purpose of this service is to provide, for a given revision of the IPC (indicated by
its “version”), the number and list of IPC symbols (“concordance-to-symbol”) that
should be considered for the symbol (concordance-from-symbol) indicated as
parameter during the call.
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters:
Parameter Description Values Meaning
get (*) Parameter called by an IPC
related application.
concorda
nce-to
Get a number and list of
symbols
(between the previous
version and the one
indicated by “version”
symbol (*) 14 character string with zero padding, e.g.
[A01N0065030000]
Symbol considered as
source for the revision (in
the previous IPC version)
version (*)
version of the IPC in
YYYYMMDD format e.g.,
20090101
version of
the IPC in
YYYYMM
DD format
Version for which the IPC
revision is considered
latest
Latest published version of
the IPC
jsonpcallback(*)
If set to a value other than
“none”, this parameter allow
for cross-domain call of the
service from JavaScript
enabled web browsers and
returns a JSON object instead
of an XML fragment
Key or none
Key is a value which allow
client and server sides of the
application to identify each
other.
It is more safe to leave the
generation of Key to the
client application (see
example below)
In return, the service provides:
Return-code which indicates the number of “concordance to” symbols found
for the IPC revision indicated by “Version”.
Return-code returns -1 if the IPC revision indicated by “version” is not found
in the system.
If jsonpcallback is set to “none”, this service returns an XML fragment such as:
<ipc-concordance-response>
<return-code>3</return-code>
<concordance revision-project="C476" from-version="20120101" to-
version="20130101">
<from symbol="A61G0005040000">
<to symbol="A61G0005040000"/>
<to symbol="B62K0005003000"/>
<to symbol="B62K0005023000"/>
</from>
</concordance>
</ipc-concordance-response>
Internet Publication (IPCPUB) URLs and Services 18/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
Or, in case of unchanged or non-valid symbol:
<ipc-concordance-response>
<return-code>0</return-code>
<concordance from-version="20120101" to-version="20130101">
<from symbol="A61F"/>
</concordance>
</ipc-concordance-response>
Documentation for the XML fragment above can be found at:
http://www.wipo.int/classifications/ipc/en/support/ under “Access current edition: YYYY.NN” / “Documentation” / “Specification of RCL file in
Word format”
If jsonpcallback is different to “none”, this service returns a JSON object such as:
key({
"return_code": "3",
"revision_project": "C476",
"from_version": "20120101",
"to_version": "20130101",
"from_symbol": ["A61G000l5040000"],
"to_symbols": [
["A61G0005040000"],
["B62K0005003000"],
["B62K0005003000"]
]
})
3.2.2.1. Example using JQuery
To call the service from JavaScript in a web browser and to get the list of IPC
concordance to symbol A61G0005040000 for IPC revision 2013.01: jQuery.getJSON('http://www.wipo.int/classifications/ipc/ipcpub/?get=co
ncordance-to&symbol=A61G0005040000&version=20130101&jsonpcallback=?',
function(data){
if(parseInt(data.return_code, 10) > 0) {
jQuery.each(data.to_symbols, function(idx, val){
alert(val[0]);
});
}
});
Internet Publication (IPCPUB) URLs and Services 19/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
3.2.2.2. Example using Python
from urllib2 import urlopen
from xml.etree import ElementTree
# Call the service
request = urlopen(
'http://www.wipo.int/classifications/ipc/ipcpub/?get=concordance-
to’ +\
'&symbol= A61G0005040000’ +\
'&version=20130101’ +\
'&jsonpcallback=none')
# Load HTTP response body into an XML Element Tree
xmltree = ElementTree.fromstring(request.read())
# Find “to” elements
tos = xmltree.findall('concordance/from/to')
# print concordance symbols
print ', '.join([to.get('symbol') for to in tos])
“Get Selected IPC Symbol” service 3.2.3.
Caution: web browser must accept Cookies from wipo.int in order to use this service.
This service is to retrieve the symbol stored in application server as described in 2.6.2.
The fixed part of the URL http://www.wipo.int/classifications/ipc/ipcpub/? is to be
concatenated with the following parameters:
Parameter Description Values Meaning
get(*)
The IPC notion previously stored. Returns the symbol stored in the current
web application server session as a JSON
object.
If no symbol was previously stored, the
returned value is “none”.
If cookies from wipo.int are not accepted,
the returned value is “nocookie”
symbol
Information
stored as
described under
2.6.2. when
store=symbol
jsonpcallback(*)
If set to a value other than “none”, this
parameter allow for cross-domain call of
the service from JavaScript enabled web
browsers.
In such case, the service returns a JSON
object such as:
jsonpkey("A01N0001000000")
If jsonpcallback is set to “none”, this
service returns a JSON object such as
"A01N0001000000"
Key or
none
Key is a value
which allow client
and server sides
of the application
to identify each
other.
It is recommended
to leave the
generation of Key
to the client
application (see
example below)
Internet Publication (IPCPUB) URLs and Services 20/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
3.2.3.1. Example using JQuery
a) The calling web application displays the IPC internet publication: jQuery('iframe#ipcpub').attr('src',
'http://www.wipo.int/classifications/ipc/ipcpub/?store=symbo
l', 'ipcpub');
b) An IPC symbol is expected to be selected in the IPC internet publication
(the selected symbol is shown in the “Current symbol field”).
c) The calling web application calls the Get IPC Symbol service to retrieve
the symbol stored. For example: using JQuery to update an element named
“symbol” with the IPC Symbol captured through a button named
“getsymbol”: jQuery('#getsymbol').click(function () { var
url='http://www.wipo.int/classifications/ipc/ipcpub/?get=symbol&js
onpcallback=?'); jQuery.getJSON(url,
function(data){jQuery('#symbol').val(data);}); });
Internet Publication (IPCPUB) URLs and Services 21/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
“STATS Assistance” service 3.2.4.
The purpose of this service is to provide the HTML fragment which is the result of a
specific search operation in the PATENTSCOPE database.
The fixed part of the URL “http://www.wipo.int/classifications/ipc/ipcpub/?” is to be
concatenated with the following parameters:
Parameter Description Values Meaning
get(*)
Parameter called by
an IPC related
application.
statsassistance Ask for STATS Assistance
service
words(*) Term(s) to be
searched
Space
separated list
of word(s)
The search engine is trying to
find all the specified terms in a
text neighborhood which
corresponds more or less to the
size of a Patent document
paragraph.
lang(*)
Two-letter code of
the language in
which the search is
performed
ar
zh
en
fr
de
he
ja
ko
pt
ru
es
vn
Arabic
Chinese
English
French
German
Hebrew
Japanese
Korean
Portuguese
Russian
Spanish
Vietnamese
limittosymbols(*)
Comma separated list of IPC
symbols, e.g.
[A01N0065030000,A61]
or: none
The places of the IPC and their
subgroups to be searched and to
be used as filter for returned
places.
excludesymbols(*)
Comma separated list of IPC
symbols, e.g.
[A01N0065030000,A61]
or: none
The places of the IPC and their
subgroups to be excluded from
the search and from returned
places.
stemming(*)
Standard Lucene
implementation of
the Porter Stemming
Algorithm, a
normalization
process that
removes common
endings from words.
true
false
Apply stemming during search.
Do not apply stemming.
jsonpcallback(*)
This parameter
allow for cross-
domain call of the
service from
JavaScript enabled
web browsers and
returns a JSON
object
Key
Key is a value which allow
client and server sides of the
application to identify each
other.
It is more safe to leave the
generation of Key to the client
application (see example below)
Internet Publication (IPCPUB) URLs and Services 22/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
“Get Classifications Versions” service 3.2.5.
The purpose of this service is to return the list of CPC, FI and IPC versions published
in IPCPUB.
The URL of this service does not take any parameter and is
“http://www.wipo.int/classifications/ipc/ipcpub/get_classifications_versions
Returned code
The service returns one of the following HTTP code:
Success: 200
System error: 500
Returned data
The data returned is a list of values in JSON format which is alphabetically ordered
by classification acronym and then by version date (starting with most recent one).
Description:
Each entry in the list is a list of 3 values:
1. Classification acronym (i.e. "CPC", "FI" or "IPC")
2. "YYYYMMDD": Date on 8 digit (Year, Month, Day):
For CPC: the date corresponding to the year and month in the filename
under URL http://www.cooperativepatentclassification.org/cpcSchemeAndDefinitions/Bulk.html
(by convention first day of the month is considered).
For FI: the version date of FI as indicated by the JPO.
For IPC: the date of entry into force.
3. Status:
"archived": a legacy version
"current": the version in force
"latest": the latest version i.e. either the current or immediately
following version (when early publication is available)
Example of data returned by this service on November 1, 2016:
[
["CPC , "20160201", "current"],
["FI", "20151116", "current"],
["IPC", "20170101", "latest"],
["IPC", "20160101", "current"],
["IPC", "20150101", "archived"]
]
Internet Publication (IPCPUB) URLs and Services 23/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
“IPCCAT” service 3.2.6.
This service provided by the IPCCAT system is documented as part of IPCPUB
which provides a user interface for text categorization in the IPC and interfaces
IPCCAT web service.
The purpose of this service is to get IPC predictions based on a given text.
Predictions which can only be gotten at Class, Sub-class or Main Group level are
qualified with a confidence score. Information about IPCCAT, its training set,
coverage of the IPC and quality metrics for its predictions is available under the
IPCCAT section of IPCPUB online help.
The fixed part of the URL of this service is:
http://www.wipo.int/classifications/ipc/ipccat.
The IPCCAT service accepts the following parameters to be passed as URL
parameters or in the HTTP request body in XML format:
Parameter Description Values Meaning
lang (*)
ISO 639-1 two-
letter code of the
language in which
text
categorization is
requested
en
fr
es
de
ru
English
French
Spanish
German
Russian
numberofpredictions (*) Number of
predictions
1
2
3
4
5
The maximum number
of IPC Symbols to be
returned by this
service
hierarchiclevel (*) IPC hierarchic
level name
CLASS
SUBCLASS
MAINGROUP
SUBGROUP
The IPC hierarchic level
at which the
classification should be
proposed: Class,
Subclass, Main Group or
Sub Group
startfromsymbol
A symbol valid in the IPC version
indicated as relevant for IPCCAT
training, e.g. A01N0065030000
The place of the IPC
delimiting the search
scope.
text (*) UTF-8 encoded text of maximum
length of 6590 characters.
The text on which the
prediction is based.
3.2.6.1. Examples
Example of parameters passed as URL parameters:
http://www.wipo.int/classifications/ipc/ipccat
?startfromsymbol=G06
&hierarchiclevel=MAINGROUP
&lang=en
&numberofpredictions=2
&text=automatic text classification for patent
This simple method can be used if text parameter value is short enough.
Internet Publication (IPCPUB) URLs and Services 24/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
Example of parameters passed as XML in the HTTP request body:
<ipccat>
<startfromsymbol>G06</startfromsymbol>
<hierarchiclevel>MAINGROUP</hierarchiclevel>
<lang>en</lang>
<numberofpredictions>2</numberofpredictions>
<text>automatic text classification for patent</text>
</ipccat>
This method is the recommended one as there is no restriction on text parameter value
length.
In both cases above, XML data returned in the HTTP response body is for
example:
<predictions>
<msg>ok</msg>
<prediction>
<rank>1</rank>
<category>G06F0017</category>
<score>1675</score>
</prediction>
<prediction>
<rank>2</rank>
<category>G06K0009</category>
<score>1208</score>
</prediction>
</predictions>
3.2.6.2. XML response description
The response is made of <predictions> root element that contains a <msg> element
followed by zero or more <prediction> elements.
The <msg> element content is one of these texts:
“ok”: there is no error in request parameters and there is at least one
prediction as result.
“No result”: The text to be classified is too short or the specific
combination of parameter values can not produce any result.
“Invalid parameter”: Parameter(s) name or value(s) do not comply with
this specification.
“This instance of IPCCAT only supports the following language(s):
xx, yy”: For example the language in which the text to be categorized is
written must be English (EN) or French (FR), in such case the message is
“This instance of IPCCAT only supports the following language: en, fr”.
The <prediction> element contains three elements:
<rank>: the value is an integer indicating the rank of a prediction among
others returned by the service. The rank is established by sorting
confidence scores of returned predictionsi.e. the prediction with highest
confidence score has rank 1, next confidence score has rank 2 …).
Internet Publication (IPCPUB) URLs and Services 25/27
IPC_Internet_Publication_URLs_and_Services_V7.0.docx 25/05/18
<category>: the value is an IPC Symbol of hierarchic level according to
<hierarchiclevel> parameter value. This Symbol is the IPC place that
IPCCAT predicts as best matching the content of <text>.
<score>: the value is an integer indicating the level of confidence that
IPCCAT has in the content of <text> matching the concerned category in
the requested IPC hierarchical level.
As example of their use, in IPCPUB user interface, these confidence score
are converted into a number of stars as follow:
Confidence score Number of stars
From 0 to 599 0
From 600 to 699 1
From 700 to 899 2
From 900 to 1249 3
From 1250 to 1599 4
From 1600 5
Note: The confidence score is directly linked to the performance of the neural
network. For instance, from 1600 onwards, IPCCAT’s prediction is correct in 97% of
tested cases (for a given neural network).
3.1. Other services
IPC Scheme HTML files 3.1.1.
It provides HTML files showing the IPC Scheme according to a specific layout and
order (those of IPCPUB).
IPC Scheme doc files 3.1.2.
It provides MS-Word files showing the IPC Scheme in IPCPUB layout, one per
Subclass.
IPC Definitions HTML files 3.1.3.
It provides HTML files showing the IPC Definitions according to a specific layout
and order (those of IPCPUB).
IPC Definitions doc files 3.1.4.
It provides MS-Word files showing the IPC Definitions in IPCPUB layout, one per
Symbol.
Inventory of ever used IPC Symbols 3.1.5.
It provides a list of the Symbols that were ever valid in the IPC, with their date of
creation and their date of deletion.
4. Prototypes Some calls to IPC internet publication services are illustrated by prototypes available
under http://www.wipo.int/classifications/ipc/en/ITsupport/prototypes/index.html .
End of document