The sis-utility module contains many classes needed by Apache SIS for supporting XML (marshaller pool, JAXB adapters, etc.) but - except in org.apache.sis.util.iso - does not provide objects to be read or written in XML documents. Those objects are rather defined in the next module, sis-metadata. The initial intent was to keep sis-utility generic enough so it could be used for XML documents unrelated to ISO 19115. However with
SIS-345 work, a lot of metadata-specific logic has been introduced (e.g. more ISO 19115 namespaces, RenameOnImport.lst and RenameOnExport.lst files which contain a list of ISO 19115 properties, etc.) in addition of specialized JAXB adapters we already had. It does not make sense anymore to keep those classes separated from sis-metadata. The proposal is to move the following packages from sis-utility to sis-metadata:
- org.apache.sis.internal.jaxb and all sub-packages.
- org.apache.sis.internal.simple (for most parts)
- org.apache.sis.util.iso (maybe) as a side-effect of the displacement of JAXB adapters.
The API will stay the same. This change should be transparent for users except if they add only the sis-utility dependency in their Maven project (in which case they may need to add sis-metadata dependency).