1. A computer program product tangibly embodied in an information carrier, the product comprising instructions operable to cause data processing apparatus to: create a composite extension definition, the composite extension definition including extension definitions, the extension definitions being atomic extension definitions or non-atomic extension definitions; generate composite metadata that represents the composite extension definition; and store the composite metadata.