SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
United States Patent & Trademark Office!


                   !
    America Invents Act!
       and Alfresco!
                  !
              Presented by
                         !

              Joe Wolf!
  Software Developer, USPTO OCIO!
                   !
                   !
                   !
             March 5, 2013!
The Disclaimer!

•  Views expressed in this presentation are my
   own and not necessarily representative of the
   views of the U.S. Patent & Trademark Office
   or Department of Commerce.!
•  Discussions regarding specific software
   products or vendors do not constitute an
   endorsement of said products or vendors by
   the U.S. Patent & Trademark Office or
   Department of Commerce.!
The Law!

•  Leahy-Smith “America Invents Act” (AIA)!
•  Signed September 15th, 2011!
•  Introduces significant reforms!
    –  USPTO granted fee setting authority!
    –  No more Tax Code compliance strategy
       patents!
    –  First to Invent à First Inventor to File!
    –  Expanded Post-Grant procedures and
       reviews!
    –  And more!!
The Requirements!
•  Support filing of AIA Petitions!
    –  Inter Partes Review!
    –  Transition program for Covered Business Methods!
    –  Post-Grant Review !
•  Collect documents!
    –  Papers & Exhibits!
    –  Public, private, or confidential visibility!
•  Collect payments!
•  Support PTAB workflow, email notifications!
•  Provide public access to documents!


  !
The Architecture!

             Petitioners, Public



 COTS Case Management
       Product!
                !                              Alfresco 4.0
•    Support Petitions Workflow!    CMIS!
                                                Enterprise!
•    Send Notifications!                               !
•    Collect Payments!                     •  Persist Documents!
•    Persist Case Metadata!
•    Provide Public Search!


             USPTO Personnel



                                                                   5!
The Constraints!

•  Congressionally-mandated deadline!
•  First production system to use Alfresco and Case
   Management COTS Product!
•  Case Management COTS Product limitations!
    –  Only supported CMIS!
    –  Handled user registration and authentication!
    –  Closed architecture!



                                                       6!
The Strategies!

•  CMIS Only!
   –  Single, top-level “DropZone” for Case creation!
   !
               Cases/DropZone/                         Cases/2013/PGR/00/


createFolder     PGR2013-        OnCreateNodePolicy        PGR2013-
                 00001                                     00001
                                 1.  Validate uniqueness
                                     of CaseID
                                 2.  Move folder
                                 3.  Track CaseID in
                                     attributeService
                                 4.  Create case sub-
                                     folders with ACLs

                                                                            7!
The Strategies!

•  CMIS Only!
   –  Case-specific Drop Zones for filing documents!
                                                     PGR2013-00001/Record/
             PGR2013-00001/                             Exhibit/Petitioner
             cases:exhibit                                  cases:exhibit
createDoc                         OnCreateNodePolicy
             cases:filingParty=                               cmis:name=
                 petitioner                                 Exhibit1001.pdf
             cases:exhibitNo=     1.  Move to appropriate    cases:caseId=
                   1001               subfolder/rename      PGR2013-00001
                                  2.  Apply caseId aspect
                                  3.  Apply ACLs based
                                      on visibility, if
                                      necessary



                                                                              8!
The Strategies!

•  Externalized User Registration/Authentication!
   –  Trusted connection between Case Management
      Product and Alfresco!
<servlet>	
  
	
  	
  <servlet-­‐name>cmisprps</servlet-­‐name>	
  
	
  	
  <servlet-­‐class>	
  
	
  	
  	
  	
  org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet	
  
	
  	
  </servlet-­‐class>	
  
	
  	
  <init-­‐param>	
  
	
  	
  	
  	
  	
  <param-­‐name>callContextHandler</param-­‐name>	
  
	
  	
  	
  	
  	
  <param-­‐value>	
  
	
  	
  	
  	
  	
  	
  	
  gov.uspto.prps.AutoAuthCallContextHandler	
  
	
  	
  	
  	
  	
  </param-­‐value>	
  
	
  	
  </init-­‐param>	
  
	
  	
  <load-­‐on-­‐startup>8</load-­‐on-­‐startup>	
  
</servlet>	
  

                                                                                           9!
The Strategies!

•  Externalized User Registration/Authentication!
   –  Alfresco users created on demand!
public	
  Map<String,	
  String>	
  getCallContextMap(HttpServletRequest	
  request)	
  {	
  
	
  	
  //	
  ...extract	
  username	
  from	
  HTTP	
  request	
  
	
  	
  String	
  ticket	
  =	
  ticketComponent.getCurrentTicket(username,	
  true);	
  
	
  	
  	
  
	
  	
  AuthenticationUtil.runAs(new	
  RunAsWork<NodeRef>()	
  {	
  
	
  	
  	
  	
  @Override	
  
	
  	
  	
  	
  public	
  NodeRef	
  doWork()	
  throws	
  Exception	
  {	
  
	
  	
  	
  	
  	
  	
  return	
  personService.getPerson(username);	
  //	
  call	
  has	
  side-­‐effect!	
  
	
  	
  	
  	
  }	
  
	
  	
  },	
  AuthenticationUtil.getSystemUserName());	
  	
  
	
  	
  	
  
	
  	
  Map<String,	
  String>	
  context	
  =	
  new	
  HashMap<String,	
  String>();	
  
	
  	
  context.put(CallContext.USERNAME,	
  "");	
  
	
  	
  context.put(CallContext.PASSWORD,	
  ticket);	
  
	
  	
  return	
  context;	
  
}	
                                                                                                             10!
The Strategies!

•  Externalized User Registration/Authentication!
   –  Dynamic group assignments based on
      metadata provided in CMIS call!
//	
  during	
  execution	
  of	
  onCreateNode	
  policy	
  for	
  documents...	
  
	
  
String	
  user	
  =	
  AuthenticationUtil.getFullyAuthenticatedUser();	
  
String	
  group	
  =	
  groupName(caseId,	
  filingParty);	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  //	
  hides	
  PermissionService.GROUP_PREFIX	
  weirdness	
  
	
  
Set<String>	
  groupMembers	
  =	
  authorityService	
  
	
  	
  	
  	
  	
  	
  .getContainedAuthorities(AuthorityType.USER,	
  group,	
  true);	
  
	
  
if	
  (groupMembers	
  ==	
  null	
  ||	
  !groupMembers.contains(user))	
  {	
  
	
  	
  authorityService.addAuthority(group,	
  user);	
  
}	
  

                                                                                                                             11!
The Strategies!

•  Closed Architecture!
   –  Folder structure reflects business view!
   –  Content model holds key metadata!
   –  Use CMIS!
     •  Expunging!
     •  Reporting!
     •  Auditing!
     •  Multi-document PDF generation!



                                                12!
The Wish List!

•  Generate code from content model XML!
    –  e.g. XJC (JAXB), wsdl2java, hbm2java!
•  Support Webscripts written in any JSR 223-
   compliant language!
•  CRUD in CMIS Query Language!
•  Apache Chemistry to go 1.0!
•  Servlet 3.0/JavaEE 6 support or URL dispatching
   via Spring Web!


                                                     13!
The End!




           14!

Contenu connexe

Similaire à Joe Wolf: USPTO

Something Fun About Using SIEM by Dr. Anton Chuvakin
Something Fun About Using SIEM by Dr. Anton ChuvakinSomething Fun About Using SIEM by Dr. Anton Chuvakin
Something Fun About Using SIEM by Dr. Anton Chuvakin
Anton Chuvakin
 
RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...
Nandana Mihindukulasooriya
 
Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...
Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...
Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...
mfrancis
 

Similaire à Joe Wolf: USPTO (20)

The Notorious 9: Is Your Data Secure in the Cloud?
The Notorious 9: Is Your Data Secure in the Cloud?The Notorious 9: Is Your Data Secure in the Cloud?
The Notorious 9: Is Your Data Secure in the Cloud?
 
ISSA Siem Fraud
ISSA Siem FraudISSA Siem Fraud
ISSA Siem Fraud
 
Alfresco Records Management 2.0
Alfresco Records Management  2.0Alfresco Records Management  2.0
Alfresco Records Management 2.0
 
stackArmor - FedRAMP and 800-171 compliant cloud solutions
stackArmor - FedRAMP and 800-171 compliant cloud solutionsstackArmor - FedRAMP and 800-171 compliant cloud solutions
stackArmor - FedRAMP and 800-171 compliant cloud solutions
 
Citrix Day 2014: ShareFile Enterprise
Citrix Day 2014: ShareFile EnterpriseCitrix Day 2014: ShareFile Enterprise
Citrix Day 2014: ShareFile Enterprise
 
Digital Assets: Protecting for Life -- Creative Operations Essentials
Digital Assets: Protecting for Life -- Creative Operations EssentialsDigital Assets: Protecting for Life -- Creative Operations Essentials
Digital Assets: Protecting for Life -- Creative Operations Essentials
 
Everything you want to know about microservices
Everything you want to know about microservicesEverything you want to know about microservices
Everything you want to know about microservices
 
Something Fun About Using SIEM by Dr. Anton Chuvakin
Something Fun About Using SIEM by Dr. Anton ChuvakinSomething Fun About Using SIEM by Dr. Anton Chuvakin
Something Fun About Using SIEM by Dr. Anton Chuvakin
 
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
#Interactive Session by Kirti Ranjan Satapathy and Nandini K, "Elements of Qu...
 
Steve Davis: Federalconference.com: Alfresco based Armedia Case Management So...
Steve Davis: Federalconference.com: Alfresco based Armedia Case Management So...Steve Davis: Federalconference.com: Alfresco based Armedia Case Management So...
Steve Davis: Federalconference.com: Alfresco based Armedia Case Management So...
 
CloudDesignPatterns
CloudDesignPatternsCloudDesignPatterns
CloudDesignPatterns
 
RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...RDF Validation in a Linked Data World - A vision beyond structural and value ...
RDF Validation in a Linked Data World - A vision beyond structural and value ...
 
Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...
Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...
Do not disturb my circles! Secure Application Isolation with OSGi - Mirko Jah...
 
Implementing Authorization
Implementing AuthorizationImplementing Authorization
Implementing Authorization
 
HTML5와 모바일
HTML5와 모바일HTML5와 모바일
HTML5와 모바일
 
Using CloudBees Jenkins Enterprise to Effectively Manage the Jenkins Ecosyste...
Using CloudBees Jenkins Enterprise to Effectively Manage the Jenkins Ecosyste...Using CloudBees Jenkins Enterprise to Effectively Manage the Jenkins Ecosyste...
Using CloudBees Jenkins Enterprise to Effectively Manage the Jenkins Ecosyste...
 
DLT analytics and AI workshop 13 march 2019
DLT analytics and AI workshop   13 march  2019DLT analytics and AI workshop   13 march  2019
DLT analytics and AI workshop 13 march 2019
 
ddd.pdf
ddd.pdfddd.pdf
ddd.pdf
 
Case study: IDP
Case study: IDPCase study: IDP
Case study: IDP
 
InvestLab Product Overview
InvestLab Product OverviewInvestLab Product Overview
InvestLab Product Overview
 

Plus de Alfresco Software

Plus de Alfresco Software (20)

Alfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossier
 
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion HogescholenAlfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
 
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente AmsterdamAlfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
 
Alfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of AlfrescoAlfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of Alfresco
 
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo GroupAlfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
 
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About FlowAlfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
 
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
 
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
 
Alfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest APIAlfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest API
 
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-KonsoleAlfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
 
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit AlfrescoAlfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
 
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
 
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: WesternacherAlfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
 
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
 
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novumAlfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
 
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
 
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
 
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - SafranAlfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
 
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital BusinessAlfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
 
Alfresco Day Warsaw 2016: Podpis elektroniczny - BMS
Alfresco Day Warsaw 2016: Podpis elektroniczny - BMSAlfresco Day Warsaw 2016: Podpis elektroniczny - BMS
Alfresco Day Warsaw 2016: Podpis elektroniczny - BMS
 

Dernier

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Dernier (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

Joe Wolf: USPTO

  • 1. United States Patent & Trademark Office! ! America Invents Act! and Alfresco! ! Presented by ! Joe Wolf! Software Developer, USPTO OCIO! ! ! ! March 5, 2013!
  • 2. The Disclaimer! •  Views expressed in this presentation are my own and not necessarily representative of the views of the U.S. Patent & Trademark Office or Department of Commerce.! •  Discussions regarding specific software products or vendors do not constitute an endorsement of said products or vendors by the U.S. Patent & Trademark Office or Department of Commerce.!
  • 3. The Law! •  Leahy-Smith “America Invents Act” (AIA)! •  Signed September 15th, 2011! •  Introduces significant reforms! –  USPTO granted fee setting authority! –  No more Tax Code compliance strategy patents! –  First to Invent à First Inventor to File! –  Expanded Post-Grant procedures and reviews! –  And more!!
  • 4. The Requirements! •  Support filing of AIA Petitions! –  Inter Partes Review! –  Transition program for Covered Business Methods! –  Post-Grant Review ! •  Collect documents! –  Papers & Exhibits! –  Public, private, or confidential visibility! •  Collect payments! •  Support PTAB workflow, email notifications! •  Provide public access to documents! !
  • 5. The Architecture! Petitioners, Public COTS Case Management Product! ! Alfresco 4.0 •  Support Petitions Workflow! CMIS! Enterprise! •  Send Notifications! ! •  Collect Payments! •  Persist Documents! •  Persist Case Metadata! •  Provide Public Search! USPTO Personnel 5!
  • 6. The Constraints! •  Congressionally-mandated deadline! •  First production system to use Alfresco and Case Management COTS Product! •  Case Management COTS Product limitations! –  Only supported CMIS! –  Handled user registration and authentication! –  Closed architecture! 6!
  • 7. The Strategies! •  CMIS Only! –  Single, top-level “DropZone” for Case creation! ! Cases/DropZone/ Cases/2013/PGR/00/ createFolder PGR2013- OnCreateNodePolicy PGR2013- 00001 00001 1.  Validate uniqueness of CaseID 2.  Move folder 3.  Track CaseID in attributeService 4.  Create case sub- folders with ACLs 7!
  • 8. The Strategies! •  CMIS Only! –  Case-specific Drop Zones for filing documents! PGR2013-00001/Record/ PGR2013-00001/ Exhibit/Petitioner cases:exhibit cases:exhibit createDoc OnCreateNodePolicy cases:filingParty= cmis:name= petitioner Exhibit1001.pdf cases:exhibitNo= 1.  Move to appropriate cases:caseId= 1001 subfolder/rename PGR2013-00001 2.  Apply caseId aspect 3.  Apply ACLs based on visibility, if necessary 8!
  • 9. The Strategies! •  Externalized User Registration/Authentication! –  Trusted connection between Case Management Product and Alfresco! <servlet>      <servlet-­‐name>cmisprps</servlet-­‐name>      <servlet-­‐class>          org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet      </servlet-­‐class>      <init-­‐param>            <param-­‐name>callContextHandler</param-­‐name>            <param-­‐value>                gov.uspto.prps.AutoAuthCallContextHandler            </param-­‐value>      </init-­‐param>      <load-­‐on-­‐startup>8</load-­‐on-­‐startup>   </servlet>   9!
  • 10. The Strategies! •  Externalized User Registration/Authentication! –  Alfresco users created on demand! public  Map<String,  String>  getCallContextMap(HttpServletRequest  request)  {      //  ...extract  username  from  HTTP  request      String  ticket  =  ticketComponent.getCurrentTicket(username,  true);            AuthenticationUtil.runAs(new  RunAsWork<NodeRef>()  {          @Override          public  NodeRef  doWork()  throws  Exception  {              return  personService.getPerson(username);  //  call  has  side-­‐effect!          }      },  AuthenticationUtil.getSystemUserName());              Map<String,  String>  context  =  new  HashMap<String,  String>();      context.put(CallContext.USERNAME,  "");      context.put(CallContext.PASSWORD,  ticket);      return  context;   }   10!
  • 11. The Strategies! •  Externalized User Registration/Authentication! –  Dynamic group assignments based on metadata provided in CMIS call! //  during  execution  of  onCreateNode  policy  for  documents...     String  user  =  AuthenticationUtil.getFullyAuthenticatedUser();   String  group  =  groupName(caseId,  filingParty);                                  //  hides  PermissionService.GROUP_PREFIX  weirdness     Set<String>  groupMembers  =  authorityService              .getContainedAuthorities(AuthorityType.USER,  group,  true);     if  (groupMembers  ==  null  ||  !groupMembers.contains(user))  {      authorityService.addAuthority(group,  user);   }   11!
  • 12. The Strategies! •  Closed Architecture! –  Folder structure reflects business view! –  Content model holds key metadata! –  Use CMIS! •  Expunging! •  Reporting! •  Auditing! •  Multi-document PDF generation! 12!
  • 13. The Wish List! •  Generate code from content model XML! –  e.g. XJC (JAXB), wsdl2java, hbm2java! •  Support Webscripts written in any JSR 223- compliant language! •  CRUD in CMIS Query Language! •  Apache Chemistry to go 1.0! •  Servlet 3.0/JavaEE 6 support or URL dispatching via Spring Web! 13!
  • 14. The End! 14!