What Is CTO Modeling Language

Q

What is Business Network CTO Modeling Language?

✍: FYIcenter.com

A

Business Network CTO Modeling Language is a special data modeling language to define complex data types from primitive data types.

CTO source code can be stored in a single or multiple files with the *.cto file extension.

Each CTO source code file should have the following structure.

"namespace" statement - required

"import" statements - optional 

Resources declaration statements - optional
    "participant" declaration statements
    "asset" declaration statements
    "transaction" declaration statements
    "event" declaration statements
    "concept" declaration statements
    "enum" declaration statements

Here is an example of a CTO file, models/model.cto:

/* Copyright (c) FYIcenter.com
 */

namespace com.fyicenter.hyperledger
import com.fyicenter.common

participant Customer identified by customerId {
  o String customerId
  o String firstName
  o String lastName
  --> Address address
}

asset Car identified by vin {
  o String vin
  o String maker
  o String model
  o Double value
  o Currency currency
  --> Customer owner
}

transaction Trasfer {
  --> Car car
  --> Customer newOwner
}

event CarOwnerChanged {
  --> Car car
  --> Customer newOwner
  --> Customer oldOwner
}

concept Address {
  o String street
  o String city
  o String state
}

enum Currency {
  o USD
  o CAN
  o EUR
}

 

⇒ CTO Language Statements

⇐ Business Network CTO Modeling Language

⇑ Business Network CTO Modeling Language

⇑⇑ Hyperledger Composer Tutorials

2021-08-01, 427👍, 0💬