<?xml version="1.0" standalone="yes" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" id="Z10Return2011" version="2.4">
  <xsd:annotation>
    <xsd:documentation xml:lang="en">Return of Income by a Limit Liability Company: Schema from Year of Assessment 2011, form ITR-Z10 (11).</xsd:documentation>
  </xsd:annotation>
  <xsd:element name="taxDetails" type="taxDetailsType" />
  <xsd:complexType name="taxDetailsType">
    <xsd:sequence>
      <!-- Date of Return -->
      <xsd:element name="creationDate" type="xsd:date" />
      <!-- The Returns -->
      <xsd:element name="z10Return" type="z10ReturnType" maxOccurs="unbounded" />
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="z10ReturnType">
    <xsd:sequence>
      <!-- Company Details -->
      <xsd:element name="static" type="staticType" />
      <!-- 1 Status of Company -->
      <xsd:element name="statusOfCompany" type="statusOfCompanyType" />
      <!-- 2 Shareholder Details -->
      <xsd:element name="shareholderDetails" type="shareholderDetailsType" />
      <!-- 3 Payments made after Deductions of Jersey Tax -->
      <xsd:element name="payments" type="paymentsType" minOccurs="0" maxOccurs="unbounded"/>
      <!-- 4 Other Information -->
      <xsd:element name="otherInfo" type="otherInfoType" />
    </xsd:sequence>
    <!-- Company Taxpayer Reference -->
    <xsd:attribute name="taxpayerRef" type="companyRefType" use="required" />
    <!-- Year of Assessment -->
    <xsd:attribute name="yearOfAss" type="xsd:gYear" use="required" />
  </xsd:complexType>

  <!-- Company Details -->
  <xsd:complexType name="staticType">
    <xsd:sequence>
      <!-- Company name -->
      <xsd:element name="tpName" type="string90" />
      <!-- Company address -->
      <xsd:element name="tpAddress" type="addressType" />
      <!-- Is this a change of address -->
      <xsd:element name="tpAddressChange" type="ynType" />
      <!-- Daytime telephone number -->
      <xsd:element name="tpDayTel" type="string15" minOccurs="0" />
      <!-- Extension number -->
      <xsd:element name="tpDayTelExt" type="string4" minOccurs="0" />
      <!-- Is it convenient for us to telephone during the day? -->
      <xsd:element name="tpDayContact" type="ynType" minOccurs="0" />
    </xsd:sequence>
  </xsd:complexType>

  <!-- 1 Status of Company -->
  <xsd:complexType name="statusOfCompanyType">
    <xsd:sequence>
      <!-- 1.1 The company is subject to the 0% corporate tax rate? -->
      <xsd:element name="zeroRate" type="ynType" />
      <!-- 1.1 Do any registered shareholders have a Jersey address? -->
      <xsd:element name="jerseyAddress" type="ynType" minOccurs="0" />
      <!-- 1.2 The company is a financial services company and subject to the 10% rate? -->
      <xsd:element name="tenRate" type="ynType" />
      <!-- 1.2 Profit/loss for year of assessment -->
      <xsd:element name="profitLoss1_2" type="moneyType" minOccurs="0" />
      <!-- 1.3 The company is in receipt of income from land, property and/ or property development in Jersey and subject to the 20% tax rate on that income? -->
      <xsd:element name="twentyLandRate" type="ynType" />
      <!-- 1.3 Profit/loss for year of assessment -->
      <xsd:element name="profitLoss1_3" type="moneyType" minOccurs="0" />
      <!-- 1.4 The company is a utility company and subject to the 20% tax rate? -->
      <xsd:element name="twentyUtilityRate" type="ynType" />
      <!-- 1.4 Profit/loss for year of assessment -->
      <xsd:element name="profitLoss1_4" type="moneyType" minOccurs="0" />
      <!-- 1.5 The company is an Annuity Company which incorporates an approved Self-Administered Retirement Annuity Contract? -->
      <xsd:element name="annuityCompany" type="ynType" />
      <!-- 1.6 The company is incorporated in Jersey but its business is centrally managed and controlled abroad, is tax resident abroad and pays foreign tax of 20% or more receipt of income from land, property and/ or property development in Jersey and subject to the 20% tax rate on that income? -->
      <xsd:element name="foreignCompany" type="ynType" />
    </xsd:sequence>
  </xsd:complexType>

  <!-- 2 Shareholder Details -->
  <xsd:complexType name="shareholderDetailsType">
    <xsd:sequence>
      <!-- Relevant accounting period(s) relating to the company's year of assessment -->
      <xsd:element  name="accountPeriod"  type="periodType" maxOccurs="unbounded" />
      <!-- Total Number of Allotted Shares comprised in the Ordinary Share Capital of the Company -->
      <xsd:element name="totalShares" type="xsd:positiveInteger" />
      <!-- Details of JERSEY Resident Shareholders -->
      <xsd:choice>
        <!-- Shareholding exactly same as previous year -->
        <xsd:element name="samePrevious" />
        <!-- Shareholders details -->
        <xsd:element name="jerseyShareholders" minOccurs="0" maxOccurs="unbounded">
          <xsd:complexType>
            <xsd:sequence>
              <!-- Shareholder Forename -->
              <xsd:element name="shareholderForname" type="string40" />
              <!-- Shareholder Surname -->
              <xsd:element name="shareholderSurname" type="string50" />
              <!-- Shareholder Taxpayer reference -->
              <xsd:element name="shareholderTaxRef" type="taxpayerRefType" minOccurs="0" />
              <!-- Shareholder Address -->
              <xsd:element name="shareholderAddress" type="addressType" />
              <!-- Number of Allotted Shares -->
              <xsd:element name="allottedShares" type="xsd:positiveInteger" />
              <!-- Nominal Shareholding Only -->
              <xsd:element name="nominalOnly" type="ynType" />
              <!-- Period Held -->
              <xsd:choice>
                <!-- Shares held for the whole period -->
                <xsd:element name="periodWhole" />
                <!-- Period held -->
                <xsd:element name="periodHeld" type="periodType" />
              </xsd:choice>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:choice>
    </xsd:sequence>
  </xsd:complexType>

  <!-- 3 Payments made after Deductions of Jersey Tax -->
  <xsd:complexType name="paymentsType">
    <xsd:sequence>
      <!-- Paid to -->
      <xsd:element name="paymentPaidTo" type="string90" />
      <!-- Type of payment -->
      <xsd:element name="paymentType" type="string50" />
      <!-- Date of Payment -->
      <xsd:element name="paymentDate" type="xsd:date" />
      <!-- Tax deducted -->
      <xsd:element name="paymentTaxDeducted" type="moneyType" />
      <!-- Gross (before tax) -->
      <xsd:element name="paymentGross" type="moneyType" />
    </xsd:sequence>
  </xsd:complexType>

  <!-- 4 Other Information -->
  <xsd:complexType name="otherInfoType">
    <xsd:sequence>
      <!-- a) Is the company a share transfer property holding company that had no income or income of less than £100 per shareholder for the year of assessment? -->
      <xsd:element name="holdingNoIncome" type="ynType" />
      <!-- b) Did the company receive no income or was dormant in the year of assessment? -->
      <xsd:element name="dormantNoIncome" type="ynType" />
      <!-- c) Additional information  -->
      <xsd:element name="additionalInfo" type="string10000" minOccurs="0" />
    </xsd:sequence>
  </xsd:complexType>

  <!-- 
		Complex Data Type Definitions 
	-->
  <xsd:complexType name="addressType">
    <xsd:sequence>
      <xsd:element name="addressLine1" type="string50" />
      <xsd:element name="addressLine2" type="string40" minOccurs="0" />
      <xsd:element name="addressLine3" type="string30" minOccurs="0" />
      <xsd:element name="addressLine4" type="string20" minOccurs="0" />
      <xsd:element name="postcode" type="string8" minOccurs="0" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="periodType">
    <xsd:sequence>
      <xsd:element name="dateFrom" type="xsd:date"/>
      <xsd:element name="dateTo" type="xsd:date" minOccurs="0" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="moneyType">
    <xsd:sequence>
      <xsd:element name="amount" type="xsd:integer"/>
      <xsd:element name="estimate" type="ynType" minOccurs="0"/>
    </xsd:sequence>
  </xsd:complexType>

  <!-- 
		Simple Data Type Definitions 
	-->
  <xsd:simpleType name="companyRefType">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="[C]{1}[A-Z]{1}[0-9]{1,5}[A-Z]?" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="taxpayerRefType">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="[B,C,D,E,N,S]{1}[A-Z]{1}[0-9]{1,5}[A-Z]?" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="ynType">
    <xsd:restriction base="xsd:string">
      <xsd:pattern value="[Y,N]{1}" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string4">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="4" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string8">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="8" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string15">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="15" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string20">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="20" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string30">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="30" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string40">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="40" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string50">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="50" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string90">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="90" />
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="string10000">
    <xsd:restriction base="xsd:normalizedString">
      <xsd:maxLength value="10000" />
    </xsd:restriction>
  </xsd:simpleType>
</xsd:schema>
