diff --git a/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.8_Stage.xsd b/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.8_Stage.xsd
index 99a1302ab5f6c43bcfadaeae8ad4e94a4f615dcd..ae26eaa01476d2e6d803ef443ee8f22a869f8893 100644
--- a/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.8_Stage.xsd
+++ b/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.8_Stage.xsd
@@ -153,7 +153,7 @@
 			<xs:documentation>Exempted vehicle stage input parts</xs:documentation>
 		</xs:annotation>
 		<xs:complexContent>
-			<xs:extension base="v2.0:AbstractVehicleDeclarationType">
+			<xs:extension base="v2.8:AbstractCompletedBusVehicleType">
 				<xs:sequence>
 					<xs:element name="Manufacturer" type="v1.0:ManufacturerType">
 						<xs:annotation>
@@ -236,7 +236,7 @@
 			<xs:documentation>Vehicle stage input parts</xs:documentation>
 		</xs:annotation>
 		<xs:complexContent>
-			<xs:extension base="v2.0:AbstractVehicleDeclarationType">
+			<xs:extension base="v2.8:AbstractCompletedBusVehicleType">
 				<xs:sequence>
 					<xs:element name="Manufacturer" type="v1.0:ManufacturerType">
 						<xs:annotation>
@@ -461,4 +461,9 @@
 			<xs:extension base="v1.0:AbstractAirdragDataDeclarationType"/>
 		</xs:complexContent>
 	</xs:complexType>
+	<xs:complexType name="AbstractCompletedBusVehicleType" abstract="true">
+		<xs:complexContent>
+			<xs:extension base="v2.0:AbstractVehicleDeclarationType"/>
+		</xs:complexContent>
+	</xs:complexType>
 </xs:schema>
diff --git a/VectoCore/VectoCore/Resources/XSD/VectoOutputInterimVehicle.xsd b/VectoCore/VectoCore/Resources/XSD/VectoOutputInterimVehicle.xsd
index 064ee87e6d6815d7afaa10ed59bf02b2a1888efd..9213e78d96c568d58790f91d089f29902e25eb2c 100644
--- a/VectoCore/VectoCore/Resources/XSD/VectoOutputInterimVehicle.xsd
+++ b/VectoCore/VectoCore/Resources/XSD/VectoOutputInterimVehicle.xsd
@@ -16,45 +16,42 @@
 		</xs:annotation>
 		<xs:complexType>
 			<xs:sequence>
-				<xs:element name="PrimaryVehicle" type="vif:PrimaryVehicleHeavyBusDataType"/>
-				<xs:element name="ManufacturingStage" type="vif:ManufacturingStageType" maxOccurs="unbounded"/>
+				<xs:element name="PrimaryVehicle" type="vif:PrimaryVehicleType"/>
+				<xs:element name="ManufacturingStage" type="vif:ManufacturingStageType" minOccurs="0" maxOccurs="unbounded"/>
 			</xs:sequence>
 		</xs:complexType>
 	</xs:element>
-	<xs:complexType name="AbstractManufacturingStageDataType" abstract="true"/>
-	<xs:complexType name="ManufacturingStageDataType">
+	<xs:complexType name="AbstractManufacturingStageDataType" abstract="true">
+		<xs:attribute name="id" type="xs:NCName" use="required"/>
+	</xs:complexType>
+	<xs:complexType name="BusManufacturingStageDataType">
 		<xs:complexContent>
 			<xs:extension base="vif:AbstractManufacturingStageDataType">
 				<xs:sequence>
-					<xs:element name="Data">
-						<xs:complexType>
-							<xs:sequence>
-								<xs:element name="HashPreviousStage" type="v1.0:SignatureType"/>
-								<xs:element name="Vehicle" type="v2.8:VectoStageInputType"/>
-								<xs:element name="ApplicationInformation" type="v0.1:ApplicationInformationPIFType"/>
-							</xs:sequence>
-						</xs:complexType>
-					</xs:element>
-					<xs:element name="Signature" type="v1.0:SignatureType"/>
+					<xs:element name="HashPreviousStage" type="v1.0:SignatureType"/>
+					<xs:element name="Vehicle" type="v2.8:AbstractCompletedBusVehicleType"/>
+					<xs:element name="ApplicationInformation" type="v0.1:ApplicationInformationPIFType"/>
 				</xs:sequence>
-				<xs:attribute name="stageCount" use="required">
-					<xs:simpleType>
-						<xs:restriction base="xs:int">
-							<xs:minInclusive value="2"/>
-						</xs:restriction>
-					</xs:simpleType>
-				</xs:attribute>
 			</xs:extension>
 		</xs:complexContent>
 	</xs:complexType>
 	<xs:complexType name="ManufacturingStageType">
 		<xs:sequence>
 			<xs:element name="Data" type="vif:AbstractManufacturingStageDataType"/>
+			<xs:element name="Signature" type="v1.0:SignatureType"/>
 		</xs:sequence>
+		<xs:attribute name="stageCount" use="required">
+			<xs:simpleType>
+				<xs:restriction base="xs:int">
+					<xs:minInclusive value="2"/>
+				</xs:restriction>
+			</xs:simpleType>
+		</xs:attribute>
 	</xs:complexType>
-	<xs:complexType name="PrimaryVehicleHeavyBusDataType">
+	<xs:complexType name="PrimaryVehicleType">
 		<xs:sequence>
-			<xs:element name="Data" type="v0.1:PrimaryVehicleHeavyBusDataType"/>
+			<xs:element name="Data" type="v0.1:PrimaryVehicleDataType"/>
+			<xs:element name="Signature" type="v1.0:SignatureType"/>
 		</xs:sequence>
 	</xs:complexType>
 </xs:schema>
diff --git a/VectoCore/VectoCore/Resources/XSD/VectoOutputPrimaryBus.xsd b/VectoCore/VectoCore/Resources/XSD/VectoOutputPrimaryBus.xsd
index 384274351789ed30416313f658e6726b18cd1820..cd3ff1b79fcba880420809855d0a7678992b8652 100644
--- a/VectoCore/VectoCore/Resources/XSD/VectoOutputPrimaryBus.xsd
+++ b/VectoCore/VectoCore/Resources/XSD/VectoOutputPrimaryBus.xsd
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- edited with XMLSpy v2016 rel. 2 sp1 (x64) (http://www.altova.com) by Helmut Eichlseder (TU Graz/Inst. f. VKM und THD) -->
+<!-- edited with XMLSpy v2021 (x64) (http://www.altova.com) by Franz Kober (Technische Universität Graz) -->
 <xs:schema xmlns="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation:HeavyBus:v0.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:v1.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v1.0" xmlns:v2.0="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.0" xmlns:v2.1="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:v2.1" xmlns:v2.3="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.3" xmlns:v2.6="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions:DEV:v2.6" xmlns:common="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions" xmlns:pif="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation" xmlns:out="urn:tugraz:ivt:VectoAPI:DeclarationOutputDefinitions" targetNamespace="urn:tugraz:ivt:VectoAPI:DeclarationOutput:PrimaryVehicleInformation:HeavyBus:v0.1" elementFormDefault="qualified" attributeFormDefault="unqualified">
 	<xs:import namespace="urn:tugraz:ivt:VectoAPI:DeclarationOutputDefinitions" schemaLocation="VectoOutputDefinitions.xsd"/>
 	<xs:import namespace="urn:tugraz:ivt:VectoAPI:DeclarationDefinitions" schemaLocation="VectoDeclarationDefinitions.xsd"/>
@@ -15,7 +15,7 @@
 	<xs:complexType name="AbstractTransmissionDataPIFType" abstract="true"/>
 	<xs:complexType name="AbstractTransmissionGearsPIFType" abstract="true"/>
 	<xs:complexType name="AbstractVehicleComponentsPIFType" abstract="true"/>
-	<xs:complexType name="AbstractVehiclePIFType" abstract="true"/>
+	<xs:complexType name="AbstractPrimaryVehicleType" abstract="true"/>
 	<xs:complexType name="AngledriveDataPIFType">
 		<xs:complexContent>
 			<xs:extension base="AbstractAngledriveDataPIFType">
@@ -249,21 +249,21 @@
 			</xs:extension>
 		</xs:simpleContent>
 	</xs:complexType>
-	<xs:complexType name="PrimaryVehicleHeavyBusDataType">
+	<xs:complexType name="PrimaryVehicleDataType">
 		<xs:complexContent>
 			<xs:extension base="out:AbstractPrimaryVehicleDataPIFType">
 				<xs:sequence>
-					<xs:element name="Vehicle" type="AbstractVehiclePIFType"/>
+					<xs:element name="Vehicle" type="AbstractPrimaryVehicleType"/>
 					<xs:element name="InputDataSignature" type="v1.0:SignatureType"/>
 					<xs:element name="ManufacturerRecordSignature" type="v1.0:SignatureType"/>
-					<xs:element name="Results" type="ResultsPIFType"/>
+					<xs:element name="Results" type="ResultsPrimaryVehicleType"/>
 					<xs:element name="ApplicationInformation" type="ApplicationInformationPIFType"/>
 				</xs:sequence>
 				<xs:attribute name="id" use="required"/>
 			</xs:extension>
 		</xs:complexContent>
 	</xs:complexType>
-	<xs:complexType name="ResultPIFType">
+	<xs:complexType name="ResultPrimaryVehicleType">
 		<xs:sequence>
 			<xs:element name="VehicleGroup">
 				<xs:simpleType>
@@ -306,10 +306,10 @@
 		</xs:sequence>
 		<xs:attribute name="status" use="required"/>
 	</xs:complexType>
-	<xs:complexType name="ResultsPIFType">
+	<xs:complexType name="ResultsPrimaryVehicleType">
 		<xs:sequence>
 			<xs:element name="Status"/>
-			<xs:element name="Result" type="ResultPIFType" maxOccurs="unbounded"/>
+			<xs:element name="Result" type="ResultPrimaryVehicleType" maxOccurs="unbounded"/>
 		</xs:sequence>
 	</xs:complexType>
 	<xs:complexType name="SimulationParametersType">
@@ -600,7 +600,7 @@
 	</xs:complexType>
 	<xs:complexType name="VehiclePIFType">
 		<xs:complexContent>
-			<xs:extension base="AbstractVehiclePIFType">
+			<xs:extension base="AbstractPrimaryVehicleType">
 				<xs:sequence>
 					<xs:element name="ManufacturerPrimaryVehicle" type="v1.0:ManufacturerType"/>
 					<xs:element name="ManufacturerAddressPrimaryVehicle" type="v1.0:ManufacturerAddressType"/>