Synthesising domain descriptions from object-life histories