doctrine example