SGEOML, AN XML MARKUP LANGUAGE FOR COMMUNICATION AND PROCESSING OF STRUCTURAL GEOLOGICAL INFORMATION
Version 1.0 of the SGeoML and XML application is designed and implemented applying the Unified Modeling Language(UML). The UML allows specifying the associations and cardinalities between geological concepts such as a fault (a concept or class) which may have one or more fault segments (another class), zero or more lineaments, zero or more generations of mylonite, etc. In these cases, one or more, or zero or more, are cardinalities, and are parts of the semantics of the fault or lineament elements. The UML class diagrams let us define the data types, default values, their sequence (dip direction dip amount or vice versa), and whether or not a value is required (e.g., direction of the dip).
The UML class diagrams of the structural concepts, were forward engineered (i.e., mapped with the Rational Rose CASE tool) into (1) java code for domain logic, (2) the XML DTD and Schema for the SGeoML (classes mapped into elements and their attributes), and (3) the SQL DDL for creating the relational database tables. The Java code will be used in the J2EE architecture to build an XML application to process the geological information formatted and validated with SGeoML, and enable the geologic data to be served, received, and processed on the Web. The XML Schema provides the dictionary and semantics of structural geological terms that will be needed for structural geologists to author valid SGeoML documents, and communicate with each other or with the database.