© 2018 Capita Business Services Ltd. All rights reserved.

Capita Education Software Solutions is a trading name of Capita Business Services Ltd. Our Registered office is 30 Berners Street, London, W1T 3LR and our registered number is 02299747. Further information about Capita plc can be found in our legal statement.

FMS6 - Import Schema - Chart of Accounts

Chart of Accounts Validation XSD

<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v5 rel. 2 U (http://www.xmlspy.com) by XMLSPY 5 Professional Ed. Release 2 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="GLAccounts">
		<xs:annotation>
			<xs:documentation>Comment describing your root element</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Header">
					<xs:annotation>
						<xs:documentation>Provides details of the school providing the export and when the export was made.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="LANumber">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:pattern value="[0123456789]{3}"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="SchoolNumber">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:pattern value="[0123456789]{4}"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="SchoolName">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:pattern value="(\w|\W){1,50}"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="ExportDate" type="xs:date"/>
							<xs:element name="FinancialYearID" type="xs:integer"/>
							<xs:element name="FinancialYearDescription">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:pattern value="(\w|\W){1,9}"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="FinancialYearStartDate" type="xs:date"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="RevenueCodes" minOccurs="0">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="LedgerCodes">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="LedgerCode" maxOccurs="unbounded">
											<xs:annotation>
												<xs:documentation>Lists all ledger codes of type EX, ES and IN</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:sequence>
													<xs:element ref="LedgerType"/>
													<xs:element ref="LedgerCode"/>
													<xs:element ref="LedgerDescription"/>
													<xs:element ref="LedgerGroup"/>
													<xs:element name="ShortCode" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="(\w|\W){1,8}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="NormalProfile">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="(\w|\W){1,32}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="NormalVAT" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="([0-9]{1})|([A-Z]{1})"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="Services" type="xs:boolean" minOccurs="0"/>
													<xs:element name="Funds">
														<xs:complexType>
															<xs:sequence>
																<xs:element name="Fund" maxOccurs="unbounded">
																	<xs:complexType>
																		<xs:sequence>
																			<xs:element ref="FundCode"/>
																			<xs:element name="CFRCode" minOccurs="0">
																				<xs:simpleType>
																					<xs:restriction base="xs:string">
																						<xs:pattern value="(E|I|CE|CI)[0123456789]{2}"/>
																					</xs:restriction>
																				</xs:simpleType>
																			</xs:element>
																		</xs:sequence>
																	</xs:complexType>
																</xs:element>
															</xs:sequence>
														</xs:complexType>
													</xs:element>
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="Funds">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Fund" maxOccurs="unbounded">
											<xs:annotation>
												<xs:documentation>Lists all funds to support the EX, ES, and IN ledger codes</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:sequence>
													<xs:element ref="FundCode"/>
													<xs:element name="Description">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="(\w|\W){1,22}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="LEACode" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="(\w|\W){1,9}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="ExcludefromCFR" type="xs:boolean"/>
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="VATCodes">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="VATCode" maxOccurs="unbounded">
											<xs:annotation>
												<xs:documentation>Lists all VAT type ledger codes to support the EX, ES, and IN ledger codes</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:sequence>
													<xs:element name="VATType">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:enumeration value="VI"/>
																<xs:enumeration value="VO"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element ref="LedgerCode"/>
													<xs:element ref="LedgerDescription"/>
													<xs:element ref="LedgerGroup"/>
													<xs:element name="VATCode">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:length value="1"/>
																<xs:pattern value="([0-9]{1})|([A-Z]{1})"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="VATRate">
														<xs:simpleType>
															<xs:restriction base="xs:decimal">
																<xs:minInclusive value="0"/>
																<xs:maxInclusive value="99.99"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="BalanceCodes" minOccurs="0">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="BKTypes" minOccurs="0" maxOccurs="unbounded">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="BKType">
											<xs:annotation>
												<xs:documentation>Lists all Bank type ledger codes</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:sequence>
													<xs:element ref="LedgerGroup"/>
													<xs:element ref="LedgerDescription"/>
													<xs:element name="AccountName">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="(\w|\W){1,50}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="SortCode">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="[0123456789]{2}-[0123456789]{2}-[0123456789]{2}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="AccountNumber">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="[0123456789]{1,15}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="AccountCode">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:length value="1"/>
																<xs:pattern value="[0..9]"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="BACSUserNumber" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="[0123456789]{6}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="BACSBureauNumber">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:pattern value="B[1234567890]{5}"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="BACSExclHeadTrailRecs" type="xs:boolean"/>
													<xs:element ref="LedgerCode"/>
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="OtherTypes" minOccurs="0" maxOccurs="unbounded">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="OtherType">
											<xs:annotation>
												<xs:documentation>Lists all other types of ledger code not covered above</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:sequence>
													<xs:element name="LedgerType">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:enumeration value="AO"/>
																<xs:enumeration value="CC"/>
																<xs:enumeration value="CP"/>
																<xs:enumeration value="DC"/>
																<xs:enumeration value="FC"/>
																<xs:enumeration value="LS"/>
																<xs:enumeration value="PC"/>
																<xs:enumeration value="PY"/>
																<xs:enumeration value="RE"/>
																<xs:enumeration value="FD"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element ref="LedgerCode"/>
													<xs:element ref="LedgerDescription"/>
													<xs:element ref="LedgerGroup"/>
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="CostCentres" minOccurs="0">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="CostCentre" maxOccurs="unbounded">
								<xs:annotation>
									<xs:documentation>Lists all Cost Centres</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Code">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:pattern value="[ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]{1,9}"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Description">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:pattern value="(\w|\W){1,32}"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Abbreviation">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:pattern value="(\w|\W){1,12}"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Holder" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="0"/>
													<xs:maxLength value="25"/>
													<xs:pattern value="(\w|\W){1,25}"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Threshold">
											<xs:simpleType>
												<xs:restriction base="xs:int">
													<xs:minInclusive value="0"/>
													<xs:maxInclusive value="999"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="CheckSpending" type="xs:boolean"/>
										<xs:element name="Links" minOccurs="0">
											<xs:complexType>
												<xs:sequence>
													<xs:element name="Link" maxOccurs="unbounded">
														<xs:annotation>
															<xs:documentation>Lists the Ledger codes and fund linked to this cost centre</xs:documentation>
														</xs:annotation>
														<xs:complexType>
															<xs:sequence>
																<xs:element ref="LedgerCode"/>
																<xs:element ref="FundCode"/>
															</xs:sequence>
														</xs:complexType>
													</xs:element>
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
			<xs:attribute name="Version" use="required" fixed="0.03"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="LedgerType">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:enumeration value="EX"/>
				<xs:enumeration value="ES"/>
				<xs:enumeration value="IN"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="LedgerCode">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:pattern value="[ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]{1,8}"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="LedgerDescription">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:pattern value="(\w|\W){1,32}"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="LedgerGroup">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:pattern value="(\w|\W){1,32}"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
	<xs:element name="FundCode">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:pattern value="[0-9]{2}"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
</xs:schema>