| r0.c0 | Receivables, provision bad debts, specification total/Receivables, provision bad debts | ocw-i:ReceivablesProvisionBadDebts | nl-types:monetaryNoDecimalsItemType | instant | ocw-dm:ActualsMember | ocw-dm:AssetsCurrentSpecificationComponentMember | * | N/A | venj-bw2-dm:SeparateMember |
| r0.c1 | Receivables, provision bad debts, specification total/Receivables, provision bad debts | ocw-i:ReceivablesProvisionBadDebts | nl-types:monetaryNoDecimalsItemType | instant | ocw-dm:ActualsMember | ocw-dm:AssetsCurrentSpecificationComponentMember | * | N/A | venj-bw2-dm:SeparateMember |
| r0.c2 | Receivables, provision bad debts, specification total/Current | | | | N/A | N/A | * | xs:date('2017-12-31') | N/A |
| r0.c3 | Receivables, provision bad debts, specification total/Previous | | | | N/A | N/A | * | xs:date('2016-12-31') | N/A |
| r1.c0 | ocw-table_NotesAssetsCurrentReceivablesProvisionBadDebtsSpecification-y/Receivables, provision bad debts | ocw-i:ReceivablesProvisionBadDebts | nl-types:monetaryNoDecimalsItemType | instant | ocw-dm:ActualsMember | ocw-dm:AssetsCurrentSpecificationComponentMember | * | N/A | venj-bw2-dm:SeparateMember |
| r1.c1 | ocw-table_NotesAssetsCurrentReceivablesProvisionBadDebtsSpecification-y/Receivables, provision bad debts | ocw-i:ReceivablesProvisionBadDebts | nl-types:monetaryNoDecimalsItemType | instant | ocw-dm:ActualsMember | ocw-dm:AssetsCurrentSpecificationComponentMember | * | N/A | venj-bw2-dm:SeparateMember |
| r1.c2 | ocw-table_NotesAssetsCurrentReceivablesProvisionBadDebtsSpecification-y/Current | | | | N/A | N/A | * | xs:date('2017-12-31') | N/A |
| r1.c3 | ocw-table_NotesAssetsCurrentReceivablesProvisionBadDebtsSpecification-y/Previous | | | | N/A | N/A | * | xs:date('2016-12-31') | N/A |