Update Aug 29th 2019: Hyperledger Composer has been deprecated. Please see the README for more information.

Assets

Asset Model

Asset

The fully qualified name is org.hyperledger.composer.system.Asset

Additional Information

The base asset is implicitly extended by all other assets. Asset is an abstract meaning that no instances of it can be created.

abstract asset Asset {  }

Properties

Name Type Description

References

Registry

The fully qualified name is org.hyperledger.composer.system.Registry

Additional Information

The base registry is implicitly extended by all other registries. Registry is an abstract meaning that no instances of it can be created. All registries must have a registryId, a name, a type, and a boolean system property defining whether it is a system registry.

abstract asset Registry identified by registryId {
  o String registryId
  o String name
  o String type
  o Boolean system
}

Properties

Name Type Description
registryId string identity
name string Name of the registry
type string type of the registry
system boolean Is this a system registry?

References

AssetRegistry

The fully qualified name is org.hyperledger.composer.system.AssetRegistry

Additional Information

AssetRegistry is not an abstract so instances of it can be created. AssetRegistry extends the Registry type. As an extension of Registry, it includes the properties of Registry.

asset AssetRegistry extends Registry { }

Properties

Name Type Description

References

ParticipantRegistry

The fully qualified name is org.hyperledger.composer.system.ParticipantRegistry

Additional Information

ParticipantRegistry is not an abstract so instances of it can be created. ParticipantRegistry extends the Registry type. As an extension of Registry, it includes the properties of Registry.

asset ParticipantRegistry extends Registry { }

Properties

Name Type Description

References

TransactionRegistry

The fully qualified name is org.hyperledger.composer.system.TransactionRegistry

Additional Information

TransactionRegistry is not an abstract so instances of it can be created. TransactionRegistry extends the Registry type. As an extension of Registry, it includes the properties of Registry.

asset TransactionRegistry extends Registry { }

Properties

Name Type Description

References

Network

The fully qualified name is org.hyperledger.composer.system.Network

Additional Information

Network is a system asset, containing the networkId and runtimeVersion properties.

asset Network identified by networkId {
  o String networkId
  o String runtimeVersion
}

Properties

Name Type Description
networkId string of the business network
runtimeVersion string

References

HistorianRecord

The fully qualified name is org.hyperledger.composer.system.HistorianRecord

Additional Information

HistorianRecord is a system asset which holds information from network transactions. HistorianRecord has the transactionId, transactionType, transactionInvoked, participantInvoking, identityUsed, eventsEmitted, and transactionTimestamp properties.

asset HistorianRecord identified by transactionId {
  o String        transactionId
  o String        transactionType
  --> Transaction transactionInvoked
  --> Participant participantInvoking  optional
  --> Identity    identityUsed         optional
  o Event[]       eventsEmitted        optional
  o DateTime      transactionTimestamp
}

Properties

Name Type Description
transactionId string Using the transaction id as the uuid
transactionType string
transactionInvoked string Relationship to transaction
participantInvoking string Participant who invoked this transaction
identityUsed string The identity that was used by the participant
eventsEmitted array The events that were emitted by this transactionId
transactionTimestamp string Use the transaction's timestamp

References

Composer Documentation

Identity

The fully qualified name is org.hyperledger.composer.system.Identity

Additional Information

Identity is a system asset which is related to a participant.

asset Identity identified by identityId {
    o String identityId
    o String name
    o String issuer
    o String certificate
    o IdentityState state
    --> Participant participant
}

Properties

Name Type Description
identityId string Unique Identifiers
name string Name given to this identity
issuer string The issuer
certificate string The certificate
state object State the identity is in
participant string Associated participant

References