You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sis.apache.org by Martin Desruisseaux <ma...@geomatys.fr> on 2012/08/04 14:06:47 UTC
Contribution proposal (pending OSGeo agreement)
Hello all
I would like to share my though about a possible path for submitting
code, in the even of a positive OSGeo decision in August 9. Since
metadata would be the first standard in dependency order, I though to
submit only one class for starting with: a straightforward
implementation of the ISO 19115 CI_Citation:
http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/citation/Citation.html
For the first submission, we would omit (for now) JAXB and many other
"advanced" stuff, in order to focus only on the most basic "Plain Old
Java Object". Doing that for only one class would already introduce
questions like:
* GeoAPI dependency
* Naming convention for implementations of interfaces
* Module grouping (if we do grouping)
* Custom javadoc tags
After this first POJO has been settle down, we could gradually complete
it with the initially omitted aspects like JAXB, internationalization,
toString() formatting, etc. again discussing about how peoples want to
organize that. After we got a CI_Citation implementation in its final
form, we could apply the same pattern on the other metadata classes.
For now this is just for information purpose. Hopefully next week, if
OSGeo is okay, we could submit more concrete proposals...
Regards,
Martin
Re: Contribution proposal (pending OSGeo agreement)
Posted by "Mattmann, Chris A (388J)" <ch...@jpl.nasa.gov>.
Hi Martin,
On Aug 4, 2012, at 11:57 AM, Martin Desruisseaux wrote:
> Hello Chris
>
> Le 04/08/12 18:57, Mattmann, Chris A (388J) a écrit :
>> I would propose that if we go this route, then your patch assumes that we have a
>>
>> http://svn.apache.org/repos/asf/incubator/sis/trunk/sis-metadata/
>
> Yes, unless peoples wish to create group of modules, in which case it could be:
>
> (...snip...)/trunk/metadata/sis-metadata
>
> Other possible modules in this group would be "sis-metadata-fra" (for an extension defined by the French government) and likewise for other countries. However I feel relatively neutral about whatever we should use groups or not; I will let peoples decide.
Yep sounds good.
>
>> module, and that the class live inside of:
>>
>> http://svn.apache.org/repos/asf/incubator/sis/trunk/sis-metadata/src/main/java/org/apache/sis/metadata/[citation]/
>>
>> (optionally in the citation folder, or simply metadata for now)
>
> I think that the citation folder is important given the amount of metadata classes (about 100 distributed in 12 packages). Furthermore, the "citation" folder actually matches a part of the ISO standard. Every classes defined in the ISO 19xxx series of standards (with very few exceptions) are defined with the following pattern:
>
> XX_ClassName
>
> Where XX is a two-letters prefix. Thus, the "real" name of the Citation class in the ISO 19115 standard is "CI_Citation". Those two letters prefix works exactly as a package name in the ISO standard. Other classes in the "CI" package are CI_ResponsibleParty, CI_Address, CI_Telephone, etc. Then there is an other "package", called "DQ" (which we call "quality" in GeoAPI) with classes like DQ_DataQuality, DQ_LogicalConsistency, etc.
>
> So the package divisions in GeoAPI reflects the package divisions in the ISO specifications, except that we use real names instead than two-letter codes. I think that keeping the same organisation may help peoples who are familiar with the standard to identify the corresponding SIS class.
>
> I would however suggest to insert an additional "iso" folder between "metadata" and "citation", like below:
>
> (...snip...)/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/
>
> The reason is that we would like to propose the following package later, for the ISO-NetCDF bindings:
>
> (...snip...)/sis-metadata/src/main/java/org/apache/sis/metadata/netcdf
>
> And more packages may appear later for more spatial metadata conventions.
That makes sense to me.
Sounds great!
Cheers,
Chris
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Chris Mattmann, Ph.D.
Senior Computer Scientist
NASA Jet Propulsion Laboratory Pasadena, CA 91109 USA
Office: 171-266B, Mailstop: 171-246
Email: chris.a.mattmann@nasa.gov
WWW: http://sunset.usc.edu/~mattmann/
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adjunct Assistant Professor, Computer Science Department
University of Southern California, Los Angeles, CA 90089 USA
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Re: Contribution proposal (pending OSGeo agreement)
Posted by Martin Desruisseaux <ma...@geomatys.fr>.
Hello Chris
Le 04/08/12 18:57, Mattmann, Chris A (388J) a écrit :
> I would propose that if we go this route, then your patch assumes that we have a
>
> http://svn.apache.org/repos/asf/incubator/sis/trunk/sis-metadata/
Yes, unless peoples wish to create group of modules, in which case it
could be:
(...snip...)/trunk/metadata/sis-metadata
Other possible modules in this group would be "sis-metadata-fra" (for an
extension defined by the French government) and likewise for other
countries. However I feel relatively neutral about whatever we should
use groups or not; I will let peoples decide.
> module, and that the class live inside of:
>
> http://svn.apache.org/repos/asf/incubator/sis/trunk/sis-metadata/src/main/java/org/apache/sis/metadata/[citation]/
>
> (optionally in the citation folder, or simply metadata for now)
I think that the citation folder is important given the amount of
metadata classes (about 100 distributed in 12 packages). Furthermore,
the "citation" folder actually matches a part of the ISO standard. Every
classes defined in the ISO 19xxx series of standards (with very few
exceptions) are defined with the following pattern:
XX_ClassName
Where XX is a two-letters prefix. Thus, the "real" name of the Citation
class in the ISO 19115 standard is "CI_Citation". Those two letters
prefix works exactly as a package name in the ISO standard. Other
classes in the "CI" package are CI_ResponsibleParty, CI_Address,
CI_Telephone, etc. Then there is an other "package", called "DQ" (which
we call "quality" in GeoAPI) with classes like DQ_DataQuality,
DQ_LogicalConsistency, etc.
So the package divisions in GeoAPI reflects the package divisions in the
ISO specifications, except that we use real names instead than
two-letter codes. I think that keeping the same organisation may help
peoples who are familiar with the standard to identify the corresponding
SIS class.
I would however suggest to insert an additional "iso" folder between
"metadata" and "citation", like below:
(...snip...)/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/
The reason is that we would like to propose the following package later,
for the ISO-NetCDF bindings:
(...snip...)/sis-metadata/src/main/java/org/apache/sis/metadata/netcdf
And more packages may appear later for more spatial metadata conventions.
Cheers
Martin
Re: Contribution proposal (pending OSGeo agreement)
Posted by "Mattmann, Chris A (388J)" <ch...@jpl.nasa.gov>.
Hey Martin,
Thanks, looks cool! ISO-19115 for the win.
I would propose that if we go this route, then your patch assumes that we have a
http://svn.apache.org/repos/asf/incubator/sis/trunk/sis-metadata/
module, and that the class live inside of:
http://svn.apache.org/repos/asf/incubator/sis/trunk/sis-metadata/src/main/java/org/apache/sis/metadata/[citation]/
(optionally in the citation folder, or simply metadata for now)
My 2c.
Cheers,
Chris
On Aug 4, 2012, at 5:06 AM, Martin Desruisseaux wrote:
> Hello all
>
> I would like to share my though about a possible path for submitting code, in the even of a positive OSGeo decision in August 9. Since metadata would be the first standard in dependency order, I though to submit only one class for starting with: a straightforward implementation of the ISO 19115 CI_Citation:
>
> http://www.geoapi.org/3.0/javadoc/org/opengis/metadata/citation/Citation.html
>
> For the first submission, we would omit (for now) JAXB and many other "advanced" stuff, in order to focus only on the most basic "Plain Old Java Object". Doing that for only one class would already introduce questions like:
>
> * GeoAPI dependency
> * Naming convention for implementations of interfaces
> * Module grouping (if we do grouping)
> * Custom javadoc tags
>
> After this first POJO has been settle down, we could gradually complete it with the initially omitted aspects like JAXB, internationalization, toString() formatting, etc. again discussing about how peoples want to organize that. After we got a CI_Citation implementation in its final form, we could apply the same pattern on the other metadata classes.
>
> For now this is just for information purpose. Hopefully next week, if OSGeo is okay, we could submit more concrete proposals...
>
> Regards,
>
> Martin
>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Chris Mattmann, Ph.D.
Senior Computer Scientist
NASA Jet Propulsion Laboratory Pasadena, CA 91109 USA
Office: 171-266B, Mailstop: 171-246
Email: chris.a.mattmann@nasa.gov
WWW: http://sunset.usc.edu/~mattmann/
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Adjunct Assistant Professor, Computer Science Department
University of Southern California, Los Angeles, CA 90089 USA
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++