Skip to main content
 
 
 
IN THIS SECTION
3 posts
ian.l
Last seen: 12/18/2023 - 11:44
Joined: 12/05/2023 - 17:21
Can we search inventors for someone with one of many exact first and last names?

I have a list of first + last names of inventors. E.g., 
John Doe, Jane Smith, Sruti Sampleson

I would like to find patents where at least one of the inventors has a Firstname + Lastname that matches one of those three.

Using the patents API, I've tried something like this in my query:
"_or": [                    
    {"_and":[ {"inventors.inventor_name_first": "John"}, {"inventors.inventor_name_last": "Doe"}]},
    {"_and":[ {"inventors.inventor_name_first": "Jane"}, {"inventors.inventor_name_last": "Smith"}]},
    {"_and":[ {"inventors.inventor_name_first": "Sruti "}, {"inventors.inventor_name_last": "Sampleson"}]}
]

But, when doing so, I get patents returned where the inventors may be something like:
Jane Sampleson
John Smith
Sruti Doe

But none are actual, exact matches for any of those three First + Last Names.

I understand why the search is returning patents like that. With how inventors works, it seems like each AND statement is looking to check "Do any  inventors have the first name [X] and do any inventors also have the last name [Y]," which isn't quite what I want to do. 

Is there a way to adjust the query so that it, instead, answers the question "Do any inventors on a patent have the first name [X] and, if they do, do any of those X-named inventors also have the last name [Y]?"

Thanks!

PVTeam
Role: moderator
Last seen: 04/24/2024 - 12:31
Joined: 10/17/2017 - 10:47
Searching for patents by inventor full name

Hi Ian,

The kind of per-entity query you describe is not currently possible using the patent endpoint alone. The method to accomplish the same result would be to first query the inventors endpoint with the same query logic you provide to collect each inventor-of-interest’s inventor_id. After that, you would need to list the collected inventor_id values in a query to the patent endpoint. See the example below:

first query api/v1/inventor:

"q":{"_or": [                    
      {"_and":[{"inventor_name_first": "John"}, {"inventor_name_last": "Doe"}]},
      {"_and":[{"inventor_name_first": "Jane"}, {"inventor_name_last": "Smith"}]},
      {"_and":[{"inventor_name_first": "Sruti"}, {"inventor_name_last": "Sampleson"}]}
  ]},
"f":["inventor_id","inventor_name_first","inventor_name_last"]

which might return the values “inv_id_1”, “inv_id_2”, “inv_id_3”, etc. for inventor_id

Then query api/v1/patent:

"q":{"inventors.inventor_id": ["inv_id_1","inv_id_2","inv_id_3"]}

Hope this helps, and let us know if we can offer any more clarification or support! Thank you for using PatentsView!

Best,
PVTeam

ian.l
Last seen: 12/18/2023 - 11:44
Joined: 12/05/2023 - 17:21
Thanks! Question about Inventor results

This is a helpful workaround I hadn't considered, thank you!

We're trying to do a bit of a "fuzzy" search on first name with something like so:

  "q": {"_and":[ {"_begins": {"inventor_name_first": "Geo"}}, {"inventor_name_last": "Smith"}]},

So that we could find "George Smith"s, and also find "Georgia Smith" or "Geoffrey Smith", for example.

Executing that query on the inventors endpoint returns some results I wouldn't, necessarily expect. E.g.,

{
      "inventor_id": "fl:er_ln:smith-2",
      "inventor_name_first": "Erwin George",
      "inventor_name_last": "Smith"
}

I would *not* expect an "Erwin George" to show up, as "Erwin George" doesn't begin with "Geo". It does contain "Geo", but inventor_name_first does not begin with it.

Do I have something improperly formatted or is this working as expected and the "_begins" is also looking at some hidden inventor_name_middle field when evaluating inventor_name_first (or something like that)?