DTD up to Survey header

From: Richard Knapp (gyp_caver@yahoo.com)
Date: Fri Mar 09 2001 - 22:28:10 CET


Okay, so I've been a little bored with work...

I've been dabbling with the stuff up to the end of the Survey header. This version has a little more information
in it but it should be too much...

---------------------------------------

<!-- general entities for use later -->
<!ENTITY % AngleUnits "(Degrees, Bearing, DMS, Mills, Grad)">
<!ENTITY % InclinationUnits "(Degrees, DMS, Mills, Grad, Percent)">
<!ENTITY % LengthUnits "(Feet, FeetInch, Meter, CM)">

<!-- This format starts with the big and works its way down. There is nothing
     to prohibit starting small and working to the system. I find it easier
     to deconstruct then build -->

<!ELEMENT CaveXML (System | Cave)>
<!-- A file can contain a survey with many caves or a single cave -->
<!ATTLIST CaveXML
        Version CDATA #FIXED "0.01"
        Source CDATA #IMPLIED>
<!-- Version will hold the CaveXML release version this file used.-->
<!-- Source will hold information from a data conversion. Some values
       could be: SMAPS, CMAP, Karst, COMPASS, OnStation, Survex. -->

<!ELEMENT System (Name, Cave+)>
<!-- A system is made up of one or more Caves -->

<!ELEMENT Cave (Name, Entrance?, Surveys)>

<!ELEMENT Entrance Location>
<!ATTLIST Entrance station IDREF #IMPLIED>
<!-- This is the entrance station used for tying the cave to coordinate data -->

<!ELEMENT Location EMPTY>
<!-- This would hold the coordinates in either GPS or Lat/Long for the entrance station -->

<!ELEMENT Surveys (Survey+)>
<!-- This is the section were raw survey data is held. If other information is necessary,
     it can be added via another section (ie. Inventories, Pictures, etc). -->

<!ELEMENT Survey (Name, Header, Data)>
<!-- The raw survey data. A survey has a header and the data (shots/stations) -->
<!-- The elements of the survey header -->

<!ELEMENT Header (Date, Declination?, Team?, Equipment?, Format?, Walls?)>

<!ELEMENT Date EMPTY>
<!ATTLIST Date
        Year CDATA #IMPLIED
        Month CDATA #IMPLIED
        Day CDATA #IMPLIED>

<!ELEMENT Declination EMTPY>
<!ATTLIST Declination
        Value CDATA #REQUIRED>
<!-- The magnetic declination for this date. If included, the value must be given -->
        
<!ELEMENT Team (Personnel+)>
<!-- The people that did the survey. If a team element is present, there must
     be one or more people in the team -->

<!ELEMENT Personnel (Name, Role*)>
<!-- A person has a name and one or more roles -->

<!ELEMENT Role EMPTY>
<!ATTLIST Role
        Job (CDATA, Instrument, Book, Sketch, LeadTape, BackTape, FrontSight,
                BackSight, Inventory, Other)>
<!-- a rough cut at the roles -->

<!ELEMENT Equipment (Instrument+)>
<!-- The instruments used in the survey. If the Equipment element is present, there
     must be one or more instruments defined -->
        
<!ELEMENT Instrument EMPTY>
<!ATTLIST Instrument
        Kind (Compass, Tape, Inclinometer, Other) #REQUIRED
        Correction CDATA #IMPLIED
        Accuracy CDATA #IMPLIED
        SerialNumber CDATA #IMPLIED
        Owner CDATA #IMPLIED>

<!ELEMENT Format (Item+)>
<!-- A format has a list of items in the order they appear in the survey book -->

<!ELEMENT Item EMPTY>
<!ATTLIST Item
        Name (Station, Direction, Distance, FrontAzimuth, BackAzimuth,
                FrontInclination, BackInclination, FrontDepth, BackDepth,
                Instrument, Light, Left, Right, Up, Down, Ceiling, Floor) #IMPLIED
        Units (Null, Feet, FeetInch, Meters, CM, Degrees, DMS, Bearing, Mills, Grad, Percent) #IMPLIED>

<!-- I don't like the way this works right now. It would be better to have a default format
     and items with constraints on the units (ie only angle unit for azimuth, only length
     units for Distance, Left, Right, etc). In the mean time, this works, just not as well -->

<!ELEMENT Walls>
<!ATTLIST Walls
        Location (From, To) #IMPLIED
        Reference (Caver, Station) "Station"
        Direction (PerpToNext, PerpToLast, Average) "PerpToNext">
<!-- Define how the passage dimensions are measured. -->

<!-- The raw survey data -->

<!-- This section left intentionally blank -->

<!-- General purpose Elements -->
<!ELEMENT Name Empty>
<!ATTLIST Name
        Value CDATA #IMPLIED>

        - Richard Knapp

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com



This archive was generated by hypermail 2b30 : Mon Apr 02 2001 - 18:00:00 CEST