'view expression' {
'type': stategroup (
'group step' {
'group': [ . ] reference
'expression': component 'view expression'
}
'state switch' { [ switch ]
'stategroup': [ . ] reference
'cases': [ (, ) ] dictionary { [ | ]
'path': component 'ancestor node path'
'expression': component 'view expression'
}
}
'reference step' {
'type': stategroup (
'reference' {
'reference': [ > ] reference
}
'property rule' {
'property': [ . ] reference
'rule': [ & ] reference
}
'context rule' {
'rule': [ .& ] reference
}
)
'expression': component 'view expression'
}
'collection lookup' {
'collection': [ . ] reference
'references users': [ [ user > ] component 'node equality'
'expression': [ ] ] component 'view expression'
}
'branches' {
'list': [ (, ) ] component 'view expression list'
}
'view open' { [ open view ]
'from': reference
'view': [ : ] reference
'node': [ with ] stategroup (
'current' {
'path': component 'ancestor node path'
}
'user' { [ user ] }
'root' { [ root ] }
)
}
'none' { [ none ] }
)
}