EclipseLink MOXy provides the ability to augment the annotation metadata with an XML bindings file. With this feature, EclipseLink can now process multiple bindings files from different locations, and create a merged set of metadata.
Sample use case: 1. Initial metadata is specified with a metadata file. 2. Second version modifies the metadata with an additional XML bindings file. 3. Subsequent versions continue to modify with additional bindings files.
With the metadata layered in this way a JAXBContext could be created to represent any version of the XML document.
By using this in conjunction with a multi-tenant architecture, you can define a base set of metadata using one XML Bindings file, and then an additional file for each tenant. This example will be based on the object model from the EclipseLink Moxy Extensibile example.