SlideShare a Scribd company logo
1 of 14
Download to read offline
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!

More Related Content

Similar to USPTO Patent & Trademark Office presentation on Alfresco

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?BCS ProSoft
 
Alfresco Records Management 2.0
Alfresco Records Management  2.0Alfresco Records Management  2.0
Alfresco Records Management 2.0Paul Hampton
 
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 solutionsGaurav "GP" Pal
 
Citrix Day 2014: ShareFile Enterprise
Citrix Day 2014: ShareFile EnterpriseCitrix Day 2014: ShareFile Enterprise
Citrix Day 2014: ShareFile EnterpriseDigicomp Academy AG
 
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 Essentialsglobaledit®
 
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 microservicesYouness Lasmak
 
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 ChuvakinAnton 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...Agile Testing Alliance
 
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...Alfresco Software
 
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
 
Implementing Authorization
Implementing AuthorizationImplementing Authorization
Implementing AuthorizationTorin Sandall
 
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...FINRATech
 
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 2019Stavros Zervoudakis
 

Similar to USPTO Patent & Trademark Office presentation on Alfresco (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
 

More from Alfresco Software

Alfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Software
 
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 HogescholenAlfresco Software
 
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 AmsterdamAlfresco Software
 
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 AlfrescoAlfresco Software
 
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 GroupAlfresco Software
 
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 FlowAlfresco Software
 
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 Software
 
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 Software
 
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 APIAlfresco Software
 
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-KonsoleAlfresco Software
 
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 AlfrescoAlfresco Software
 
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 Software
 
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: WesternacherAlfresco Software
 
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 Software
 
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-novumAlfresco Software
 
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 Software
 
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 Software
 
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 - SafranAlfresco Software
 
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 BusinessAlfresco Software
 
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 - BMSAlfresco Software
 

More from 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
 

Recently uploaded

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...Miguel Araújo
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
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 MenDelhi Call girls
 
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 MenDelhi Call girls
 
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 interpreternaman860154
 
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.pptxMalak Abu Hammad
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
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.pdfUK Journal
 
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 MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
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 Scriptwesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
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 2024The Digital Insurer
 
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 textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

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...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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
 
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
 
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
 
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
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
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
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
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
 
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
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

USPTO Patent & Trademark Office presentation on Alfresco

  • 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!