Dados de endereço delimitados por vírgula em FSD

O exemplo a seguir descreve os dados de endereço delimitados por vírgula simples:

Exemplo de entrada

name,address1,address2,address3,home_number
Phil Brown,23 The High Street,Appleby,Cornwall,01485 936520
Paul Alan,12 The Hill,Little Moreton,Dorset,01283 756322

Exemplo de saída

<addresses>
		<address>
				<name> Phil Brown</name>
				<street> 23, The High Street</street>
				<town>Appleby</town>
				<number>01485 936520</number>
		</address>
		<address>
				<name>Paul Alan</name>
				<street>12 The Hill</street>
				<town>Little Moreton</town>
				<number>01283 756322</number>
		</address>
</addresses>

Esquema

<?xml version='1.0'?>
<schema xmlns='http://www.systemsunion.com/2001/TD/SSTransform/fsd/' version='1.0'>
		<sequence name="addresses">
				<sequence name="address-coll" output="no" max-occur="0">
				<!-- Define the header line -->
						<record
								name="headerline" max-occur="1" min-occur="1"
								record-sep="\r\n" output="no">
										<field output="no" />
						</record>
				<!-- Define the address records -->
						<sequence name="empty-seq" output="no"
						max-occur="0" min-occur="1">
								<record name="address" record-sep="\r\n"
								max-occur="0" min-occur="1">
										<field name="name" field-sep=","/>
										<field name="street" field-sep=","/>
										<field name="town" field-sep=","/>
										<field name="county" field-sep=","/>
										<field name="number"/>
								</record>
						</sequence>
				<!-- Define the optional blank line at the end -->
						<record name="blank-line" output="no"
						max-occur="1" min-occur="0" record-sep="\r\n">
								<field output="no"/>
						</record>
				</sequence>
		</sequence>
</schema>