






Proposed Changes/Additions to ESG Ontology
ESG/Curator RDF Model
- An Enterprise Architect version of the UML model is here.
- The complete ESG ontology in one diagram is available here.

Summary of Changes to the ESG Ontology
- Created a ModelComponent Class as subclass of Software. This is the primary container for components, which enable representation of sub-model elements such as dynamical cores.
- Moved the Model Class from a subclass of Resource to be a subclass of ModelComponent. It was moved to facilitate the inheritance of properties from the Software Class down through the Model Component Class.
- Created a ModelComponentFramework Class and the associated hasModelComponentFramework property. ModelComponents and Models can be associated with one or more frameworks (PRISM, ESMF, CCA, etc.). Components can be associated with no framework or multiple frameworks.
- Created InputModelDataset and OutputModelDataset properties with domain ModelComponent and range Dataset. This enables the description of configured Models.
- Created ConfigFiles Class as a subclass of Software and associated hasConfigFile property with domain ModelComponent and range ConfigFiles. This will hold namelists and other files necessary to create a configured Model.
- Created property hasChildModelComponent with domain and range equal to the ModelComponent Class. This is necessary to describe nested or coupled systems and to perform the trackback operation for datasets.
- Created a Boolean isConfigured property with domain of the ModelComponent Class to identify configured Models and the ModelComponents they include.
- Created a ComputingEnvironment Class. This class summarizes the platform, processor, operating system and compilers used by a particular piece of software. It is necessary to describe configured Models.
- Created Platform, Processor, OperatingSystem, and LanguageCompiler classes and the corresponding hasPlatform, hasProcessor, has OperatingSystem, hasLanguageCompiler object properties. These are necessary to fill in the various aspects of the ComputingEnvironment Class.
- Created the CalendarType Class and hasCalendarType property with domain equal to the Dataset, ModelComponentFramework, and ModelComponent Classes. Creates a calendaring property.
- Created CodingLanguage Class and hasCodingLanguage property and hooked it into the Software Class. Allows for the description of the language a piece of software was written in.
- Changed the ModelType Class to ScienceType Class and the hasModelType to hasScienceType properties and hooked it to the new domain ModelComponent. This enables the listing of both model components and datasets by various scientific disciplines.
- Created a WebURL Class that includes two subcomponents, a title and a URL. This class is necessary to contain any related URL such as a project Web site.
- Created a License Class and associated hasLicense object type property with a domain of the Software Class with a range of the License Class.
- Created an Agency Class and hasAgency property with a domain of the Resource Class and a range of the Agency Class. Additionally, created a hasInstitution datatype property with a domain of the Resource Class. This enables us to identify the owner(s) of the resource.
- Created a VerticalCoordinate Class with associated hasVerticalCoordinate property. This describes the vertical coordinate system of a component.
- Created a VerticalStaggering Class and associated hasVerticalStaggering property. This describes the type of grid staggering used in the vertical.
- Created a EquationsOfMotion Class and associated hasEquationsOfMotion property. This describes which approximation to the equations of motion is used.
- Created a Projection Class and associated hasProjection property. This describes the grid projection of the component.
- Created a HorizontalStaggering Class and associated hasHorizontalStaggering property. This describes the horizontal grid staggering.
- Created a TimeStepping Class and associated hasTimeStepping property. This describes the type of time stepping used by the component.
- Created a NumericalMethod Class and associated hasNumericalMethod property. This describes the type of numerics used by the component.
- Created a ConservationType Class and associated hasConservationType property. This describes what is conserved by the component.
- Created a ParallelizationType and associated hasParallelization property. This describes which parallelization method is used by the code. Both the class and the property are hooked to the Software Class.
- Created a TracerTransport Class and associated hasTracerTransport property. This describes the type of numerics used in tracer transport. It can be different from the base numerics used by the component.
- Created a hasExplicitDiffusion datatype property to describe the explicit diffusion of the component.
- Created a hasImplicitDiffusion datatype property to describe the implicit diffusion of the component.
- Created a hasSpatialFilter datatype property to describe the spatial filter used by the component.
- Created a hasTemporalFilter datatype property to describe the temporal filter used by the component.
- Created a hasVerticalResolution datatype property to describe the number of levels in the vertical.
- Created a hasLocationAtVerticalTop datatype property to describe the value at the top of the vertical coordinate system.
- Created a hasSpatialApproximation datatype property to describe the spatial approximation used by the component.
- Created a hasContact datatype property, hooked to Resource, to provide contact information that might be separate from the Resource authors.
- Created a hasReference datatype property, hooked to Resource, to provide space for scientific citations associated with the Resource.
- Created a hasDiagnosticParameter property as a subproperty of hasParameter. This enables the specification of diagnostic variables.
- Created a hasPrognosticParameter property as a subproperty of hasParameter. This enables the specification of prognostic variables.
- Changed hasParameter's domain to from GeophysicalDataSet to DataSet and also included ModelComponent since both components and datasets have variables.
Future Work Includes
- Link to software download for software hosted by ESG
- Link to model outputs
- Link to datasets hosted locally
- Refine representation of grids
- Represent fields that are transferred between models
- Inclusion of additional scientific properties
- Further integration of ontology elements
Link to this Page
- Conceptual Models last edited on 8 October 2007 at 11:20 am by lawn-128-61-24-239.lawn.gatech.edu