<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
	<xsl:output method="xml" indent="yes" encoding="ISO-8859-1"/>
	<!--General implementation-->
	<xsl:template name="main" match="stack">
		<xsl:param name="isolang" select="'no'"/>
		<xsl:element name="bookings">
			<xsl:for-each select="/stack/shipments/shipment">			
				<xsl:element name="booking">	
					<xsl:element name="booking-id">
						<xsl:value-of select="current()/@number"/>
					</xsl:element>
					<xsl:element name="booking-number"/>
					<xsl:element name="bookingreferencetag">
						<xsl:value-of select="current()/@ordernumber"/>
					</xsl:element>
					<xsl:element name="receiverreferencetag">
						<xsl:value-of select="current()/references/reference[@kindname='Receivers reference']/@value"/>
					</xsl:element>
					<xsl:element name="datetimegroup">	
						<xsl:element name="pickupdatetag">
							<xsl:value-of select="concat(current()/references/reference[@kindname='Pickup Start']/@year,'-',current()/references/reference[@kindname='Pickup Start']/@month,'-',current()/references/reference[@kindname='Pickup Start']/@day)" />
						</xsl:element>
						<xsl:element name="pickuptimetag">
							<xsl:value-of select="substring(current()/references/reference[@kindname='Pickup Start']/@value,9,2)" />:<xsl:value-of select="substring(current()/references/reference[@kindname='Pickup Start']/@value,11,2)" />
						</xsl:element>
						<xsl:element name="deliverydatetag">
							<xsl:value-of select="concat(current()/references/reference[@kindname='Delivery Start']/@year,'-',current()/references/reference[@kindname='Delivery Start']/@month,'-',current()/references/reference[@kindname='Delivery Start']/@day)" />
						</xsl:element>
						<xsl:element name="deliverytimetag">
							<xsl:value-of select="substring(current()/references/reference[@kindname='Delivery Start']/@value,9,2)" />:<xsl:value-of select="substring(current()/references/reference[@kindname='Delivery Start']/@value,11,2)" />
						</xsl:element>
					</xsl:element>
					<xsl:element name="pickupaddresskeywordtag"/>
					<xsl:element name="pickupaddresscompanynametag">
						<xsl:value-of select="current()/sender/@name1"/>
					</xsl:element>
					<xsl:element name="pickupaddressaddress1tag">
						<xsl:value-of select="current()/sender/@streetaddress1"/>
					</xsl:element>
					<xsl:element name="pickupaddressaddress2tag">
						<xsl:value-of select="current()/sender/@streetaddress2"/>
					</xsl:element>
					<xsl:element name="pickupaddresszipcitytag">
						<xsl:value-of select="concat(current()/sender/@postcode,' ',current()/sender/@city)"/>
					</xsl:element>
					<xsl:element name="pickupaddresscountrytag">
						<xsl:value-of select="current()/sender/@countrycode"/>
					</xsl:element>
					<xsl:element name="pickupaddressattentiontag">
						<xsl:value-of select="current()/sender/@attention"/>
					</xsl:element>
					<xsl:element name="pickupaddressphonetag">
						<xsl:value-of select="current()/sender/@phone"/>
					</xsl:element>
					<xsl:element name="pickupaddressmobiletag">	
						<xsl:value-of select="current()/sender/@mobile"/>
					</xsl:element>
					<xsl:element name="pickupaddressemailtag">
						<xsl:value-of select="current()/sender/@email"/>
					</xsl:element>
					<xsl:element name="pickupaddressnotetag">
						<xsl:value-of select="current()/@msgtocarrier"/>
					</xsl:element>
					<xsl:element name="deliveryaddresskeywordtag"/>
					<xsl:element name="deliveryaddresscompanynametag">
						<xsl:value-of select="current()/receiver/@name1"/>
					</xsl:element>
					<xsl:element name="deliveryaddressaddress1tag">
						<xsl:value-of select="current()/receiver/@streetaddress1"/>
					</xsl:element>
					<xsl:element name="deliveryaddressaddress2tag">
						<xsl:value-of select="current()/receiver/@streetaddress2"/>
					</xsl:element>
					<xsl:element name="deliveryaddresszipcitytag">
						<xsl:value-of select="concat(current()/receiver/@postcode,' ',current()/receiver/@city)"/>
					</xsl:element>
					<xsl:element name="deliveryaddresscountrytag">
						<xsl:value-of select="current()/receiver/@countrycode"/>
					</xsl:element>
					<xsl:element name="deliveryaddressattentiontag">
						<xsl:value-of select="current()/receiver/@attention"/>
					</xsl:element>
					<xsl:element name="deliveryaddressphonetag">
						<xsl:value-of select="current()/receiver/@phone"/>
					</xsl:element>
					<xsl:element name="deliveryaddressmobiletag">
						<xsl:value-of select="current()/receiver/@mobile"/>
					</xsl:element>
					<xsl:element name="deliveryaddressemailtag">
						<xsl:value-of select="current()/receiver/@email"/>
					</xsl:element>
					<xsl:element name="deliveryaddressnotetag">
						<xsl:value-of select="current()/@msgtodriver"/>
					</xsl:element>
					<xsl:element name="senderaddresskeywordtag"/>
					<xsl:element name="senderaddresscompanynametag">
						<xsl:value-of select="current()/pickup/@name1"/>
					</xsl:element>
					<xsl:element name="senderaddressaddress1tag">
						<xsl:value-of select="current()/pickup/@streetaddress1"/>
					</xsl:element>
					<xsl:element name="senderaddressaddress2tag">
						<xsl:value-of select="current()/pickup/@streetaddress2"/>
					</xsl:element>
					<xsl:element name="senderaddresszipcitytag">
						<xsl:value-of select="concat(current()/pickup/@postcode,' ',current()/pickup/@city)"/>
					</xsl:element>
					<xsl:element name="senderaddresscountrytag">
						<xsl:value-of select="current()/pickup/@countrycode"/>
					</xsl:element>
					<xsl:element name="senderaddressattentiontag">
						<xsl:value-of select="current()/pickup/@attention"/>
					</xsl:element>
					<xsl:element name="senderaddressphonetag">
						<xsl:value-of select="current()/pickup/@phone"/>
					</xsl:element>
					<xsl:element name="senderaddressmobiletag">
						<xsl:value-of select="current()/pickup/@mobile"/>
					</xsl:element>
					<xsl:element name="senderaddressemailtag">
						<xsl:value-of select="current()/pickup/@email"/>
					</xsl:element>
					<xsl:choose>
						<xsl:when test="current()/pickup/@streetaddress1!=''">
							<xsl:element name="senderaddressnotetag">
								<xsl:value-of select="current()/@msgtocarrier"/>
							</xsl:element>
						</xsl:when>
						<xsl:otherwise>
							<xsl:element name="senderaddressnotetag"/>
						</xsl:otherwise>
					</xsl:choose>
					<xsl:element name="receiveraddresskeywordtag"/>
					<xsl:element name="receiveraddresscompanynametag">
						<xsl:value-of select="current()/delivery/@name1"/>
					</xsl:element>
					<xsl:element name="receiveraddressaddress1tag">
						<xsl:value-of select="current()/delivery/@streetaddress1"/>
					</xsl:element>
					<xsl:element name="receiveraddressaddress2tag">
						<xsl:value-of select="current()/delivery/@streetaddress2"/>
					</xsl:element>
					<xsl:element name="receiveraddresszipcitytag">
						<xsl:value-of select="concat(current()/delivery/@postcode,' ',current()/delivery/@city)"/>
					</xsl:element>
					<xsl:element name="receiveraddresscountrytag">
						<xsl:value-of select="current()/delivery/@countrycode"/>
					</xsl:element>
					<xsl:element name="receiveraddressattentiontag">
						<xsl:value-of select="current()/delivery/@attention"/>
					</xsl:element>
					<xsl:element name="receiveraddressphonetag">
						<xsl:value-of select="current()/delivery/@phone"/>
					</xsl:element>
					<xsl:element name="receiveraddressmobiletag">
						<xsl:value-of select="current()/delivery/@mobile"/>
					</xsl:element>
					<xsl:element name="receiveraddressemailtag">
						<xsl:value-of select="current()/delivery/@email"/>
					</xsl:element>
					<xsl:choose>
						<xsl:when test="current()/delivery/@streetaddress1!=''">
							<xsl:element name="receiveraddressnotetag">
								<xsl:value-of select="current()/@msgtodriver"/>
							</xsl:element>
						</xsl:when>
						<xsl:otherwise>
							<xsl:element name="receiveraddressnotetag"/>
						</xsl:otherwise>
					</xsl:choose>
					<xsl:element name="transporttag">
						<xsl:value-of select="current()/product/@filecode"/>
					</xsl:element>
					<xsl:for-each select="current()/services/service">
						<xsl:element name="transportservicetags">	
							<xsl:element name="transportservicetag">
								<xsl:value-of select="@code"/>
							</xsl:element>
						</xsl:element>	
					</xsl:for-each>
					<xsl:element name="tollgroup">	
						<xsl:element name="tollvaluetag"/>
						<xsl:element name="currencytag"/>
					</xsl:element>	
					<xsl:element name="notetag">
						<xsl:value-of select="current()/@msgtocarrier"/>
					</xsl:element>
					<xsl:element name="drivernotetag">
						<xsl:value-of select="current()/@msgtodriver"/>
					</xsl:element>
					<xsl:element name="receivernotetag">
						<xsl:value-of select="current()/@msgtoreceiver"/>
					</xsl:element>
					<xsl:element name="postlines">	
						<xsl:for-each select="lines/line">
							<xsl:element name="postline">
								<xsl:element name="postlinemarktag">
									<xsl:value-of select="current()/@marking"/>
								</xsl:element>
								<xsl:element name="postlinequantitytag">
									<xsl:value-of select="current()/@packagecount"/>
								</xsl:element>
								<xsl:element name="postlinecolliunittag">
									<xsl:value-of select="current()/@goodstypecode1"/>
								</xsl:element>
								<xsl:element name="postlinedescriptiontag">
									<xsl:value-of select="current()/@contents"/>
								</xsl:element>
								<xsl:element name="postlinelenghttag">
									<xsl:value-of select="current()/@length div 10"/>
								</xsl:element>
								<xsl:element name="postlinewidthtag">
									<xsl:value-of select="current()/@width div 10"/>
								</xsl:element>
								<xsl:element name="postlineheighttag">
									<xsl:value-of select="current()/@height div 10"/>
								</xsl:element>
								<xsl:element name="postlinecbmtag">
									<xsl:value-of select="current()/@volume div 1000000000"/>
								</xsl:element>
								<xsl:element name="postlineldmtag">
									<xsl:value-of select="current()/@loadmeter div 1000"/>
								</xsl:element>
								<xsl:element name="postlineweighttag">
									<xsl:value-of select="current()/@weight div 1000"/>
								</xsl:element>
							</xsl:element>	
						</xsl:for-each>
					</xsl:element>	
					<xsl:element name="customer">	
						<xsl:element name="customercompanyname">
							<xsl:value-of select="current()/sender/@name1"/>
						</xsl:element>
						<xsl:element name="customeraccountnumber">
							<xsl:value-of select="current()/@carrieraccount"/>
						</xsl:element>
					</xsl:element>	
					<xsl:element name="user">	
						<xsl:element name="useremail"/>
						<xsl:element name="username"/>
					</xsl:element>	
					<xsl:element name="operator">
						<xsl:value-of select="current()/@operator"/>
					</xsl:element>
				</xsl:element>
			</xsl:for-each>				
		</xsl:element>	
	</xsl:template>
</xsl:stylesheet>