Data Model
This is the HEI URI model we are recommending to the sector as a result of our analysis of existing institutional website structures and also our own informed opinions on URI structure.
As developers we are used to the concept of objects and key/values and this is reflected in the model's structure. We've gone for namespaced type/identifier object nodes, such as /event/openday/{identifier}, /about/campuses/{identifier}, and /academic_departments/{identifier}/courses.
The only contention we had on the model was whether or not to have courses as a top level object, or have them as a sub-object of student type (undergraduate/postgraduate/foundation). In the end we went with sub-objects as this seems to be a standard that other HEIs have agreed on because postgraduate courses are structured and administered in a different way to undergraduate courses. Despite this, individual courses should still always be forwarded to the /course/{id} resource, as a course in itself has no undergraduate or postgraduate status outside of the institution's own administrative structure.
institution.ac.uk
- /{ucas_code} → Redirect to appropriate /course/{id}.
- /courses
- /course/{id}
- /undergraduate
- /courses
- /{id} → Redirect to appropriate /course/{id}.
- /search/{query}
- /entry_requirements
- /prospectus
- /courses
- /postgraduate
- /courses
- /{id} → Redirect to appropriate /course/{id}.
- /search/{query}
- /entry_requirements
- /prospectus
- /courses
- /foundation
- /courses
- /{id} → Redirect to appropriate /course/{id}.
- /entry_requirements
- /prospectus
- /courses
- /events
- /opendays
- /conferences
- /public_lectures
- /graduation
- /business
- /incubation
- /ktp
- /research
- /academic_depts
- /{id}
- /courses
- /undergraduate → Redirect to /undergraduate/courses/search/{query}.
- /postgraduate → Redirect to /postgraduate/courses/search/{query}.
- /courses
- /staff → Redirect to /contact/search/{query}.
- /news → Redirect to /news/search/{query}.
- /{id}
- /support_depts
- /{id}
- /staff → Redirect to /contact/search/{query}.
- /news → Redirect to /news/search/{query}.
- /about
- /vc
- /parents
- /{city}
- /campuses
- /{id}
- /search
- /press
- /facts
- /news
- /{date}
- /{id}
- /search/{query}
- /jobs
- /legal
- /policies
- /data_protection
- /environment
- /equality
- /foi
- /ict
- /website
- /regulations
- /contact
- /staff
- /{id}
- /search/{query}
Easy conformance
There are a couple of easy steps that institutions can take to conform to the model above today.
- Add Apache/ISS/Nginx redirects to existing pages and advertise these redirects instead:
e.g. Set up a redirect from /undergraduate/courses to /study/undergraduate/courses -
Add a CNAME record for www. to the DNS for the domain to add support for prefix less addresses:
e.g. CNAME www.example.ac.uk. → example.ac.uk.Then update Apache/IIS/Nginx to add an alias for the domain:
e.g. (Apache):
ServerName institution.ac.uk ServerAlias www.institution.ac.uk