XML schema definition

The schema of a company journal import file is validated by this XML schema definition:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="company-journals" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"
 xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
  <xs:element name="company-journals" msdata:IsDataSet="true" msdata:Locale="en-US">
	<xs:complexType>
	  <xs:choice minOccurs="1" maxOccurs="unbounded">
		<xs:element name="company-journal">
		  <xs:complexType>
			<xs:sequence>
			  <xs:element name="lines" minOccurs="1" maxOccurs="1">
				<xs:complexType>
				  <xs:sequence>
					<xs:element name="line" minOccurs="2" maxOccurs="unbounded">
					  <xs:complexType>
						<xs:attribute name="number" type="xs:integer" use="required" />
						<xs:attribute name="account" type="xs:string" use="required"/>
						<xs:attribute name="debit" type="xs:decimal" use="optional" />
						<xs:attribute name="intercompany" type="xs:string" use="optional" />
						<xs:attribute name="credit" type="xs:decimal" use="optional" />
						<xs:attribute name="detail" type="xs:string" use="optional" />
						<xs:attribute name="segment1" type="xs:string" use="optional" />
						<xs:attribute name="segment2" type="xs:string" use="optional" />
						<xs:attribute name="segment3" type="xs:string" use="optional" />
						<xs:attribute name="partner-segment1" type="xs:string" use="optional" />
						<xs:attribute name="partner-segment2" type="xs:string" use="optional" />
						<xs:attribute name="partner-segment3" type="xs:string" use="optional" />
						<xs:attribute name="comment" type="xs:string" use="optional"/>
					  </xs:complexType>
					</xs:element>
				  </xs:sequence>
				</xs:complexType>
			  </xs:element>
			</xs:sequence>
			<xs:attribute name="company" type="xs:string" use="required" />
			<xs:attribute name="currency" type="xs:string" use="required"/>
			<xs:attribute name="level" type="xs:string" use="required" />
			<xs:attribute name="type" type="xs:string" use="required"/>
			<xs:attribute name="year" type="xs:string" use="required"/>
			<xs:attribute name="period" type="xs:string" use="required"/>
			<xs:attribute name="scenario" type="xs:string" use="required"/>
			<xs:attribute name="category" type="xs:string" use="optional"/>
			<xs:attribute name="comment" type="xs:string" use="optional"/>
		  </xs:complexType>
		</xs:element>
	  </xs:choice>
	</xs:complexType>
  </xs:element>
</xs:schema>