Conglomerate = "Conglomerate" ":" DemIdent "Head Office" ":" Company . Subsidiary : WhollyOwned | PartiallyOwned *common* Company. WhollyOwned = "Wholly" "owned". PartiallyOwned = "Partially" "owned" "stake" "=" DemNumber. Company = DemString "Registered" "Office" Address "Turnover" ":" DemString "Officers" ":" List(Officer) ["Subsidiaries" "{" List(Subsidiary) "}" ]. Address = "Street" "-" DemString "City" "-" DemString "State" "-" DemIdent "Country" "-" DemIdent ".". Officer : Shareholding_Officer | Ordinary_Officer *common* "Name" "-" DemString "Title" "-" DemString "Salary" "-" <salary> Salary "." . Salary = <v> DemNumber. Shareholding_Officer = "Shareholder" <share_percentage> DemNumber "percent control". Ordinary_Officer = "Ordinary". List(S) ~ { S }.