import interface PresentationSubject; external interface PresentationMount revision "interface:org.quixos.presentation-mount@1"; interface PresentationState id "interface:org.quixos.presentation-state" revision "interface:org.quixos.presentation-state@1" { queryable value occurrence id "state:occurrence" : string { get id "state:occurrence:get" execution snapshot; } queryable relation presentationMount id "state:presentation-mount" : optional-one interface PresentationMount { resolve id "state:presentation-mount:resolve" execution snapshot; } queryable relation parent id "state:parent" : optional-one interface PresentationState { resolve id "state:parent:resolve" execution snapshot; } queryable relation children id "state:children" : many-unique interface PresentationState { resolve id "state:children:resolve" execution snapshot; } operation attach id "state:attach" : record {presentationMount:interface-ref;parent:optional>;} -> unit {call id "state:attach:call" execution transaction;} queryable relation source id "state:source" : exactly-one interface PresentationSubject {resolve id "state:source:resolve" execution snapshot;} operation allocate id "state:allocate" : record {presentationMount:interface-ref;occurrence:string;parent:optional>;} -> interface-ref {call id "state:allocate:call" execution transaction;} operation copyValues id "state:copy-values" : record {target:interface-ref;mapping:list;target:interface-ref;}>;} -> unit {call id "state:copy-values:call" execution transaction;} }