MHDS Specification 1.1 defines 8 objects:
- Client
- Booking
- Cancellation
- Invoice
- Receipt
- Office
- User
- Item
MHDS Specification 1.2 defines how objects relate to one another according to the following constraints:
- 1.2.1. only a Client may contain client information; all other objects may only reference a Client by ID;
- 1.2.2. objects must reference each other by ID in their respective fields (e.g. a Booking’s “OFFICE” field must contain an Office’s ID number);
- 1.2.3. when a Booking is created, an Invoice must be created along with it, the Invoice’s ID number must be added to the Booking’s “INVOICE” field, and the Invoice’s “ITEMS” field must include the Booking’s Item ID;
- 1.2.4. a Receipt must only be created if it can be added to an Invoice’s “RECEIPTS” field;
- 1.2.5. when a Receipt is deleted, it must be removed from its Invoice’s “RECEIPTS” field;
- 1.2.6. when a Booking is deleted, a Cancellation must be created accordingly and the logged-in user must be given the option to delete the Booking’s associated invoice;
- 1.2.7. a Booking can only be created if the logged-in user has selected a date, Client, Item, Office, and User (i.e. a therapist);
- 1.2.8. MHDS-compliant booking systems must refrain from generating purely numeric ID numbers, so as to make it easy to identify objects imported from non-compliant systems;
- 1.2.9. all MHDS objects’ attribute names, including additional attributes added beyond the scope of MHDS, must be capitalized.