Refreshed - Cave Survey Data in XML v0.4 - January 17, 2001

Updates are in Red

Version 0.4, a work in progress, incorporates feedback received on version 0.3 which was released for comment on January 9, 2001. It also includes a first stab at listing the attributes that offer useful metadata about the elements they describe.

The syntax of an Attribute statement is as follows:
<!ATTLIST element-name attribute-name (en1|en2|..) default-value>

Element-name specifies the element or tag this attribute modifies.
Attribute-name specifies the name of the subject attribute.
(en1|en2|..) is an enumerated list of "possible" values for this attribute.
Default-value specifies the value to use should the author select none of the enumerated values.

Example: <!ATTLIST GeoLocation datum (NAD27|WGS84) "NAD27">

Comments or questions regarding this proposal should be emailed to devinkouts@yahoo.com

<?xml version="1.0"?>
<!DOCTYPE CaveSurvey [
<!ELEMENT CaveSurvey (DataFileVersion,CaveName,Comment,Survey?)>
<!ELEMENT DataFileVersion (#PCDATA)>
<!ELEMENT CaveName (#PCDATA)>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Survey (SurveyName,Comment*,SurveyDate, SurveyTeam,Declination,Instruments, SurveyQuality ,Shot+)>
<!ELEMENT SurveyDate (Comment*, Day, Month, Year)>
<!ELEMENT Day (#PCDATA)>
<!ELEMENT Month (#PCDATA)>
<!ELEMENT Year (#PCDATA)>
<!ELEMENT SurveyTeam (Member*)>
<!ELEMENT Member (Name,Role*,Comment*)>
<!ELEMENT Person (#PCDATA)>
<!ELEMENT Role (#PCDATA)>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Declination (#PCDATA)>
<!ELEMENT Instruments (Comment*,Compass,Clinometer,Tape)>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Compass ( Accuracy ,Correction,SerialNumber,Owner)>
<!ELEMENT Accuracy (#PCDATA)>
<!ELEMENT Correction (#PCDATA)>
<!ELEMENT SerialNumber (#PCDATA)>
<!ELEMENT Owner (#PCDATA)>
<!ELEMENT Clinometer ( Accuracy ,Correction,SerialNumber,Owner)>
<!ELEMENT Accuracy (#PCDATA)>
<!ELEMENT Correction (#PCDATA)>
<!ELEMENT SerialNumber (#PCDATA)>
<!ELEMENT Owner (#PCDATA)>
<!ELEMENT Tape ( Accuracy ,Correction,SerialNumber,Owner)>
<!ELEMENT Accuracy (#PCDATA)>
<!ELEMENT Correction (#PCDATA)>
<!ELEMENT SerialNumber (#PCDATA)>
<!ELEMENT Owner (#PCDATA)>
<!ELEMENT SurveyQuality (#PCDATA)>
<!ELEMENT Shot( Handling ,From,To,Length,ForwardAzimuth,ReverseAzimuth, ForwardInclincation,ReverseInclination,FromDepth,ToDepth)>
<!ELEMENT Handling (#PCDATA)>
<!ELEMENT EquivalentStation(CaveName,SurveyName,StationName)>

<!ATTLIST Declination units (degrees|quads) "degrees">
<!ATTLIST Accuracy units (degrees|meters|feetinches|decimalfeet) "degrees">
<!ATTLIST Correction units (degrees|meters|feetinches|decimalfeet) "degrees">
<!ATTLIST Up units (meters|feetinches|decimalfeet) "decimalfeet">
<!ATTLIST Down units (meters|feetinches|decimalfeet) "decimalfeet">
<!ATTLIST Right units (meters|feetinches|decimalfeet) "decimalfeet">
<!ATTLIST Left units (meters|feetinches|decimalfeet) "decimalfeet">
<!ATTLIST GeoLocation system (UTM|LatLong) "UTM">
<!ATTLIST GeoLocation datum (NAD27|WGS84|etc.) "NAD27">
<!ATTLIST ForwardAzimuth units (degrees|quads) "degrees">
<!ATTLIST ReverseAzimuth units (degrees|quads) "degrees">
<!ATTLIST ForwardInclination units (degrees|gradient) "degrees">
<!ATTLIST ReverseInclination units (degrees|gradient) "degrees">
<!ATTLIST FromDepth units (meters|feetinches|decimalfeet) "meters">
<!ATTLIST ToDepth units (meters|feetinches|decimalfeet) "meters">

]>

<CaveSurvey>
       <DataFileVersion> 0.4 </DataFileVersion>
       <CaveName/>
       <Comment/>
       <Survey>
              <SurveyName/>
              <Comment/>
              <SurveyDate>
                     <Comment/>
                     <Day/>
                     <Month/>
                     <Year/>
              </SurveyDate>
              <SurveyTeam>
                     <Member>
                            <Name/>
                            <Role/>
                     </Member>
                     <Member> Data Elements to describe next survey member </Member>
                     <Comment/>
              </SurveyTeam>
              <Declination units= .../>
              <Instruments>
                     <Comment/>
                     <Compass>
                            <Accuracy units= .../>
                            <Correction units= .../>
                            <SerialNumber/>
                            <Owner/>
                     </Compass>
                     <Clinometer>
                            <Accuracy units= .../>
                            <Correction units= .../>
                            <SerialNumber/>
                            <Owner/>
                     </Clinometer>
                     <Tape>
                            <Accuracy units= .../>
                            <Correction units= .../>
                            <SerialNumber/>
                            <Owner/>
                     </Tape>
              </Instruments>
              <SurveyQuality/>
              <Shot>
                     <Handling>
                     <From>
                            <StationName/>
                            <Up/ units= ...>
                            <Down/ units= ...>
                            <Right/ units= ...>
                            <Left/ units= ...>
                            <GeoLocation system= ... datum= .../>
                            <EquivalentStation>                      or this Xpointer alternative .
                                   <CaveName/>
                                   <SurveyName/>
                                   <StationName/>
                            </EquivalentStation>
                     </From>
                     <To>
                            <StationName/>
                            <Up units= .../>
                            <Down units= .../>
                            <Right units= .../>
                            <Left units= .../>
                            <GeoLocation system= ... datum= .../>
                            <EquivalentStation>
                                   <CaveName/>
                                   <SurveyName/>
                                   <StationName/>
                            </EquivalentStation>
                     </To>
                     <Length units= .../>
                     <ForwardAzimuth units= .../>
                     <ReverseAzimuth units= .../>
                     <ForwardInclination units= .../>
                     <ReverseInclination units= .../>
                     <FromDepth units= .../>
                     <ToDepth units= .../>
              </Shot>
              <Shot> Data Elements to describe next survey shot </Shot>
       </Survey>
       <Survey> Data Elements to describe next survey </Survey>
</CaveSurvey>