FullMoon XML Processing Framework

Introduction

FullMoon is a tool for use in a  standards-based model-driven methodology for the development of (primarily geospatial) information models and encodings. It is designed to complement the  SEEGrid:HollowWorld package.

FullMoon supports the processing of a UML «Application Schema», exported as an XMI document. FullMoon is a framework, in which packages of processing rules, expressed in XQuery against the XMI representation, may be applied. Three rulesets are currently available

  1. test conformance of the model to the UML profile described in ISO 19136 Annex E
  2. generate a GML-conformant XML Schema representation of the model
  3. generate model documentation in the form of a HTML frameset
    • UmlGmlTestModels
    • for an example of documentation of a large model, see  GeoSciML 2.0 documentation
    • N.B. the text supplied in scope-notes in the UML model are used for the informative and linking text, so the generated documentation is most effective if notes are provided for all classes, attributes, and association roles.

Re-usable model packages should publish a suitable mapping registration file (see  SEEGrid:PublishingReusablePackages) so that FullMoon can be used to process client applications. Well-known schemas from the OGC and ISO environments are supported with default class-maps from the  HollowWorld workbench.

FullMoon has been tested only with UML models generated using  Sparx Systems Enterprise Architect v7 and later, configured as explained in  SEEGrid:ConfiguringUMLToolForHollowWorld.

Dependencies

FullMoon is currently a command line application, using a services framework for the back-end database. An online service is planned, but for now FullMoon requires:

  • Java runtime
  • Apache Tomcat (NB this must run under Java 1.6 for the eXist distribution to work)
  • eXist XML-DB
  • Apache Ant

License

FullMoon is released under  GPL

Installation

See FullMoonInstallation

See also


Credits

FullMoon was developed under the supervision of Simon Cox of  CSIRO.

Initial implementation in 2007 by Nick Ardlie at  Geoscience Australia. Improvements, bug-fixing, refactoring, testing framework in 2008 by Pavel Golodoniuc and Simon Cox of  CSIRO. Further improvements in 2009 by Pavel Golodoniuc, with contributions from Krupali Patel.

CSIRO contributions were supported by  AuScope.

FullMoon was originally hosted by CSIRO through the  SEEGrid TWiki, JIRA and Subversion services.

Attachments