<?xml version="1.0" encoding="UTF-8"?>
  <!-- PDS4 XML/Schema for Display Dictionary -->
  <!-- Generated from PDS4_Display_1003_20130606085853.xml Ingest_LDD file -->
  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:disp="http://pds.nasa.gov/pds4/disp/v1"
    targetNamespace="http://pds.nasa.gov/pds4/disp/v1"
    xmlns:pds="http://pds.nasa.gov/pds4/pds/v1"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    version="1.0.0.3">
 
  <xs:import namespace="http://pds.nasa.gov/pds4/pds/v1" 
    schemaLocation="http://pds.nasa.gov/pds4/pds/v1/PDS4_PDS_1000.xsd"/>

  <xs:element name="Default_Display_Settings" type="disp:Default_Display_Settings"/>
  <xs:element name="Default_Display_Settings_Color" type="disp:Default_Display_Settings_Color"/>
  <xs:element name="Default_Display_Settings_Color_Movie" type="disp:Default_Display_Settings_Color_Movie"/>
  <xs:element name="Default_Display_Settings_Movie" type="disp:Default_Display_Settings_Movie"/>

  <xs:complexType name="Default_Display_Settings">
    <xs:annotation>
      <xs:documentation>The Default_Display_Settings class provides
        parameters with default values for the display of an Array object
        on a given display device.  These values represent the settings
        suggested by the data producer and are not binding on any display
        software or data user.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="local_identifier_reference" type="disp:local_identifier_reference" minOccurs="1" maxOccurs="1"/> 
      <xs:element name="comment" type="disp:comment" minOccurs="0" maxOccurs="1"/> 
      <xs:element name="horizontal_display_axis" type="disp:horizontal_display_axis" minOccurs="1" maxOccurs="1"/> 
      <xs:element name="horizontal_display_direction" type="disp:horizontal_display_direction" minOccurs="1" maxOccurs="1"/> 
      <xs:element name="vertical_display_axis" type="disp:vertical_display_axis" minOccurs="1" maxOccurs="1"/> 
      <xs:element name="vertical_display_direction" type="disp:vertical_display_direction" minOccurs="1" maxOccurs="1"/> 
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="Default_Display_Settings_Color">
    <xs:annotation>
      <xs:documentation>The Default_Display_Settings_Color class provides
        parameters with default values for the display of an Array object
        in the red, green, and blue channels of a display device.  These
        values represent the settings suggested by the data producer and
        are not binding on any display software or data user.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="disp:Default_Display_Settings">
        <xs:sequence>
          <xs:element name="color_display_axis" type="disp:color_display_axis" minOccurs="1" maxOccurs="1"/> 
          <xs:element name="red_channel_band" type="disp:red_channel_band" minOccurs="1" maxOccurs="1"/> 
          <xs:element name="green_channel_band" type="disp:green_channel_band" minOccurs="1" maxOccurs="1"/> 
          <xs:element name="blue_channel_band" type="disp:blue_channel_band" minOccurs="1" maxOccurs="1"/> 
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="Default_Display_Settings_Color_Movie">
    <xs:annotation>
      <xs:documentation>The Default_Display_Settings_Color_Movie class
        provides parameters settings default values for the display of an
        Array object containing both color bands and frames designed to be
        displayed consecutively on a display device capable of display
        video content. These values represent the settings suggested by
        the data producer and are not binding on any display software or
        data user.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="disp:Default_Display_Settings_Color">
        <xs:sequence>
          <xs:element name="time_display_axis" type="disp:time_display_axis" minOccurs="1" maxOccurs="1"/> 
          <xs:element name="frame_rate" type="disp:frame_rate" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_flag" type="disp:loop_flag" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_count" type="disp:loop_count" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_delay" type="disp:loop_delay" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_back_and_forth_flag" type="disp:loop_back_and_forth_flag" minOccurs="0" maxOccurs="1"/> 
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="Default_Display_Settings_Movie">
    <xs:annotation>
      <xs:documentation>The Default_Display_Settings_Movie class provides
        parameters setting default values for the display of an
        Array_3D_Movie object on a display device capable of displaying
        video content. These values represent the settings suggested by
        the data producer and are not binding on any display software or
        data user.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="disp:Default_Display_Settings">
        <xs:sequence>
          <xs:element name="time_display_axis" type="disp:time_display_axis" minOccurs="1" maxOccurs="1"/> 
          <xs:element name="frame_rate" type="disp:frame_rate" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_flag" type="disp:loop_flag" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_count" type="disp:loop_count" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_delay" type="disp:loop_delay" minOccurs="0" maxOccurs="1"/> 
          <xs:element name="loop_back_and_forth_flag" type="disp:loop_back_and_forth_flag" minOccurs="0" maxOccurs="1"/> 
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:simpleType name="blue_channel_band">
    <xs:annotation>
      <xs:documentation>The blue_channel_band attribute identifies the 
        number of the band, along the band axis, that should be loaded, 
        by deafult, into the blue channel of a display device.  The first 
        band along the band axis has band number 1.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Integer">
     <xs:minInclusive value="1"/>
	   </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="color_display_axis">
    <xs:annotation>
      <xs:documentation>The color_display_axis attribute identifies, by 
        name, the axis of an Array (or Array subclass) that is intended 
        to be displayed in the color dimension of a display device.  I.e., 
        bands from this dimension will be loaded into the red, green, and 
        blue bands of the display device.  The value of this attribute must 
        match the value of one, and only one, axis_name attribute in an 
        Axis_Array class of the associated Array.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Short_String_Collapsed"/>
  </xs:simpleType>

  <xs:simpleType name="comment">
    <xs:annotation>
      <xs:documentation>The comment attribute is a free form text string 
        providing additional details related to default display parameters.
      </xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Text_Preserved"/>
  </xs:simpleType>

  <xs:simpleType name="frame_rate_WO_Units">
    <xs:restriction base="pds:ASCII_Real">
      <xs:minInclusive value="1.0"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:complexType name="frame_rate">
    <xs:annotation>
      <xs:documentation>The frame_rate attribute indicates the number of 
        still pictures (or frames) that should be displayed per unit of 
        time in a video.  Note this is NOT necessarily the same as the rate 
        at which the images were acquired.</xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="disp:frame_rate_WO_Units">
        <xs:attribute name="unit" type="pds:Units_of_Frame_Rate" use="required"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

  <xs:simpleType name="green_channel_band">
    <xs:annotation>
      <xs:documentation>The green_channel_band attribute identifies the 
        number of the band, along the band axis, that should be loaded, 
        by deafult, into the green channel of a display device.  The first 
        band along the band axis has band number 1.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Integer">
     <xs:minInclusive value="1"/>
	   </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="horizontal_display_axis">
    <xs:annotation>
      <xs:documentation>The horizontal_display_axis attribute identifies, 
        by name, the axis of an Array (or Array subclass) that is intended 
        to be displayed in the horizontal or "sample" dimension on a display 
        device.  The value of this attribute must match the value of one, 
        and only one, axis_name attribute in an Axis_Array class of the 
        associated Array.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Short_String_Collapsed"/>
  </xs:simpleType>

  <xs:simpleType name="horizontal_display_direction">
    <xs:annotation>
      <xs:documentation>The horizontal_display_direction attribute specifies
        the direction across the screen of a display device that data along
        the horizontal axis of an Array is supposed to be displayed.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Short_String_Collapsed">
     <xs:minLength value="13"/>
     <xs:maxLength value="13"/>
	   </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="local_identifier_reference">
    <xs:annotation>
      <xs:documentation>The local_identifier_reference attribute provides
        the local_identifier of the digital object described by the
        referencing class (in this case, the Default_Display_Settings class).
        Note that a local_identifier attribute, with the same value as this
        local_identifier_reference, must be present within the label.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Short_String_Collapsed"/>
  </xs:simpleType>

  <xs:simpleType name="loop_back_and_forth_flag">
    <xs:annotation>
      <xs:documentation>The loop_back_and_forth_flag attribute specifies 
        whether or not a movie should only be "looped" or played repeatedly 
        in the forward direction, or whether it should be played forward 
        followed by played in reverse, iteratively.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Boolean"/>
  </xs:simpleType>

  <xs:simpleType name="loop_count">
    <xs:annotation>
      <xs:documentation>The loop_count attribute specifies the number of 
        times a movie should be "looped" or replayed before stopping.
      </xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Integer">
      <xs:minInclusive value="1"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="loop_delay_WO_Units">
    <xs:restriction base="pds:ASCII_Real">
      <xs:minInclusive value="0.0"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:complexType name="loop_delay">
    <xs:annotation>
      <xs:documentation>The loop_delay attribute specifies the amount of 
        time to pause between "loops" or repeated playbacks of a movie.
      </xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="disp:loop_delay_WO_Units">
        <xs:attribute name="unit" type="pds:Units_of_Time" use="required"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

  <xs:simpleType name="loop_flag">
    <xs:annotation>
      <xs:documentation>The loop_flag attribute specifies whether or not a 
        movie object should be played repeatedly without prompting from the 
        user.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Boolean"/>
  </xs:simpleType>

  <xs:simpleType name="red_channel_band">
    <xs:annotation>
      <xs:documentation>The red_channel_band attribute identifies the number 
        of the band, along the band axis, that should be loaded, by deafult, 
        into the red channel of a display device.  The first band along the 
        band axis has band number 1.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Integer">
      <xs:minInclusive value="1"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="time_display_axis">
    <xs:annotation>
      <xs:documentation>The time_display_axis attribute identifies, by 
        name, the axis of an Array (or Array subclass), the bands of 
        which are intended to be displayed sequentially in time on a 
        display device.  The frame_rate attribute, if present, provides 
        the rate at which these bands are to be displayed.</xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Short_String_Collapsed"/>
  </xs:simpleType>

  <xs:simpleType name="vertical_display_axis">
    <xs:annotation>
      <xs:documentation>The vertical_display_axis attribute identifies, by 
        name, the axis of an Array (or Array subclass) that is intended to 
        be displayed in the vertical or "line" dimension on a display device.  
        The value of this attribute must match the value of one, and only 
        one, axis_name attribute in an Axis_Array class of the associated 
        Array.</xs:documentation>
    </xs:annotation>
    <xs:restriction  base="pds:ASCII_Short_String_Collapsed"/>
  </xs:simpleType>

  <xs:simpleType name="vertical_display_direction">
    <xs:annotation>
      <xs:documentation>The vertical_display_direction attribute specifies 
        the direction along the screen of a display device that data along 
        the vertical axis of an Array is supposed to be displayed.
      </xs:documentation>
    </xs:annotation>
    <xs:restriction base="pds:ASCII_Short_String_Collapsed">
     <xs:minLength value="13"/>
     <xs:maxLength value="13"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>
