Hello all

I just started some more "domain specific" commits (not yet merged to trunk). First, there is an org.apache.sis.internal.simple package [1], which contains trivial implementation of some GeoAPI objects (for now only Citation). The OGC/ISO CI_Citation type is used very often in various corners of the international standards. It is used for example in order to specify who defined Coordinate Reference System codes. Because CI_Citation is a metadata object, it will be defined in the sis-metadata module. However because CI_Citation is used in so many corners, it will be needed in a few places of sis-utility. So the org.apache.sis.internal.simple package in sis-utility defines a trivial implementation where only the title attribute is stored; all other attributes are null or empty.

I will talk more about the role of CI_Citation in sis-utility later this week, when I will bring the wider scope of how to manage the various kind of identifiers in ISO 19139. (Note: ISO 19115 is the international standard that defines metadata objects. The org.apache.sis.metadata.iso package will be modelled by this standard. ISO 19139 specifies how to express ISO 19115 objects in XML).

Next, there is an initial commit of a org.apache.sis.xml package [2]. This package is the proposed main entry point for XML marshalling/unmarshalling in the Apache SIS library as a whole. I will talk more on this issue later, as I introduce classes. For now the only class is Namespaces, which define static String constants for namespaces frequently used in OGC/ISO standards.

The proposed framework for XML (un)marchalling is based on JAXB for many objects, but not all. The proposed approach is:

 * Use JAXB when the structure of objects is quite complex, but there
   is not million of those objects (so performance is not critical).
   Metadata typically fall in this category.
 * Use SAX parser when the objects are relatively simple, but we may
   potentially have million of such objects. Simple geometries like
   points typically fall in this category.


Please let me know if you have any comment...


    Martin

[1] https://svn.apache.org/repos/asf/sis/branches/JDK7/sis-utility/src/main/java/org/apache/sis/internal/simple/ [2] https://svn.apache.org/repos/asf/sis/branches/JDK7/sis-utility/src/main/java/org/apache/sis/xml/

Reply via email to