earth science markup language tutorial on how to write an esml description file (for esml schema...

19
EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY AND SYSTEMS CENTER UNIVERSITY OF ALABAMA IN HUNTSVILLE

Upload: giles-french

Post on 17-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

EARTH SCIENCE MARKUP LANGUAGE

Tutorial on how to write an ESML Description File (for ESML Schema v3.0)

“Define Once Use Anywhere”

INFORMATION TECHNOLOGY AND SYSTEMS CENTERUNIVERSITY OF ALABAMA IN HUNTSVILLE

Page 2: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

ESML Schema • ESML schema defines Syntactic metadata that describe the structure of the file in machine-

readable and -interpretable terms• Divide data formats into free form (ASCII, Binary) and structured (HDF-EOS, netCDF, etc)

Page 3: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

Two Sections

• Part I– Writing ESML Description for free form formats in

ASCII, Binary– Examples

• Part II– Writing ESML Description Files for structured formats

• HDF-EOS• netCDF

Page 4: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

Part I

• Goal:– To write an ESML Description File for a simple ASCII

data file– Show similar example for Binary data file– Show other capabilities

Page 5: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

Writing an ESML File (1)

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCIIDATA FILE

ESML MARKUPFOR THE DATA FILE

The next slides will set describe how to write an ESML file for a simple ASCII file described below

Page 6: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Writing an ESML File (2)

DESCRIBING ONLY THESTRUCTURE

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCIIDATA FILE

Page 7: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Writing an ESML File (3)

DESCRIBE THEFORMAT

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCII DATA FILE

Page 8: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Writing an ESML File (4)

ENTIRE FILE CONTENTSINTO 1 LOGICAL

STRUCTURE

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCII DATA FILE

Page 9: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Writing an ESML File (5)

DEFINE THE FIRST FIELD IN THE FILE:

HEADER INFORMATION

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCII DATA FILE

Page 10: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Writing an ESML File (6)

DEFINE THE SECOND FIELD IN THE FILE:

HEADER INFORMATION

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCII DATA FILE

Page 11: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Writing an ESML File (7)

DEFINE THE DATA FIELD IN THE FILE:PROVIDE SIZE AND

FORMAT INFORMATION

SIMPLE ASCII DATA FILE

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

Page 12: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" /> <Header name="SizeY" format="%d" /> <Array occurs=“4"> <Array occurs=“5"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Writing an ESML File (8)

CLOSE ALL THETAGS: ESML FILE

IS READY

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCII DATA FILE

REMEMBER TO VALIDATE YOUR FILE AGAINST THE SCHEMA!

Page 13: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> <Ascii> <Structure instances="1"> <Header name="SizeX" format="%d" symbol=“true" /> <Header name="SizeY" format="%d“ symbol=“true" /> <Array occurs=“$SizeX"> <Array occurs=“$SizeY"> <Field name="BrightnessTemp" format="%d"/> </Array> </Array> </Structure> </Ascii> </SyntacticMetaData></a:ESML>

Another Possible ESML Description (9)

USE HEADER INFORMATION

4 5 1 2 3 4 5 6 7 8 9 1011 12 13 14 1516 17 18 19 20

SIMPLE ASCII DATA FILE

Page 14: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

ESML Description for a similar file in Binary format

<a:ESML xsi:schemaLocation="ESML ../../Schema/ESML.xsd"> <SyntacticMetaData> <Binary> <Structure name="Bin" instances="1"> <Header type="Int32" name="sizeX"/> <Header type="Int32" name="sizeY"/> <Array occurs="5"> <Array occurs="5"> <Field name="BrightnessTemp" type="Int32" order="LittleEndian"/> </Array> </Array> </Structure> </Binary> </SyntacticMetaData></a:ESML>

Page 15: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

ESML Description File using wild card ‘*’ to read till the end of file

<a:ESML xsi:schemaLocation="ESML ../../Schema/ESML.xsd"> <SyntacticMetaData> <Binary> <Structure name="Bin" instances="1"> <Header type="Int32" name="sizeX"/> <Header type="Int32" name="sizeY"/> <Array occurs=“*"> <Array occurs="5"> <Field name="BrightnessTemp" type="Int32" order="LittleEndian"/> </Array> </Array> </Structure> </Binary> </SyntacticMetaData></a:ESML>

Page 16: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

Part II

• Goal:– Show some example ESML Description Files for

structured data formats supported by the ESML Schema

• HDF-EOS• netCDF• HDF5• Grib• WSR88DLII

Page 17: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> </HdfEos> </SyntacticMetaData> </a:ESML>

ESML Descriptions for a Structured Format (HDF-EOS)

<a:ESML > <SyntacticMetaData> <HdfEos> <Structure name="CERES_ES8_12891" instances="1"> <Field name="Colatitude of CERES FOV at TOA“/> <Field name="Longitude of CERES FOV at TOA“/> <Field name="Time of observation“/> </Structure> </HdfEos> </SyntacticMetaData></a:ESML>

Both ESML Descriptions are correct and valid

Page 18: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

<a:ESML > <SyntacticMetaData> </netCDF> </SyntacticMetaData> </a:ESML>

ESML Descriptions for a Structured Format (netCDF)

<a:ESML > <SyntacticMetaData> <netCDF>

<netCDFField name="U"></netCDFField>

</netCDF> </SyntacticMetaData></a:ESML>

Both ESML Descriptions are correct and valid

Page 19: EARTH SCIENCE MARKUP LANGUAGE Tutorial on how to write an ESML Description File (for ESML Schema v3.0) “Define Once Use Anywhere” INFORMATION TECHNOLOGY

REMEMBER TO CHECK THE ESML REGISTRY FOR ALREADY EXISTING ESML DESCRIPTION FILE!!