Skip to content
AmateurSatellites.xsd 6.62 KiB
Newer Older
xtof's avatar
xtof committed


<xs:schema  xmlns:xs="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://www.josast.org/test/jaxb"
            xmlns:tns="http://www.josast.org/test/jaxb"
            elementFormDefault="qualified"> 


xtof's avatar
xtof committed
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="AmsatList" type="AmsatListType"/>

<xs:element name="Speed">
    <xs:simpleType>
      <xs:restriction base="xs:string">
        <xs:enumeration value="2400"/>
        <xs:enumeration value="1200"/>
        <xs:enumeration value="9600"/>
        <xs:enumeration value="38400"/>
        <xs:enumeration value="400"/>
        <xs:enumeration value="19200"/>
        <xs:enumeration value="4800 9600"/>
        <xs:enumeration value="1000"/>
        <xs:enumeration value="4800"/>
        <xs:enumeration value="256000"/>
        <xs:enumeration value="230000"/>
      </xs:restriction>
    </xs:simpleType>
xtof's avatar
xtof committed
</xs:element>
xtof's avatar
xtof committed

  <xs:element name="Status">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="Operational"/>
            <xs:enumeration value="decayed"/>
            <xs:enumeration value="No operational"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
	  
<xs:element name="SatelliteInformationStatus">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="Draft"/>
            <xs:enumeration value="Verified"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
	  
xtof's avatar
xtof committed
  <xs:element name="Mode"  >
xtof's avatar
xtof committed
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="SSB/CW"/>
            <xs:enumeration value="FM"/>
            <xs:enumeration value="SSB PSK31"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>

	  
  <xs:complexType name="ModesType">
    <xs:sequence>
      <xs:element type="xs:string" name="Mode"/>
      <xs:element type="xs:string" name="Speed" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="BeaconsType">
    <xs:sequence>
      <xs:element type="xs:string" name="Name"/>
      <xs:element type="xs:string" name="Frequency"/>
      <xs:element type="ModesType" name="Modes" maxOccurs="unbounded" minOccurs="0"/>
      <xs:element type="xs:short" name="Speed" minOccurs="0"/>
      <xs:element type="xs:string" name="CallSign" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="RadioDataType">
    <xs:sequence>
      <xs:element type="BeaconsType" name="Beacons" maxOccurs="unbounded" minOccurs="0"/>
      <xs:element type="TranspondersType" name="Transponders" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SatellitesType">
    <xs:choice maxOccurs="unbounded" minOccurs="0">
      <xs:element type="xs:string" name="Name"/>
      <xs:element type="xs:string" name="NasaID"/>
      <xs:element type="xs:string" name="Status"/>
      <xs:element type="LaunchDataType" name="LaunchData"/>
      <xs:element type="RadioDataType" name="RadioData"/>
      <xs:element type="xs:string" name="OSCARNumber"/>
      <xs:element type="xs:date" name="UpdateDate"/>
      <xs:element type="xs:string" name="SatelliteInformationStatus"/>
      <xs:element type="InformationType" name="Information"/>
      <xs:element type="TelemetryDataType" name="TelemetryData"/>
      <xs:element type="xs:string" name="Description"/>
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="LaunchDataType">
    <xs:sequence>
      <xs:element type="xs:date" name="LaunchDate"/>
      <xs:element type="xs:string" name="LaunchingSite"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="InformationType">
    <xs:sequence>
      <xs:element type="xs:string" name="Title"/>
      <xs:element type="xs:string" name="Value"/>
      <xs:element name="Description" maxOccurs="unbounded" minOccurs="0">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="xs:string">
              <xs:attribute type="xs:string" name="lang" use="optional"/>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DescriptionType">
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attribute type="xs:string" name="lang" use="optional"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name="FrequencyUplinkType">
    <xs:sequence>
      <xs:element type="xs:int" name="FrequencyBegin"/>
      <xs:element type="xs:int" name="FrequencyEnd" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="FrequencyDownlinkType">
    <xs:sequence>
      <xs:element type="xs:int" name="FrequencyBegin"/>
      <xs:element type="xs:int" name="FrequencyEnd" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="TranspondersType">
    <xs:sequence>
      <xs:element type="xs:string" name="Name"/>
      <xs:element type="FrequencyUplinkType" name="FrequencyUplink"/>
      <xs:element type="FrequencyDownlinkType" name="FrequencyDownlink"/>
      <xs:element type="xs:string" name="Mode" minOccurs="0"/>
      <xs:element type="xs:string" name="Inverted" minOccurs="0"/>
      <xs:element type="xs:float" name="Tone" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DescriptionURLType">
    <xs:sequence>
      <xs:element type="xs:string" name="Title"/>
      <xs:element type="xs:string" name="Value"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ReportURLType">
    <xs:sequence>
      <xs:element type="xs:string" name="Title"/>
      <xs:element type="xs:string" name="Value"/>
    </xs:sequence>
xtof's avatar
xtof committed
  </xs:complexType>
    <xs:complexType name="SoftwareURLType">
    <xs:sequence>
      <xs:element type="xs:string" name="Title"/>
      <xs:element type="xs:string" name="Value"/>
    </xs:sequence>
xtof's avatar
xtof committed
  </xs:complexType>
  <xs:complexType name="TelemetryDataType">
    <xs:sequence>
      <xs:element type="DescriptionURLType" name="DescriptionURL" maxOccurs="unbounded" minOccurs="0"/>
      <xs:element type="ReportURLType" name="ReportURL" minOccurs="0"/>
      <xs:element type="xs:string" name="ReportEmail" minOccurs="0"/>
xtof's avatar
xtof committed
      <xs:element type="SoftwareURLType" name="SoftwareURL" minOccurs="0"/>
xtof's avatar
xtof committed
      <xs:element type="xs:string" name="Description" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="AmsatListType">
    <xs:sequence>
      <xs:element type="SatellitesType" name="Satellites" maxOccurs="unbounded" minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:schema>