| r0.c0 | Contract courses, specification total/Income from contract courses | ocw-i:IncomeContractCourses | nl-types:monetaryNoDecimalsItemType | duration | jenv-bw2-dm:SeparateMember | ocw-dm:ActualsMember | ocw-dm:OtherIncomeSpecificationComponentMember | * | N/A |
| r0.c1 | Contract courses, specification total/Income from contract courses | ocw-i:IncomeContractCourses | nl-types:monetaryNoDecimalsItemType | duration | jenv-bw2-dm:SeparateMember | ocw-dm:ActualsMember | ocw-dm:OtherIncomeSpecificationComponentMember | * | N/A |
| r0.c2 | Contract courses, specification total/Current | | | | N/A | N/A | N/A | * | xs:date('2018-01-01')/xs:date('2018-12-31') |
| r0.c3 | Contract courses, specification total/Previous | | | | N/A | N/A | N/A | * | xs:date('2017-01-01')/xs:date('2017-12-31') |
| r1.c0 | ocw-table_NotesOtherIncomeContractCoursesSpecification-y/Income from contract courses | ocw-i:IncomeContractCourses | nl-types:monetaryNoDecimalsItemType | duration | jenv-bw2-dm:SeparateMember | ocw-dm:ActualsMember | ocw-dm:OtherIncomeSpecificationComponentMember | * | N/A |
| r1.c1 | ocw-table_NotesOtherIncomeContractCoursesSpecification-y/Income from contract courses | ocw-i:IncomeContractCourses | nl-types:monetaryNoDecimalsItemType | duration | jenv-bw2-dm:SeparateMember | ocw-dm:ActualsMember | ocw-dm:OtherIncomeSpecificationComponentMember | * | N/A |
| r1.c2 | ocw-table_NotesOtherIncomeContractCoursesSpecification-y/Current | | | | N/A | N/A | N/A | * | xs:date('2018-01-01')/xs:date('2018-12-31') |
| r1.c3 | ocw-table_NotesOtherIncomeContractCoursesSpecification-y/Previous | | | | N/A | N/A | N/A | * | xs:date('2017-01-01')/xs:date('2017-12-31') |