%%{
init: {
'themeVariables': {
'fontFamily' :'ms',
'fontSize' :'10px'
}
}
}%%
classDiagram
%%全体制約
note "AgreementState *Universal制約<br>-UC1"
%%Corda State定義
class AgreementState_PROPOSED{
Properties:*
- buyer:Party
- seller:Party
...
___________________________
Perticipants:*
- buyer
- seller
}
class AgreementState_REJECTED{
Properties:*
- buyer:Party
- seller:Party
...
___________________________
Perticipants:*
- buyer
- seller
}
class AgreementState_AGREED{
Properties:*
- buyer:Party
- seller:Party
...
___________________________
Perticipants:*
- buyer
- seller
}
%%制約1 status
note for AgreementState_PROPOSED "*Status制約<br>-STC1"
note for AgreementState_REJECTED "*Status制約<br>-STC2"
note for AgreementState_AGREED "*Status制約<br>-STC3"
%%制約2 signuture,flow,command
class propose{
<<制約>>
*Flow制約:*
- FC1
}
class reject{
<<制約>>
*Flow制約:*
- FC2
___________________________
*Command制約:*
- CC1
}
class repropose{
<<制約>>
*Flow制約:*
- FC3
___________________________
*Command制約:*
- CC2
}
class agree{
<<制約>>
*Flow制約:*
- FC4
___________________________
*Command制約:*
- CC3
}
class redeem{
<<制約>>
*Flow制約:*
- FC5
}
%%矢印
direction LR
start "0"-- propose:propose<br>(-SC1)
propose --> "1"AgreementState_PROPOSED
AgreementState_PROPOSED "1"-- reject:reject<br>(-SC2)
reject -->"1"AgreementState_REJECTED
AgreementState_REJECTED "1"-- repropose:repropose<br>(-SC3)
repropose --> "1"AgreementState_PROPOSED
AgreementState_PROPOSED "1"-- agree:agree<br>(-SC4)
agree --> "1"AgreementState_AGREED
AgreementState_AGREED "1"-- redeem:redeem<br>(-SC5)
redeem --> "0"end