<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2009 sp1 (http://www.altova.com) by Tero Pietila (IT-Pie Oy) for inframodel 3: 9/28/2013 -->
<!-- edited with XMLSpy v2015 sp2 (x64) (http://www.altova.com) by Juha Hyvärinen (VTT) for bSI MVD for LandXML v 1.2: 10/05/2015  -->
<!--  THIS SCHEMA IS FOR bSI MVD VALIDATION PURPOSES ONLY!-->
<xs:schema xmlns="http://www.landxml.org/schema/LandXML-1.2" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.5">
	<!-- ================================================= -->
	<!-- Package: <<Application Schema>> Enumerations  -->
	<!-- ================================================= -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> Project  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSIProjectLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="name"/>
			<xs:enumeration value="description"/>
			<xs:enumeration value="source"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> bSIAbstractFeature  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSIFeatureCodesType">
		<xs:annotation>
			<xs:documentation>bSI: List of allowed values for different featurecodes</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="bSI_codings"/>
			<xs:enumeration value="bSI_coding"/>
			<xs:enumeration value="bSI_kmPostCoords"/>
			<xs:enumeration value="bSI_switch"/>
			<xs:enumeration value="bSI_plan"/>
			<xs:enumeration value="bSI_stringlineLayers"/>
			<xs:enumeration value="bSI_stringlineLayer"/>
			<xs:enumeration value="bSI_crossSect"/>
			<xs:enumeration value="bSI_struct"/>
			<xs:enumeration value="bSI_pipe"/>
			<xs:enumeration value="bSI_planfeature"/>
			<xs:enumeration value="bSI_proprietary"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> Struct  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSICircStructMaterialType">
		<xs:restriction base="xs:string">
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bSIRectStructMaterialType">
		<xs:restriction base="xs:string">
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bSIStructLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="structLabel"/>
			<xs:enumeration value="rimType"/>
			<xs:enumeration value="rimLoad"/>
			<xs:enumeration value="rimMaterial"/>
			<xs:enumeration value="rimDiameter"/>
			<xs:enumeration value="rimCenter"/>
			<xs:enumeration value="heightDeposit"/>
			<xs:enumeration value="volumeDeposit"/>
			<xs:enumeration value="constructionDate"/>
			<xs:enumeration value="renewalDate"/>
			<xs:enumeration value="renewalDesc"/>
			<xs:enumeration value="equipmentType"/>
			<xs:enumeration value="equipmentCode"/>
			<xs:enumeration value="equipmentDesc"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> Pipe  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSIPipeLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="pipeLabel"/>
			<xs:enumeration value="elevType"/>
			<xs:enumeration value="pipeStart"/>
			<xs:enumeration value="pipeEnd"/>
			<xs:enumeration value="jointType"/>
			<xs:enumeration value="pressureClass"/>
			<xs:enumeration value="constructionDate"/>
			<xs:enumeration value="renewalDate"/>
			<xs:enumeration value="renewalDesc"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bSICircPipeMaterialType">
		<xs:restriction base="xs:string">
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bSIEggPipeMaterialType">
		<xs:restriction base="xs:string">
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bSIElliPipeMaterialType">
		<xs:restriction base="xs:string">
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bSIRectPipeMaterialType">
		<xs:restriction base="xs:string">
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bSIChannelMaterialType">
		<xs:restriction base="xs:string">
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> StaEquation  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSIStaEquationLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="kmPostN"/>
			<xs:enumeration value="kmPostE"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> CrossSect  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSICrossSectLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="pavementClass"/>
			<xs:enumeration value="pavementThickness"/>
			<xs:enumeration value="subgradeLoadCapacityClass"/>
			<xs:enumeration value="slope"/>
			<xs:enumeration value="tracks"/>
			<xs:enumeration value="trackDist"/>
			<xs:enumeration value="thickness"/>
			<xs:enumeration value="bedWidth"/>
			<xs:enumeration value="depth"/>
			<xs:enumeration value="width"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> Alignment,Breakline,Surface  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSICodingsLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="coding"/>
			<xs:enumeration value="codingDesc"/>
		</xs:restriction>            
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> Alignments  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSIAlignmentsFeatureLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="name"/>
			<xs:enumeration value="alignments"/>
			<xs:enumeration value="centreLine"/>
			<xs:enumeration value="coding"/>
			<xs:enumeration value="codingDesc"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> Alignment -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSICoordGeomLineLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="switchType"/>
			<xs:enumeration value="switchHand"/>
			<xs:enumeration value="switchJoint"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> Alignments, PipeNetworks, Surfaces labels  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSIPlanLabelsType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="planName"/>
			<xs:enumeration value="planCode"/>
			<xs:enumeration value="planState"/>
			<xs:enumeration value="planDesc"/>
			<xs:enumeration value="coding"/>
			<xs:enumeration value="codingDesc"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- Class: <<Enumeration>> PlanFeature  -->
	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<xs:simpleType name="bSIPlanFeatureLabelType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="type"/>
			<xs:enumeration value="material"/>
			<xs:enumeration value="coding"/>
			<xs:enumeration value="codingDesc"/>
		</xs:restriction>
	</xs:simpleType>
</xs:schema>
