Exhibit2.pdf

PDF 8 KB Posted

Attached to
Automated Flight Following Hardware and Subscription Service
Solicitation number
AG-024B-S-16-0019
Issued by

About this file

Exhibit 2

View the file

Other files

On GovTribe

Work with this file

  • Download the original file
  • Contacts named in this file
  • Similar government files
  • Ask GovTribe AI about this file

Text version

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="https://www.aff.gov/affSchema" xmlns:aff="https://www.aff.gov/affSchema" attributeFormDefault="qualified" elementFormDefault="qualified">

<xsd:annotation> <xsd:documentation xml:lang="en"> Automated Flight Following position data schema.

Copyright: 2002, USDA-USFS PSW and MTDC.

Version : 2.23 Revised : 2004-10-18 Author : Neil Flagg </xsd:documentation> </xsd:annotation>

<!-- Document Element Type --> <!-- attribute "sysID" optional, used to ID server making the tag --> <!-- attribute "rptTime" optional, time used to tack report --> <!-- attribute "version" optional, used to ID tag version --> <xsd:element name="data"> <xsd:complexType> <xsd:sequence> <xsd:element name="msgRequest" type="aff:message" minOccurs="0"/> <xsd:element name="msgList" type="aff:msgListType" minOccurs="0"/> <xsd:element name="posList" type="aff:posListType" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="sysID" type="aff:string50" use="optional"/> <xsd:attribute name="rptTime" type="xsd:dateTime" use="optional"/> <xsd:attribute name="version" type="xsd:string" use="optional"/> </xsd:complexType> </xsd:element>

<!-- Root Aircraft Position type --> <!-- "lat" and "long" decimal values using NAD83/WGS84 --> <!-- NOTE: altitude, speed, heading now required for acPos. --> <xsd:complexType name="acPos"> <xsd:sequence> <xsd:element name="Lat" type="xsd:double" minOccurs="1"/> <xsd:element name="Long" type="xsd:double" minOccurs="1"/> <xsd:element ref="aff:altitude" minOccurs="0"/>

<xsd:element ref="aff:speed" minOccurs="0"/> <xsd:element ref="aff:heading" minOccurs="0"/> <xsd:element name="telemetry" type="aff:telemetryType" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="aff:info" use="required"/>

<!-- Root Message type --> <!-- Generic message, can be used to request data from a vendor, --> <!-- or report errors, system maint, status, radio traffic etc. --> <xsd:complexType name="message"> <xsd:sequence> <xsd:element name="body" type="xsd:string" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="to" type="xsd:string" use="required"/> <xsd:attribute name="from" type="xsd:string" use="required"/> <xsd:attribute name="msgType" type="aff:string50" use="required"/> <xsd:attribute name="subject" type="aff:string50" use="required"/> <xsd:attribute name="dateTime" type="xsd:dateTime" use="required"/>

<!-- altitude "units" must be reported if altitude is reported --> <xsd:element name="altitude"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:integer"> <xsd:attribute name="units" type="aff:altitudeUnits" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element>

<!-- speed "units" must be reported if speed is reported --> <xsd:element name="speed"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:integer"> <xsd:attribute name="units" type="aff:speedUnits" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element>

<!-- heading "units" must be reported if heading is reported -->

<xsd:element name="heading"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="xsd:integer"> <xsd:attribute name="units" type="aff:headingUnits" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element>

<!-- 50 character string value --> <xsd:simpleType name="string50"> <xsd:restriction base="xsd:string"> <xsd:length value="50"/> </xsd:restriction> </xsd:simpleType>

<xsd:simpleType name="speedUnits"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="meters/sec"/> <xsd:enumeration value="cm/sec"/> <xsd:enumeration value="feet/sec"/> <xsd:enumeration value="kilometer/hour"/> <xsd:enumeration value="knots/hour"/> <xsd:enumeration value="miles/hour"/> </xsd:restriction> </xsd:simpleType>

<xsd:simpleType name="altitudeUnits"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="meters"/> <xsd:enumeration value="feet"/> <xsd:enumeration value="meters agl"/> <xsd:enumeration value="feet agl"/> <xsd:enumeration value="meters msl"/> <xsd:enumeration value="feet msl"/> <xsd:enumeration value="meters hae"/> <xsd:enumeration value="feet hae"/> </xsd:restriction> </xsd:simpleType>

<!-- used to distinguish between bearing and track --> <xsd:simpleType name="headingUnits"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="North-True"/> <xsd:enumeration value="North-Mag"/> <xsd:enumeration value="Track-True"/>

<xsd:enumeration value="Track-Mag"/> </xsd:restriction> </xsd:simpleType>

<!-- telemetry "type" must define Simple Types Built In to XML Schema --> <!-- as restricted in "aff:dataType" --> <xsd:complexType name="telemetryType"> <xsd:attribute name="name" type="xsd:string" use="required"/> <xsd:attribute name="source" type="aff:string50" use="optional"/> <xsd:attribute name="type" type="aff:dataType" use="required"/> <xsd:attribute name="value" type="xsd:anyType" use="required"/> </xsd:complexType>

<!-- Allowed "type"s as define by Simple Types Built In to XML Schema --> <xsd:simpleType name="dataType" mixed="true"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="xsd:boolean"/> <xsd:enumeration value="xsd:byte"/> <xsd:enumeration value="xsd:date"/> <xsd:enumeration value="xsd:dateTime"/> <xsd:enumeration value="xsd:double"/> <xsd:enumeration value="xsd:integer"/> <xsd:enumeration value="xsd:string"/> <xsd:enumeration value="xsd:time"/> </xsd:restriction> </xsd:simpleType>

<!-- "esn" is the ESN of reporting equipment, or other unique ID (i.e. --> <!-- tail-number) if reported by another data source. --> <!-- "source" is the originator of position reported (e.g. GPS, Loran) --> <!-- "fix" is the indicator of position fix type (see aff:fix for --> <!-- definition) --> <!-- "dataCtr" is either the company name of the equipment or --> <!-- the name of the dispatch center --> <!-- "dataCtrDateTime" is the time the position was inserted into the --> <!-- the data center database --> <!-- "dateTime" is the time of position aquisition --> <xsd:attributeGroup name="info"> <xsd:attribute name="esn" type="aff:string50" use="required"/> <xsd:attribute name="UnitID" type="aff:string50" use="optional"/> <xsd:attribute name="source" type="aff:string50" use="required"/> <xsd:attribute ref="aff:fix" use="required"/>

<xsd:attribute name="PDOP" type="xsd:integer" use="optional"/> <xsd:attribute name="HDOP" type="xsd:integer" use="optional"/> <xsd:attribute name="VDOP" type="xsd:integer" use="optional"/> <xsd:attribute name="GDOP" type="xsd:integer" use="optional"/> <xsd:attribute name="dataCtr" type="aff:string50" use="required"/> <xsd:attribute name="dataCtrDateTime" type="xsd:dateTime" use="optional"/> <xsd:attribute name="dateTime" type="xsd:dateTime" use="required"/> </xsd:attributeGroup>

<!-- "Not Available" : indicates unit is unable to report fixType --> <!-- e.g. firmware version of this unit does not report fix type, --> <!-- but could with another version of firmware --> <!-- "None" : indicates unit cannot report fixType --> <!-- e.g. position report from a SatPhone device --> <xsd:attribute name="fix"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:enumeration value="3D"/> <xsd:enumeration value="2D"/> <xsd:enumeration value="Invalid"/> <xsd:enumeration value="Not Available"/> <xsd:enumeration value="None"/> <xsd:enumeration value=""/> </xsd:restriction> </xsd:simpleType> </xsd:attribute>

<xsd:complexType name="posListType"> <xsd:sequence> <xsd:element name="acPos" type="aff:acPos" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="listType" type="xsd:string" use="optional"/> </xsd:complexType>

<xsd:complexType name="msgListType"> <xsd:sequence> <xsd:element name="msg" type="aff:message" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="listType" type="xsd:string" use="optional"/>

</xsd:schema>

File details come from the government source that posted it. Updated .