The goal of this project is to develop a web-based application that mimics much of the functionality of the Feathers application at [login to view URL] That program, when given a number, will obtain data from [login to view URL] to update the user as to the status of a trademark application / registration.
A key difference is that since this is a web-based application, it should force user logon / registration and the results should be emailed to the user when changed. Therefore, there needs to be some sort of periodic job (preferrably via cron) that will check the USPTO website for updates and store them. This is meant to be a multi-user website. When the user logs in, they should be presented with a list of their trademarks they have saved and the latest status. They should then be able to click on the trademark and get more data (similar to the data one gets in Feathers).
The following pages should be requested:
- For a Registration Number - [login to view URL];entry=[RegNum]
- For a Serial Number - [login to view URL];entry=[SerNum]
The resulting page will need to be parsed. The following are examples of how the fields can be parsed from the current page:
The page should return: <b>PROSECUTION HISTORY</b> somewhere in the response.
[SerNum]: <b>Serial Number:</b>[*]<br/>
[RegNum]: <b>Registration Number:</b>[*]<br/>
[Trademark]: <b>(words only):</b>[*]<br/>
[Status]: <b>Current Status:</b>[*2]<br/><b>Date of Status:</b>[*1' - ]<br/>
[FilingDate]: <b>Filing Date:</b>[*]<br/>
[RegDate]: <b>Registration Date:</b>[*]<br/>
[PublishedDate]: <b>The Information will be/was published in the Official Gazette on</b>[*]<br/>
[LawOffice]: <b>Law Office Assigned:</b>[*]<br/>
[Owner]: <b>LAST APPLICANT(S)/OWNER(S) OF RECORD</b>[*#1.=]<br/>
[LastHistory]: near the top of this page.</b><br/><br/></center>[*]<br/>
[Location]: <b>Current Location:</b>[*2# -= - ]<br/>[-]<b>Date In Location:</b>[*1' - ]<br/>
[CurrentStatus]: <b>Current Status:</b>[*]<br/>
[DateOfStatus]: <b>Date of Status:</b>[*]<br/>
[History]: <b>PROSECUTION HISTORY</b>[-]<hr/>[*]<br/>
The following are guidelines for this project:
1. The above rules for parsing needs to be easily editted if in the future the pages change, and therefore should be part of the configuration for the web application
2. It is preferred that a PHP framework is used. If you chose not to use a framework, at a bare minimum the Inspekt library ([login to view URL]), ADODB ([login to view URL]) and Smarty ([login to view URL]) must be used. If a framework is used, it must have a templating and database abstraction capabilities. Please specify in your bid what framework you will be using.
3. Design is not too important at this stage as long as the data is easily displayed.