Namespace org.accordproject.patent0.1.0

Compatible with Concerto versions . Has 9 declarations.

Concerto JSON AST PlantUML XML Schema Typescript C# OData JSON Schema GraphQL Java Go Avro Markdown OpenAPI Protobuf Mermaid

Declared Types

      import org.accordproject.patent.PatentAssetIdentifier from /patents/patent.cto
      import org.accordproject.patent.PatentClassification from /patents/patent.cto
      import org.accordproject.patent.Inventor from /patents/patent.cto
      import org.accordproject.patent.Applicant from /patents/patent.cto
      import org.accordproject.patent.Assignee from /patents/patent.cto
      import org.accordproject.patent.AssetNumberStatus from /patents/patent.cto
      import org.accordproject.patent.ApplicationType from /patents/patent.cto
      import org.accordproject.patent.SubjectMatter from /patents/patent.cto
      import org.accordproject.patent.PatentAsset from /patents/patent.cto



 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * See the License for the specific language governing permissions and
 * limitations under the License.

namespace org.accordproject.patent

import org.accordproject.address.PostalAddress from
import org.accordproject.geo.Country from
import org.accordproject.geo.GeoCoordinates from
import org.accordproject.person.Person from
import org.accordproject.usa.residency.Residency from

 * This smart-contract model describes a United States (US) patent asset that may or may not have foreign counterparts
 * Drafted by Perkins-Coie

 * A Patent Asset Identifier
concept PatentAssetIdentifier {
  o String assetNumber 
  o AssetNumberStatus numberStatus
  o Country assetCountry optional 
 * A Patent Classifier
concept PatentClassification {
  o String classificationSymbol optional
  o String classificationDescription optional

 * An Inventor
participant Inventor extends Person {
  o Country residentCountry optional
  o Residency inventorResidency optional
 * An Applicant
participant Applicant extends Person {

 * An Assignee
participant Assignee extends Person {

// AssetNumberStatus
enum AssetNumberStatus {
   o APP    // Application 
   o PAT    // Patent 
   o PUB    // Publication  
   o REISS  // Reissue 
   o FOR    // Foreign

// ApplicationType
enum ApplicationType {
   o PROV   // Provisional
   o NONPROV    // Nonprovisional
// SubjectMatter
enum SubjectMatter {
   o UTILITY    // Utility
   o PLANT  // Plant
   o DESIGN     // Design
concept PatentAsset {
  o PatentAssetIdentifier[] assetIdentifier
  o String title optional
  o Inventor[] inventorIdentifier optional
  o Applicant applicantIdentifier optional
  o Assignee currentAssignee optional
  o Assignee originalAssignee optional
  o DateTime priorityDate optional
  o DateTime filingDate optional
  o DateTime issueDate optional
  o DateTime publicationDate optional
  o PatentClassification[] classifier optional
  o String attorneyDocketNumber optional
  o String customerNumber optional
  o String[] emailAddress optional
  o ApplicationType applicationType optional
  o SubjectMatter subjectMatter optional
  o Double numDrawings optional
  o Double pubFigure optional
  o PatentAsset[] priorApplication optional