In the syntax description language Extended Backus-Naur Form (EBNF) the following terminal symbols apply.
ACL = '{' AccessControlList ',' Enabled ',' MaxGroups ',' MaxUsers '}'
Enabled = '"Enabled": ' Boolean
MaxGroups = '"GroupsMaximumNumber": ' Number
MaxUsers = '"UsersMaximumNumber": ' Number
AccessControlList = AccessControlListKey ':' '{' ContainerRuleSets ',' Rules ',' AccessControlListType '}' AccessControlListKey = '"AccessControlList"' AccessControlListType = '"__type":"AccessControlList"'
ContainerRuleSets = ContainerRuleSetsKey ':' ('[' ContainerRulesetList ']' | '[]') ContainerRuleSetsKey = '"ContainerRulesets"' ContainerRulesetList = ContainerRuleset | ContainerRulesetList ',' ContainerRuleset ContainerRuleset = '{' FcRuleSets ',' Rules ',' ContainerName ',' ContainerValue ',' ContainerRuleSetType '}' ContainerRuleSetType = '"__type": "ContainerRuleset"' ContainerName = '"Text": ' '"' String '"' ContainerValue = '"Value": ' '"' String '"'
FcRuleSets = FcRuleSetsKey ':' ('[' FcRuleSetList ']' | '[]')} FcRuleSetKey = '"FcRulesets"' FcRuleSetList = FcRuleset | FcRuleSetList ',' FcRuleset FcRuleSet= '{' PcRuleSets ',' Rules ',' FcName ',' FcValue ',' FcRuleSetType '}' FcRuleSetType= '"__type": "FcRuleset"' FcName = '"Text": ' FcFirmItemText FcValue = '"Value": ' FcFirmCode FcFirmItemText = '"' String '"' FcFirmCode = Number
PcRuleSets = PcRuleSetsKey ':' ('[' PcRuleSetList ']' |'[]') PcRuleSetKey = '"PcRulesets"' PcRuleSetList = PcRuleset | PcRuleSetList ',' PcRuleset PcRuleSet= '{' ActivePiText ',' Rules ',' PcName ',' PcValue ',' PcRuleSetType '}' PcRuleSetType= '"__type": "PcRuleset"' PcName = '"Text": ' PcProductItemText PcProductItemText = '"' String '"' PcValue = '"Value": ' '"'PcFirmCode':'PcProductCode '"' PcFirmCode = Number PcProductCode = Number ActivePiText = '"ActivePiText": ' Number
Rules = RulesKey ':' ('[' RulesList ']' |'[]') RulesKey = '"Rules"' RulesList = Rule | RulesList ',' Rule Rule = '{' RuleId ',' RuleAction ',' RuleType ',' RuleValue ',' RuleReservation ',' RuleLimit ' ',' RuleObjType '}' RuleObjType = '"__type": "Rule"' RuleAction = '"Action": ' '"'('Allow' | 'Deny')'"' RuleType = '"Type": ' '"'('Default' | 'Host' | 'Subnet' | 'User' | 'Group' | 'Container') '"' RuleValue = '"Value": ' '"' String '"' RuleLimit = '"'Limit" :' Number RuleReservation = '"Reserved": ' Number RuleId = '"RuleId": ' Number
Boolean = 'true' | 'false' |