codingatty / plumage-py Goto Github PK
View Code? Open in Web Editor NEWPython module to obtain trademark status information from USPTO's TSDR system
License: Apache License 2.0
Python module to obtain trademark status information from USPTO's TSDR system
License: Apache License 2.0
As of October 2, 2020, the PTO now requires users to apply for and obtain an API key:
https://developer.uspto.gov/api-catalog/tsdr-data-api
Need to add support for this; Plumage will not work without it now.
When I run plumage.py on the example registration, reg. no 2,564,831, the resulting TSDRData object reports the DiagnosticInfoXSLTFilename as ST66.xsl, but the XML coming out of the status_s66 file in https://tsdrapi.uspto.gov/ts/cd/casestatus/rn2564831/content.zip contains the mappings that exist in the ST96.xsl, so it appears this must be the file used for the transforms. As far as I can tell though, the document root is used to determine which XSLT file should be used, and the document root for the status_s66 file (big surprise coming) maps to the ST66 tag (imagine that). At this point, however, I lose the thread as to how the file is getting transformed correctly, since the applicable mappings are only present in ST96.xsl.
Am I making sense?
Thanks.
The TSDRData output I get for reg. no 2,564,831:
"{"DiagnosticInfoImplementationCopyright": "Copyright 2014-2017 Terry Carroll", "RegistrationNumber": "2564831", "CurrentLocationCode": "40S", "MarkCurrentStatusDateTruncated": "2009-02-07", "CorrespondentAddressCity": "LOS ANGELES", "DiagnosticInfoImplementationURL": "https://github.com/codingatty/Plumage-py\", "RegistrationDateTruncated": "2002-04-30", "CorrespondentEmailAddress": "", "ApplicationDateTruncated": "1996-10-15", "CorrespondentOrganization": "FULWIDER PATTON LEE & UTECHT LLP", "DiagnosticInfoImplementationVersion": "V. 1.2.0", "DiagnosticInfoXSLProcessorVersion": "1.0", "CorrespondentAddressGeoRegion": "CALIFORNIA", "CurrentLocationDate": "2007-08-21-04:00", "RenewalDateTruncated": "", "DiagnosticInfoImplementationDate": "2017-03-14", "LawOfficeAssignedText": "LAW OFFICE 102", "PublicationDateTruncated": "2002-02-05", "DiagnosticInfoXSLTAuthor": "Terry Carroll", "PublicationDate": "2002-02-05-05:00", "RenewalDate": "", "DiagnosticInfoXSLTURL": "https://github.com/codingatty/Plumage\", "CorrespondentCountryCode": "US", "DiagnosticInfoXSLTFormat": "ST.66", "StaffOfficialTitle": "", "CorrespondentFaxNumber": "", "DiagnosticInfoExecutionDateTime": "2017-06-21 02:10:07", "ApplicationNumber": "75181334", "MarkCurrentStatusDate": "2009-02-07-05:00", "StaffName": "", "DiagnosticInfoXSLTDate": "2017-03-15", "CorrespondentAddressLine02": "6060 CTR DR 10TH FL", "DiagnosticInfoImplementationAuthor": "Terry Carroll", "DiagnosticInfoXSLTSPDXLicenseIdentifier": "Apache-2.0", "CorrespondentCombinedAddress": "HOWARD HUGHES CTR/6060 CTR DR 10TH FL/LOS ANGELES/CALIFORNIA/90045/US", "CurrentLocationDateTruncated": "2007-08-21", "MarkVerbalElementText": "MONTY PYTHON'S FLYING CIRCUS", "CorrespondentPostalCode": "90045", "DiagnosticInfoImplementationLicenseURL": "http://www.apache.org/licenses/LICENSE-2.0\", "DiagnosticInfoXSLTCopyright": "Copyright 2014-2017 Terry Carroll", "RegistrationDate": "2002-04-30-04:00", "DiagnosticInfoXSLProcessorVendor": "libxslt", "CorrespondentAddressLine01": "HOWARD HUGHES CTR", "DiagnosticInfoXSLTLocation": "/var/task/Plumage", "DiagnosticInfoImplementationName": "Plumage-py", "DiagnosticInfoXSLTVersion": "1.1.1", "DiagnosticInfoXSLTLicense": "Apache License, version 2.0 (January 2004)", "RegisterCategory": "Principal", "MarkCurrentStatusExternalDescriptionText": "Registration cancelled because registrant did not file an acceptable declaration under Section 8. To view all documents in this file, click on the Trademark Document Retrieval link at the top of this page.", "DiagnosticInfoXMLSource": "https://tsdrapi.uspto.gov/ts/cd/casestatus/rn2564831/content.zip\", "ApplicationDate": "1996-10-15-04:00", "DiagnosticInfoXSLTLicenseURL": "http://www.apache.org/licenses/LICENSE-2.0\", "DiagnosticInfoImplementationLicense": "Apache License, version 2.0 (January 2004)", "CorrespondentPhoneNumber": "", "DiagnosticInfoImplementationSPDXLicenseIdentifier": "Apache-2.0", "DiagnosticInfoXSLProcessorVendorURL": "http://xmlsoft.org/XSLT/\", "CurrentLocationText": "SCANNING ON DEMAND", "DiagnosticInfoXSLTFilename": "ST66.xsl", "CorrespondentName": "I MORLEY DRUCKER"}"
Hi, since Feburary 2020, the USPTO made a mandate to make sure all trademark registrations include the primary email address (most of the time a legal representative) and secondary email address (the one of the registration partner) to be included in the application. Where could I implement this in the module? Thank you so much!!
Also any updates on the API key implementation? It would be great if you could help me point out how you imagine doing this. Thank you.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.