Page 1 of 1

IPC Classification

Posted: Thu Jul 05, 2018 7:42 pm
by a497652958
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

Re: IPC Classification

Posted: Tue Jul 24, 2018 11:12 am
by EPO / PATSTAT Support
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