<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="ProductRegistration">
    <xsd:annotation>
      <xsd:documentation>This is the Root Element for the Product Registration.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="SubmitterParty" type="SubmitterType">
          <xsd:annotation>
            <xsd:documentation xml:lang="EN">This element group is for information about the submitter of the message.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="Reference" type="ReferenceType">
          <xsd:annotation>
            <xsd:documentation>This re-usable element group is for specifying reference source information that will be helpful to any party. It can include supporting documentation such as a Rebate Coupon number and may be used for identification of other supporting information.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="Owner">
          <xsd:annotation>
            <xsd:documentation>This element group contains information about the owner such as how the owner uses the product, and address information.</xsd:documentation>
          </xsd:annotation>
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="OwnerType" type="xsd:string">
                <xsd:annotation>
                  <xsd:documentation>This element is for stating how the product is being used or its status. Examples might be Household, Commercial, etc.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="OwnerId" type="xsd:string" minOccurs="0">
                <xsd:annotation>
                  <xsd:documentation xml:lang="EN">This element is for the ID Code assigned to the owner by the manufacturer if one exists.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="OwnerInfo" type="PartyInfoType">
                <xsd:annotation>
                  <xsd:documentation>This re-usable element group includes all contact information for a party.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="ContactApproved" type="xsd:boolean" minOccurs="0">
                <xsd:annotation>
                  <xsd:documentation xml:lang="EN">This optional element is a yes or no flag, reflecting the owner&apos;s response to a dealer question. A &quot;Yes&quot; signifies that the owner invites direct contact by the manufacturer regarding sales information, special offers, etc. A &quot;No&quot; means such contact is not invited.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="PurchaseInfo" type="PurchaseInfoType">
          <xsd:annotation>
            <xsd:documentation>This element is for the dealership or retailer that sold the product to the current owner.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="Equipment" type="EquipmentType">
          <xsd:annotation>
            <xsd:documentation>This element group is for general information about the wholegood product being registered.</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="SafetyData">
          <xsd:annotation>
            <xsd:documentation xml:lang="EN">This element group is for mandatory safety related questions that the dealer must answer.</xsd:documentation>
          </xsd:annotation>
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element name="OwnersManual" type="xsd:boolean">
                <xsd:annotation>
                  <xsd:documentation xml:lang="EN">By checking this element yes, the dealer attests that he has discussed the product owner&apos;s manual with the customer.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="Precautions" type="xsd:boolean">
                <xsd:annotation>
                  <xsd:documentation xml:lang="EN">By checking this element yes, the dealer attests that he has discussed product safety precautions with the customer.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="EmergStopping" type="xsd:boolean">
                <xsd:annotation>
                  <xsd:documentation xml:lang="EN">By checking this element yes, the dealer attests that he has discussed the product&apos;s emergency stopping features with the customer.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
              <xsd:element name="OperPresenceControls" type="xsd:boolean">
                <xsd:annotation>
                  <xsd:documentation xml:lang="EN">By checking this element yes, the dealer attests that he has discussed the product&apos;s operator presence controls with the customer.</xsd:documentation>
                </xsd:annotation>
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  <xsd:complexType name="DocRefType">
    <xsd:annotation>
      <xsd:documentation xml:lang="EN">This element group is for reference to a document such as a &quot;Rebate Coupon&quot;, or any other document pertinent to this transaction.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="DocType" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for a text description of the type of document being referred to, such as &quot;invoice&quot;, &quot;Work order&quot;, &quot;photo&quot;.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="DocId" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the Id of the reference document, ideally a control number assigned to it.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="EquipmentType">
    <xsd:annotation>
      <xsd:documentation xml:lang="EN">This element group is for general information about the wholegood product which is the subject of this transaction.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="EquipManufacturer" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for designating the manufacturer of the wholegood.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="EquipmentType" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for wholegood &quot;type&quot; information required by the manufacturer.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="EquipModelNumber" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for the Model number assigned to the wholegood by the manufacturer.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="UnitSerialNumber" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the serial number of the wholegood unit.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="PartyInfoType">
    <xsd:annotation>
      <xsd:documentation xml:lang="EN">This re-usable element group includes all contact information for a party.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="CompanyLastName" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for the company name if the owner is a company, or the owner&apos;s last name if an individual.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="FirstName" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation>This element is for the first name of the owner if an individual.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="AddrLine1" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for the first line of an address.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="AddrLine2" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation>This element is for the second line of an address if needed.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="City" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for the city portion of a mailing address.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="StateProvince" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for the state or province portion of the mailing address.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="MailCode" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for the Zip Code in the US and equivalent mail codes of other countries.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Country" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation>This element is for the country code. The country identifier used here must comply with the ISO international code list ISO-3166.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Phone" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for a phone number of the owner.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Fax" type="xsd:string" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the Fax number of the owner.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Email" type="xsd:anyURI" minOccurs="0" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the e-mail address of the owner.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="PurchaseInfoType">
    <xsd:annotation>
      <xsd:documentation xml:lang="EN">This element group is for information relating to the purchase of the subject product, such as the dealership or retailer that sold it and the date.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="PurchasedDate" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the date the product was purchased or transferred to the &quot;owner&quot;.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="DealerId" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the Id number assigned to the dealer by the manufacturer of the product if known, otherwise &quot;unknown&quot; may be used here.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="DealerName" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the name of the dealership business.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="SalesmanName" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the name of the person who conducted the sale for the dealership.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="ReferenceType">
    <xsd:annotation>
      <xsd:documentation xml:lang="EN">This re-usable element group is for specifying reference source information that will be helpful to any party. It can include supporting documentation such as a Rebate Coupon number and may be used for identification of other supporting documents.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="SubmitId" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the submitter to assign a number or other unique identifier to this message so the receiver knows how to refer to it in return communications.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="SubmitDate" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the submitter to specify the date of generation of this message.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="SubmissionType" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for a standard code designating the type of transaction this message calls for.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="AuthorizationNumber" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for an authorization number or code provided to the submitter by the manufacturer or distributor as an authorization for this transaction. In this location, it applies to the entire message. There may also be authorization codes used elsewhere relating to specific parts of the transaction.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="DocRef" type="DocRefType" minOccurs="0"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="SubmitterType">
    <xsd:annotation>
      <xsd:documentation xml:lang="EN">This element group is for information about the submitter of the message.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Proxy" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element group is for identifying the &quot;Proxy&quot; submitter of the message on behalf of someone else.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="ProxyId" type="xsd:string">
              <xsd:annotation>
                <xsd:documentation xml:lang="EN">This element is for the Id code assigned to the proxy submitter by the web service host or a commonly recognized party.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="ProxyName" type="xsd:string" minOccurs="0">
              <xsd:annotation>
                <xsd:documentation xml:lang="EN">This element is for the name of the proxy submitter of the message.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="SubmitterID" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the Id code assigned to the submitter by the web service host or a commonly recognized party.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="SubmitterName" type="xsd:string">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for the name of an individual responsible for submitting the claim.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="EMail" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for an E-Mail address where the Submitter can be contacted.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element name="Currency" type="xsd:string" minOccurs="0">
        <xsd:annotation>
          <xsd:documentation xml:lang="EN">This element is for specifying the currency used for all charge amounts. The currency identifier used here must comply with the ISO international currency code list.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>

