A web-app intended to be used by pastoralists in managing pastures, grazing, and animals. All holdings used to the system Although in the UK and, probably, in many other countries, holdings have a unique, government issued, holding number which could rationally be used as a key, internationally we cannot rely on this. A user is a person authorised to see data on a holding. Some users (e.g. vets, farm secretaries) may be authorised to see data on many holdings. Records are not normally deleted from this system because of historical data integrity; we may want to trace the history of an animal across holdings even after a holding has ceased to be active in the system. A pasture within a holding. TODO: how should common pastures, or pastures otherwise shared between holdings, be handled? Records are not normally deleted from this system because of historical data integrity; we may want to trace the history of an pasture even after pasture boundaries have been changed. Indeed, if we treat subdivisions as pastures (which would be quite sensible), active pastures in the system will change quite frequently, especially if strip-grazing is used. An animal on a holding (or which has been on a holding; the historical record is not wiped when an animal dies, is killed, or is sold) Although in the UK and, probably, in many other countries, animals have a unique, government registered, identifying number which could rationally be used as a key, internationally we cannot rely on this. The holding the animal is currently on, if any. Not 'required', since the animal may be dead, or simply moved off to a holding which is not part of the system. The user who recorded this event. Pastures affected by this event. Animals affected by this event. Number of holdings affected by this event type; if an animal movement on or off, for example, it will be two, otherwise normally one. Number of pastures affected by this event type; if an animal movement between pastures, for example, it will be two, otherwise normally one. Number of animals affected by this event type. If a value greater than 10 is recorded, that will be treated as 'many'. TODO: not comfortable that that is the right way to handle 'many'. An image of the canvasser, so that other members of their team can recognise them. Information the canvasser supplies about themselves; an introduction. Does a canvasser record need a phone field? There is a phone field on the elector record. I suppose, for under-16 canvassers, there may be no elector record.