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 https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.PatentClassification from https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.Inventor from https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.Applicant from https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.Assignee from https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.AssetNumberStatus from https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.ApplicationType from https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.SubjectMatter from https://models.accordproject.org/patents/patent.cto
      import org.accordproject.patent.PatentAsset from https://models.accordproject.org/patents/patent.cto
      
      

Dependencies

Source

    /*
 * 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
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

namespace org.accordproject.patent

import org.accordproject.address.PostalAddress from https://models.accordproject.org/address.cto
import org.accordproject.geo.Country from https://models.accordproject.org/geo.cto
import org.accordproject.geo.GeoCoordinates from https://models.accordproject.org/geo.cto
import org.accordproject.person.Person from https://models.accordproject.org/person.cto
import org.accordproject.usa.residency.Residency from https://models.accordproject.org/usa/residency.cto

/** 
 * 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
}
/**
 * http://schema.org/PatentAsset
 */
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
}