@startuml skinparam nodesep 10 skinparam ranksep 1 [*] -> Registered state Attributes { state Broken : cannot turn on state Owners state Usufructuarees state Reservees state "Physical\nPossessor" state "Waste\n\Product" } state Physical { Registered --> Preparing : ToPrepare Registered --> ToBeRepaired : ToRepair ToBeRepaired --> Repaired : Repair Repaired -> Preparing : ToPrepare Preparing --> Prepared : Prepare Prepared --> ReadyToBeUsed : ReadyToUse ReadyToBeUsed --> InUse : Live InUse -> InUse : Live state DisposeWaste state Recover } state Trading { Registered --> Reserved : Reserve Registered --> Sold : Sell Reserved -> Sold : Sell Reserved --> Cancelled : Cancel Sold --> Cancelled : Cancel Sold --> Payed : Pay Registered --> ToBeDisposed : ToDisposeProduct ToBeDisposed --> ProductDisposed : DisposeProduct Registered --> Donated: Donate Registered --> Renting: Rent Donated --> Cancelled : Cancel Renting --> Cancelled : Cancel } state DataStoragePrivacyCompliance { state Erased state Destroyed } @enduml