Methods
Read the published patent
Start from the actual publication so the user can inspect the patent itself rather than only a derived database record.
Parse the OPS XML
Use the OPS-style XML as the machine-readable bibliographic layer that the parser can walk field by field.
Resolve the address to a point
Clean the address, geocode it, and keep the returned context.
Join the point to geography
Join the resolved point to the requested country, region, city, or custom boundary.
Published patent PDF
This is the primary source document. The methods chain begins here so the publication can be inspected directly before any parsing or geocoding happens.
Structured OPS XML
This is the machine-readable bibliographic layer DGMPD parses before geocoding or boundary matching starts.
<?xml version="1.0" encoding="UTF-8"?>
<ops:world-patent-data
xmlns:ops="http://ops.epo.org"
xmlns:exchange="http://www.epo.org/exchange">
<exchange:exchange-document family-id="1234567" country="EP" doc-number="1000000" kind="A1">
<exchange:bibliographic-data>
<exchange:publication-reference>
<exchange:document-id document-id-type="docdb">
<exchange:country>EP</exchange:country>
<exchange:doc-number>1000000</exchange:doc-number>
<exchange:kind>A1</exchange:kind>
</exchange:document-id>
</exchange:publication-reference>
</exchange:bibliographic-data>
</exchange:exchange-document>
<exchange:exchange-document family-id="7654321" country="EP" doc-number="1000001" kind="B1">
<exchange:bibliographic-data>
<exchange:publication-reference>
<exchange:document-id document-id-type="docdb">
<exchange:country>EP</exchange:country>
<exchange:doc-number>1000001</exchange:doc-number>
<exchange:kind>B1</exchange:kind>
</exchange:document-id>
</exchange:publication-reference>
</exchange:bibliographic-data>
</exchange:exchange-document>
</ops:world-patent-data>
Geocode the address with Nominatim
DGMPD cleans the address, sends it to Nominatim, and keeps the returned label and coordinates.
Here 855 S. Mint Street, Charlotte, North Carolina 28202, United States resolves to Uptown Charlotte and becomes the anchor for the geography join.
Open NominatimMatch the point to the requested geography
Once the point is resolved, DGMPD joins it to the requested boundary layer: country, region, city, or a supplied custom geography.
In this example the point sits in Third Ward, Uptown Charlotte, within Mecklenburg County, North Carolina, and the United States.