<b>Copyright (C) 2008-2011, Cable Television Laboratories, Inc.</b> <b>SaFI iInteractive Application Fulfillment Interface, XML Schema, Release Version 3.0.0</b> <b>Controlled by specification: OC-SP-SaFI-IAFv3.0-xxxx</b>
<AppFulfillment> <Version>{1,1}</Version> <Timestamp>{1,1}</Timestamp> <DerivativeId>{0,1}</DerivativeId> <ReportData>{0,unbounded}</ReportData> <Events>{1,unbounded}</Events> </AppFulfillment>
<xs:element name="AppFulfillment" type="ApplicationFulfillmentType"/>
<xs:element name="Version" type="com:VersionType"/>
<xs:element name="Timestamp" type="com:TimestampType"/>
<xs:element name="DerivativeId" type="com:DerivativeIdType" minOccurs="0"/>
<xs:element name="ReportData" type="com:ReportDataType" minOccurs="0" maxOccurs="unbounded"/>
<Events> <GeoCode>{1,1}</GeoCode> <ReportData>{0,unbounded}</ReportData> <Event>{1,unbounded}</Event> </Events>
<xs:element name="Events" type="EventsType" maxOccurs="unbounded"/>
<xs:element name="GeoCode" type="com:GeographicCodeType"/>
<Event> <ReportData>{0,unbounded}</ReportData> </Event>
<xs:element name="Event" type="EventType" maxOccurs="unbounded"/>
<xs:element name="AcknowledgementMessage" type="com:AcknowledgementMessageType"/>
<xs:element name="Result" type="ResultType" minOccurs="1" maxOccurs="unbounded"/>
<SubscriberInfo> <FirstName>{1,1}</FirstName> <LastName>{1,1}</LastName> <Parameters>{0,1}</Parameters> </SubscriberInfo>
<xs:element name="SubscriberInfo" type="SubscriberInfoType" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="FirstName" type="xs:string"/>
<xs:element name="LastName" type="xs:string"/>
<Address> <Street1>{1,1}</Street1> <Street2>{1,1}</Street2> <City>{1,1}</City> <State>{1,1}</State> <Zip>{1,1}</Zip> </Address>
<xs:element name="Address" type="AddressType" minOccurs="0"/>
<xs:element name="Street1" type="xs:string"/>
<xs:element name="Street2" type="xs:string"/>
<xs:element name="City" type="xs:string"/>
<xs:element name="State" type="StateType"/>
<xs:element name="Zip" type="com:ZipcodeType"/>
<xs:element name="PhoneNumber" type="com:PhoneNumberType" minOccurs="0"/>
<xs:element name="EmailAddress" type="xs:string" minOccurs="0"/>
<xs:element name="Parameters" type="com:ParametersType" minOccurs="0"/>
<xs:complexType name="ApplicationFulfillmentType"> <xs:sequence> <xs:group ref="ApplicationFulfillmentHeaderGroup"/> <xs:element name="ReportData" type="com:ReportDataType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="Events" type="EventsType" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType>
<xs:complexType name="EventsType"> <xs:sequence> <xs:element name="GeoCode" type="com:GeographicCodeType"/> <xs:element name="ReportData" type="com:ReportDataType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="Event" type="EventType" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType>
<xs:complexType name="EventType" abstract="true"> <xs:sequence> <xs:group ref="com:PackageIDGroup"/> <xs:element name="ReportData" type="com:ReportDataType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType>
<xs:complexType name="VoteType"> <xs:complexContent> <xs:extension base="EventType"> <xs:sequence> <xs:element name="Result" type="ResultType" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType>
<xs:complexType name="ResultType"> <xs:simpleContent> <xs:extension base="xs:integer"> <xs:attribute name="userInput" type="com:UserInputType" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType>
<xs:complexType name="RFIType"> <xs:complexContent> <xs:extension base="EventType"> <xs:sequence> <xs:element name="SubscriberInfo" type="SubscriberInfoType" minOccurs="1" maxOccurs="unbounded"/> <xs:element name="Parameters" type="com:ParametersType" minOccurs="0"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType>
<xs:complexType name="SubscriberInfoType"> <xs:sequence> <xs:element name="FirstName" type="xs:string"/> <xs:element name="LastName" type="xs:string"/> <xs:group ref="SubscriberContactGroup"/> <xs:element name="Parameters" type="com:ParametersType" minOccurs="0"/> </xs:sequence> </xs:complexType>
<xs:complexType name="AddressType"> <xs:sequence> <xs:element name="Street1" type="xs:string"/> <xs:element name="Street2" type="xs:string"/> <xs:element name="City" type="xs:string"/> <xs:element name="State" type="StateType"/> <xs:element name="Zip" type="com:ZipcodeType"/> </xs:sequence> </xs:complexType>
<xs:simpleType name="StateType"> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z]{2}"/> </xs:restriction> </xs:simpleType>
<xs:attribute name="userInput" type="com:UserInputType" use="required"/>
<xs:group name="ApplicationFulfillmentHeaderGroup"> <xs:sequence> <xs:element name="Version" type="com:VersionType"/> <xs:element name="Timestamp" type="com:TimestampType"/> <xs:element name="DerivativeId" type="com:DerivativeIdType" minOccurs="0"/> </xs:sequence> </xs:group>
<xs:group name="SubscriberContactGroup"> <xs:sequence> <xs:element name="Address" type="AddressType" minOccurs="0"/> <xs:element name="PhoneNumber" type="com:PhoneNumberType" minOccurs="0"/> <xs:element name="EmailAddress" type="xs:string" minOccurs="0"/> </xs:sequence> </xs:group>