Implementation of UML Schema to RDBM

Numerous disciplines require information concerning phenomena implicitly or explicitly associated with a location relative to the Earth. Disciplines using Geographic Information (GI) in particular are those within the earth and physical sciences, and increasingly those within social science and medical fields. Therefore geographic datasets are increasingly being shared, exchanged and frequently re-purposed for uses beynd their original intended use. The ISO Technical Committee 211 (ISO/TC 211) together with Open Geospatial Consortium (OGC) provide a series of standards and guidelines for developing application schemas which should: a) capture relevant conceptual aspects of the data involved; b) be sufficient to satisfy previously defined use-cases of a specific or cross-domain concerns. In addition, the HollowWorld technology offers an accessible and industry-standardised methodology for creating and editing Application Schema UML models which conform to international standards for interoperable GI [2]. We present a technology which seamlessly transforms an Application Schema UML model to a relational database model (RDBM). This technology, using the same UML information model, complements the XML transformation of an information model produced by the FullMoon tool [2]. RDBMs exist to enable searching within a data collection, a process that has, over the decades, been heavily optimized. Moreover, modern non-relational DB [3] flavours (MongoDB, Cassandra, NewSQL) are still in their infancy with associated disadvantages for ease of adoption, software reliability, etc. A UML schema, or better its XMI description, has, in contrast, an almost natural mapping/transformation to an XSD schema and ISO19136 with well known applications, e.g. Fullmoon or Shape Change, supporting this approach. However, describing geographic information within a widely accepted XML-encoded vendor-neutral format such as GML may not be the best option for persisting or searching operations. Within a full model-driven approach the UML should remain at the centre of any implementation claiming to represent the model itself. In this context, a UML -> XSD -> RDBM transformation is not possible because the both the XSD and RDBM, and even an OWL implementation, have the same goal: to represent the same model. In a typical scenario an ingested XML document is separated into core and ancillary data: the core data map to a set of relational tables, the ancillary to a single XML-type field. This approach works well when the core data are a fraction of the whole document, and even better if the main aim of the RDBM is not to simply return other XML objects.