<?xml version="1.0" encoding="UTF-8"?>
<!-- <?xml-stylesheet type="text/xsl" href="Descriptions.xsl"?> -->
<!-- <?xml-stylesheet type="text/xsl" href="FITS.xsl"?>  -->
<?xml-stylesheet type="text/xsl" href="FITSSample.xsl"?>
<!DOCTYPE KeywordDictionary SYSTEM "KeywordDictionary.dtd">
<KeywordDictionary title="SOFIA Keyword Dictionary"
     version="1.2"
     date="6-20-2003"
     author="R. Y. Shuping">
<!-- All FITS files must adhere to the NOST FITS standard (REFERENCE).
     A standard list can be found HERE (REFERENCE).

     VersionHistory version="1.2" date="6-20-2003"
     - Updates associated with HIPO integration
     - HIPO spec changed in ObservationID to reflect red and blue channels, which act as seperate instruments.
	- ObservationSerialNumber added.
	- Filter changed to PassBand.
	- Tightened KeywordDictionary specification
	- Additional specification of some enumerated types.
	- Data type for ChopPhase changed to string.
	- SCDIR -> SCNDIR
	- FLIGHTLEG -> FLIGHTLG
	- ALTITUDE -> AC_ALT, to conform with AC_LAT and AC_LONG
	- Sexigessimal support for all RA, Decs, and hour angle.
	- ProcesingStatus updated to match SOFIA PDMP (DRAFT - G. Sandell)


     VersionHistory version="1.1" date="12-4-2002"
     - First version imported to CVS.
     - Keyword lists updated: Observation, Pipeline, Origination, Environmental,
       Telescope, Data Collection, Instrument, Array Detector, Chopping, Nodding,
       Dithering, Mapping, Scanning
     - SCL Data mapping complete.  There are still some keywords which need some
       sort of SCL equivalent.  They are marked as NEEDED.
     - New OBS_ID specification included.
     - Scanning keywords re-defined based on HAWC data headers.
     - Change example values to be consistent with an observation of Orion.
     - Update comment fields - include units, etc...
     - Our use of DefaultCoordSys (FITS: RADECSYS) in previous versions was
       incorrect:  It is meant for use with WCS keywords, not with telescope
       pointing keywords.  Eliminate RADECSYS and push ICRS specification into
       TELRA/DEC and OBSRA/DEC.  Current use of EQUINOX is OK and remains
       unchanged.
     - Updated Nodding keywords.
     - Data collection keywords updated based on SOFIA operational concept
       document (USRA-SOF-A001 Rev 5):
     - Mapping/SCanning separated; "Guiding" changed to "Tracking";
       ROF Freeze-mode added; requirement status downgraded to "conditional"
       for all.

     VersionHistory version="1.0" date="15 July 2002"
     - Minor changes in response to current issues:  Chop and nod amplitudes
     changed to arcseconds; DeltaTrackRateRA/Dec.  Minor changes in response to
     Proposed AOR Format (P. Stein, 16 July 2002):  AORUniqueID, AOTUniqueID,
     ObservingPlanUniqueID.  Requirement code changes:
     InstrumentHardware/SoftwareVersion; Sun/MoonAngle.
     Dropped Keywords: isInherited, TemperatureDetector, Pipeline,
     PipelineSoftwareVersion.
     New Keywords:  FileGroupID, DataQualityAssessment, proposed aircraft
     related keywords.

     VersionHistory version="0.7" date="3 July 2002"
     Many changes in reponse to current issues:  ObservationID and Filename
     naming conventions changed; FOCAL PLANE added to user defined coordinate
     system options; clarifications added to Error and ObservationRA/Dec
     keywords; new keyword Resolution created for describing gross spectral
     resolution of an instrument; keyword Bandwidth redefined to include imaging
     and spectroscopy applications; new Heterodyne keywords created based on
     SDFITS standard; new keyword DataQualityAssessment created.  Other mostly
     cosmetic changes also made.

     VersionHistory version="0.6" date="6 June 2002"
     Dictionary converted to XML - content essentially the same as version 0.5.

     VersionHistory version="0.5" date="6 November 2001"
     First real on-line version of keyword list and dictionary. Many issues are
     still unresolved.

-->

    <KeywordList title="Observation Keywords">
      <Keyword title="Datasource" >
         <Description> Overall source/type of data: ASTRO = Astronomical
	 observation; CALIBRATION = calibration data; LAB = Laboratory data;
	  TEST = Test data; FIRSTPOINT = SOFIA first pointing observation;
	  OTHER = Any other source not listed here.</Description>
         <Value representation="string">
            <Range type="enum"> ASTRO, CALIBRATION, LAB, TEST, OTHER, FIRSTPOINT</Range>
            <Example>'ASTRO' </Example>
         </Value>
         <Comment>Data Source</Comment>
         <FITS name="DATASRC" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationType" >
         <Description> The type of observation such as an astronomical exposure or a particular type of calibration exposure:   OBJECT = astronomical object; STANDARD = Astronomical flux standard for calibration; LAMP = Calibration lamp; FLAT = Flat-field exposure for calibration;  DARK = Dark current exposure for calibration.</Description>
         <Value representation="string">
            <Range type="enum"> OBJECT, STANDARD, LAMP, FLAT, DARK </Range>
            <Example>'OBJECT' </Example>
         </Value>
         <Comment>Observation type </Comment>
         <FITS name="OBSTYPE" hdu="any" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationStatus" >
         <Description> Status of the observation:  OK = observation performed successfully;  ERROR = Observation completed but with an error. </Description>
         <Value representation="string">
            <Range type="enum"> OK, ERROR </Range>
            <Example>'OK' </Example>
         </Value>
         <Comment>Observation status</Comment>
         <FITS name="OBSSTAT" hdu="primary" type="str"/>
      </Keyword>
      <Keyword title="KeywordDictionaryVersion" >
         <Description> SOFIA keyword dictionary version in use, in the form 'VX.X'. </Description>
         <Value representation="string">
            <Example>'V1.2'</Example>
         </Value>
         <Comment>SOFIA Keyword dictionary, in the form 'VX.X'</Comment>
         <FITS name="KWDICT" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationID" >
	 <Description>The is a unique identifier for any given data file, meant
	 to provide ready timing and sequencing information at a glance to the user.
	 It is created at the same time that the data file is first written, in a
	 format common to all instruments (and thus mandated by the observatory).
	 The OBS_ID is assigned to saved datasets only. Some test data may be taken
	 during a flight for immediate diagnostic purposes, but not saved (e.g.,
	 a snapshot to verify pointing), in which case there would be no point in
	 assigning an OBS_ID, but we note that the default should almost always be
	 to save the data and thus assign this keyword.
	 The OBS_ID number is distinct from the AOR_ID. The AOR_ID is the unique
	 identifier for an AOR which can, in principle, generate multiple files
	 to be saved.  Each of these files would have a unique OBS_ID.  The mapping
	 from AOR_ID to OBS_ID is one-to-many, i.e., one AOR can produce
	 multiple data files.  Note that the converse is not true -- one data file
	 cannot be the product of multiple AORs.  Files generated by PI instruments
	 will generally not have an AOR_ID and so OBS_ID (along with FILENAME) becomes
	 the only way to track PI observations for SOFIA.
	 We suggest the following as a format for the OBS_ID keyword: yymmdd_MMM_LLINnnn.
	 Where: yymmdd = UT datestamp for time of observation;
	 MMM = Mission sequence number (e.g. 065) as defined by the MCS -- Data not
	 taken as part of a SOFIA mission should set MMM = 000;
	 LL = Mission leg number (e.g. 06) as defined by the MCS -- Again, data not
	 taken as part of a SOFIA mission would enter LL = 00.  Pre- and post- flight
	 data would be marked with 00 and 99 respectively;
	 IN = Two letter instrument code (FL = FLITECAM; FO = FORCAST; HA = HAWC;
	 EX = EXES; CA = CASIMIR; SA = SAFIRE; FI = FIFI-LS; GR = GREAT;
	 HR = HIPO-Red; HB=HIPO-Blue);
	 nnn = Observation sequence number -- The sequence should be reset at mission
	 start and advanced all the way through mission close-out (as defined my the MCS),
	 which should allow for capture of pre- and post-flight data -- This field
	 will have a minimum of three digits (typical expected length), but more
	 digits will be allowed as necessary. </Description>
         <Value representation="yymmdd_MMM_LLINnnn">
            <Example>'040101_077_05FL001'</Example>
         </Value>
         <Comment>SOFIA Observation Identification</Comment>
         <FITS name="OBS_ID" hdu="any" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationSerialNumber" >
         <Description>Running count of observation number for observing session or flight, starting with 1.  This value should be identical to the observation sequence number appended to the ObservationID.</Description>
         <Value representation="integer">
            <Example> 1</Example>
         </Value>
         <Comment>Running count of observation number for observing session or flight.</Comment>
         <FITS name="OBSERNO" hdu="primary" type="int"/>
      </Keyword>
      <Keyword title="ImageID" >
         <Description>The image identification when there are multiple images for an observation within the SAME file (e.g. images stored as FITS extensions).</Description>
         <Value representation="integer">
            <Example> 1</Example>
         </Value>
         <Comment>Image identification index</Comment>
         <FITS name="IMAGEID" hdu="extension" type="int"/>
         <Requirement status="conditional" condition="Multiple images in a single file for an observation, e.g. dithering, mapping, etc..."/>
      </Keyword>
      <Keyword title="ObjectName" >
         <Description>Standard reference or catalog name for the target astronomical object(s).  The name should follow IAU standards, if possible.  The definition of this keyword differs slightly from ObservationTitle (FITS: OBJECT) - see description for ObservationTitle.  The value of ObjectName *may not be known* (and hence cannot be required) before or duing the observation, whereas ObservationTitle is given by the observer.</Description>
         <Value representation="string">
            <Default>ObservationTitle</Default>
            <Example>'M42'</Example>
         </Value>
         <Comment>Target object name (IAU).</Comment>
         <FITS name="OBJNAME" hdu="primary" type="str"/>
      </Keyword>
      <Keyword title="ObservationTitle" >
         <Description> The observation title given by the observer.  This will usually be the name of the astronomical target object but sometimes it is not or has additional information (e.g. filter names, etc...).  The strict object name should be givein in ObjectName (FITS: OBJNAME).  This is a little consuing since the FITS implementation of ObservationTitle is *traditionally* OBJECT. </Description>
         <Value representation="string">
            <Example>'Orion Nebula - BNKL region'</Example>
         </Value>
         <Comment>Observation title</Comment>
         <FITS name="OBJECT" hdu="any" type="str"></FITS>
	 <SCLData name="fltexec.objname" />
         <Requirement status="conditional" condition="ObservationType=OBJECT | STANDARD"/>
      </Keyword>
      <Keyword title="AOTUniqueID" >
         <Description> Unique Astronomical Observation Template (AOT) identifier.  FSI instruments only -- assigned by the DCS.  The value of this keyword should be equivalent to &lt;AOR/Reference/AOT&gt; in the AOR document.</Description>
         <Value representation="string">
            <Example>'dcs-data:/forcast/modes/mosmap/aot'</Example>
         </Value>
         <Comment>Astronomical Observation Template Identifier</Comment>
         <FITS name="AOT_ID" hdu="any" type="str"/>
         <Requirement status="conditional" condition="If AOT in use."/>
      </Keyword>
      <Keyword title="AORUniqueID" >
         <Description> Unique Astronomical Observation Request (AOR) identifier.  The AOR_ID is assigned during the creation of the final version of an AOR to be used in flight planning. This keyword applies to facility-class instruments only and is assigned by the DCS.  The value of this keyword should be equivalent to the AOR/ID tag in the AOR document.</Description>
         <Value representation="string">
            <Example>'dcs-data:/users/pat/observingPlans/0001/aors/0003'</Example>
         </Value>
         <Comment>Astronomical Observation Request Identifier.</Comment>
         <FITS name="AOR_ID" hdu="any" type="str"/>
	 <SCLData name="fltexec.aorid" />
         <Requirement status="conditional" condition="If observation prduced by an AOR."/>
      </Keyword>
      <Keyword title="FileGroupID" >
         <Description>Identifier for a group of images stored as seperate data files.  This is the mechanism for associating multiple data files that should be considered together.  Can be defined by the user -- not necessarily unique in the SOFIA mission.  For example, suppose a map of Orion is made such that each individual map point is stored in a seperate file.  The user could then set this keyword to something like "OrionMap_20040101" for each of the files so that they can be associated later.</Description>
         <Value representation="string">
            <Example>'ORIONMAP_20040101'</Example>
         </Value>
         <Comment>File group identifier.</Comment>
         <FITS name="FILEGPID" hdu="primary" type="str"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="DCS Pipeline Related Keywords">
      <Keyword title="PipelineVersion" >
	 <Description>Name and version information for pipeline processing.
	 Additional information about the pipeline (e.g. individual steps) can be
	 logged in HISTORY comments.</Description>
	 <Value representation="string">
	    <Example>'FDRP DitherCombine v1.0'</Example>
	 </Value>
	 <Comment>Pipeline name and version.</Comment>
	 <FITS name="PIPEVERS" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Data are result of pipeline
	 processing"/>
      </Keyword>
      <Keyword title="ProcessingStatus" >
         <Description> Status of any processing applied to the data, as defined in the SOFIA Project Data Management Plan:
	 LEVEL_0 = Raw engineering data for diagnostic purposes, generally not intended for archiving;
	 LEVEL_1 = Raw, uncalibrated science data in FITS or SDFITS format with complete header adhering to the SOFIA Keyword Dictionary;
	 LEVEL_2 = Pipeline-processed science data with NO flux calibration or astrometric solution;
	 LEVEL_3 = Flux-calibrated science data with astrometric solution and extinction corrected (if possible);
	 LEVEL_4 = Mosaiced maps produced from LEVEL_3 data.
	 </Description>
         <Value representation="string">
            <Range type="enum"> LEVEL_0, LEVEL_1, LEVEL_2, LEVEL_3, LEVEL_4 </Range>
            <Example>'LEVEL_1'</Example>
         </Value>
         <Comment>Processing status</Comment>
         <FITS name="PROCSTAT" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="DataQualityAssessment" >
         <Description>Data quality assessment - to be inserted by SSMOC staff (TBD).  The value of this keyword should convey the utility of the data:  USELESS = Data which convey no meaning and cannot be "fixed" (e.g. all data values equal 0); BAD = data which cannot be "fixed" but may be useful; PROBLEM = data which require some "fix" beyond standard calibration techniques for the given instrumnet; GOOD = Data appear normal for the given instrument; UNCLASSIFIED = Quality cannot be determined. </Description>
         <Value representation="string">
            <Range type="enum"> USELESS, BAD, PROBLEM, GOOD, UNCLASSIFIED </Range>
            <Example>'GOOD'</Example>
         </Value>
         <Comment>Data quality flag.</Comment>
         <FITS name="DATAQUAL" hdu="primary" type="str"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Mission Management Keywords">
      <Keyword title="ProposalUniqueID" >
         <Description> The unique observatory proposal identification.</Description>
         <Value representation="string">
            <Example>'Morris_2004A_001'</Example>
         </Value>
         <Comment>Proposal identification</Comment>
         <FITS name="PROPID" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="ObservingPlanUniqueID" >
         <Description> The observing plan which contains all the AORs.  The value of this keyword should be equivalent to &lt;AOR/Reference/ObservingPlan&gt; in the AOR document.</Description>
         <Value representation="string">
            <Example>'dcs-data:/users/pat/observingPlans/0001'</Example>
         </Value>
         <Comment>Observing plan identification</Comment>
         <FITS name="PLANID" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="AircraftDeployment" >
         <Description> Aircraft base of operations.</Description>
         <Value representation="string">
            <Example>'Moffet Field - Ames Research Center'</Example>
         </Value>
         <Comment>Site deployment</Comment>
         <FITS name="DEPLOY	" hdu="primary" type="str"/>
	 <SCLData name="NEEDED" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="ScheduleBlock" >
         <Description> The aircraft scheduling block during which the data were obtained.</Description>
         <Value representation="string">
            <Example>'2002_01'</Example>
         </Value>
         <Comment>Scheduling block identifier</Comment>
         <FITS name="SCHEDBLK	" hdu="primary" type="str"/>
	 <SCLData name="NEEDED" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="FlightNumber" >
         <Description> Flight number.</Description>
         <Value representation="integer">
            <Example> 66</Example>
         </Value>
         <Comment>Flight Number</Comment>
         <FITS name="FLIGHTNO	" hdu="primary" type="int"/>
	 <SCLData name="NEEDED" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="FlightLeg" >
         <Description> Flight leg for given flight number.</Description>
         <Value representation="integer">
            <Example> 4</Example>
         </Value>
         <Comment>Flight leg</Comment>
         <FITS name="FLIGHTLG	" hdu="primary" type="int"/>
	 <SCLData name="NEEDED" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Origination Keywords">
      <Keyword title="Observers" >
         <Description> Title(s) of the observers.</Description>
         <Value representation="string">
            <Default> none </Default>
            <Example>'Jane Astro'</Example>
         </Value>
         <Comment>Observer(s)</Comment>
         <FITS name="OBSERVER" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="FileCreator" >
         <Description> Software task which wrote the FITS file.</Description>
         <Value representation="string">
            <Example>'Mauna Kea IR'</Example>
         </Value>
         <Comment>File creation task</Comment>
         <FITS name="CREATOR	" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="TelescopeOperator" >
         <Description> The telescope operator or responsible observer (if not associated with the proposal).</Description>
         <Value representation="string">
            <Example>'Joe Astro'</Example>
         </Value>
         <Comment>Telecope operator</Comment>
         <FITS name="OPERATOR	" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="Filename" >
	 <Description>Name of host file.  The FILENAME keyword allows for different
	 stages in the treatment of a dataset: raw, calibrated, custom reduced,
	 pipelined, or reduced at an intermediate stage. Files resulting from actions
	 taken upon a given raw dataset will all have the same OBS_ID, but could
	 have different values of the FILENAME keyword. For the FILENAME format, we
	 recommend using OBSID as a prefix, and attach qualifiers denoting the stage
	 of treatment and format.  For example, yymmdd_MMM_LLIN###.fits for raw data
	 in FITS format, or yymmdd_MMM_LLIN###.p.3.fits  for the third version of
	 the output from a standard pipeline acting upon the data having
	 OBSID = 'yymmdd_MMM_LLIN###'. </Description>
         <Value representation="string">
            <Example>'040101_077_05FL001.fits'</Example>
         </Value>
         <Comment>Name of host file</Comment>
         <FITS name="FILENAME" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="Observatory" >
         <Description> Observatory identification for the site of the observation.</Description>
         <Value representation="string">
            <Example>'SOFIA' </Example>
         </Value>
         <Comment>Observatory name</Comment>
         <FITS name="OBSERVAT" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Date and Time Keywords">
      <Keyword title="CreationDate" >
         <Description> Date of file creation in time system (yyyy-mm-dd).</Description>
         <Value representation="yyyy-mm-dd">
            <Example>'2004-01-01'</Example>
         </Value>
         <Comment>Date of file creation</Comment>
         <FITS name="DATE" hdu="any" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationDate" >
         <Description> Date of observation in UT at the start of the exposure. The format follows the FITSdate standard (yyyy-mm-dd).</Description>
         <Value representation="yyyy-mm-dd">
            <Example>'2004-01-01'</Example>
         </Value>
         <Comment>UT Date of exposure start</Comment>
         <FITS name="DATE-OBS" hdu="any" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationStartUTC" >
         <Description> UTC time at the start of the exposure.</Description>
         <Value representation="hh:mm:ss.s">
            <Example>'09:30:01.00'</Example>
         </Value>
         <Comment>UTC of exposure start</Comment>
         <FITS name="UTCSTART" hdu="any" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationEndUTC" >
         <Description> UTC time at the end of the exposure.</Description>
         <Value representation="hh:mm:ss.s">
            <Example>'09:30:01.00'</Example>
         </Value>
         <Comment>UTC of exposure end</Comment>
         <FITS name="UTCEND" hdu="any" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="ObservationStartLST" >
         <Description> Local siderial time at the start of the exposure.</Description>
         <Value representation="hh:mm:ss.s">
            <Example>'14:00:00.00'</Example>
         </Value>
         <Comment>LST of exposure start</Comment>
         <FITS name="LST-OBS" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="ObservationStartMJD" >
         <Description> Modified Julian date at the start of the exposure.  The fractional part of the date is given to better than a second of time.</Description>
         <Value representation="general">
            <Units>day</Units>
            <Example> 46890.394063</Example>
         </Value>
         <Comment>MJD of exposure start</Comment>
         <FITS name="MJD-OBS" hdu="any" type="flt"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Environmental Keywords">
      <Keyword title="WaterVapor" >
         <Description> Integrated precipitable water vapor to the zenith, running
	 average of previous 60 second </Description>
         <Value representation="general">
            <Units>microns</Units>
            <Range type="gt">0.0</Range>
            <Example> 0.156</Example>
         </Value>
         <Comment>Water vapor</Comment>
         <FITS name="WVCOLDEN" hdu="any" type="flt"/>
	 <SCLData name="wvm_if.water_vapor" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="static_air_temp">
         <Description>Static air temperature, as returned by the SCL.</Description>
         <Value representation="general">
            <Units>Degrees Celsius</Units>
            <Example> -10.5</Example>
         </Value>
         <Comment>Static air temperature outside aircraft.</Comment>
         <FITS name="TEMP_OUT" hdu="any" type="flt"/>
	 <SCLData name="wvm_if.static_air_temp" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="PrimaryMirrorTemperature_1" >
         <Description> Primary mirror temp #1</Description>
         <Value representation="general">
            <Units>C</Units>
            <Range type="gt">-273.0</Range>
            <Example> -10.5 </Example>
         </Value>
         <Comment>Temperature of primary mirror</Comment>
         <FITS name="TEMPPRI1" hdu="any" type="flt"/>
	 <SCLData name="ta_mcp.pms_temp_1" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="PrimaryMirrorTemperature_2" >
	 <Description> Primary mirror temp #2</Description>
	 <Value representation="general">
	    <Units>C</Units>
	    <Range type="gt">-273.0</Range>
	    <Example> -10.5 </Example>
	 </Value>
	 <Comment>Temperature of primary mirror</Comment>
	 <FITS name="TEMPPri2" hdu="any" type="flt"/>
	 <SCLData name="ta_mcp.pms_temp_2" />
	 <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="PrimaryMirrorTemperature_3" >
	 <Description> Primary mirror temp #3</Description>
	 <Value representation="general">
	    <Units>C</Units>
	    <Range type="gt">-273.0</Range>
	    <Example> -10.5 </Example>
	 </Value>
	 <Comment>Temperature of primary mirror</Comment>
	 <FITS name="TEMPPRI3" hdu="any" type="flt"/>
	 <SCLData name="ta_mcp.pms_temp_3" />
	 <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="SeecondaryMirrorTemperature_1" >
         <Description> Temperature of secondary mirror.</Description>
         <Value representation="general">
            <Units>C</Units>
            <Range type="gt">-273.0</Range>
            <Example> -15.2</Example>
         </Value>
         <Comment>Temperature of secondary</Comment>
         <FITS name="TEMPSEC1" hdu="any" type="flt"/>
	 <SCLData name="ta_mcp.sm_temp_1" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="Temperature" >
         <Description> General format for temperatures.</Description>
         <Value representation="general">
            <Units>K</Units>
            <Range type="gt"> 0.0 </Range>
            <Example> 250.0</Example>
         </Value>
         <Comment>Temperature of XXX</Comment>
         <FITS name="TEMP_XXX" hdu="any" type="flt"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Aircraft Keywords">
      <Keyword title="Altitude"  >
         <Description>Aircraft altitude according to GPS system, as returned by the MCS.</Description>
         <Value representation="general">
            <Units>Feet</Units>
            <Example> 35229</Example>
         </Value>
         <Comment>Aircraft altitude.</Comment>
         <FITS name="AC_ALT" hdu="any" type="flt"/>
	 <SCLData name="gps.altitude" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="Airspeed"  >
         <Description>True aircraft airspeed, as returned by the MCS.</Description>
         <Value representation="general">
            <Units>Knots</Units>
            <Example> 375.0</Example>
         </Value>
         <Comment>True aircraft airspeed.</Comment>
         <FITS name="AIRSPEED" hdu="any" type="flt"/>
	 <SCLData name="fms.true_airspeed" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="GroundSpeed"  >
         <Description>Current ground speed of aircraft, as returned by the MCS.</Description>
         <Value representation="general">
            <Units>Knots</Units>
            <Example> 350.0</Example>
         </Value>
         <Comment>Aircraft ground speed.</Comment>
         <FITS name="GRDSPEED" hdu="any" type="flt"/>
	 <SCLData name="gps.ground_speed" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="Latitude"  >
         <Description>Current aircraft latitude, as returned by the MCS.</Description>
         <Value representation="general">
            <Units>Degrees</Units>
            <Example> 35.2567</Example>
         </Value>
         <Comment>Aircraft latitude.</Comment>
         <FITS name="AC_LAT" hdu="any" type="flt"/>
	 <SCLData name="gps.latitude" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="Longitude"  >
         <Description>Current aircraft longitude, as returned by the MCS.</Description>
         <Value representation="general">
            <Units>Degrees</Units>
            <Example> 35.2567</Example>
         </Value>
         <Comment>Aircraft longitude.</Comment>
         <FITS name="AC_LONG" hdu="any" type="flt"/>
	 <SCLData name="gps.longitude" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
      <Keyword title="Heading"  >
         <Description>True aircraft heading, as returned by the MCS.</Description>
         <Value representation="general">
            <Units>Degrees</Units>
            <Example> 10.7892</Example>
         </Value>
         <Comment>Aircraft heading.</Comment>
         <FITS name="HEADING" hdu="any" type="flt"/>
	 <SCLData name="fms.heading" />
         <Requirement status="conditional" condition="Observatory=SOFIA"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Telescope Keywords">
      <Keyword title="Telescope" >
         <Description> Telescope used for the observation. Usually SOFIA but can also be telescope an another observatory.</Description>
         <Value representation="string">
            <Example>'SOFIA 3.5m' </Example>
         </Value>
         <Comment>Telescope name</Comment>
         <FITS name="TELESCOP" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="TelescopeConfig" >
         <Description> Telescope configuration.  The configuration defines the mirrors, correctors, light paths, etc... On SOFIA, this should be controlled by the MCS. </Description>
         <Value representation="string">
            <Example>'NASMYTH' </Example>
         </Value>
         <Comment>Telescope configuration</Comment>
         <FITS name="TELCONF" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="TelescopeRA" >
         <Description>Telescope pointing right ascension, as returned by the telescope
	 control system -- ICRS for current equinox (DATE-OBS).  Representation may be either decimal hours or HH:MM:SS.s.</Description>
         <Value representation="general">
            <Units>Hours</Units>
            <Range type="interval">0,24 </Range>
            <Example>9.023456</Example>
         </Value>
         <Value representation="hh:mm:ss.s">
            <Units>Hours</Units>
            <Range type="interval">0,24 </Range>
            <Example>5:35:17.3</Example>
         </Value>
         <Comment>RA - as returned by TCS</Comment>
         <FITS name="TELRA" hdu="any" type="flt"/>
         <FITS name="TELRA" hdu="any" type="str"/>
	 <SCLData name="hdg.right_asc" />
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="TelescopeDec" >
         <Description> Telescope pointing declination, as returned by the telescope
	 control system -- ICRS for current equinox (DATE-OBS).  Representation may be either decimal degrees or DD:MM:SS.
	 </Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Range type="interval">-90,90</Range>
            <Example>47.345789</Example>
         </Value>
         <Value representation="dd:mm:ss">
            <Units>Degrees</Units>
            <Range type="interval">-90,90</Range>
            <Example>-5:23:28</Example>
         </Value>
         <Comment>Dec - as returned by TCS</Comment>
         <FITS name="TELDEC" hdu="any" type="flt"/>
         <FITS name="TELDEC" hdu="any" type="str"/>
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="ObservationRA" >
         <Description>Requested right ascension for the observation before any
	 manual "tweaking", either from the instrument control software or from an
	 AOR.  This may be different from the actual object coordinates
	 and/or telescope coordinates.  Representation may be either decimal hours or HH:MM:SS.s. Reference frame can be specified in the comment
	 field (ICRS recommended) and equinox specified using the Equinox keyword.
	 </Description>
         <Value representation="general">
            <Units>Hours</Units>
            <Range type="interval">0,24</Range>
        	<Example>9.0230</Example>
         </Value>
         <Value representation="hh:mm:ss.s">
            <Units>Hours</Units>
            <Range type="interval">0,24 </Range>
            <Example>5:35:17.3</Example>
         </Value>
         <Comment>RA - requested</Comment>
         <FITS name="OBSRA" hdu="any" type="flt"/>
         <FITS name="OBSRA" hdu="any" type="str"/>
	 <SCLData name="fltexec.objra" />
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="ObservationDec" >
	 <Description>Requested declination for the observation before any
	 manual "tweaking", either from the instrument control software or from an
	 AOR.  This may be different from the actual object coordinates
	 and/or telescope coordinates.  Representation may be either decimal degrees or DD:MM:SS.  Reference frame can be specified in comment
	 field (ICRS recommended) and equinox specified using the Equinox keyword.
	 </Description>
	 <Value representation="general">
            <Units>Degrees</Units>
            <Range type="interval">-90,90</Range>
            <Example>47.3465</Example>
         </Value>
         <Value representation="dd:mm:ss">
            <Units>Degrees</Units>
            <Range type="interval">-90,90</Range>
            <Example>-5:23:28</Example>
         </Value>
         <Comment>Dec - requested</Comment>
         <FITS name="OBSDEC" hdu="any" type="flt"/>
         <FITS name="OBSDEC" hdu="any" type="str"/>
	 <SCLData name="fltexec.objdec" />
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="Equinox" >
         <Description> Equinox for ObservationRA and ObservationDec.  Does not apply
	 to TelescopeRA/Dec which are fixed to current equinox (DATE-OBS).</Description>
         <Value representation="general">
            <Units>yr</Units>
            <Default> 2000.0</Default>
            <Example> 2000.0</Example>
         </Value>
         <Comment>Coordinate equinox for OBSRA and OBSDEC</Comment>
         <FITS name="EQUINOX " hdu="any" type="flt"/>
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="ZenithAngle" >
         <Description> Zenith angle of telescope pointing at start of acquisition.</Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Range type="interval">0,90</Range>
            <Example> 42.359</Example>
         </Value>
         <Comment>Zenith angle</Comment>
         <FITS name="ZA" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="HourAngle" >
         <Description> Hour angle at start of acquisition.  Representation may be either decimal hours or HH:MM:SS.s.</Description>
         <Value representation="general">
            <Units>Hours</Units>
            <Range type="interval">-90,90</Range>
            <Example>-2.288390</Example>
         </Value>
         <Value representation="hh:mm:ss.s">
            <Units>Hours</Units>
            <Range type="interval">-90,90</Range>
            <Example>-2:00:00.0</Example>
         </Value>
         <Comment>Hour angle</Comment>
         <FITS name="HA" hdu="any" type="flt"/>
         <FITS name="HA" hdu="any" type="str"/>
         <Requirement status="conditional" condition="Datasource=ASTRO | CALIBRATION"/>
      </Keyword>
      <Keyword title="DeltaTrackRateRA" >
         <Description>Deviation of right ascension telescope tracking rate from siderial in arc seconds per second.</Description>
         <Value representation="general">
            <Units> arcsec/sec</Units>
            <Default> 0</Default>
            <Example> 1.2</Example>
         </Value>
         <Comment>Offset of tracking rate from sidereal</Comment>
         <FITS name="DELTKRA" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="If not sidereal"/>
      </Keyword>
      <Keyword title="DeltaTrackRateDec" >
         <Description>Deviation of declination telescope tracking rate from sidereal in arc seconds per second.</Description>
         <Value representation="general">
            <Units> arcsec/sec</Units>
            <Default> 0</Default>
            <Example> -3.4</Example>
         </Value>
         <Comment>Offset of tracking rate from sidereal</Comment>
         <FITS name="DELTKDEC" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="If not sidereal"/>
      </Keyword>
      <Keyword title="SunAngle" >
         <Description> Angular separation between telescope pointing and sun at start of acquisition.</Description>
         <Value representation="general">
            <Units> decimal degrees</Units>
            <Range type="interval">0,180</Range>
            <Example> 110.5</Example>
         </Value>
         <Comment>Sun angle</Comment>
         <FITS name="SUNANGL" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="MoonAngle" >
         <Description> Angular separation between telescope pointing and moon at start of acquisition.</Description>
         <Value representation="general">
            <Units> decimal degrees</Units>
            <Range type="interval">0,180</Range>
            <Example> 45.8</Example>
         </Value>
         <Comment>Moon angle</Comment>
         <FITS name="MOONANGL" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="UserCoordSys" >
         <Description> The name of a user defined coordinate system. Used to define object  coordinates and offsets.  If the value is USER, then it is assumed a new coordinate system is being defined based on a translation and rotation of a reference coordinate system defined in USRREFCR.</Description>
         <Value representation="string">
            <Range type="enum">EQUATORIAL, GALACTIC, ECLIPTIC, FOCAL PLANE, USER </Range>
            <Example>'GALACTIC' </Example>
         </Value>
         <Comment>User defined coordinate system</Comment>
         <FITS name="USRCRDSY" hdu="primary" type="str"/>
      </Keyword>
      <Keyword title="UserReferenceCoordSys" >
         <Description> Reference coordinate system used to define a new user coordinate system, when USRCRDSY =USER   .</Description>
         <Value representation="string">
            <Range type="enum">EQUATORIAL, GALACTIC, ECLIPTIC, FOCAL PLANE</Range>
            <Example>'GALACTIC' </Example>
         </Value>
         <Comment>Reference coordinate system</Comment>
         <FITS name="USRREFCR" hdu="primary" type="str"/>
      </Keyword>
      <Keyword title="UserOriginX" >
         <Description> Origin of user defined coordinate system, i.e. translation from the reference coordinate system defined in USRREFCR. </Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Example> -34.567</Example>
         </Value>
         <Comment>X origin of user defined coordinate system.</Comment>
         <FITS name="USRORIGX" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="UserOriginY" >
         <Description> Origin of user defined coordinate system, i.e. translation from the reference  coordinate system defined in USRREFCR. </Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Example> 15.645</Example>
         </Value>
         <Comment>X origin of user defined coordinate system.</Comment>
         <FITS name="USRORIGY" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="UserRotation" >
         <Description> Rotation of user defined coordinate system from USRREFCR. </Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Example> 85.879</Example>
         </Value>
         <Comment>Rotation of user coordinate system.</Comment>
         <FITS name="USRCRROT" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="UserX" >
         <Description> X coordinate of object in new user defined coordinate system. </Description>
         <Value representation="general">
            <Units>decimal degees</Units>
            <Example> 0.155</Example>
         </Value>
         <Comment>Object coordinate in new user defined coordinate system</Comment>
         <FITS name="USRX" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="UserY" >
         <Description> Y coordinate of object in new user defined coordinate system. </Description>
         <Value representation="general">
            <Units>decimal degees</Units>
            <Example> -1.278</Example>
         </Value>
         <Comment>Object coordinate in new user defined coordinate system</Comment>
         <FITS name="USRY" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="UserEquinox" >
         <Description> Equinox when equatorial coordinates are used.</Description>
         <Value representation="general">
            <Units>yr</Units>
            <Default> 2000.0</Default>
            <Example> 2000.0</Example>
         </Value>
         <Comment>User coordinate equinox </Comment>
         <FITS name="USREQNX " hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="TelescopeFocus" >
         <Description> Telescope focus value in available encoder units (TBD - Simple encoder units may not apply to SOFIA...). </Description>
         <Value representation="general">
            <Units>encoder</Units>
            <Example> 1430</Example>
         </Value>
         <Comment>Telescope focus</Comment>
         <FITS name="TELFOCUS" hdu="primary" type="flt"/>
	 <SCLData name="NEEDED" />
      </Keyword>
      <Keyword title="RotationAngle" >
         <Description> Rotation angle of instrument rotator during observation.
	 According to SOFIA concept of operations, sky rotation is countered via the
	 "ROF freeze mode" so the instrument rotator will NOT change during an observation,
	 but discretely between observations to ensure the same sky rotation at the
	 instrument focal plane.</Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Range type="interval">-3,3</Range>
            <Example> 1.235</Example>
         </Value>
         <Comment>Rotation angle of instrument rotator.</Comment>
         <FITS name="ROT_ANGL" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="HelioVelocityCorrection" >
         <Description> Velocity correction (DeltaV_helio) to bring observations into the heliocentric reference frame</Description>
         <Value representation="general">
            <Units>km/s</Units>
            <Example> 40.6</Example>
         </Value>
         <Comment>Heliocentric correction</Comment>
         <FITS name="HELIO_COR" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="LSRVelocityCorrection" >
         <Description> Velocity correction (DeltaV_LSR) to bring observations into the local standard  of rest (LSR) reference frame</Description>
         <Value representation="general">
            <Units>km/s</Units>
            <Example> 32.8</Example>
         </Value>
         <Comment>LSR correction</Comment>
         <FITS name="LSR_COR" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="TelescopeControlSystem" >
         <Description> Telescope control system software version.</Description>
         <Value representation="string">
            <Example>'MCS V1.0'</Example>
         </Value>
         <Comment>Telescope control system</Comment>
         <FITS name="TELTCS" hdu="primary" type="str"/>
	 <SCLData name="NEEDED" />
      </Keyword>
      <Keyword title="TrackingMode">
         <Description> SOFIA Tracking mode: On-axis or offset. </Description>
	 <Value representation="string">
	    <Range type="enum"> OnAxis,Offset </Range>
	    <Example> 'OnAxis' </Example>
	  </Value>
	  <Comment> SOFIA tracking mode </Comment>
	  <FITS name="TRACMODE" hdu="any" type="str" />
	  <SCLData name="ta_trc.main_op_mode_id" />
	  <Requirement status="conditional" condition="isTracking = T"/>
	</Keyword>
 <Keyword title="TrackingGuideStar">
  <Description> Name of guide star in use for SOFIA tracking mode. </Description>
  <Value representation="string">
     <Example> 'HD37022' </Example>
   </Value>
   <Comment> Guide star for tracking. </Comment>
   <FITS name="TRACGDST" hdu="any" type="str" />
   <Requirement status="conditional" condition="isTracking = T"/>
	</Keyword>
   </KeywordList>
   <KeywordList title="Data Collection Keywords">
      <Keyword title="isChopping" >
         <Description> Chopping flag</Description>
         <Value representation="boolean">
            <Default> F</Default>
            <Example> T</Example>
         </Value>
         <Comment>Chopping flag</Comment>
         <FITS name="CHOPPING" hdu="primary" type="log"/>
         <Requirement status="conditional" condition="If mode in use."/>
      </Keyword>
      <Keyword title="isNodding" >
         <Description> Nodding flag</Description>
         <Value representation="boolean">
            <Default> F</Default>
            <Example> T</Example>
         </Value>
         <Comment>Nodding flag</Comment>
         <FITS name="NODDING" hdu="primary" type="log"/>
         <Requirement status="conditional" condition="If mode in use."/>
      </Keyword>
      <Keyword title="isDithering" >
         <Description> Dithering flag</Description>
         <Value representation="boolean">
            <Default> F</Default>
            <Example> T</Example>
         </Value>
         <Comment>Dithering flag</Comment>
         <FITS name="DITHER" hdu="primary" type="log"/>
         <Requirement status="conditional" condition="If mode in use."/>
      </Keyword>
      <Keyword title="isMapping" >
         <Description> Mapping flag.</Description>
         <Value representation="boolean">
            <Default> F</Default>
            <Example> T</Example>
         </Value>
         <Comment>Mapping flag.</Comment>
         <FITS name="MAPPING" hdu="primary" type="log"/>
         <Requirement status="conditional" condition="If mode in use."/>
      </Keyword>
      <Keyword title="isScanning">
         <Description> Scanning flag.</Description>
         <Value representation="boolean">
            <Default> F</Default>
            <Example> T</Example>
         </Value>
         <Comment>Scanning flag.</Comment>
         <FITS name="SCANNING" hdu="primary" type="log"/>
         <Requirement status="conditional" condition="If mode in use."/>
      </Keyword>
      <Keyword title="isTracking">
         <Description> SOFIA tracking flag. This can be either on-source or offset tracking. </Description>
         <Value representation="boolean">
            <Default> T</Default>
            <Example> T</Example>
         </Value>
         <Comment>SOFIA tracking flag.</Comment>
         <FITS name="TRACKING" hdu="primary" type="log"/>
         <Requirement status="conditional" condition="If SOFIA tracking enabled (on-source or offf-set)."/>
      </Keyword>
      <Keyword title="isROFFreeze">
         <Description> SOFIA rotation of field (ROF) freeze mode flag.</Description>
         <Value representation="boolean">
            <Default> T</Default>
            <Example> T</Example>
         </Value>
         <Comment> SOFIA rotation of field (ROF) freeze mode flag.</Comment>
         <FITS name="ROF_FRZ" hdu="primary" type="log"/>
         <Requirement status="conditional" condition="If SOFIA ROF Freeze mode in use."/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Annotation Keywords">
      <Keyword title="Comment" >
         <Description> Comment keyword.  This keyword does not normally have an equal sign. Any number of COMMENT records may be present from any legitimate source.  This is a good place for &lt;AOR/SpecialInstructions&gt;.</Description>
         <Value representation="string">
            <Example> These data on ORION are GRRRRREAAAT!</Example>
         </Value>
         <Comment>Comments may be placed anywhere throughout the header.</Comment>
         <FITS name="COMMENT" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="History" >
         <Description> History keyword.  This keyword does not normally have an equal sign.  This keyword should be reserved for any processing of the data, especially pre-processing (i.e. instrument level).  Any number of HISTORY records may be present.</Description>
         <Value representation="string">
            <Example>FDRP - Redux0 (2004-01-01, 00:00:00) OUTPUT = FILENAME</Example>
         </Value>
         <Comment>Processing history information. </Comment>
         <FITS name="HISTORY" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="Error" >
         <Description>Error information *useful to a guest investigator*;  this is not meant to be a catalog of system errors.  Any number of Error messages may be present.  In the FITS implementation, sequence numbers are used to order the information.  Generally this keyword should only be used if OBSTAT=ERROR. </Description>
         <Value representation="string">
            <Example>Guide star lost - reacquired</Example>
         </Value>
         <Comment>Error information.  FITS: Suffix index can be used to order entries (1-999).</Comment>
         <FITS name="ERROR%3d" hdu="primary" type="str"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Instrument Keywords">
      <Keyword title="Instrument" >
         <Description> Instrument name.</Description>
         <Value representation="string">
            <Example>'FLITECAM' </Example>
         </Value>
         <Comment>Instrument</Comment>
         <FITS name="INSTRUME" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="InstrumentMode" >
         <Description> Instrument mode - simple description.  e.g. IMAGING, GRISM,
	 ECHELLE, POLARIMETRY, etc...</Description>
         <Value representation="string">
            <Example>'IMAGING'</Example>
         </Value>
         <Comment>Instrument mode</Comment>
         <FITS name="INSTMODE" hdu="primary" type="str"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="InstrumentHardwareVersion" >
         <Description> Instrument hardware version.</Description>
         <Value representation="string">
            <Example>'FLITECAM V1.0'</Example>
         </Value>
         <Comment>Instrument hardware version</Comment>
         <FITS name="INSTHWV" hdu="primary" type="str"/>
      </Keyword>
      <Keyword title="InstrumentSoftwareVersion" >
         <Description> Instrument software version.</Description>
         <Value representation="string">
            <Example>'FLITECAM Control System V2.2'</Example>
         </Value>
         <Comment>Instrument software version</Comment>
         <FITS name="INSTSWV" hdu="primary" type="str"/>
      </Keyword>
      <Keyword title="ExposureTime" >
         <Description> Total on-source exposure time of the observation.  This is the total time during which photons from the object of interest are collected by the detector.  It includes any shutter corrections (which may not apply for most (all?) SOFIA instruments), and nodding/chopping corrections. For FITS, EXPTIME should be used instead of the FITS specification EXPOSURE.  ExposureTime should be specified for all images in a data file. </Description>
         <Value representation="general">
            <Units>s</Units>
            <Example> 600</Example>
         </Value>
         <Comment>On-source exposure time</Comment>
         <FITS name="EXPTIME" hdu="any" type="flt"/>
         <Requirement status="absolute"/>
      </Keyword>
      <Keyword title="PassBand" >
         <Description> PassBand specification:  This name is the astronomical standard name if applicable; i.e. J, H, K, etc....  Specific filter info will be kept in instrument-specific keywords.  Values can also be NONE, GRISM, or a combination of names, if multiple filters are in use.</Description>
         <Value representation="string">
            <Default> none </Default>
            <Example>'H'</Example>
         </Value>
         <Comment>Passband specification</Comment>
         <FITS name="PASSBAND" hdu="any" type="str"/>
         <Requirement status="conditional" condition="Imaging modes only."/>
      </Keyword>
      <Keyword title="WavelengthCentral" >
         <Description> Central wavelength of observation for imaging modes. This is a rough figure only, intended to be used for archive searches across all SOFIA instruments.</Description>
         <Value representation="general">
            <Units>Microns</Units>
            <Default> none </Default>
            <Example> 2.2</Example>
         </Value>
         <Comment>Central wavelength of observation.</Comment>
         <FITS name="WAVECENT" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Imaging modes only."/>
      </Keyword>
      <Keyword title="BandWidth" >
         <Description>Bandwidth (wavelength) of observation:  Filter bandwidth for imaging and wavelength range for spectroscopy.  This is a rough figure only, intended to be used for archive searches across all SOFIA instruments.</Description>
         <Value representation="vector">
            <Units>Microns</Units>
            <Default> none </Default>
            <Example>'[2.2034,2.5333]'</Example>
         </Value>
         <Comment>Wavelength range (bandwidth) of observation.</Comment>
         <FITS name="BANDWDTH" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Spectroscopy modes only."/>
      </Keyword>
      <Keyword title="Resolution" >
         <Description>Approximate spectral resolution of observation for spectroscopy modes, expressed as R = c/DeltaV = Lambda/DeltaLambda.  This is a rough figure only, intended to be used for archive searches across all SOFIA instruments.</Description>
         <Value representation="general">
            <Example>2500</Example>
         </Value>
         <Comment>Spectral resolution of observation.</Comment>
         <FITS name="RESOLUN" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Spectroscopy modes only."/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Array Detector Keywords">
      <Keyword title="Detector" >
         <Description> Detector name.</Description>
         <Value representation="string">
            <Example>'SBRC InSb' </Example>
         </Value>
         <Comment>Detector name</Comment>
         <FITS name="DETECTOR" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Array instruments only."/>
      </Keyword>
      <Keyword title="DetectorSize" >
         <Description>Unbinned detector size in pixels.</Description>
         <Value representation="vector">
            <Example>'(1024,1024)'</Example>
         </Value>
         <Comment>Detector size</Comment>
         <FITS name="DETSIZE" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Array instruments only."/>
      </Keyword>
      <Keyword title="PixelScale" >
         <Description> Projected pixel scale on the sky.</Description>
         <Value representation="general">
            <Units> arcsec</Units>
            <Example> 0.32</Example>
         </Value>
         <Comment>Pixel scale</Comment>
         <FITS name="PIXSCAL" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Array instruments only."/>
      </Keyword>
      <Keyword title="Subarrays" >
         <Description> Number of sub arrays used in data acquisition.  Full array assumed if absent.</Description>
         <Value representation="integer">
            <Default> 0 (full array)</Default>
            <Example> 2</Example>
         </Value>
         <Comment>Number of subarrays used</Comment>
         <FITS name="SUBARRNO" hdu="primary" type="int"/>
         <Requirement status="conditional" condition="If subarrays in use."/>
      </Keyword>
      <Keyword title="SubarraySize" >
         <Description> The log unbinned size of the  n-th subarray in section notation.</Description>
         <Value representation="section">
            <Example>'[0:255,0:255]'</Example>
         </Value>
         <Comment>Sub array size</Comment>
         <FITS name="SUBARR%2d" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="If subarrays in use."/>
      </Keyword>
      <Keyword title="DataMaximum" >
         <Description> The value field shall always contain a floating point number, regardless of the value of BITPIX. This number shall give the minimum valid physical value represented by the array, exclusive of any special values.</Description>
         <Value representation="integer">
            <Default></Default>
            <Example> 150000</Example>
         </Value>
         <Comment>Maximum data value</Comment>
         <FITS name="DATAMAX" hdu="primary" type="int"/>
      </Keyword>
      <Keyword title="DataMinimum" >
         <Description> The value field shall always contain a floating point number, regardless of the value of BITPIX. This number shall give the minimum valid physical value represented by the array, exclusive of any special values.</Description>
         <Value representation="integer">
            <Default></Default>
            <Example> 0</Example>
         </Value>
         <Comment>Minimum data value</Comment>
         <FITS name="DATAMIN" hdu="primary" type="int"/>
      </Keyword>
      <Keyword title="SaturationLevel" >
         <Description>The value field shall always contain a floating point number, regardless of the value of BITPIX. This number shall give the approximate saturation value per raw frame of the array.</Description>
         <Value representation="integer">
            <Default></Default>
            <Example> 100000</Example>
         </Value>
         <Comment>Saturation data value</Comment>
         <FITS name="SATURATE" hdu="primary" type="int"/>
      </Keyword>
      <Keyword title="DetectorAngle" >
         <Description> Position angle of detector y axis with respect to celestial North.
	 Usually reported as degrees east of north.</Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Range type="interval">-180,180</Range>
            <Example> 10.0</Example>
         </Value>
         <Comment>Detector plane rotation angle</Comment>
         <FITS name="DET_ANGL" hdu="primary" type="flt"/>
      </Keyword>
      <Keyword title="ExposureCoadds" >
         <Description> Number of coadded raw detector frames.  This could also be
	 number of coadds per chop position.</Description>
         <Value representation="integer">
            <Default> 1</Default>
            <Example> 10</Example>
         </Value>
         <Comment>Number of coadds</Comment>
         <FITS name="COADDS" hdu="any" type="int"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Heterodyne Detector Keywords">
      <Keyword title="FrontendDevice" >
         <Description>Name of frontend device.</Description>
         <Value representation="string">
            <Example>'CASIMIR_Frontend_Device'</Example>
         </Value>
         <Comment>Name of frontend device.</Comment>
         <FITS name="FRONTEND" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="BackendDevice" >
         <Description>Name of backend device.</Description>
         <Value representation="string">
            <Example>'CASIMIR_Backend_Device'</Example>
         </Value>
         <Comment>Name of backend device.</Comment>
         <FITS name="BACKEND" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="BackendBandwidth" >
         <Description>Total bandwidth of heterodyne backend (Hz).
</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Example> 300.547</Example>
         </Value>
         <Comment>Total bandwidth of heterodyne backend</Comment>
         <FITS name="BANDWID" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="SystemTemperature" >
         <Description> Heterodyne system temperature.</Description>
         <Value representation="general">
            <Units>K</Units>
            <Example>10.5</Example>
         </Value>
         <Comment>System temperature.</Comment>
         <FITS name="TSYS" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="FrequencyResolution" >
         <Description>Nominal frequency resolution -- may differ from channel spacing.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Example>100.0</Example>
         </Value>
         <Comment>Nominal frequency resolution -- may differ from channel spacing.</Comment>
         <FITS name="FREQRES" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="ReferenceFrequency" >
         <Description>The observed frequency (Hz) at the reference pixel of the frequency-like axis.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Example></Example>
         </Value>
         <Comment>Reference frequency.</Comment>
         <FITS name="OBSFREQ" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="SidebandFrequency" >
         <Description>The image sideband freq (Hz) corresponding to ReferenceFrequency.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Example></Example>
         </Value>
         <Comment>Image sideband frequency.</Comment>
         <FITS name="IMAGFREQ" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="RestFrequency" >
         <Description> Rest frequency.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Example></Example>
         </Value>
         <Comment>Rest frequency.</Comment>
         <FITS name="RESTFREQ" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Heterodyne Detector Keywords -- OLD">
      <Keyword title="ReferenceLSRVelocity" >
         <Description> Velocity of reference channel.</Description>
         <Value representation="general">
            <Units>m/s</Units>
            <Default></Default>
            <Example> 300.547</Example>
         </Value>
         <Comment>Reference velocity</Comment>
         <FITS name="VLSR" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="VelocityResolution" >
         <Description> Nominal velocity resolution.</Description>
         <Value representation="general">
            <Units>m/s</Units>
            <Default></Default>
            <Example> 22.547</Example>
         </Value>
         <Comment>Resolution</Comment>
         <FITS name="DELTAV" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="ReferenceVelocity" >
         <Description></Description>
         <Value representation="general">
            <Units>m/s</Units>
            <Default></Default>
            <Example></Example>
         </Value>
         <Comment></Comment>
         <FITS name="VELREF" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="ReferenceVelocityAlternate" >
         <Description> Alternate velocity reference value.</Description>
         <Value representation="general">
            <Units>m/s</Units>
            <Default></Default>
            <Example> 203.45</Example>
         </Value>
         <Comment>Alternate reference value</Comment>
         <FITS name="ALTRVAL" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="ReferencePixelAlternate" >
         <Description> Alternate reference pixel.</Description>
         <Value representation="integer">
            <Default></Default>
            <Example> 32</Example>
         </Value>
         <Comment>Alternate reference pixel</Comment>
         <FITS name="ALTRPIX" hdu="primary" type="int"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="RestFrequency" >
         <Description> Rest frequency.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Default></Default>
            <Example></Example>
         </Value>
         <Comment>Rest frequency.</Comment>
         <FITS name="RESTFREQ" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="LocalOscillatorFrequency" >
         <Description> Local oscillator frequency.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Default></Default>
            <Example></Example>
         </Value>
         <Comment>Local oscillator frequency.</Comment>
         <FITS name="LOFREQ" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="IntermediateFrequency" >
         <Description> Intermediate frequency.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Default></Default>
            <Example></Example>
         </Value>
         <Comment>Intermediate frequency.</Comment>
         <FITS name="IFFREQ" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="SidebandFrequency" >
         <Description> Image sideband frequency.</Description>
         <Value representation="general">
            <Units>Hz</Units>
            <Default></Default>
            <Example></Example>
         </Value>
         <Comment>Image sideband frequency.</Comment>
         <FITS name="IMAGFREQ" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
      <Keyword title="TemperatureSystem" >
         <Description> System temperature.</Description>
         <Value representation="general">
            <Units>K</Units>
            <Default></Default>
            <Example></Example>
         </Value>
         <Comment>System temperature.</Comment>
         <FITS name="TSYS" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="Heterodyne instruments only."/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Data Structure Keywords">
       <Keyword title="HeaderChecksum" >
         <Description> Header checksum value for verifying the data.  This follows the proposed FITS checksum standard.</Description>
         <Value representation="string">
            <Example>'0WDA3T940TA90T99'</Example>
         </Value>
         <Comment>Header checksum</Comment>
         <FITS name="CHECKSUM" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="DataChecksum" >
         <Description> Data checksum value for verifying the data.  This follows the proposed FITS checksum standard.</Description>
         <Value representation="string">
            <Example>'aMmjbMkhaMkhaMkh'</Example>
         </Value>
         <Comment>Data checksum</Comment>
         <FITS name="DATASUM" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="ChecksumVersion" >
         <Description> Version of checksum method used for the checksums.</Description>
         <Value representation="string">
            <Example></Example>
         </Value>
         <Comment>Checksum version</Comment>
         <FITS name="CHECKVER" hdu="any" type="str"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Chopping Keywords">
      <Keyword title="ChopperHardwareVersion" >
         <Description></Description>
         <Value representation="string">
            <Example>'SOFIA SMU V1.0'</Example>
         </Value>
         <Comment>Chopper hardware version	</Comment>
         <FITS name="CHPHWV" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopperSoftwareVersion" >
         <Description></Description>
         <Value representation="string">
            <Example>'SOFIA SMU Control System V2.2'</Example>
         </Value>
         <Comment>Chopper software version</Comment>
         <FITS name="CHPSWV" hdu="primary" type="str"/>
         <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopFrequency" >
         <Description> Measured TCM chop frequency</Description>
         <Value representation="general">
	    <Units>Hz</Units>
            <Range type="interval"> 0.0, 20.0 </Range>
            <Example> 15.0</Example>
         </Value>
         <Comment>Chop frequency</Comment>
         <FITS name="CHPFREQ" hdu="any" type="flt"/>
	 <SCLData name="ta_sma.tcm_frequency" />
         <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopPode" >
	 <Description>Indicates whether 2 or 3 point chopping profile is being used.  For 3-point chopping, the center position usually contains the object of interest.</Description>
	 <Value representation="string">
	    <Range type="enum"> 2 POINT, 3 POINT </Range>
	    <Default>'2 POINT'</Default>
	    <Example>'2 POINT'</Example>
	 </Value>
	 <Comment>2 or 3 point chopping mode?</Comment>
	 <FITS name="CHPMODE" hdu="any" type="str"/>
	 <SCLData name="ta_sma.tcm_profile" />
	 <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopAmplitude_1" >
         <Description> Measured TCM chop amplitude bewteen mid and positive setpoints. </Description>
         <Value representation="general">
	    <Units>arcsec</Units>
	    <Range type="interval"> -1125.0, 1125.0 </Range>
            <Example> 300.0</Example>
         </Value>
         <Comment>Chop amplitude 1</Comment>
         <FITS name="CHPAMP1" hdu="any" type="flt"/>
	 <SCLData name="ta_sma.tcm_amplitude_1" />
         <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopAmplitude_2" >
	 <Description> Measured TCM chop amplitude bewteen mid and negative setpoints. </Description>
	 <Value representation="general">
	    <Units>arcsec</Units>
	    <Range type="interval"> -1125.0, 1125.0 </Range>
	    <Example> 300.0</Example>
	 </Value>
	 <Comment>Chop amplitude 2</Comment>
	 <FITS name="CHPAMP2" hdu="any" type="flt"/>
	 <SCLData name="ta_sma.tcm_amplitude_2" />
	 <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopCoordSys" >
	 <Description> Coordinate system in which CHPANGLE is defined. USER coordinate system (defined above) is allowed.</Description>
	 <Value representation="string">
	    <Range type="enum">EQUATORIAL, GALACTIC, ECLIPTIC, USER</Range>
	    <Default>EQUATORIAL </Default>
	    <Example>'GALACTIC' </Example>
	 </Value>
	 <Comment>Coordinate system for CHPANGLE</Comment>
	 <FITS name="CHPCRSYS" hdu="any" type="str"/>
	 <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopAngle" >
         <Description> Chop angle, clockwise from y axis defined by CHPCRSYS.</Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Range type="interval">-180,180</Range>
            <Example> 45.0</Example>
         </Value>
         <Comment>Chop angle</Comment>
         <FITS name="CHPANGLE" hdu="any" type="flt"/>
	 <SCLData name="ta_sma.tcm_angle (Different definition)" />
         <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopPhase" >
         <Description> Chopper phase - '+' = Starting on-source; '-' = starting
	 off-source.</Description>
         <Value representation="string">
	    <Range type="enum"> +,- </Range>
            <Default> '+'</Default>
            <Example> '+'</Example>
         </Value>
         <Comment>Chop phase</Comment>
         <FITS name="CHPPHAS" hdu="any" type="str"/>
         <Requirement status="conditional" condition="isChopping = T"/>
      </Keyword>
      <Keyword title="ChopSourceSignal" >
	 <Description> Indicates use of either internal or external chop signal.</Description>
	 <Value representation="string">
	    <Range type="enum"> INTERNAL, EXTERNAL </Range>
	    <Default>'INTERNAL' </Default>
	    <Example>'INTERNAL' </Example>
	 </Value>
	 <Comment>Chopper source signal</Comment>
	 <FITS name="CHPSRC" hdu="any" type="str"/>
	 <SCLData name="ta_sma.tcm_sync_source" />
      </Keyword>
      <Keyword title="ChopACDC" >
	 <Description>Indicates whether the Chopper is being driven digitally or via
	 the analog inputs.</Description>
	 <Value representation="string">
	    <Range type="enum"> CHOPAC, CHOPDC </Range>
	    <Example>'CHOPDC' </Example>
	 </Value>
	 <Comment>Digital or analog chopper input.</Comment>
	 <FITS name="CHPACDC" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="ChopFunction" >
         <Description> Chopper waveform function.</Description>
         <Value representation="string">
            <Example>'SQUARE' </Example>
         </Value>
         <Comment>Chop function</Comment>
         <FITS name="CHPFUNC" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="ChopSettleTime" >
         <Description> Applied chopper settling time. </Description>
         <Value representation="general">
	    <Units>millisec</Units>
	    <Range type="interval"> 1.0, 100.0  </Range>
            <Example> 2.04</Example>
         </Value>
         <Comment>Chop settle time</Comment>
         <FITS name="CHPSETL" hdu="any" type="flt"/>
	 <SCLData name="ta_sma.tcm_settling_time" />
      </Keyword>
   </KeywordList>
   <KeywordList title="Nodding Keywords">
      <Keyword title="NodIntegrationTime" >
         <Description> Total integration time per nod position -- not including nod
	 slew time and nod settle time (see NodSettleTime). </Description>
         <Value representation="general">
            <Units>s</Units>
            <Example> 300.0</Example>
         </Value>
         <Comment>Nod time</Comment>
         <FITS name="NODTIME" hdu="any" type="flt"/>
         <Requirement status="conditional" condition="isNodding = T"/>
      </Keyword>
      <Keyword title="NodCycles" >
         <Description> Number of nod cycles.</Description>
         <Value representation="integer">
            <Default> 1</Default>
            <Example> 30</Example>
         </Value>
         <Comment>Nod cycles.</Comment>
         <FITS name="NODN" hdu="any" type="int"/>
         <Requirement status="conditional" condition="isNodding = T"/>
      </Keyword>
      <Keyword title="NodSettleTime" >
         <Description>Time required for telescope to settle after nod slew is complete.
	 Amount of time to wait between when telescope arrives at nod destination and
	 when to begin intergrating.</Description>
         <Value representation="general">
            <Units>s</Units>
            <Example> 0.0556</Example>
         </Value>
         <Comment>Nod settle time</Comment>
         <FITS name="NODSETL" hdu="any" type="flt"/>
      </Keyword>
      <Keyword title="NodAmplitude" >
         <Description> Nod amplitude on sky.</Description>
         <Value representation="general">
            <Units>arcsec</Units>
            <Example> 30.0</Example>
         </Value>
         <Comment>Nod amplitude on sky.</Comment>
         <FITS name="NODDIST" hdu="any" type="flt"/>
         <Requirement status="conditional" condition="isNodding = T"/>
      </Keyword>
      <Keyword title="NodBeam" >
	 <Description> Current nod beam (A or B), where beam A is usually assumed
	 to be for the object. </Description>
	 <Value representation="string">
	    <Range type="enum">A,B</Range>
	    <Example>'A' </Example>
	 </Value>
	 <Comment>Current nod beam</Comment>
	 <FITS name="NODBEAM" hdu="any" type="str"/>
	</Keyword>
      <Keyword title="NodPattern" >
	 <Description> Pointing sequence pattern for one nod cycle (there could be many
	 nod cycles in an observation).  Beam A is usually assumed to contain
	 the object of interest. </Description>
	 <Value representation="string">
	    <Range type="enum">AB,ABBA</Range>
	    <Example>'ABBA' </Example>
	 </Value>
	 <Comment>Nodding pattern, one cycle.</Comment>
	 <FITS name="NODPATT" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="NodCoordSys" >
	 <Description> Coordinate system in which absolute nod positions (NODPOSX,Y)
	 and rotations are defined.</Description>
	 <Value representation="string">
	    <Range type="enum">EQUATORIAL, GALACTIC, ECLIPTIC, USER</Range>
	    <Default>'EQUATORIAL' </Default>
	    <Example>'EQUATORIAL' </Example>
	 </Value>
	 <Comment>Coordinate system for Nod angle</Comment>
	 <FITS name="NODCRSYS" hdu="any" type="str"/>
	 <Requirement status="conditional" condition="isNodding = T"/>
      </Keyword>
      <Keyword title="NodPositionX" >
         <Description>Absolute nod offset position X in the coordinate frame specified by
	 NODCRSYS. Alternate specification to NODDIST when an absolute nod offset
	 position is required.</Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Example> 32.123467</Example>
         </Value>
         <Comment>Nod X position</Comment>
         <FITS name="NODPOSX" hdu="any" type="flt"/>
      </Keyword>
      <Keyword title="NodPositionY" >
         <Description>Absolute nod offset position Y in the coordinate frame specified
	 by NODCRSYS. Alternate specification to NODDIST when an absolute nod offset
	 position is required.</Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Example> -22.9873</Example>
         </Value>
         <Comment>Nod Y position</Comment>
         <FITS name="NODPOSY" hdu="any" type="flt"/>
      </Keyword>
      <Keyword title="NodAngle" >
         <Description> Nod angle, clockwise from y axis defined by NODCRSYS.</Description>
         <Value representation="general">
            <Units>decimal degrees</Units>
            <Range type="interval">-180,180</Range>
            <Example> 45.0</Example>
         </Value>
         <Comment>Nod angle</Comment>
         <FITS name="NODANGLE" hdu="any" type="flt"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Dithering Keywords">
      <Keyword title="DitherPattern" >
         <Description> Approximate shape of dither pattern. </Description>
         <Value representation="string">
            <Range type="enum">BOX5, BOX9, LINE, SPIRAL, CUSTOM </Range>
            <Example>'BOX9' </Example>
         </Value>
         <Comment>Dither pattern</Comment>
         <FITS name="DTHPATT" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="DitherPositions" >
         <Description> Number of dither positions. </Description>
         <Value representation="integer">
            <Example> 9</Example>
         </Value>
         <Comment>Number of dither positions.</Comment>
         <FITS name="DTHNPOS" hdu="any" type="int"/>
         <Requirement status="conditional" condition="isDithering = T"/>
      </Keyword>
   </KeywordList>
   <KeywordList title="Mapping Keywords">
      <Keyword title="MapCoordSys" >
         <Description> Coordinate system in which absolute map positions are defined.
	 </Description>
         <Value representation="string">
            <Range type="enum">EQUATORIAL, GALACTIC, ECLIPTIC, USER</Range>
            <Default>EQUATORIAL </Default>
            <Example>'GALACTIC' </Example>
         </Value>
         <Comment>Coordinate system for mapping/scanning.</Comment>
         <FITS name="MAPCRSYS" hdu="any" type="str"/>
         <Requirement status="conditional" condition="isMapping = T"/>
      </Keyword>
      <Keyword title="MapPattern" >
         <Description> Approximate map pattern shape.</Description>
         <Value representation="string">
            <Range type="enum">RASTER, SPIRAL, SWEEP, CUSTOM </Range>
            <Example>'RASTER' </Example>
         </Value>
         <Comment>Map pattern</Comment>
         <FITS name="MAPPATT" hdu="any" type="str"/>
      </Keyword>
      <Keyword title="MapPositionsX" >
         <Description> Number of map positions in X coordinate as defined by MAPCRSYS.</Description>
         <Value representation="integer">
            <Example> 4</Example>
         </Value>
         <Comment>Number of map positions in X</Comment>
         <FITS name="MAPNXPOS" hdu="any" type="int"/>
         <Requirement status="conditional" condition="isMapping = T"/>
      </Keyword>
      <Keyword title="MapPositionsY" >
         <Description> Number of map positions in Y coordinate as defined by MAPCRSYS.</Description>
         <Value representation="integer">
            <Example> 4</Example>
         </Value>
         <Comment>Number of map positions in Y</Comment>
         <FITS name="MAPNYPOS" hdu="any" type="int"/>
         <Requirement status="conditional" condition="isMapping = T"/>
      </Keyword>
      <Keyword title="MapIntervalX" >
         <Description> Mapping step interval in X coordinate as defined by MAPCRSYS.</Description>
         <Value representation="general">
            <Units>arcmin</Units>
            <Example> 8.5</Example>
         </Value>
         <Comment>Mapping step interval in X</Comment>
         <FITS name="MAPINTX" hdu="primary" type="flt"/>
         <Requirement status="conditional" condition="isMapping = T"/>
      </Keyword>
      <Keyword title="MapIntervalY" >
         <Description> Mapping step interval in Y coordinate as defined by MAPCRSYS.</Description>
         <Value representation="general">
            <Units>arcmin</Units>
            <Example> 8.5</Example>
         </Value>
         <Comment>Mapping step interval in Y</Comment>
         <FITS name="MAPINTY" hdu="any" type="flt"/>
         <Requirement status="conditional" condition="isMapping = T"/>
      </Keyword>
      </KeywordList>
      <KeywordList title="Scanning Keywords (Constant Velocity)">
      <Keyword title="ScanStartRA" >
	 <Description>Start of scan - RA.</Description>
	 <Value representation="general">
	    <Units>decimal hours</Units>
	    <Range type="interval">0,24 </Range>
	    <Example>9.023456</Example>
	 </Value>
	 <Comment>Start of scan - RA.</Comment>
	 <FITS name="SCNRA0" hdu="any" type="flt"/>
	 <Requirement status="conditional" condition="isScanning = T"/>
      </Keyword>
      <Keyword title="ScanStartDec" >
	 <Description> Start of scan - Dec.</Description>
	 <Value representation="general">
	    <Units>decimal degrees</Units>
	    <Range type="interval">-90,90</Range>
	    <Example>47.345789</Example>
	 </Value>
	 <Comment>Start of scan - Dec.</Comment>
	 <FITS name="SCNDEC0" hdu="any" type="flt"/>
	 <Requirement status="conditional" condition="isScanning = T"/>
      </Keyword>
      <Keyword title="ScanEndRA" >
	 <Description>End of scan - RA.</Description>
	 <Value representation="general">
	    <Units>decimal hours</Units>
	    <Range type="interval">0,24 </Range>
	    <Example>9.023456</Example>
	 </Value>
	 <Comment>End of scan - RA.</Comment>
	 <FITS name="SCNRAF" hdu="any" type="flt"/>
	 <Requirement status="conditional" condition="isScanning = T"/>
      </Keyword>
      <Keyword title="ScanEndDec" >
	 <Description> End of scan - Dec.</Description>
	 <Value representation="general">
	    <Units>decimal degrees</Units>
	    <Range type="interval">-90,90</Range>
	    <Example>47.345789</Example>
	 </Value>
	 <Comment>End of scan - Dec.</Comment>
	 <FITS name="SCNDECF" hdu="any" type="flt"/>
	 <Requirement status="conditional" condition="isScanning = T"/>
      </Keyword>
      <Keyword title="ScanRate" >
         <Description> Slew rate in arcsec/sec along path.</Description>
         <Value representation="general">
            <Units>arcsec/s</Units>
            <Example> 10.0</Example>
         </Value>
         <Comment>Scan rate</Comment>
         <FITS name="SCNRATE" hdu="any" type="flt"/>
	 <Requirement status="conditional" condition="isScanning = T"/>
      </Keyword>
      <Keyword title="ScanDirection" >
	 <Description> Angle on sky in some coordinate system to scan from
	 ScanStartRA/Dec, alternative specification to ScanEndRA/Dec. </Description>
	 <Value representation="general">
	    <Units>degrees</Units>
	    <Example> -35.5</Example>
	 </Value>
	 <Comment>Scan direction</Comment>
	 <FITS name="SCNDIR" hdu="any" type="flt"/>
	 <Requirement status="conditional" condition="isScanning = T"/>
      </Keyword>
   </KeywordList>
</KeywordDictionary>