DESIGN AND DEVELOPMENT OF DISCIPLINE-SPECIFIC, GEOSCIENCE MARKUP LANGUAGES AND DATABASES APPLYING UML AND XML
The Unified Modeling Language (UML) and the Unified Process (UP) are applied to create the blueprint of the language by building precise, unambiguous, and complete object model of the discipline (e.g., hydrogeology). This is achieved by specifying all concepts (e.g., aquifer, permeability) in the discipline. Each of these concepts becomes a UML class, which relate to other classes, for example, through association, inheritance, and/or aggregation. Such relationships between interrelated classes are depicted on the UML class diagrams that show the structure of part of the language (in a package). It is then a simple matter to map (i.e., forward engineer) a UML class diagram to XML Metadata Interchange (XMI), Data Definition Language (DDL), or Java code, within any Integrated Development Environment (IDE) such as Rational Rose. The XMI can then be translated into well-formed XML Schema (XSD) for every package. The DDL can be used to create the database that mimics the UML model. The XSD Schema describes the structure of the documents for a given markup language, by defining the tags and the data type for each element. It also shows the order that the elements should appear in the document. The XSD Schema can also be used to develop the database within an IDE such as XMLSPY.
The XML markups, allow sending, receiving, and transforming data from one format to another applying XML Stylesheet Language (XSL) and Transformation (XSLT). The Java code can be used to design the JSP, servlet, and Java Beans for each use case that involves the processing of XML data over the Web, or dealing with a distributed database.