IPC Classification

Here you can post your opinions, ask questions and share experiences on the PATSTAT product line. Please always indicate the PATSTAT edition (e.g. 2015 Autumn Edition) and the database (e.g. PATSTAT Online, MySQL, MS SQL Server, ...) you are using.
Post Reply

a497652958
Posts: 4
Joined: Tue Jun 26, 2018 6:39 pm

IPC Classification

Post by a497652958 » Thu Jul 05, 2018 7:42 pm

Hi Dear All,

I am trying to obtain all the patents under a certain IPC classification with certain criteria. It always returns with 32 million results, which I believe is the total number of patents in the world. Anyway, I did some test searching and will post some of my code (pretty simple). Would you please check it for me?

I intend to search all US and China patents under H04L29/06:

select a1.appln_id, a1.appln_auth, a4.ipc_class_symbol, a3.person_name, a3.person_ctry_code
from tls201_appln a1
left outer join tls207_pers_appln a2 on a2.appln_id = a1.appln_id
left outer join tls206_person a3 on a3.person_id = a2.person_id
left outer join tls209_appln_ipc a4 on a4.appln_id = a1.appln_id
where a1.granted = '1' and a4.ipc_class_symbol like 'H04L%29/06%' and a1.appln_auth = 'US' or a1.appln_auth = 'CN' and a3.person_ctry_code = 'US' or a3.person_ctry_code = 'CN'
(half a million results)


Later I tried to type other testing code:

select a1.appln_id, a1.appln_auth, a4.ipc_class_symbol
from tls201_appln a1
join tls209_appln_ipc a4 on a4.appln_id = a1.appln_id
where a1.granted = '1' and a4.ipc_class_symbol = 'H04L 29/06' and a1.appln_auth = 'US'
(0 results)

select a1.appln_id, a1.appln_auth, a4.ipc_class_symbol
from tls201_appln a1
join tls209_appln_ipc a4 on a4.appln_id = a1.appln_id
where a1.granted = '1' and a4.ipc_class_symbol like 'H04L%29/06%' and a1.appln_auth = 'US'
(0 results)

select a1.appln_id, a1.appln_auth, a4.ipc_class_symbol
from tls201_appln a1
join tls209_appln_ipc a4 on a4.appln_id = a1.appln_id
where a1.granted = '1' and a4.ipc_class_symbol = 'H04L 29/06' and a1.appln_auth = 'US' or a1.appln_auth = 'CN'
(32 million)

select a1.appln_id, a1.appln_auth, a4.ipc_class_symbol
from tls201_appln a1
join tls209_appln_ipc a4 on a4.appln_id = a1.appln_id
where a1.granted = '1' and a4.ipc_class_symbol = 'H04L 29/06' and a1.appln_auth = 'US'
(0 result, only thing I did is delete " or a1.appln_auth = 'cn')
(correct number)

Can someone please explain what is happening here and modify the first code for me? I would really appreciate it!

Thank you in advance!
Musso Du


EPO / PATSTAT Support
Posts: 64
Joined: Thu Feb 22, 2007 5:33 pm

Re: IPC Classification

Post by EPO / PATSTAT Support » Tue Jul 24, 2018 11:12 am

Hi Musso,

I think this is what you want:

Code: Select all

select a1.appln_id, a1.appln_auth, a4.ipc_class_symbol, a3.person_name, a3.person_ctry_code
 from tls201_appln a1
 left outer join tls207_pers_appln a2 on a2.appln_id = a1.appln_id
 left outer join tls206_person a3 on a3.person_id = a2.person_id
 left outer join tls209_appln_ipc a4 on a4.appln_id = a1.appln_id
 where a1.granted = 1 
 and a4.ipc_class_symbol like 'H04L  29/06'
 and (a1.appln_auth = 'US' or a1.appln_auth = 'CN') 
It retrieves 429 685 rows in the PATSTAT 2018 Spring Edition.
  • The main issue was that you need to put "(a1.appln_auth = 'US' or a1.appln_auth = 'CN')" in brackets, because you want all applications of a certain IPC which are either US or CN applications.
    What your query actually specified are all US applications with a certain IPC plus all(!) CN application.
    You could as well use the more elegant condition with the IN operator "a1.appln_auth in ('US', 'CN')". The result will be the same.
  • I ignored your condition on the countries of persons because you did not mention it when you described your information need. If you add it, you must also set brackets sensibly.
  • Although it does not change the result, some advise: If you search for a specific IPC / CPC symbol, then do not use wild cards in the symbol. E. g., you would unintentionally also retrieve applications with the IPC symbols like 'H04L 129/06' or 'H04L 29/0612' . Luckily, there are none in this case.
    Between 'H04L' and '29/06' there are 2 spaces, because according to WIPO ST.8 the main group always takes 4 positions: The '29' are right aligned, so you have to fill in 2 spaces. See also the PATSTAT Data Catalog.
Martin
PATSTAT Support Team
EPO - Vienna
patstat @ epo.org


Post Reply