PDS4 Local Data Dictionary Processing Report

Configuration:
   LDDTool Version        13.0.2
   LDD Version Id:        1.9.5.0
   LDD Label Version Id:  1.0
   LDD Discipline (T/F):  true
   LDD Namespace URL:     http://pds.nasa.gov/pds4/
   LDD URN Prefix:        urn:nasa:pds:
   Time                   Tue May 04 05:11:42 UTC 2021
   Common Schema          [PDS4_PDS_1G00.xsd]
   Common Schematron      [PDS4_PDS_1G00.sch]
   IM Version Id:         1.16.0.0
   IM Namespace Id:       pds
   IM Label Version Id:   1.0
   IM Object Model        [UpperModel.pont]
   IM Data Dictionary     [dd11179.pins]
   IM Configuration File  [MDPTNConfigClassDisp.xml]
   IM Glossary            [Glossary.pins]
   IM Document Spec       [DMDocument.pins]

Parameters:
   Input File             [/home/runner/work/ldd-cart/ldd-cart/src/PDS4_CART_IngestLDD.xml]
   PDS Processing         true
   LDD Processing         true
   Discipline LDD         true
   Mission LDD            false
   Write Attr Elements    false
   Merge with Master      false

Summary:
   Classes                63
   Attributes             103
   Associations           255
   Error messages         0
   Warning messages       0
   Information messages   0

Detailed validation messages

Parsed Input - Header:
   LDD Name               Cartography
   LDD Version            1.9.5.0
   Full Name              Trent Hare
   Steward                img
   Namespace Id           cart
   Comment                
    Contains classes and attributes used to describe cartographic
    products.  This information is largely adapted from the Federal Geographic 
    Data Committee (FGDC) "Content Standard for Digital Geospatial Metadata", 
    with extensions (changes/additions) to satisfy planetary requirements.

    ## CHANGE LOG ##
    1.9.0.0
    - Upgraded to v1900 of the IM
    - Created new Map_Projection_Lander class with associated map projections and attributes
    - New pixel_scale attribute that defines a pixel scale not x/y aligned
    - Change units for pixel_scale_x/y to Units_of_Pixel_Scale_Map
    - Change units for pixel_resolution_x/y to Units_of_Pixel_Resolution_Map
    - Change local_georeference_information to optional in the case where Map_Projection_Lander is specified.
    - Created Local_child_check rule to check this
    - Change Spatial_Domain to optional in the case where Map_Projection_Lander is specified since domain is the horizon
    - Created spatial_domain_or_lander_check rule to check this
    - Added Local_Internal_Reference at top-level of Cartography dictionary
    - Created local_reference_type_check_cart rule to enforce value of Local_Internal_Reference
    
    1.9.0.1
    - Changed all class local_identifier to identifier_reference per v1900 IM update
    - Changed Coordinate_Space_Reference to inherit from Geometry dictionary
    
    1.9.0.2
    - CIsbell 24July2018
    - Added/corrected unit_of_measure_type where appropriate to correctly include 
      'Units_of_Pixel_Scale_Map' and 'Units_of_Pixel_Resolution_Map'
    
    1.9.1.0
    - Added Point Perspective Map Projection (CIsbell).
    - Note: As of 24July2018, parameters/attributes here include only those required to define the 'fundamental' Point Perspective (PP)
        Projection. That is, along with the common base projection parameters required for all projections, the additional PP
        requirements of target_center_distance and nadir point (longitude_of_central_meridian, latitude_of_projection_origin) 
        will define the basic PP projection. Additional parameters for a more 'complex' PP (line/sample sub-spacecraft offsets
        optical offsets, focal parameters, image array segment definitions, etc, will need to be added as needed.

    1.9.1.1
    - CDeCesare 20181116
    - Removed definitions of classes which are already defined by GEOM dictionary: Vector_Cartesian_Unit_Base, Vector_Cartesian_Position_Base, Vector_Cartesian_No_Units
    - Updated references that point at Vector_Cartesian_Unit_Base to instead point at geom.Vector_Cartesian_Unit
    - Updated references that point at Vector_Cartesian_Position_Base to instead point at geom.Vector_Cartesian_Position_Base

    1.9.2.0
    PGeissler and THare 20181221
    - Added Oblique Cylindrical Map Projection 
    - Note: To support Cassini BIDR. This is a somewhat specialize map projection which requires several new projection parameters
            including: reference_latitude, reference_longitude, map_projection_rotation, oblique_proj_pole_latitude, 
			oblique_proj_pole_longitude, oblique_proj_pole_rotation, oblique_proj_x_axis_vector, oblique_proj_y_axis_vector, and
			oblique_proj_z_axis_vector. The original parameter center_latitude is now mapped to latitude_of_projection_origin and
			the original parameter center_longitude is now mapped to longitude_of_central_meridian. line, sample offsets are
			remapped into meters using upperleft_corner_x and upperleft_corner_y. 
    - Added many definitions for map projections (cartographic and lander). 
    - Removed "General Vertical Near-sided Projection" since it has functionally been replaced by "Point Perspective".

    1.9.3.0
    THare and PGeissler 20190424
    - 'Planar_Coordinate_Information' is no longer mandated to better support vector files. It should be added for images
    - 'cart.latitude_resolution' and 'cart:longitude_resolution' to be optional, not needed for vector GIS labels
    - Added Secondary_Spatial_Domain as an optional or alternative method to list IAU recommended or historically used 
      bounding coordinate section to support both positive East and positive West systems in the same label.
    - Rename all three radius parameter names. These were renamed to clarify the parameter names since the name 
        semi_major_radius is flawed and confusing as semi and radius both mean "half". This keyword should have
        originally been named semi_major_axis (as used by the Federal Geospatial Data Consortium [FGDC]). To better
        align with PDS version 3, we are moving these parameters names back to a_axis_radius, b_axis_radius, and 
        c_axis_radius. Thus we are renaming: 
    - semi_major_radius to a_axis_radius. 
    - semi_minor_radius to b_axis_radius
    - polar_radius to c_axis_radius
      To be clear, most mapping applications call a_axis_radius the semi_major_axis and c_axis_radius the semi_minor_radius.
      The b_axis_radius value is generally not seen in mapping applications which typical do not support triaxial definitions
      for map projections. For most all cases, when a triaxial definition is defined, the IAU defines a best fit sphere. 
      see: https://astrogeology.usgs.gov/groups/IAU-WGCCRE.
      When a best-fit sphere or a body is already defined as a sphere, a single radius value will be listed across all three 
      parameters a_axis_radius, b_axis_radius, and c_axis_radius. For an ellipse, the a_axis_radius and b_axis_radius will be
      defined by a single radius value and a different (generally smaller) radius value for the c_axis_radius. Lastly, the
      default units for the these parameters was set to meters "m".

    THare and CDeCesare 20190430
    - Upgraded to v1B10 of IM.
    - Undid changes from 1.9.1.1.
    - Coordinate_Space_Reference is now re-used from the GEOM class as-is, so that CART doesn't need to re-implement it.

    THare 20190520
    - simple misspellings
    - updated definitions for Surface_Model_Parameters and Surface_Model_Planar, surface_model_type, 
      Vector_Surface_Ground_Location, Vector_Surface_Normal

    1.9.3.1
    THare and CDeCesare 20190613
    - updated line and sample attributes to allow for non-negate values under Camera_Model_Offset, 
      Pixel_Position_Nadir_Polar, Pixel_Position_Origin  

    1.9.3.2
    THare 20190909
    - add Ring section, Map_Projection_Rings, for ring map projections to meet conversion of Cassini PDS3 data to PDS4.
    - Rings intially falls under Horizontal_Coordinate_System_Definition using Local (not tied to a surface) and
      enforces the need for a defined Geodetic_Model (body name, radius values, latitude type, and longitude direction).
    - Updated spatial_domain_or_lander_check to spatial_domain_or_lander_or_rings_check rule.

    1.9.3.3
    THare 20191027
    - Removed Map_Projection_Base. This was suppose to be an abstract clss for group liking map projection
      parameters, but there was no good method to group across the current allowable map projections and
      it made it harder to know which map projection required which parameters.
    - Added Orthographic, Mercator, and Lambert Azimuthal Equal-area
    - removed straight_vertical_longitude_from_pole, just use longitude_of_central_meridian (aka Longitude of 
      projection center) for polar stereographic which is more normally seen. need to update:
      https://github.com/OSGeo/gdal/blob/33a8a0edc764253b582e194d330eec3b83072863/gdal/frmts/pds/pds4dataset.cpp#L2280

    1.9.3.4
    THare 20200127
    - Minor update for Oblique Cylindrical to help define that the XML-odd 3-value vector strings (oblique_proj_x_axis_vector,
      oblique_proj_y_axis_vector, oblique_proj_z_axis_vector) as optional and really for documention purposes.
    - Minor update to Polar Stereographic to make scale_factor_at_projection_origin optional and added documention
      to help clarify that attribute projection.

    1.9.4.0
    THare 20200515
    - Add new class Vector_Projection_Z_Axis_Initial
    - Under Oblique Cylindrical set reference_latitude and reference_longitude as optional. Unfortunately,
      some older PDS3 labels have these two values (and an implied angle always set to zero) instead of using the
      more appropriate values: oblique_proj_pole_latitude, oblique_proj_pole_longitude, oblique_proj_pole_rotation
      Implementations for this map projection on use the later 3 attributes (e.g. ISIS3/4 and PROJ) not reference_*.
      So when older labels only use reference_*, those should be converted to use the 3 oblique_proj_pole_* attributes
      (note it is not a simple mapping, requiring a calculated update to get from reference_* to oblique_proj_pole_*)
    - Removed scale_factor_at_center_line as it is currently not being used anywhere
    - Removed pixel_resolution as pixel_resolution_x and pixel_resolution_y should be used (and it was not used anywhere)
      If square, simply repeat the same value in both pixel_resolution_x and pixel_resolution_y
    - Updated projection_axis_offset to be ASCII_REAL
  
    1.9.5.0
    THare 20201204
    - updates for 1.E.0.0 and 1.F.0.0, adding dictionary_type and building with new GEOM 1E00_1900

  
   Last Modification Time 2020-05-15T16:00:00Z
   PDS4 Merge Flag        false

Parsed Input - Attributes:

   name                   target_center_distance
   version                1.16
   value data type        ASCII_Real
   description             The target_center_distance attribute provides the distance to target center, in meters, relative to the observing system. 
   unit of measure type   Units_of_Length

   name                   upperleft_corner_x
   version                1.16
   value data type        ASCII_Real
   description             The upperleft_corner_x and upperleft_corner_y attributes provide the projection x and y values, in meters, relative to the map projection origin, at sample 0.5 and line 0.5 (upper left corner of pixel 1,1 within image array). (0.5,0.5) - upper left corner (edge) of pixel 1,1 / #---+---+-> I where # is X,Y location in meters, | * | | relative to map projection origin. +---+---+ where * is pixel coordinate (1.0,1.0) | \ J pixel coordinate (2.5,1.5) 
   unit of measure type   Units_of_Length

   name                   upperleft_corner_y
   version                1.16
   value data type        ASCII_Real
   description             The upperleft_corner_x and upperleft_corner_y attributes provide the projection x and y values, in meters, relative to the map projection origin, at sample 0.5 and line 0.5 (upper left corner of pixel 1,1 within image array). (0.5,0.5) - upper left corner (edge) of pixel 1,1 / #---+---+-> I where # is X,Y location in meters, | * | | relative to map projection origin. +---+---+ where * is pixel coordinate (1.0,1.0) | \ J pixel coordinate (2.5,1.5) 
   unit of measure type   Units_of_Length

   name                   scale_factor_at_projection_origin
   version                1.16
   value data type        ASCII_Real
   description             The scale_factor_at_projection_origin attribute provides a multiplier for reducing a distance obtained from a map by computation or scaling to the actual distance at the projection origin. 

   name                   west_bounding_coordinate
   version                1.16
   value data type        ASCII_Real
   description            The west_bounding_coordinate attribute provides the western-most coordinate of the limit of coverage expressed in longitude.
   minimum value          -180.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   east_bounding_coordinate
   version                1.16
   value data type        ASCII_Real
   description            The east_bounding_coordinate attribute provides the eastern-most coordinate of the limit of coverage expressed in longitude.
   minimum value          -180.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   north_bounding_coordinate
   version                1.16
   value data type        ASCII_Real
   description            The north_bounding_coordinate attribute provides the northern-most coordinate of the limit of coverage expressed in latitude.
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   south_bounding_coordinate
   version                1.16
   value data type        ASCII_Real
   description            The south_bounding_coordinate attribute provides the southern-most coordinate of the limit of coverage expressed in latitude.
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   spheroid_name
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The spheroid_name attribute provides the identification given to established representations of a planet's shape. 

   name                   a_axis_radius
   version                1.16
   value data type        ASCII_Real
   description            The a_axis_radius attribute provides the radius of the equatorial axis of the ellipsoid. The IAU calls this "Subplanetary equatorial radius" and mapping applications generally call this "semi_major_axis". 
   minimum value          0.0
   unit of measure type   Units_of_Length

   name                   b_axis_radius
   version                1.16
   value data type        ASCII_Real
   description            The b_axis_radius attribute provides the value of the intermediate axis of the ellipsoid that defines the approximate shape of a target body. The b_axis_radius is usually in the equatorial plane. The IAU calls this axis "along orbit equatorial radius". Mapping applications, which generally only define a sphere or an ellipse, do not support this radius parameter.
   minimum value          0.0
   unit of measure type   Units_of_Length

   name                   c_axis_radius
   version                1.16
   value data type        ASCII_Real
   description            The c_axis_radius attribute provides the value of the polar axis of the ellipsoid that defines the approximate shape of a target body. The c_axis_radius is normal to the plane defined by the a_axis_radius and b_axis_radius. The IAU calls this "polar radius". Mapping applications generally call this "semi_minor_axis" 
   minimum value          0.0
   unit of measure type   Units_of_Length

   name                   longitude_direction
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The longitude_direction attribute identifies the direction of longitude (e.g. POSITIVE_EAST or POSITIVE_WEST) for a planet. The IAU definition for direction of positive longitude should be adopted: http://astrogeology.usgs.gov/groups/IAU-WGCCRE. Typically, for planets with prograde (direct) rotations, positive longitude direction is to the west. For planets with retrograde rotations, positive longitude direction is to the east. Generally the Positive West longitude_direction is used for planetographic systems and Positive East is used for planetocentric systems. If the data is defined with Spatial_Domain in a manner not recommended by the IAU, there is a optional Secondary_Spatial_Domain section to define a second set of bounding coordinates.
   minimum characters     13
   maximum characters     13

   name                   coordinate_system_type
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            There are three basic types of coordinate systems: body-fixed rotating, body-fixed non-rotating, and inertial. A body-fixed coordinate system is one associated with the body (e.g., a planet or satellite). The body-fixed system is centered on the body and rotates with the body (unless it is a non-rotating type), whereas an inertial coordinate system is fixed at some point in space. Currently, the PDS has specifically defined two types of body-fixed rotating coordinate systems: planetocentric and planetographic. However, the set of related data elements are modeled such that definitions for other body-fixed rotating coordinate systems, body-fixed non-rotating and inertial coordinate systems can be added as the need arises. Contact a PDS data engineer for assistance in defining a specific coordinate system. 
   minimum characters     8
   maximum characters     25

   name                   coordinate_system_name
   version                1.16
   value data type        ASCII_Text_Preserved
   description            The given name of the used coordinate system. e.g. "MEAN EARTH/POLAR AXIS OF DE421"

   name                   latitude_type
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The latitude_type attribute defines the type of latitude (planetographic, planetocentric) used within a cartographic product and as reflected in attribute values within associated PDS labels. For planets and satellites, latitude is measured north and south of the equator; north latitudes are designated as positive. The planetocentric latitude is the angle between the equatorial plane and a line from the center of the body. The planetographic latitude is the angle between the equatorial plane and a line that is normal to the body. In summary, both latitudes are equivalent on a sphere (i.e., equatorial radius equal to polar radius); however, they differ on an ellipsoid (e.g., Mars, Earth). For more on latitude_type, please see the IAU publication available here: http://astrogeology.usgs.gov/groups/IAU-WGCCRE 

   name                   latitude_resolution
   version                1.16
   value data type        ASCII_Real
   description            The latitude_resolution attribute indicates the minimum difference between two adjacent latitude values expressed in angular units of measure.
   minimum value          0.0
   unit of measure type   Units_of_Angle

   name                   longitude_resolution
   version                1.16
   value data type        ASCII_Real
   description            The longitude_resolution attribute indicates the minimum difference between two adjacent longitude values expressed in angular units of measure.
   minimum value          0.0
   unit of measure type   Units_of_Angle

   name                   local_description
   version                1.16
   value data type        ASCII_Text_Preserved
   description            The local_description attribute provides a description of the coordinate system and its orientation to the surface of a planet.

   name                   local_georeference_information
   version                1.16
   value data type        ASCII_Text_Preserved
   description            The local_georeference_information attribute provides a description of the information provided to register the local system to a planet (e.g. control points, satellite ephemeral data, inertial navigation data).

   name                   planar_coordinate_encoding_method
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The planar_coordinate_encoding_method attribute indicates the means used to represent horizontal positions.

   name                   map_projection_name
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The map_projection_name attribute provides the name of the map projection. Definitions when available are from Synder, J.P., 1987, Map Projections: A Working Manual, USGS Numbered Series, Professional Paper 1395, URL: https://doi.org/10.3133/pp1395.

   name                   grid_coordinate_system_name
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The grid_coordinate_system_name attribute provides the name of the grid coordinate system.

   name                   local_planar_description
   version                1.16
   value data type        ASCII_Text_Preserved
   description            The local_planar_description attribute provides a description of the local planar system.

   name                   local_planar_georeference_information
   version                1.16
   value data type        ASCII_Text_Preserved
   description            The local_planar_georeference_information attribute provides a description of the information provided to register the local planar system to a planet (e.g. control points, satellite ephemeral data, inertial navigation data).

   name                   pixel_resolution_x
   version                1.16
   value data type        ASCII_Real
   description             The pixel_resolution_x and pixel_resolution_y attributes indicate the image array pixel resolution (distance/pixel or degree/pixel) relative to the Cartesian (x,y) coordinate system as defined by the map projection. Due to varying properties across different map projections, actual surface distances for an individual pixel may be accurate only at specific location(s) within the image array (e.g. reference latitude or longitude, standard parallels, etc). For most PDS products, x and y resolution values are equal ('square' pixels). The inclusion of both x and y attributes allows for anticipated products where resolution may differ for each axis ('rectangular' pixels). NOTE: Definition of this PDS4 attribute differs from how 'resolution' was defined within PDS3. 
   minimum value          0.0
   unit of measure type   Units_of_Map_Scale

   name                   pixel_resolution_y
   version                1.16
   value data type        ASCII_Real
   description             The pixel_resolution_x and pixel_resolution_y attributes indicate the image array pixel resolution (distance/pixel or degree/pixel) relative to the Cartesian (x,y) coordinate system as defined by the map projection. Due to varying properties across different map projections, actual surface distances for an individual pixel may be accurate only at specific location(s) within the image array (e.g. reference latitude or longitude, standard parallels, etc). For most PDS products, x and y resolution values are equal ('square' pixels). The inclusion of both x and y attributes allows for anticipated products where resolution may differ for each axis ('rectangular' pixels). NOTE: Definition of this PDS4 attribute differs from how 'resolution' was defined within PDS3. 
   minimum value          0.0
   unit of measure type   Units_of_Map_Scale

   name                   pixel_scale_x
   version                1.16
   value data type        ASCII_Real
   description             The pixel_scale_x and pixel_scale_y attributes indicate the image array pixel scale (pixel/degree or pixel/distance) relative to the Cartesian (x,y) coordinate system as defined by the map projection. Due to varying properties across different map projections, actual surface distances for an individual pixel may be accurate only at specific location(s) within the image array (e.g. reference latitude or longitude, standard parallels, etc). For most PDS products, x and y scale values are equal ('square' pixels). The inclusion of both x and y attributes allows for anticipated products where scale may differ for each axis ('rectangular' pixels). NOTE1: For presentation of hard-copy maps, a map scale is traditionally expressed as a 'representative fraction' (the ratio of a hard-copy map to the actual subject surface (e.g. 1:250,000, where one unit of measure on the map equals 250,000 of the same unit on the body surface)). This usage is relevant when map/data are presented on hard-copy media (paper, computer screen,etc). When defining pixel scale within a stored image/array context here, we are expressing a ratio between the image array and the actual surface (thus, pixel/degree or pixel/distance units). NOTE2: Definition of this PDS4 attribute differs from how 'scale' was defined within PDS3 
   minimum value          0.0
   unit of measure type   Units_of_Map_Scale

   name                   pixel_scale_y
   version                1.16
   value data type        ASCII_Real
   description             The pixel_scale_x and pixel_scale_y attributes indicate the image array pixel scale (pixel/degree or pixel/distance) relative to the Cartesian (x,y) coordinate system as defined by the map projection. Due to varying properties across different map projections, actual surface distances for an individual pixel may be accurate only at specific location(s) within the image array (e.g. reference latitude or longitude, standard parallels, etc). For most PDS products, x and y scale values are equal ('square' pixels). The inclusion of both x and y attributes allows for anticipated products where scale may differ for each axis ('rectangular' pixels). NOTE1: For presentation of hard-copy maps, a map scale is traditionally expressed as a 'representative fraction' (the ratio of a hard-copy map to the actual subject surface (e.g. 1:250,000, where one unit of measure on the map equals 250,000 of the same unit on the body surface)). This usage is relevant when map/data are presented on hard-copy media (paper, computer screen,etc). When defining pixel scale within a stored image/array context here, we are expressing a ratio between the image array and the actual surface (thus, pixel/degree or pixel/distance units). NOTE2: Definition of this PDS4 attribute differs from how 'scale' was defined within PDS3 
   minimum value          0.0
   unit of measure type   Units_of_Map_Scale

   name                   pixel_scale
   version                1.16
   value data type        ASCII_Real
   description             The pixel_scale attribute indicate the image array pixel scale (pixel/degree or pixel/distance) relative to the referenced coordinate system as defined by the map projection. This attribute should be used in lieu of pixel_scale_x and pixel_scale_y when the pixel scale is not x/y aligned. i.e. a radial pixel scale. NOTE: Definition of this PDS4 attribute differs from how 'scale' was defined within PDS3 
   minimum value          0.0
   unit of measure type   Units_of_Map_Scale

   name                   distance_resolution
   version                1.16
   value data type        ASCII_Real
   description            The distance_resolution attribute provides the minimum distance measurable between two points, expressed in Planar Distance Units of measure.
   minimum value          0.0
   unit of measure type   Units_of_Map_Scale

   name                   bearing_resolution
   version                1.16
   value data type        ASCII_Real
   description            The bearing_resolution attribute provides the minimum angle measurable between two points.
   minimum value          0.0
   unit of measure type   Units_of_Angle

   name                   bearing_reference_direction
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The bearing_reference_direction attribute specifies the direction from which the bearing is measured.
   minimum characters     5
   maximum characters     5

   name                   bearing_reference_meridian
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The bearing_reference_meridian attribute specifies the axis from which the bearing is measured.
   minimum characters     4
   maximum characters     10

   name                   standard_parallel_1
   version                1.16
   value data type        ASCII_Real
   description            The standard_parallel_1 attribute defines the first standard parallel (applicable only for specific projections), the first line of constant latitude at which the surface of the planet and the plane or developable surface intersect. 
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   standard_parallel_2
   version                1.16
   value data type        ASCII_Real
   description            The standard_parallel_2 attribute defines the second standard parallel (applicable only for specific projections, a subset of specific projections where a first standard parallel is applicable), the second line of constant latitude at which the surface of the planet and the plane or developable surface intersect. 
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   longitude_of_central_meridian
   version                1.16
   value data type        ASCII_Real
   description            The longitude_of_central_meridian attribute defines the line of longitude at the center of a map projection generally used as the basis for constructing the projection.
   minimum value          -180.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   latitude_of_projection_origin
   version                1.16
   value data type        ASCII_Real
   description            The latitude_of_projection_origin attribute defines the latitude chosen as the origin of rectangular coordinates for a map projection.
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   scale_factor_at_central_meridian
   version                1.16
   value data type        ASCII_Real
   description            The scale_factor_at_central_meridian attribute provides a multiplier for reducing a distance obtained from a map by computation or scaling to the actual distance along the central meridian.
   minimum value          0.0

   name                   utm_zone_number
   version                1.16
   value data type        ASCII_Integer
   description            The utm_zone_number attribute provides the identifier for the Universal Transverse Mercator (UTM) zone.
   minimum value          -60
   maximum value          60

   name                   ups_zone_identifier
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The ups_zone_identifier attribute provides an identifier for the Universal Polar Stereographic (UPS) zone.

   name                   spcs_zone_identifier
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The spcs_zone_identifier attribute identifies the State Plane Coordinate Systems (SPCS) zone.
   minimum characters     4
   maximum characters     4

   name                   azimuthal_angle
   version                1.16
   value data type        ASCII_Real
   description            The azimuthal_angle attribute provides the angle measured clockwise from north, and expressed in degrees.
   minimum value          0.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   azimuth_measure_point_longitude
   version                1.16
   value data type        ASCII_Real
   description            The azimuth_measure_point_longitude attribute provides the longitude of the map projection origin.
   minimum value          -180.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   oblique_line_latitude
   version                1.16
   value data type        ASCII_Real
   description            The oblique_line_latitude attribute provides the latitude of a point defining the oblique line.
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   oblique_line_longitude
   version                1.16
   value data type        ASCII_Real
   description            The oblique_line_longitude attribute provides the longitude of a point defining the oblique line.
   minimum value          -180.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   lander_map_projection_name
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The lander_map_projection_name attribute provides the name of the map projection.

   name                   rings_map_projection_name
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The rings_map_projection_name attribute provides the name of the map projection used for rings data.

   name                   x_unit
   version                1.16
   value data type        ASCII_Real
   description            The x component of a unit vector.

   name                   y_unit
   version                1.16
   value data type        ASCII_Real
   description            The y component of a unit vector.

   name                   z_unit
   version                1.16
   value data type        ASCII_Real
   description            The z component of a unit vector.

   name                   x_length
   version                1.16
   value data type        ASCII_Real
   description            The x_length attribute represents length in the x-direction.
   unit of measure type   Units_of_Length

   name                   y_length
   version                1.16
   value data type        ASCII_Real
   description            The y_length attribute represents length in the y-direction.
   unit of measure type   Units_of_Length

   name                   z_length
   version                1.16
   value data type        ASCII_Real
   description            The z_length attribute represents length in the z-direction.
   unit of measure type   Units_of_Length

   name                   x_position
   version                1.16
   value data type        ASCII_Real
   description            The x component of a Cartesian position vector.
   unit of measure type   Units_of_Length

   name                   y_position
   version                1.16
   value data type        ASCII_Real
   description            The y component of a Cartesian position vector.
   unit of measure type   Units_of_Length

   name                   z_position
   version                1.16
   value data type        ASCII_Real
   description            The z component of a Cartesian position vector.
   unit of measure type   Units_of_Length

   name                   x
   version                1.16
   value data type        ASCII_Real
   description            The x component of a Cartesian vector which has no units.

   name                   y
   version                1.16
   value data type        ASCII_Real
   description            The y component of a Cartesian vector which has no units.

   name                   z
   version                1.16
   value data type        ASCII_Real
   description            The z component of a Cartesian vector which has no units.

   name                   x_axis_minimum
   version                1.16
   value data type        ASCII_Real
   description            The x_axis_minimum attribute specifies the value of the X coordinate (measured in the projection frame) of a Vertical, Orthographic or Orthorectified lander map projection at the bottom of the image.
   unit of measure type   Units_of_Length

   name                   x_axis_maximum
   version                1.16
   value data type        ASCII_Real
   description            The x_axis_maximum attribute specifies the value of the X coordinate (measured in the projection frame) of a Vertical, Orthographic or Orthorectified lander map projection at the top of the image. Note that +X is at the top of the image and +Y is at the right, so +X corresponds to North in the Vertical projection.
   unit of measure type   Units_of_Length

   name                   y_axis_minimum
   version                1.16
   value data type        ASCII_Real
   description            The y_axis_minimum attribute specifies the value of the Y coordinate (measured in the projection frame) of a Vertical, Orthographic or Orthorectified lander map projection at the left edge of the image.
   unit of measure type   Units_of_Length

   name                   y_axis_maximum
   version                1.16
   value data type        ASCII_Real
   description            The y_axis_minimum attribute specifies the value of the Y coordinate (measured in the projection frame) of a Vertical, Orthographic or Orthorectified lander map projection at the right edge of the image.
   unit of measure type   Units_of_Length

   name                   start_azimuth
   version                1.16
   value data type        ASCII_Real
   description            The start_azimuth specifies the angular distance from a fixed reference position at which an image or observation starts. Azimuth is measured in a spherical coordinate system, in a plane normal to the principal axis. Azimuth values increase according to the right hand rule relative to the positive direction of the principal axis of the spherical coordinate system. For lander map projections, this attribute specifies the azimuth of the left edge of the output map. Applies to Cylindrical and Cylindrical-Perspective lander map projections only.
   minimum value          0
   maximum value          360
   unit of measure type   Units_of_Angle

   name                   stop_azimuth
   version                1.16
   value data type        ASCII_Real
   description            The stop_azimuth attribute specifies the angular distance from a fixed reference position at which an image or observation stops. Azimuth is measured in a spherical coordinate system, in a plane normal to the principal axis. Azimuth values increase according to the right hand rule relative to the positive direction of the principal axis of the spherical coordinate system. For lander map projections, this attribute specifies the azimuth of the right edge of the output map. Applies to Cylindrical and Cylindrical-Perspective lander map projections only.
   minimum value          0
   maximum value          360
   unit of measure type   Units_of_Angle

   name                   minimum_elevation
   version                1.16
   value data type        ASCII_Real
   description            The minimum_elevation attribute specifies the elevation (as defined by the coordinate system) of the last line of the image for Cylindrical map projections. Applies to Cylindrical, Perspective and Cylindrical-Perspective lander map projections.
   unit of measure type   Units_of_Angle

   name                   maximum_elevation
   version                1.16
   value data type        ASCII_Real
   description            The maximum_elevation attribute specifies the elevation (as defined by the coordinate system) of the first line of the image. For the Polar projection, specifies the highest elevation used, i.e. the elevation of the outermost circle of pixels. Applies to lander map projections Cylindrical, Polar, Sinusoidal, Perspective and Cylindrical-Perspective.
   unit of measure type   Units_of_Angle

   name                   surface_model_type
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            Specifies the type of surface used for the reprojection performed during the mosaicking process. Valid values: Planar - refers to a flat planar model; Spherical - refers to a spherical model. 

   name                   sphere_radius
   version                1.16
   value data type        ASCII_Real
   description            The sphere_radius attribute specifies the radius of the spherical body. In PDS3, this was specified using the SURFACE_NORMAL_VECTOR keyword. 
   minimum value          0.0
   unit of measure type   Units_of_Length

   name                   sphere_intersection_count
   version                1.16
   value data type        ASCII_Integer
   description            The sphere_intersection_count attribute specifies the number of the intersection to use for the spherical surface model when the camera is outside the sphere. For example, specifying a value of 1 would indicate the first intersection with the sphere should be used (more useful for modeling hills or rocks), while a value of 2 would indicate the second intersection with the sphere should be used (more useful for modeling craters). In PDS3, this was overloaded as part of the SURFACE_MODEL_TYPE keyword. 
   minimum value          1

   name                   projection_azimuth
   version                1.16
   value data type        ASCII_Real
   description            The projection_azimuth attribute specifies the azimuth of the horizontal center of projection for the Perspective lander map projection (loosely, where the camera model is pointing). 
   minimum value          1
   unit of measure type   Units_of_Angle

   name                   projection_elevation
   version                1.16
   value data type        ASCII_Real
   description            The projection_elevation attribute specifies the elevation of the vertical center of projection (loosely, where the camera is pointing). For Perspective lander map projection, this applies to the single output camera model; for Cylindrical-Perspective it applies to each columns output camera model, before the rotation specified by Vector_Projection_Z_Axis. 
   unit of measure type   Units_of_Angle

   name                   projection_elevation_line
   version                1.16
   value data type        ASCII_Real
   description            The projection_elevation_line attribute specifies the image line which corresponds to the projection_elevation attribute for each column of the Cylindrical-Perspective projection, before the rotation specified by Vector_Projection_Z_Axis. 
   minimum value          1

   name                   zero_elevation_line
   version                1.16
   value data type        ASCII_Real
   description            The zero_elevation_line attribute specifies the image line representing 0.0 degree elevation. Applies to Cylindrical lander map projections. 

   name                   reference_azimuth
   version                1.16
   value data type        ASCII_Real
   description            The reference_azimuth attribute specifies the azimuth of the line extending from the center of the image to the top center of the image with respect to a polar projection. 
   unit of measure type   Units_of_Angle

   name                   line
   version                1.16
   value data type        ASCII_Real
   description            The line attribute specifies the line number in the image.

   name                   sample
   version                1.16
   value data type        ASCII_Real
   description            The sample attribute specifies the sample number.

   name                   projection_axis_offset
   version                1.16
   value data type        ASCII_Real
   description            The projection_axis_offset attribute specifies an offset from a projection axis in a map projection. For the Cylindrical-Perspective projection, this is the radius of a circle which represents the rotation around the projection origin of the synthetic camera used to calculate each column.
   unit of measure type   Units_of_Length

   name                   reference_latitude
   version                1.16
   value data type        ASCII_Real
   description            Provides the ordinary latitude coordinate of the origin (oblique latitude = oblique longitude = 0) for the oblique coordinate system used to specify the OBLIQUE_CYLIDRICAL projection used in Cassini BIDR. NOTE that whereas some past PDS products may utilize oblique projections defined solely in terms of the REFERENCE_LATITUDE and REFERENCE_LONGITUDE (i.e., with a third defining angle always set to zero), the Cassini BIDRs require the full generality of three nonzero rotation angles. These angles are represented by the keywords OBLIQUE_PROJ_POLE_LATITUDE, OBLIQUE_PROJ_POLE_LONGITUDE, and OBLIQUE_PROJ_POLE_ROTATION. The values of REFERENCE_LATITUDE and REFERENCE_LONGITUDE are consistent with the latter three angles but do not uniquely define the oblique coordinate system on their own. 
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   reference_longitude
   version                1.16
   value data type        ASCII_Real
   description            Provides the ordinary longitude coordinate of the origin (oblique latitude = oblique longitude = 0) for the oblique coordinate system used to specify the OBLIQUE_CYLIDRICAL projection used in Cassini BIDR. NOTE that whereas some past PDS products may utilize oblique projections defined solely in terms of the REFERENCE_LATITUDE and REFERENCE_LONGITUDE (i.e., with a third defining angle always set to zero), the Cassini BIDRs require the full generality of three nonzero rotation angles. These angles are represented by the keywords OBLIQUE_PROJ_POLE_LATITUDE, OBLIQUE_PROJ_POLE_LONGITUDE, and OBLIQUE_PROJ_POLE_ROTATION. The values of REFERENCE_LATITUDE and REFERENCE_LONGITUDE are consistent with the latter three angles but do not uniquely define the oblique coordinate system on their own. 
   minimum value          -180.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   map_projection_rotation
   version                1.16
   value data type        ASCII_Real
   description            Included for generality, always 90 degrees for Cassini BIDRs.
   minimum value          0.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   oblique_proj_pole_latitude
   version                1.16
   value data type        ASCII_Real
   description            One of the three angles defining the oblique coordinate system used in the OBLIQUE_CYLINDRICAL projection. This is the ordinary latitude of the pole (Z axis) of the oblique system. 
   minimum value          -90.0
   maximum value          90.0
   unit of measure type   Units_of_Angle

   name                   oblique_proj_pole_longitude
   version                1.16
   value data type        ASCII_Real
   description            One of the three angles defining the oblique coordinate system used in the OBLIQUE_CYLINDRICAL projection. This is the ordinary longitude of the pole (Z axis) of the oblique system. 
   minimum value          -180.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   oblique_proj_pole_rotation
   version                1.16
   value data type        ASCII_Real
   description            One of the three angles defining the oblique coordinate system used in the OBLIQUE_CYLINDRICAL projection. This is a rotation around the polar (Z) axis of the oblique system that completes the transformation from standard to oblique coordinates. The value is positive east (obeys right hand rule) and is in the range 0 to 360 degrees. 
   minimum value          0.0
   maximum value          360.0
   unit of measure type   Units_of_Angle

   name                   oblique_proj_x_axis_vector
   version                1.16
   value data type        ASCII_Text_Preserved
   description            This is a redundant attirubte and as such is optional mostly available for documentation for the parameters. Unit vector in the direction of the X axis of the oblique coordinate system used in the OBLIQUE_CYLINDRICAL projection, in terms of the X, Y, and Z axes of the standard body-fixed coordinate system. In each system, the X axis points from the body center toward longitude and latitude (0,0) in that system, the Z axis to (0,90), and the Y-axis completes a right-handed set. The OBLIQUE_PROJ_X/Y/Z_AXIS_VECTORS makeup the rows of a rotation matrix that when multiplied on the left of a vector referenced to the standard coordinate system converts it into its equivalent in the oblique coordinate system. This rotation matrix is the product of successively applied rotations by OBLIQUE_PROJ_POLE_LONGITUDE around the Z axis, 90 OBLIQUE_PROJ_POLE_LATITUDE around the once-rotated Y axis, and OBLIQUE_PROJ_POLE_ROTATION around the twice-rotated Z axis. 

   name                   oblique_proj_y_axis_vector
   version                1.16
   value data type        ASCII_Text_Preserved
   description            This is a redundant attirubte and as such is optional mostly available for documentation for the parameters. Unit vector in the direction of the Y axis of the oblique coordinate system used in the OBLIQUE_CYLINDRICAL projection, in terms of the X, Y, and Z axes of the standard body-fixed coordinate system. In each system, the X axis points from the body center toward longitude and latitude (0,0) in that system, the Z axis to (0,90), and the Y-axis completes a right-handed set. The OBLIQUE_PROJ_X/Y/Z_AXIS_VECTORS makeup the rows of a rotation matrix that when multiplied on the left of a vector referenced to the standard coordinate system converts it into its equivalent in the oblique coordinate system. This rotation matrix is the product of successively applied rotations by OBLIQUE_PROJ_POLE_LONGITUDE around the Z axis, 90 OBLIQUE_PROJ_POLE_LATITUDE around the once-rotated Y axis, and OBLIQUE_PROJ_POLE_ROTATION around the twice-rotated Z axis. 

   name                   oblique_proj_z_axis_vector
   version                1.16
   value data type        ASCII_Text_Preserved
   description            This is a redundant attirubte and as such is optional mostly available for documentation for the parameters. Unit vector in the direction of the Z axis of the oblique coordinate system used in the OBLIQUE_CYLINDRICAL projection, in terms of the X, Y, and Z axes of the standard body-fixed coordinate system. In each system, the X axis points from the body center toward longitude and latitude (0,0) in that system, the Z axis to (0,90), and the Y-axis completes a right-handed set. The OBLIQUE_PROJ_X/Y/Z_AXIS_VECTORS makeup the rows of a rotation matrix that when multiplied on the left of a vector referenced to the standard coordinate system converts it into its equivalent in the oblique coordinate system. This rotation matrix is the product of successively applied rotations by OBLIQUE_PROJ_POLE_LONGITUDE around the Z axis, 90 OBLIQUE_PROJ_POLE_LATITUDE around the once-rotated Y axis, and OBLIQUE_PROJ_POLE_ROTATION around the twice-rotated Z axis. 

   name                   look_direction
   version                1.16
   value data type        ASCII_Short_String_Collapsed
   description            The value (RIGHT or LEFT) indicates the side of the spacecraft ground-track to which the antenna is pointed for data acquired within this file. The SAR images stored in theBIDR files are always acquired on only one side of the ground track for each Titan pass. This value also indicates from which side the SAR image is illuminated. If the spacecraft images to the left of its ground track (LOOK_DIRECTION=LEFT), the image will be illuminated from the (viewer's) left side, and, conversely, if the spacecraft looks to the right, the illumination will come from the right in the image file. The direction of illumination is critical to interpretation of features in the image. 

   name                   data_count
   version                1.16
   value data type        ASCII_NonNegative_Integer
   description            Number of measurements combined to create the cube.
   minimum value          1

   name                   angular_scale
   version                1.16
   value data type        ASCII_Real
   description            Grid spacing. Unit is radian/pixel.
   unit of measure type   Units_of_Pixel_Resolution_Angular

   name                   radial_scale
   version                1.16
   value data type        ASCII_Real
   description            Grid spacing. Unit is km/pixel.
   unit of measure type   Units_of_Pixel_Resolution_Linear

   name                   local_time_scale
   version                1.16
   value data type        ASCII_Real
   description            Grid spacing. Unit is local hours/pixel.
   unit of measure type   Units_of_Misc

   name                   sample_name
   version                1.16
   value data type        ASCII_Text_Preserved
   description            Coordinate name for the sample axis. e.g. "RADIUS KM"

   name                   line_name
   version                1.16
   value data type        ASCII_Text_Preserved
   description            Coordinate name for the line axis. e.g. "LOCAL TIME HOURS"

   name                   first_sample_center
   version                1.16
   value data type        ASCII_Real
   description            Sample coordinate at the center of the first sample element.

   name                   first_line_center
   version                1.16
   value data type        ASCII_Real
   description            Line coordinate at the center of the first line element.

   name                   last_sample_center
   version                1.16
   value data type        ASCII_Real
   description            Sample coordinate at the center of the last sample element.

   name                   last_line_center
   version                1.16
   value data type        ASCII_Real
   description            Line coordinate at the center of the last line element.

   name                   min_footprint_sample
   version                1.16
   value data type        ASCII_Real
   description            Minimum size of footprints along the sample axis.

   name                   min_footprint_line
   version                1.16
   value data type        ASCII_Real
   description            Minimum size of footprints along the line axis.

   name                   max_footprint_sample
   version                1.16
   value data type        ASCII_Real
   description            Maximum size of footprints along the sample axis.

   name                   max_footprint_line
   version                1.16
   value data type        ASCII_Real
   description            Maximum size of footprints along the line axis.

Parsed Input - Classes:

   name                   Cartography
   description            The Cartography class provides a description of how a 3D sphere, spheroid, or elliptical spheroid or the celestial sphere is mapped onto a plane. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pds.Local_Internal_Reference
      minimum occurrences   1
      maximum occurrences   *
      reference type        component_of

      local identifier      Spatial_Domain
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Secondary_Spatial_Domain
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Spatial_Reference_Information
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Spatial_Domain
   description            The Spatial_Domain class describes the geographic areal domain of the data set. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      Bounding_Coordinates
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Secondary_Spatial_Domain
   description            The Secondary_Spatial_Domain class describes an alternative longitude and latitude bounds to better support IAU approved or historically used geographic areal coordinates. This is only needed if the Spatial_Domain does not meet IAU recommendations or historical uses for the body. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      longitude_direction
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_type
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Bounding_Coordinates
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Spatial_Reference_Information
   description            The Spatial_Reference_Information class provides a description of the reference frame for, and the means to encode, coordinates in a data set. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      Horizontal_Coordinate_System_Definition
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Bounding_Coordinates
   description            The Bounding_Coordinates class defines the limits of coverage of a set of data expressed by latitude and longitude values in the order western-most, eastern-most, northern-most, and southern-most. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      west_bounding_coordinate
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      east_bounding_coordinate
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      north_bounding_coordinate
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      south_bounding_coordinate
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Horizontal_Coordinate_System_Definition
   description            The Horizontal_Coordinate_System_Definition class provides the reference frame or system from which linear or angular quantities are measured and assigned to the position that a point occupies. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      Geographic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Planar
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Local
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Geodetic_Model
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Geodetic_Model
   description            The Geodetic_Model class provides parameters describing the shape of the planet.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      latitude_type
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      spheroid_name
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      a_axis_radius
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      b_axis_radius
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      c_axis_radius
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_direction
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      coordinate_system_type
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      coordinate_system_name
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Geographic
   description            The Geographic class provides information about the quantities of latitude and longitude which define the position of a point on a planetary body's surface with respect to a reference spheroid.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      latitude_resolution
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_resolution
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Planar
   description            The Planar class provides the quantities of distances, or distances and angles, which define the position of a point on a reference plane to which the surface of a planet has been projected.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      Map_Projection
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Grid_Coordinate_System
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Local_Planar
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Planar_Coordinate_Information
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Geo_Transformation
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Local
   description            The Local class provides a description of any coordinate system that is not aligned with the surface of the planet. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      local_description
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      local_georeference_information
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Map_Projection_Lander
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Map_Projection_Rings
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Surface_Model_Parameters
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Planar_Coordinate_Information
   description            The Planar_Coordinate_Information class provides information about the coordinate system developed on the planar surface.
   is abstract            false
   is choice              true
   subclass of            USER

   Associations

      local identifier      planar_coordinate_encoding_method
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Coordinate_Representation
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Distance_and_Bearing_Representation
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Map_Projection
   description            The Map_Projection class provides the systematic representation of all or part of the surface of a planet on a plane (or Cartesian system). 
   is abstract            false
   is choice              true
   subclass of            USER

   Associations

      local identifier      map_projection_name
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Equirectangular
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Lambert_Azimuthal_Equal_Area
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Lambert_Conformal_Conic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Mercator
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Oblique_Cylindrical
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Oblique_Mercator
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Orthographic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Point_Perspective
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Polar_Stereographic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Polyconic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Sinusoidal
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Transverse_Mercator
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Grid_Coordinate_System
   description            The Grid_Coordinate_System class defines a plane-rectangular coordinate system usually based on, and mathematically adjusted to, a map projection so that geographic positions can be readily transformed to and from plane coordinates.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      grid_coordinate_system_name
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Universal_Transverse_Mercator
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Universal_Polar_Stereographic
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      State_Plane_Coordinate_System
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Local_Planar
   description            The Local_Planar class defines any right-handed planar coordinate system of which the z-axis coincides with a plumb line through the origin that locally is aligned with the surface of the planet. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      local_planar_description
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      local_planar_georeference_information
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Coordinate_Representation
   description            The Coordinate_Representation class provides the method of encoding the position of a point by measuring its distance from perpendicular reference axes (the "coordinate pair" and "row and column" methods). 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_resolution_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_resolution_y
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_scale_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_scale_y
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Distance_and_Bearing_Representation
   description            The Distance_and_Bearing_Representation class provides a method of encoding the position of a point by measuring its distance and direction (azimuth angle) from another point.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      distance_resolution
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      bearing_resolution
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      bearing_reference_direction
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      bearing_reference_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Equirectangular
   description            The Equirectangular class contains parameters for the Equirectangular map projection. Synder 1987, DOI:10.3133/pp1395, page 90: https://pubs.usgs.gov/pp/1395/report.pdf#page=102 PROJ: https://proj.org/operations/projections/eqc.html forward: x = R * (lambda - lambda_0) * cos(phi_1) y = R * (phi - phi_1) and reverse: lambda = (x / R cos(phi_1)) + lambda_0 phi = (y / R) + phi_1 where: lambda is the longitude of the location to project on the body; phi is the latitude of the location to project on the body; phi_1 is the standard parallel (north and south of the equator) where the scale of the projection is true; lambda_0 is the central meridian of the map; x is the horizontal coordinate of the projected location on the map; y is the vertical coordinate of the projected location on the map; R is the radius of the body. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      latitude_of_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      standard_parallel_1
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Lambert_Azimuthal_Equal_Area
   description            The Lambert_Azimuthal_Equal_Area class contains parameters for the Lambert Azimuthal Equal-area projection. Synder 1987, DOI:10.3133/pp1395, page 182: https://pubs.usgs.gov/pp/1395/report.pdf#page=194 PROJ: https://proj.org/operations/projections/laea.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Lambert_Conformal_Conic
   description            The Lambert_Conformal_Conic class contains parameters for the Lambert Conformal Conic projection. Synder 1987, DOI:10.3133/pp1395, page 104: https://pubs.usgs.gov/pp/1395/report.pdf#page=116 PROJ: https://proj.org/operations/projections/lcc.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      standard_parallel_1
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      standard_parallel_2
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      scale_factor_at_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Mercator
   description            The Mercator class contains parameters for the Mercator projection. Synder 1987, DOI:10.3133/pp1395, page 38: https://pubs.usgs.gov/pp/1395/report.pdf#page=50 PROJ: https://proj.org/operations/projections/merc.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      standard_parallel_1
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      scale_factor_at_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Oblique_Mercator
   description            The Oblique_Mercator class contains parameters for the Oblique Mercator projection. Synder 1987, DOI:10.3133/pp1395, page 66: https://pubs.usgs.gov/pp/1395/report.pdf#page=78 PROJ: https://proj.org/operations/projections/omerc.html 
   is abstract            false
   is choice              true
   subclass of            USER

   Associations

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Oblique_Line_Azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Oblique_Line_Point
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Orthographic
   description            The Orthographic class contains parameters for the Orthographic projection. Synder 1987, DOI:10.3133/pp1395, page 145: https://pubs.usgs.gov/pp/1395/report.pdf#page=157 PROJ: https://proj.org/operations/projections/ortho.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Point_Perspective
   description            The Point Perspective class contains parameters for the Point Perspective (fundamental definition) projection. Synder 1987, DOI:10.3133/pp1395, page 169: https://pubs.usgs.gov/pp/1395/report.pdf#page=181 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      target_center_distance
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Polar_Stereographic
   description            The Polar_Stereographic class contains parameters for the Polar Stereographic projection. Synder 1987, DOI:10.3133/pp1395, page 154: https://pubs.usgs.gov/pp/1395/report.pdf#page=166 PROJ: https://proj.org/operations/projections/stere.html Note that most applications will either define latitude_of_projection_origin or scale_factor_at_projection_origin, but not both. Here we define latitude_of_projection_origin as mandatory and at CART LDD versoin 1934 have made scale_factor_at_projection_origin optional. For context, these two keywords have the same impact on the final product but are just different ways to define it. Thus, for example in the PROJ library, if both are made available, the latitude_of_projection_origin (+lat_ts) will be used instead of scale_factor_at_projection_origin (+k_0). Note, if you do supply the optional attribute scale_factor_at_projection_origin, the default scale (+k_0) for planetary polar data will mostly likely be set to 1.0. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      scale_factor_at_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Polyconic
   description            The Polyconic class contains parameters for the Polyconic projection. Synder 1987, DOI:10.3133/pp1395, page 124: https://pubs.usgs.gov/pp/1395/report.pdf#page=136 PROJ: https://proj.org/operations/projections/poly.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Sinusoidal
   description            The Sinusoidal class contains parameters for the Sinusoidal projection. Synder 1987, DOI:10.3133/pp1395, page 243: https://pubs.usgs.gov/pp/1395/report.pdf#page=255 PROJ: https://proj.org/operations/projections/sinu.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Transverse_Mercator
   description            The Transverse_Mercator class contains parameters for the Transverse Mercator projection. Synder 1987, DOI:10.3133/pp1395, page 48: https://pubs.usgs.gov/pp/1395/report.pdf#page=60 PROJ: https://proj.org/operations/projections/tmerc.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      scale_factor_at_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_of_central_meridian
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Universal_Transverse_Mercator
   description            The Universal_Transverse_Mercator class defines a grid system based on the Transverse Mercator projection, applied between latitudes 84 degrees north and 80 degrees south on the planet's surface. Synder 1987, DOI:10.3133/pp1395, page 57: https://pubs.usgs.gov/pp/1395/report.pdf#page=69 PROJ: https://proj.org/operations/projections/utm.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      utm_zone_number
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Transverse_Mercator
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Universal_Polar_Stereographic
   description            The Universal_Polar_Stereographic class, generally used for Earth data sets, defines a grid system based on the polar stereographic projection, applied to the planet's polar regions north of 84 degrees north and south of 80 degrees south. Synder 1987, DOI:10.3133/pp1395, page 157: https://pubs.usgs.gov/pp/1395/report.pdf#page=169 PROJ: https://proj.org/operations/projections/ups.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      ups_zone_identifier
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Polar_Stereographic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Oblique_Cylindrical
   description            The Oblique_Cylindrical class contains parameters for the Oblique Cylindrical projection. Synder 1987, DOI:10.3133/pp1395, page 93: https://pubs.usgs.gov/pp/1395/report.pdf#page=105 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      latitude_of_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_of_central_meridian
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      reference_latitude
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      reference_longitude
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      map_projection_rotation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      oblique_proj_pole_latitude
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      oblique_proj_pole_longitude
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      oblique_proj_pole_rotation
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      oblique_proj_x_axis_vector
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      oblique_proj_y_axis_vector
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      oblique_proj_z_axis_vector
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      look_direction
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   State_Plane_Coordinate_System
   description            The State_Plane_Coordinate_System class defines a plane-rectangular coordinate system established for each state in the United States by the National Geodetic Survey. Synder 1987, DOI:10.3133/pp1395, page 52: https://pubs.usgs.gov/pp/1395/report.pdf#page=64 
   is abstract            false
   is choice              true
   subclass of            USER

   Associations

      local identifier      spcs_zone_identifier
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Lambert_Conformal_Conic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Transverse_Mercator
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Oblique_Mercator
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Polyconic
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Oblique_Line_Azimuth
   description            The Oblique_Line_Azimuth class defines the method used to describe the line along which an Oblique Mercator map projection is centered using the map projection origin and an azimuth. Synder 1987, DOI:10.3133/pp1395, page 195: https://pubs.usgs.gov/pp/1395/report.pdf#page=207 PROJ: https://proj.org/operations/projections/omerc.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      azimuthal_angle
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      azimuth_measure_point_longitude
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      latitude_of_projection_origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      longitude_of_central_meridian
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Oblique_Line_Point
   description            The Oblique_Line_Point class defines the method used to describe the line along which an Oblique Mercator map projection is centered using two points near the limits of the mapped region that define the center line. Synder 1987, DOI:10.3133/pp1395, page 195: https://pubs.usgs.gov/pp/1395/report.pdf#page=207 PROJ: https://proj.org/operations/projections/omerc.html 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      Oblique_Line_Point_Group
      minimum occurrences   2
      maximum occurrences   2
      reference type        component_of

   name                   Map_Projection_Lander
   description            The Map_Projection class provides the systematic representation of all or part of the surface of a planet on a plane or developable surface from the perspective of an in-situ spacecraft.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      lander_map_projection_name
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Cylindrical
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Perspective
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Cylindrical_Perspective
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Polar
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Vertical
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Orthographic_Lander
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Orthorectified
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      geom.Coordinate_Space_Reference
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Surface_Model_Parameters
   description            This class describes the surface model used by the projection. For in-situ mosaics, the surface model describes the surface upon which input images are projected in order to create a unified point of view in a mosaic. To the extent the surface model does not match the actual surface, parallax errors typically occur at seams between images.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      surface_model_type
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Surface_Model_Planar
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Surface_Model_Spherical
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      geom.Coordinate_Space_Reference
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Surface_Model_Planar
   description            This is a specific type of surface model that treats the surface as a flat plane, with a specified orientation (Vector_Surface_Normal) and location (Vector_Surface_Ground_Location). 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      Vector_Surface_Normal
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Surface_Ground_Location
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Surface_Model_Spherical
   description            This is a specific type of surface model that treats the surface as a sphere, with a specified center and radius.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      sphere_radius
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      sphere_intersection_count
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Vector_Sphere_Center
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Cylindrical
   description            This is an in-situ projection used for (non-stereo) panoramas. Each image row represents a constant elevation and each image column represents a constant azimuth, from a given point of view. The image scale in degrees per pixel is constant across the image.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_scale_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_scale_y
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      maximum_elevation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      minimum_elevation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      start_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      stop_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      zero_elevation_line
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Vector_Projection_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Perspective
   description            This is an in-situ projection that models a pinhole camera. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_scale_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_scale_y
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      maximum_elevation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      minimum_elevation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      start_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      stop_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      projection_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      projection_elevation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Camera_Model_Offset
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Cylindrical_Perspective
   description            This is an in-situ projection that is a hybrid. Each column is a vertical slice from a pinhole camera (Perspective projection), while the columns are spaced evenly in azimuth (Cylindrical projection). It is most useful for viewing panoramas in stereo.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_scale_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_scale_y
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      maximum_elevation
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      minimum_elevation
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      projection_azimuth
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      projection_elevation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      projection_elevation_line
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      start_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      stop_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      projection_axis_offset
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Vector_Projection_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Z_Axis
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Z_Axis_Initial
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Polar
   description            This is an in-situ projection that provides a quasi-overhead view that extends to the horizon. Elevation is measured radially outward from the nadir location, with a constant pixel scale. Azimuth is measured along concentric circles centered at the nadir.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_scale
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      maximum_elevation
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      reference_azimuth
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Pixel_Position_Nadir_Polar
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Vertical
   description            This is an in-situ projection that provides an overhead view. By projecting to a surface model, the need for range data is eliminated, but significant layover effects can happen when the actual geometry does not match the surface model. It has a constant scale in meters/pixel, subject to layover distortion.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_resolution_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_resolution_y
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      x_axis_maximum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      x_axis_minimum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_axis_maximum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_axis_minimum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Pixel_Position_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Orthographic_Lander
   description            This is an in-situ projection that is a generalization of the Vertical projection, in that any arbitrary projection plane can be specified.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_resolution_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_resolution_y
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      x_axis_maximum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      x_axis_minimum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_axis_maximum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_axis_minimum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Pixel_Position_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_X_Axis
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Y_Axis
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Z_Axis
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Orthorectified
   description            This is an in-situ projection that provides a true overhead view of the scene. Range data is required to create this projection, meaning there is no parallax distortion. It has a constant scale in meters/pixel.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      pixel_resolution_x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      pixel_resolution_y
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      x_axis_maximum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      x_axis_minimum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_axis_maximum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_axis_minimum
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Pixel_Position_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Origin
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_X_Axis
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Y_Axis
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

      local identifier      Vector_Projection_Z_Axis
      minimum occurrences   0
      maximum occurrences   1
      reference type        component_of

   name                   Vector_Surface_Normal
   description            The Vector_Surface_Normal class specifies a vector normal to the planar surface model. This vector is measured in the coordinates specified by the Coordinate_Space reference in the Surface_Model_Parameters class.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Unit_Base

   Associations

      local identifier      Vector_Cartesian_Unit_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Surface_Ground_Location
   description            The Vector_Surface_Ground_Location class specifies any point on the surface model, in order to fix the model in space. This point is measured in the coordinates specified by the Coordinate_Space reference in the Surface_Model_Parameters class.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Position_Base

   Associations

      local identifier      Vector_Cartesian_Position_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Sphere_Center
   description            The Vector_Sphere_Center class specifies the center of the sphere. This point is measured in the coordinates specified by the Coordinate_Space reference in the Surface_Model_Parameters class.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Position_Base

   Associations

      local identifier      Vector_Cartesian_Position_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Projection_Origin
   description            The Vector_Projection_Origin class specifies the location of the origin of the projection. For Polar and Cylindrical projections, this is the XYZ point from which all the azimuth/elevation rays emanate. For the Cylindrical-Perspective projection, this defines the center of the circle around which the synthetic camera orbits. For Orthographic, Orthorectified, and Vertical projections, this optional keyword specifies the point on the projection plane that serves as the origin of the projection (i.e. all points on a line through this point in the direction of PROJECTION_Z_AXIS_VECTOR will be located at X=Y=0 in the projection). If not present, (0,0,0) should be assumed. This translation is generally not necessary and not often used; the (X|Y)_AXIS_MINIMUM and (X|Y)_AXIS_MAXIMUM fields allow the mosaic to be located arbitrarily in the projection plane.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Position_Base

   Associations

      local identifier      Vector_Cartesian_Position_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Projection_X_Axis
   description            The Vector_Projection_X_Axis class specifies a unit vector defining the X-axis for a given projection. For Orthographic, Orthorectified, and Vertical projections, this vector defines how the * axis in the mosaic is oriented in space. The X and Y axis vectors together define the rotation of the projection plane around the projection axis.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Unit_Base

   Associations

      local identifier      Vector_Cartesian_Unit_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Projection_Y_Axis
   description            The Vector_Projection_Y_Axis class specifies a unit vector defining the Y-axis for a given projection. For Orthographic, Orthorectified, and Vertical projections, this vector defines how the * axis in the mosaic is oriented in space. The X and Y axis vectors together define the rotation of the projection plane around the projection axis.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Unit_Base

   Associations

      local identifier      Vector_Cartesian_Unit_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Projection_Z_Axis
   description            The Vector_Projection_Z_Axis class specifies a unit vector defining the Z axis for a given projection. For Orthographic, Orthorectified, and Vertical projections, this vector defines the projection axis for the mosaic. All points along a line parallel to this axis are projected to the same spot in the projection plane. For the Cylindrical-Perspective projections, this defines the new axis of the circle around which the synthetic camera orbits (i.e. the normal to the circle), after the cameras have been rotated to correct for rover tilt. Vector_Projection_Z_Axis_Initial contains the axis before rotation; the difference in these two indicate the rotation amount.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Unit_Base

   Associations

      local identifier      Vector_Cartesian_Unit_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Projection_Z_Axis_Initial
   description            The Vector_Projection_Z_Axis_Initial class specifies the initial unit vector defining the Z axis for a given projection. For Cylindrical-Perspective projections, this defines the original axis of the circle around which the synthetic camera orbits, before the cameras have been rotated to correct for rover tilt. Vector_Projection_Z_Axis contains the axis after rotation; the difference in these two indicate the rotation amount.
   is abstract            false
   is choice              false
   subclass of            Vector_Cartesian_Unit_Base

   Associations

      local identifier      Vector_Cartesian_Unit_Base
      minimum occurrences   1
      maximum occurrences   1
      reference type        parent_of

   name                   Vector_Length_Base
   description            The Vector_Length_Base is an abstract class that forms the base of length-based x, y, z vectors.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      x_length
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_length
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      z_length
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Vector_Cartesian_Unit_Base
   description            This is a generic unit vector in Cartesian space. The "x", "y", and "z" component have no units and are restricted to values between -1.0 and 1.0 inclusive. Further the length of the vector square root of the (sum of the squares of the components) must be 1.0. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      x_unit
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_unit
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      z_unit
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Vector_Cartesian_Position_Base
   description            The Vector_Cartesian_Position_Base is a three dimensional, rectangular coordinates vector. Uses units of length. The included attributes are not sufficient to identify the endpoints of the vector. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      x_position
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y_position
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      z_position
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Vector_Cartesian_No_Units
   description            This is a generic vector in Cartesian space. The "x", "y", and "z" component have no units. 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      x
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      y
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      z
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Camera_Model_Offset
   description            The Camera_Model_Offset class specifies the location of the image origin with respect to the camera model's origin. For CAHV/CAHVOR models, this origin is not the center of the camera, but is the upper-left corner of the "standard"-size image, which is encoded in the CAHV vectors. Applies to the Perspective lander map projection.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      line
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      sample
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Pixel_Position_Nadir_Polar
   description            The Pixel_Position_Nadir_Polar class specifies the sample coordinate of the location in the image of the "special" point of the mosaic. For Polar projections, this is the nadir of the polar projection. In PDS3, this information was specified using the LINE_PROJECTION_OFFSET and SAMPLE_PROJECTION_OFFSET keywords.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      line
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      sample
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Pixel_Position_Origin
   description            The Pixel_Position_Origin class specifies the sample coordinate of the location in the image of the "special" point of the mosaic. For Vertical, Orthographic and Orthorectified projections, this is the origin of the projected coordinate system, corresponding to the Vector_Projection_Origin. In PDS3, this information was specified using the LINE_PROJECTION_OFFSET and SAMPLE_PROJECTION_OFFSET keywords.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      line
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      sample
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Oblique_Line_Point_Group
   description            The Oblique_Line_Point_Group class provides the coordinates in latitude and longitude of one end point of the line along which an oblique mercator map projection is centered.
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      oblique_line_latitude
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      oblique_line_longitude
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

   name                   Map_Projection_Rings
   description            The Map_Projection_Rings class provides the systematic representation of all or part of the rings of a planet on a plane.
   is abstract            false
   is choice              true
   subclass of            USER

   Associations

      local identifier      rings_map_projection_name
      minimum occurrences   1
      maximum occurrences   1
      reference type        attribute_of

      local identifier      Ring_Polar
      minimum occurrences   1
      maximum occurrences   1
      reference type        component_of

   name                   Ring_Polar
   description            The representation of ring data requires a unique projection. The rings are modeled by a thin disk centered on the body and in its equatorial plane. For Saturn, the thin disk is centered on Saturn and in its equatorial plane, with an outer radius of 500,000km. If the field of view falls partially or completely beyond this limit or if it intersects the primary body before intersecting the rings, the data will not be included. Plotted coordinates are derived as follows. If A is the location of the intersection of the CIRS field of view with the body's equatorial plane, the X coordinate is the distance of A from the center of the body (e.g. Saturn), and the Y coordinate is the local time on on the body at the intersection with the body's surface of the line between A and the body's center. Local time is expressed in fractional hours, from 0.0 (at midnight) to 12.0 (at noon), to 24.0 (at midnight). 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      data_count
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      radial_scale
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      angular_scale
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      local_time_scale
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      sample_name
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      line_name
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      first_sample_center
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      first_line_center
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      last_sample_center
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      last_line_center
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      min_footprint_sample
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      min_footprint_line
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      max_footprint_sample
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      max_footprint_line
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

   name                   Geo_Transformation
   description            The GEO_Transformation describes the relationship between raster positions (in pixel/line coordinates) and georeferenced coordinates. This is defined by an affine transform. The affine transform consists of six coefficients which map pixel/line coordinates into georeferenced space using the following relationship: Xgeo = GT(0) + Xpixel*GT(1) + Yline*GT(2) Ygeo = GT(3) + Xpixel*GT(4) + Yline*GT(5) or also defined as: GT[0] = Xmin; // upperleft_corner_y GT[1] = CellSize in X; // W-E pixel size, pixel_resolution_x GT[2] = 0; // rotation term, 0 if 'North Up' GT[3] = Ymax; // upperleft_corner_y GT[4] = 0; // shear term, 0 if 'North Up' GT[5] = CellSize in Y; // N-S pixel size, pixel_resolution_y In case of north up images, the GT(2) and GT(4) coefficients are zero, and the GT(1) is pixel width (pixel_resolution_x), and GT(5) is pixel height (pixel_resolution_y). The (GT(0),GT(3)) position is the top left corner of the top left pixel of the raster. Note that the pixel/line coordinates in the above are from (0.5,0.5) at the top left corner of the top left pixel to (width_in_pixels,height_in_pixels) at the bottom right corner of the bottom right pixel. The pixel/line location of the center of the top left pixel would therefore be (1.0,1.0). 
   is abstract            false
   is choice              false
   subclass of            USER

   Associations

      local identifier      upperleft_corner_x
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

      local identifier      upperleft_corner_y
      minimum occurrences   0
      maximum occurrences   1
      reference type        attribute_of

End of Report
