From 2f5928482e037a45dbb6b5e405d9e02b5f9cf9cf Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <markus.quaritsch@tugraz.at>
Date: Tue, 2 May 2017 07:46:37 +0200
Subject: [PATCH] adapt reading xml to new schema

---
 VECTO/GUI/EngineForm.vb                       |    7 +-
 VECTO/GUI/GearboxForm.vb                      |   10 +-
 VECTO/GUI/MainForm.vb                         |    4 +-
 VECTO/GUI/VectoJobForm.vb                     |    4 +-
 VECTO/GUI/VehicleForm.vb                      |   11 +-
 VECTO/Input Files/Engine.vb                   |   12 +-
 VECTO/Input Files/Gearbox.vb                  |   13 +-
 VECTO/Input Files/VectoJob.vb                 |   19 +-
 VECTO/Input Files/Vehicle.vb                  |   54 +-
 VECTO/OutputData/JSONFileWriter.vb            |   21 +-
 .../InputData/DeclarationInputData.cs         |   25 +-
 .../InputData/EngineeringInputData.cs         |    5 +-
 .../InputData/IInputDataProvider.cs           |    4 +
 .../OutputData/IOutputFileWriter.cs           |    3 +-
 VectoConsole/Program.cs                       |    2 +-
 .../VectoCore/Configuration/Constants.cs      |    2 +-
 .../FileIO/JSON/JSONComponentInputData.cs     |   12 +
 .../InputData/FileIO/JSON/JSONEngineData.cs   |   23 +-
 .../InputData/FileIO/JSON/JSONGearboxData.cs  |   11 +-
 .../InputData/FileIO/JSON/JSONInputData.cs    |   12 +
 .../InputData/FileIO/JSON/JSONVehicleData.cs  |   86 +-
 ...ractDeclarationXMLComponentDataProvider.cs |   23 +-
 .../XMLDeclarationAirdragDataProvider.cs      |   25 +
 .../XMLDeclarationAngledriveDataProvider.cs   |    2 +-
 .../XMLDeclarationAuxiliaryDataProvider.cs    |    2 +-
 .../XMLDeclarationAxlegearDataProvider.cs     |    6 +-
 .../XMLDeclarationDriverDataProvider.cs       |   33 +-
 .../XMLDeclarationEngineDataProvider.cs       |    2 +-
 .../XMLDeclarationGearboxDataProvider.cs      |    6 +-
 ....cs => XMLDeclarationInputDataProvider.cs} |    6 +-
 .../XMLDeclarationJobInputDataProvider.cs     |    2 +-
 .../XMLDeclarationRetarderDataProvider.cs     |    2 +-
 ...LDeclarationTorqueConverterDataProvider.cs |    2 +-
 .../XMLDeclarationVehicleDataProvider.cs      |   33 +-
 ...ractEngineeringXMLComponentDataProvider.cs |   15 +-
 .../XMLEngineeringAirdragDataProvider.cs      |   36 +
 .../XMLEngineeringAngledriveDataProvider.cs   |    7 +-
 .../XMLEngineeringAxlegearDataProvider.cs     |    5 +-
 .../XMLEngineeringInputDataProvider.cs        |    9 +-
 .../XMLEngineeringJobInputDataProvider.cs     |    2 +-
 .../XMLEngineeringVehicleDataProvider.cs      |   59 +-
 .../VectoCore/InputData/Impl/InputData.cs     |   10 +-
 .../AbstractSimulationDataAdapter.cs          |   38 +-
 .../DeclarationDataAdapter.cs                 |    5 +-
 .../EngineeringDataAdapter.cs                 |   30 +-
 .../DeclarationModeVectoRunDataFactory.cs     |   17 +-
 .../EngineeringModeVectoRunDataFactory.cs     |    8 +-
 .../OutputData/XML/AbstractXMLWriter.cs       |    6 +-
 .../OutputData/XML/XMLDeclarationWriter.cs    |   35 +-
 .../OutputData/XML/XMLEngineeringWriter.cs    |   54 +-
 .../VectoCore/Resources/XMLNames.Designer.cs  | 3415 +++++++++--------
 VectoCore/VectoCore/Resources/XMLNames.resx   |   47 +-
 VectoCore/VectoCore/VectoCore.csproj          |   18 +-
 .../SimulationComponentData/ValidationTest.cs |    4 +-
 .../engineering_job-sample_FULL.xml           |   11 +-
 .../Utils/MockEngineDataProvider.cs           |    7 +-
 .../Utils/MockSimulationDataFactory.cs        |    3 +-
 .../XML/XMLDeclarationInputTest.cs            |  158 +-
 .../XML/XMLEngineeringInputRefTest.cs         |   22 +-
 .../XML/XMLEngineeringInputSingleTest.cs      |   76 +-
 VectoCore/VectoCoreTest/XML/XMLWritingTest.cs |    6 +-
 61 files changed, 2446 insertions(+), 2141 deletions(-)
 create mode 100644 VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAirdragDataProvider.cs
 rename VectoCore/VectoCore/InputData/FileIO/XML/Declaration/{XMLInputDataProvider.cs => XMLDeclarationInputDataProvider.cs} (91%)
 create mode 100644 VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAirdragDataProvider.cs

diff --git a/VECTO/GUI/EngineForm.vb b/VECTO/GUI/EngineForm.vb
index 489b2c8100..0c838ae1b9 100644
--- a/VECTO/GUI/EngineForm.vb
+++ b/VECTO/GUI/EngineForm.vb
@@ -177,7 +177,7 @@ Public Class EngineForm
 		End If
 
 		Dim basePath As String = Path.GetDirectoryName(file)
-		TbName.Text = engine.ModelName
+		TbName.Text = engine.Model
 		TbDispl.Text = (engine.Displacement * 1000 * 1000).ToGUIFormat()
 		TbInertia.Text = engine.Inertia.ToGUIFormat()
 		TbNleerl.Text = engine.IdleSpeed.AsRPM.ToGUIFormat()
@@ -375,14 +375,15 @@ Public Class EngineForm
 		Try
 			Dim fldFile As String =
 					If(Not String.IsNullOrWhiteSpace(_engFile), Path.Combine(Path.GetDirectoryName(_engFile), TbFLD.Text), TbFLD.Text)
-			If File.Exists(fldFile) Then fullLoadCurve = FullLoadCurveReader.Create(VectoCSVFile.Read(fldFile), engineFld:=True)
+			If File.Exists(fldFile) Then _
+				fullLoadCurve = FullLoadCurveReader.Create(VectoCSVFile.Read(fldFile), engineFld:=True)
 		Catch ex As Exception
 		End Try
 
 		Try
 			Dim fcFile As String =
 					If(Not String.IsNullOrWhiteSpace(_engFile), Path.Combine(Path.GetDirectoryName(_engFile), TbMAP.Text), TbMAP.Text)
-			if File.Exists(fcfile) then fcMap = FuelConsumptionMapReader.Create(VectoCSVFile.Read(fcFile))
+			If File.Exists(fcFile) Then fcMap = FuelConsumptionMapReader.Create(VectoCSVFile.Read(fcFile))
 		Catch ex As Exception
 		End Try
 
diff --git a/VECTO/GUI/GearboxForm.vb b/VECTO/GUI/GearboxForm.vb
index 53da335bd8..081b155360 100644
--- a/VECTO/GUI/GearboxForm.vb
+++ b/VECTO/GUI/GearboxForm.vb
@@ -258,7 +258,7 @@ Public Class GearboxForm
 		End If
 
 		Dim basePath As String = Path.GetDirectoryName(file)
-		TbName.Text = gearbox.ModelName
+		TbName.Text = gearbox.Model
 		TbTracInt.Text = gearbox.TractionInterruption.ToGUIFormat()
 		TBI_getr.Text = gearbox.Inertia.ToGUIFormat()
 
@@ -975,10 +975,10 @@ Public Class GearboxForm
 		End If
 		Dim data As Gearbox = FillGearboxData(_gbxFile)
 		If (Cfg.DeclMode) Then
-			Dim export As XDocument = New XMLDeclarationWriter(data.Vendor).GenerateVectoComponent(data, data)
+			Dim export As XDocument = New XMLDeclarationWriter(data.Manufacturer).GenerateVectoComponent(data, data)
 			export.Save(Path.Combine(dialog.FileName, data.ModelName + ".xml"))
 		Else
-			Dim export As XDocument = New XMLEngineeringWriter(_gbxFile, True, data.Vendor).GenerateVectoComponent(data, data)
+			Dim export As XDocument = New XMLEngineeringWriter(_gbxFile, True, data.Manufacturer).GenerateVectoComponent(data, data)
 			export.Save(Path.Combine(dialog.FileName, data.ModelName + ".xml"))
 		End If
 	End Sub
@@ -991,10 +991,10 @@ Public Class GearboxForm
 		End If
 		Dim data As Gearbox = FillGearboxData(_gbxFile)
 		If (Cfg.DeclMode) Then
-			Dim export As XDocument = New XMLDeclarationWriter(data.Vendor).GenerateVectoComponent(data)
+			Dim export As XDocument = New XMLDeclarationWriter(data.Manufacturer).GenerateVectoComponent(data)
 			export.Save(Path.Combine(dialog.FileName, data.ModelName + ".xml"))
 		Else
-			Dim export As XDocument = New XMLEngineeringWriter(_gbxFile, True, data.Vendor).GenerateVectoComponent(data)
+			Dim export As XDocument = New XMLEngineeringWriter(_gbxFile, True, data.Manufacturer).GenerateVectoComponent(data)
 			export.Save(Path.Combine(dialog.FileName, data.ModelName + ".xml"))
 		End If
 	End Sub
diff --git a/VECTO/GUI/MainForm.vb b/VECTO/GUI/MainForm.vb
index ee13f693de..962da79881 100644
--- a/VECTO/GUI/MainForm.vb
+++ b/VECTO/GUI/MainForm.vb
@@ -1012,7 +1012,7 @@ lbFound:
 							Case XMLNames.VectoInputEngineering
 								input = New XMLEngineeringInputDataProvider(jobFile, True)
 							Case XMLNames.VectoInputDeclaration
-								input = New XMLInputDataProvider(XmlReader.Create(jobFile), True)
+								input = New XMLDeclarationInputDataProvider(XmlReader.Create(jobFile), True)
 						End Select
 				End Select
 
@@ -2002,7 +2002,7 @@ Lb1:
 						Case XMLNames.VectoInputEngineering
 							input = New XMLEngineeringInputDataProvider(f, True)
 						Case XMLNames.VectoInputDeclaration
-							input = New XMLInputDataProvider(XmlReader.Create(f), True)
+							input = New XMLDeclarationInputDataProvider(XmlReader.Create(f), True)
 					End Select
 			End Select
 
diff --git a/VECTO/GUI/VectoJobForm.vb b/VECTO/GUI/VectoJobForm.vb
index 1fc4d1f33c..c1479b73db 100644
--- a/VECTO/GUI/VectoJobForm.vb
+++ b/VECTO/GUI/VectoJobForm.vb
@@ -1168,7 +1168,7 @@ lbDlog:
 
 		If gearbox Is Nothing Then Return
 
-		TbGbxTxt.Text = String.Format("{0}-Speed {1} {2}", gearbox.Gears.Count, gearbox.Type.ShortName(), gearbox.ModelName)
+		TbGbxTxt.Text = String.Format("{0}-Speed {1} {2}", gearbox.Gears.Count, gearbox.Type.ShortName(), gearbox.Model)
 
 		If Cfg.DeclMode Then
 			For i = 1 To gearbox.Gears.Count
@@ -1289,7 +1289,7 @@ lbDlog:
 
 
 		TbEngTxt.Text = String.Format("{0} l {1} kw {2}", (engine.Displacement.Value() * 1000).ToString("0.0"),
-									pmax.ToString("#"), engine.ModelName)
+									pmax.ToString("#"), engine.Model)
 
 		Dim fuelConsumptionMap As FuelConsumptionMap = FuelConsumptionMapReader.Create(engine.FuelConsumptionMap)
 
diff --git a/VECTO/GUI/VehicleForm.vb b/VECTO/GUI/VehicleForm.vb
index 5d455b6516..65d471575d 100644
--- a/VECTO/GUI/VehicleForm.vb
+++ b/VECTO/GUI/VehicleForm.vb
@@ -325,6 +325,7 @@ Public Class VehicleForm
 		Dim inputData As IEngineeringInputDataProvider = TryCast(JSONInputDataFactory.ReadComponentData(file),
 																IEngineeringInputDataProvider)
 		Dim vehicle As IVehicleEngineeringInputData = inputData.VehicleInputData
+		Dim airdrag As IAirdragEngineeringInputData = inputData.AirdragInputData
 		Dim retarder As IRetarderInputData = inputData.RetarderInputData
 		Dim angledrive As IAngledriveInputData = inputData.AngledriveInputData
 		Dim pto As IPTOTransmissionInputData = inputData.PTOTransmissionInputData
@@ -346,14 +347,14 @@ Public Class VehicleForm
 		CbAxleConfig.SelectedValue = vehicle.AxleConfiguration
 		TbMassMass.Text = (vehicle.GrossVehicleMassRating.Value()/1000).ToGUIFormat()
 
-		TbMass.Text = vehicle.CurbWeightChassis.ToGUIFormat()
-		TbMassExtra.Text = vehicle.CurbWeightExtra.ToGUIFormat()
+		TbMass.Text = vehicle.CurbMassChassis.ToGUIFormat()
+		TbMassExtra.Text = vehicle.CurbMassExtra.ToGUIFormat()
 		TbLoad.Text = vehicle.Loading.ToGUIFormat()
 		TBrdyn.Text = (vehicle.DynamicTyreRadius.Value()*1000).ToGUIFormat()
 
-		CbCdMode.SelectedValue = vehicle.CrossWindCorrectionMode
+		CbCdMode.SelectedValue = airdrag.CrossWindCorrectionMode
 		TbCdFile.Text =
-			If(vehicle.CrosswindCorrectionMap Is Nothing, "", GetRelativePath(vehicle.CrosswindCorrectionMap.Source, basePath))
+			If(airdrag.CrosswindCorrectionMap Is Nothing, "", GetRelativePath(airdrag.CrosswindCorrectionMap.Source, basePath))
 
 		CbRtType.SelectedValue = retarder.Type
 		TbRtRatio.Text = retarder.Ratio.ToGUIFormat()
@@ -381,7 +382,7 @@ Public Class VehicleForm
 
 		'TbMassExtra.Text = veh.MassExtra.ToGUIFormat()
 
-		TBcdA.Text = vehicle.AirDragArea.ToGUIFormat()
+		TBcdA.Text = airdrag.AirDragArea.ToGUIFormat()
 
 		cbPTOType.SelectedValue = pto.PTOTransmissionType
 		tbPTOLossMap.Text = If(pto.PTOLossMap Is Nothing, "", GetRelativePath(pto.PTOLossMap.Source, basePath))
diff --git a/VECTO/Input Files/Engine.vb b/VECTO/Input Files/Engine.vb
index 063053471f..286919a19b 100644
--- a/VECTO/Input Files/Engine.vb	
+++ b/VECTO/Input Files/Engine.vb	
@@ -280,7 +280,7 @@ Public Class Engine
 		End Get
 	End Property
 
-	Public ReadOnly Property Vendor As String Implements IComponentInputData.Vendor
+	Public ReadOnly Property Manufacturer As String Implements IComponentInputData.Manufacturer
 		Get
 			Return "N.A." ' TODO: MQ 20160919
 		End Get
@@ -298,12 +298,18 @@ Public Class Engine
 		End Get
 	End Property
 
-	Public ReadOnly Property TypeId As String Implements IComponentInputData.TypeId
+	Public ReadOnly Property TechnicalReportId As String Implements IComponentInputData.TechnicalReportId
 		Get
 			Return "N.A." ' Todo: MQ 20160919
 		End Get
 	End Property
 
+	Public ReadOnly Property CertificationNumber As String Implements IComponentInputData.CertificationNumber
+		Get
+			Return "N.A."
+		End Get
+	End Property
+
 	Public ReadOnly Property DigestValue As String Implements IComponentInputData.DigestValue
 		Get
 			Return ""
@@ -316,7 +322,7 @@ Public Class Engine
 		End Get
 	End Property
 
-	Public ReadOnly Property IComponentInputData_ModelName As String Implements IComponentInputData.ModelName
+	Public ReadOnly Property Model As String Implements IComponentInputData.Model
 		Get
 			Return ModelName
 		End Get
diff --git a/VECTO/Input Files/Gearbox.vb b/VECTO/Input Files/Gearbox.vb
index 782b1a863d..71f2eb2da3 100644
--- a/VECTO/Input Files/Gearbox.vb	
+++ b/VECTO/Input Files/Gearbox.vb	
@@ -283,7 +283,7 @@ Public Class Gearbox
 		End Get
 	End Property
 
-	Public ReadOnly Property Vendor As String Implements IComponentInputData.Vendor
+	Public ReadOnly Property Manufacturer As String Implements IComponentInputData.Manufacturer
 		Get
 			Return "N.A."  ' Todo MQ 20160915
 		End Get
@@ -301,12 +301,18 @@ Public Class Gearbox
 		End Get
 	End Property
 
-	Public ReadOnly Property TypeId As String Implements IComponentInputData.TypeId
+	Public ReadOnly Property TechnicalReportId As String Implements IComponentInputData.TechnicalReportId
 		Get
 			Return "N.A." ' todo MQ 20160915
 		End Get
 	End Property
 
+	Public ReadOnly Property CertificationNumber As String Implements IComponentInputData.CertificationNumber
+		Get
+			Return "N.A."
+		End Get
+	End Property
+
 	Public ReadOnly Property DigestValue As String Implements IComponentInputData.DigestValue
 		Get
 			Return ""
@@ -319,7 +325,7 @@ Public Class Gearbox
 		End Get
 	End Property
 
-	Public ReadOnly Property IComponentInputData_ModelName As String Implements IComponentInputData.ModelName
+	Public ReadOnly Property Model As String Implements IComponentInputData.Model
 		Get
 			Return ModelName
 		End Get
@@ -458,7 +464,6 @@ Public Class Gearbox
 	End Property
 
 
-
 	Public ReadOnly Property IGearboxEngineeringInputData_UpshiftMinAcceleration As MeterPerSquareSecond _
 		Implements IGearboxEngineeringInputData.UpshiftMinAcceleration
 		Get
diff --git a/VECTO/Input Files/VectoJob.vb b/VECTO/Input Files/VectoJob.vb
index 4f02fa7509..d37a864d67 100644
--- a/VECTO/Input Files/VectoJob.vb	
+++ b/VECTO/Input Files/VectoJob.vb	
@@ -32,8 +32,8 @@ Imports TUGraz.VectoCore.Utils
 
 <CustomValidation(GetType(VectoJob), "ValidateJob")>
 Public Class VectoJob
-	Implements IEngineeringInputDataProvider, IDeclarationInputDataProvider, IEngineeringJobInputData,
-				IDeclarationJobInputData, IDriverEngineeringInputData, IDriverDeclarationInputData, IAuxiliariesEngineeringInputData,
+	Implements IEngineeringInputDataProvider, IDeclarationInputDataProvider, IEngineeringJobInputData, 
+				IDeclarationJobInputData, IDriverEngineeringInputData, IDriverDeclarationInputData, IAuxiliariesEngineeringInputData, 
 				IAuxiliariesDeclarationInputData
 
 	'AA-TB
@@ -444,6 +444,21 @@ Public Class VectoJob
 		End Get
 	End Property
 
+	Public ReadOnly Property IDeclarationInputDataProvider_AirdragInputData As IAirdragDeclarationInputData _
+		Implements IDeclarationInputDataProvider.AirdragInputData
+		Get
+			Return AirdragInputData
+		End Get
+	End Property
+
+	Public ReadOnly Property AirdragInputData As IAirdragEngineeringInputData _
+		Implements IEngineeringInputDataProvider.AirdragInputData
+		Get
+			If Not File.Exists(_vehicleFile.FullPath) Then Return Nothing
+			Return New JSONComponentInputData(_vehicleFile.FullPath).AirdragInputData
+		End Get
+	End Property
+
 
 	Public Function IDeclarationInputDataProvider_JobInputData() As IDeclarationJobInputData _
 		Implements IDeclarationInputDataProvider.JobInputData
diff --git a/VECTO/Input Files/Vehicle.vb b/VECTO/Input Files/Vehicle.vb
index 6385f90c40..6fc311dcb5 100644
--- a/VECTO/Input Files/Vehicle.vb	
+++ b/VECTO/Input Files/Vehicle.vb	
@@ -27,7 +27,7 @@ Imports TUGraz.VectoCore.Utils
 <CustomValidation(GetType(Vehicle), "ValidateVehicle")>
 Public Class Vehicle
 	Implements IVehicleEngineeringInputData, IVehicleDeclarationInputData, IRetarderInputData, IPTOTransmissionInputData,
-				IAngledriveInputData
+				IAngledriveInputData, IAirdragEngineeringInputData
 
 	Private _filePath As String
 	Private _path As String
@@ -106,14 +106,14 @@ Public Class Vehicle
 			If mode = ExecutionMode.Declaration Then
 				Dim doa As DeclarationDataAdapter = New DeclarationDataAdapter()
 				Dim segment As Segment = DeclarationData.Segments.Lookup(vehicle.VehicleCategory, vehicle.AxleConfiguration,
-																		vehicle.GrossVehicleMassRating, vehicle.CurbWeightChassis)
-				vehicleData = doa.CreateVehicleData(vehicle, segment.Missions.First(),
+																		vehicle.GrossVehicleMassRating, vehicle.CurbMassChassis)
+				vehicleData = doa.CreateVehicleData(vehicle, vehicle, segment.Missions.First(),
 													segment.Missions.First().Loadings.First().Value, segment.VehicleHeight)
 				retarderData = doa.CreateRetarderData(vehicle)
 				angledriveData = doa.CreateAngledriveData(vehicle, False)
 			Else
 				Dim doa As EngineeringDataAdapter = New EngineeringDataAdapter()
-				vehicleData = doa.CreateVehicleData(vehicle)
+				vehicleData = doa.CreateVehicleData(vehicle, vehicle)
 				retarderData = doa.CreateRetarderData(vehicle)
 				angledriveData = doa.CreateAngledriveData(vehicle, True)
 				ptoData = doa.CreatePTOTransmissionData(vehicle)
@@ -209,7 +209,7 @@ Public Class Vehicle
 
 		Try
 			Dim writer As JSONFileWriter = JSONFileWriter.Instance
-			writer.SaveVehicle(Me, Me, Me, Me, _filePath)
+			writer.SaveVehicle(Me, Me, Me, Me, Me, _filePath)
 		Catch ex As Exception
 			MsgBox("Failed to save Vehicle file: " + ex.Message)
 			Return False
@@ -257,13 +257,13 @@ Public Class Vehicle
 		End Get
 	End Property
 
-	Public ReadOnly Property Vendor As String Implements IComponentInputData.Vendor
+	Public ReadOnly Property Manufacturer As String Implements IComponentInputData.Manufacturer
 		Get
 			Return "N.A."  ' TODO: MQ  20160908
 		End Get
 	End Property
 
-	Public ReadOnly Property ModelName As String Implements IComponentInputData.ModelName
+	Public ReadOnly Property Model As String Implements IComponentInputData.Model
 		Get
 			Return "N.A."  ' Todo: MQ 20160908
 		End Get
@@ -281,12 +281,18 @@ Public Class Vehicle
 		End Get
 	End Property
 
-	Public ReadOnly Property TypeId As String Implements IComponentInputData.TypeId
+	Public ReadOnly Property TechnicalReportId As String Implements IComponentInputData.TechnicalReportId
 		Get
 			Return "N.A."	' ToDo: MQ 20160908
 		End Get
 	End Property
 
+	Public ReadOnly Property CertificationNumber As String Implements IComponentInputData.CertificationNumber
+		Get
+			Return "N.A."	'ToDo
+		End Get
+	End Property
+
 	Public ReadOnly Property DigestValue As String Implements IComponentInputData.DigestValue
 		Get
 			Return ""
@@ -313,36 +319,36 @@ Public Class Vehicle
 		End Get
 	End Property
 
-	Public ReadOnly Property CurbWeightChassis As Kilogram Implements IVehicleDeclarationInputData.CurbWeightChassis
+	Public ReadOnly Property CurbMassChassis As Kilogram Implements IVehicleDeclarationInputData.CurbMassChassis
 		Get
-			Return Mass.SI (Of Kilogram)()
+			Return Mass.SI(Of Kilogram)()
 		End Get
 	End Property
 
 	Public ReadOnly Property GrossVehicleMassRating As Kilogram _
 		Implements IVehicleDeclarationInputData.GrossVehicleMassRating
 		Get
-			Return MassMax.SI().Ton.Cast (Of Kilogram)()
+			Return MassMax.SI().Ton.Cast(Of Kilogram)()
 		End Get
 	End Property
 
-	Public ReadOnly Property AirDragArea As SquareMeter Implements IVehicleDeclarationInputData.AirDragArea
+	Public ReadOnly Property AirDragArea As SquareMeter Implements IAirdragEngineeringInputData.AirDragArea
 		Get
-			Return CdA0.SI (Of SquareMeter)()
+			Return CdA0.SI(Of SquareMeter)()
 		End Get
 	End Property
 
 	Public ReadOnly Property IVehicleEngineeringInputData_Axles As IList(Of IAxleEngineeringInputData) _
 		Implements IVehicleEngineeringInputData.Axles
 		Get
-			Return AxleWheels().Cast (Of IAxleEngineeringInputData)().ToList()
+			Return AxleWheels().Cast(Of IAxleEngineeringInputData)().ToList()
 		End Get
 	End Property
 
 	Public ReadOnly Property IVehicleDeclarationInputData_Axles As IList(Of IAxleDeclarationInputData) _
 		Implements IVehicleDeclarationInputData.Axles
 		Get
-			Return AxleWheels().Cast (Of IAxleDeclarationInputData)().ToList()
+			Return AxleWheels().Cast(Of IAxleDeclarationInputData)().ToList()
 		End Get
 	End Property
 
@@ -350,30 +356,30 @@ Public Class Vehicle
 		Return Axles.Select(Function(axle) New AxleInputData With {
 								.SourceType = DataSourceType.JSONFile,
 								.Source = FilePath,
-								.Inertia = axle.Inertia.SI (Of KilogramSquareMeter)(),
+								.Inertia = axle.Inertia.SI(Of KilogramSquareMeter)(),
 								.Wheels = axle.Wheels,
 								.AxleWeightShare = axle.Share,
 								.TwinTyres = axle.TwinTire,
 								.RollResistanceCoefficient = axle.RRC,
-								.TyreTestLoad = axle.FzISO.SI (Of Newton)()
+								.TyreTestLoad = axle.FzISO.SI(Of Newton)()
 								})
 	End Function
 
-	Public ReadOnly Property CurbWeightExtra As Kilogram Implements IVehicleEngineeringInputData.CurbWeightExtra
+	Public ReadOnly Property CurbMassExtra As Kilogram Implements IVehicleEngineeringInputData.CurbMassExtra
 		Get
-			Return MassExtra.SI (Of Kilogram)()
+			Return MassExtra.SI(Of Kilogram)()
 		End Get
 	End Property
 
 	Public ReadOnly Property CrosswindCorrectionMap As TableData _
-		Implements IVehicleEngineeringInputData.CrosswindCorrectionMap
+		Implements IAirdragEngineeringInputData.CrosswindCorrectionMap
 		Get
 			Return VectoCSVFile.Read(CrossWindCorrectionFile.FullPath)
 		End Get
 	End Property
 
 	Public ReadOnly Property IVehicleEngineeringInputData_CrossWindCorrectionMode As CrossWindCorrectionMode _
-		Implements IVehicleEngineeringInputData.CrossWindCorrectionMode
+		Implements IAirdragEngineeringInputData.CrossWindCorrectionMode
 		Get
 			Return CrossWindCorrectionMode
 		End Get
@@ -382,14 +388,14 @@ Public Class Vehicle
 	Public ReadOnly Property IVehicleEngineeringInputData_DynamicTyreRadius As Meter _
 		Implements IVehicleEngineeringInputData.DynamicTyreRadius
 		Get
-			Return DynamicTyreRadius.SI().Milli.Meter.Cast (Of Meter)()
+			Return DynamicTyreRadius.SI().Milli.Meter.Cast(Of Meter)()
 		End Get
 	End Property
 
 	Public ReadOnly Property IVehicleEngineeringInputData_Loading As Kilogram _
 		Implements IVehicleEngineeringInputData.Loading
 		Get
-			Return Loading.SI (Of Kilogram)()
+			Return Loading.SI(Of Kilogram)()
 		End Get
 	End Property
 
@@ -434,7 +440,7 @@ Public Class Vehicle
 
 	Public ReadOnly Property Efficiency As Double Implements IAngledriveInputData.Efficiency
 		Get
-			Return If(IsNumeric(AngledriveLossMapFile.OriginalPath), AngledriveLossMapFile.OriginalPath.ToDouble(), - 1.0)
+			Return If(IsNumeric(AngledriveLossMapFile.OriginalPath), AngledriveLossMapFile.OriginalPath.ToDouble(), -1.0)
 		End Get
 	End Property
 
diff --git a/VECTO/OutputData/JSONFileWriter.vb b/VECTO/OutputData/JSONFileWriter.vb
index 83dd11daf1..cbd8152566 100644
--- a/VECTO/OutputData/JSONFileWriter.vb
+++ b/VECTO/OutputData/JSONFileWriter.vb
@@ -39,7 +39,7 @@ Public Class JSONFileWriter
 
 		body.Add("SavedInDeclMode", Cfg.DeclMode)
 
-		body.Add("ModelName", eng.ModelName)
+		body.Add("ModelName", eng.Model)
 
 		body.Add("Displacement", eng.Displacement.ConvertTo().Cubic.Centi.Meter.Value().ToString())
 		body.Add("IdlingSpeed", eng.IdleSpeed.AsRPM)
@@ -79,7 +79,7 @@ Public Class JSONFileWriter
 		Dim body As Dictionary(Of String, Object) = New Dictionary(Of String, Object)
 
 		body.Add(JsonKeys.SavedInDeclMode, Cfg.DeclMode)
-		body.Add(JsonKeys.Gearbox_ModelName, gbx.ModelName)
+		body.Add(JsonKeys.Gearbox_ModelName, gbx.Model)
 		body.Add(JsonKeys.Gearbox_Inertia, gbx.Inertia.Value())
 		body.Add(JsonKeys.Gearbox_TractionInterruption, gbx.TractionInterruption.Value())
 
@@ -142,7 +142,8 @@ Public Class JSONFileWriter
 		WriteFile(header, body, filename)
 	End Sub
 
-	Public Sub SaveVehicle(vehicle As IVehicleEngineeringInputData, retarder As IRetarderInputData,
+	Public Sub SaveVehicle(vehicle As IVehicleEngineeringInputData, airdrag As IAirdragEngineeringInputData,
+							retarder As IRetarderInputData,
 							pto As IPTOTransmissionInputData, angledrive As IAngledriveInputData, filename As String) _
 		Implements IOutputFileWriter.SaveVehicle
 		Dim basePath As String = Path.GetDirectoryName(filename)
@@ -189,17 +190,17 @@ Public Class JSONFileWriter
 		Dim body As Dictionary(Of String, Object) = New Dictionary(Of String, Object) From {
 				{"SavedInDeclMode", Cfg.DeclMode},
 				{"VehCat", vehicle.VehicleCategory.ToString()},
-				{"CurbWeight", vehicle.CurbWeightChassis.Value()},
-				{"CurbWeightExtra", vehicle.CurbWeightExtra.Value()},
+				{"CurbWeight", vehicle.CurbMassChassis.Value()},
+				{"CurbWeightExtra", vehicle.CurbMassExtra.Value()},
 				{"Loading", vehicle.Loading.Value()},
 				{"MassMax", vehicle.GrossVehicleMassRating.ConvertTo().Ton.Value()},
-				{"CdA", vehicle.AirDragArea.Value()},
+				{"CdA", airdrag.AirDragArea.Value()},
 				{"rdyn", vehicle.DynamicTyreRadius.ConvertTo().Milli.Meter.Value()},
-				{"CdCorrMode", vehicle.CrossWindCorrectionMode.GetName()},
+				{"CdCorrMode", airdrag.CrossWindCorrectionMode.GetName()},
 				{"CdCorrFile",
-				If((vehicle.CrossWindCorrectionMode = CrossWindCorrectionMode.SpeedDependentCorrectionFactor OrElse
-					vehicle.CrossWindCorrectionMode = CrossWindCorrectionMode.VAirBetaLookupTable) AndAlso
-					Not vehicle.CrosswindCorrectionMap Is Nothing, GetRelativePath(vehicle.CrosswindCorrectionMap.Source, basePath),
+				If((airdrag.CrossWindCorrectionMode = CrossWindCorrectionMode.SpeedDependentCorrectionFactor OrElse
+					airdrag.CrossWindCorrectionMode = CrossWindCorrectionMode.VAirBetaLookupTable) AndAlso
+					Not airdrag.CrosswindCorrectionMap Is Nothing, GetRelativePath(airdrag.CrosswindCorrectionMap.Source, basePath),
 					"")
 				},
 				{"Retarder", retarderOut},
diff --git a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
index 3b238b0660..bcd154415f 100644
--- a/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
+++ b/VectoCommon/VectoCommon/InputData/DeclarationInputData.cs
@@ -52,15 +52,17 @@ namespace TUGraz.VectoCommon.InputData
 
 		bool SavedInDeclarationMode { get; }
 
-		string Vendor { get; }
+		string Manufacturer { get; }
 
-		string ModelName { get; }
+		string Model { get; }
 
 		string Creator { get; }
 
 		string Date { get; }
 
-		string TypeId { get; }
+		string TechnicalReportId { get; }
+
+		string CertificationNumber { get; }
 
 		string DigestValue { get; }
 
@@ -85,7 +87,7 @@ namespace TUGraz.VectoCommon.InputData
 		/// P038  Curb Weight Vehicle
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		Kilogram CurbWeightChassis { get; }
+		Kilogram CurbMassChassis { get; }
 
 		/// <summary>
 		/// P041  Max. vehicle weight
@@ -93,12 +95,6 @@ namespace TUGraz.VectoCommon.InputData
 		/// </summary>
 		Kilogram GrossVehicleMassRating { get; }
 
-		/// <summary>
-		/// P146, P147  DragCoefficient * Cross Section Area - Rigid
-		/// cf. VECTO Input Parameters.xlsx
-		/// </summary>
-		SquareMeter AirDragArea { get; } // without trailer
-
 		///// <summary>
 		///// P117  Powered axle tyres/rims
 		///// cf. VECTO Input Parameters.xlsx
@@ -113,6 +109,15 @@ namespace TUGraz.VectoCommon.InputData
 		IList<IAxleDeclarationInputData> Axles { get; }
 	}
 
+	public interface IAirdragDeclarationInputData : IComponentInputData
+	{
+		/// <summary>
+		/// P146, P147  DragCoefficient * Cross Section Area - Rigid
+		/// cf. VECTO Input Parameters.xlsx
+		/// </summary>
+		SquareMeter AirDragArea { get; } // without trailer
+	}
+
 	public interface IRetarderInputData : IComponentInputData
 	{
 		/// <summary>
diff --git a/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs b/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs
index c07ce16b17..d8141a8ac3 100644
--- a/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs
+++ b/VectoCommon/VectoCommon/InputData/EngineeringInputData.cs
@@ -58,7 +58,7 @@ namespace TUGraz.VectoCommon.InputData
 		/// P039  Curb Weight Extra Trailer/Body
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
-		Kilogram CurbWeightExtra { get; }
+		Kilogram CurbMassExtra { get; }
 
 		/// <summary>
 		/// P040  Loading
@@ -78,7 +78,10 @@ namespace TUGraz.VectoCommon.InputData
 		/// cf. VECTO Input Parameters.xlsx
 		/// </summary>
 		Meter DynamicTyreRadius { get; }
+	}
 
+	public interface IAirdragEngineeringInputData : IAirdragDeclarationInputData
+	{
 		/// <summary>
 		/// P050 - Cross Wind Correction Mode
 		/// cf. VECTO Input Parameters.xlsx
diff --git a/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs b/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs
index 5f60f23ffe..47c7f1b46c 100644
--- a/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs
+++ b/VectoCommon/VectoCommon/InputData/IInputDataProvider.cs
@@ -39,6 +39,8 @@ namespace TUGraz.VectoCommon.InputData
 
 		IVehicleDeclarationInputData VehicleInputData { get; }
 
+		IAirdragDeclarationInputData AirdragInputData { get; }
+
 		IGearboxDeclarationInputData GearboxInputData { get; }
 
 		ITorqueConverterDeclarationInputData TorqueConverterInputData { get; }
@@ -62,6 +64,8 @@ namespace TUGraz.VectoCommon.InputData
 
 		IVehicleEngineeringInputData VehicleInputData { get; }
 
+		IAirdragEngineeringInputData AirdragInputData { get; }
+
 		IGearboxEngineeringInputData GearboxInputData { get; }
 
 		ITorqueConverterEngineeringInputData TorqueConverterInputData { get; }
diff --git a/VectoCommon/VectoCommon/OutputData/IOutputFileWriter.cs b/VectoCommon/VectoCommon/OutputData/IOutputFileWriter.cs
index 66a43129c0..839d770303 100644
--- a/VectoCommon/VectoCommon/OutputData/IOutputFileWriter.cs
+++ b/VectoCommon/VectoCommon/OutputData/IOutputFileWriter.cs
@@ -40,7 +40,8 @@ namespace TUGraz.VectoCommon.OutputData
 
 		void SaveGearbox(IGearboxEngineeringInputData gbx, IAxleGearInputData axl, string filename);
 
-		void SaveVehicle(IVehicleEngineeringInputData vehicle, IRetarderInputData retarder,
+		void SaveVehicle(IVehicleEngineeringInputData vehicle, IAirdragEngineeringInputData airdrag,
+			IRetarderInputData retarder,
 			IPTOTransmissionInputData pto, IAngledriveInputData angledrive, string filename);
 
 		void SaveJob(IEngineeringInputDataProvider input, string filename);
diff --git a/VectoConsole/Program.cs b/VectoConsole/Program.cs
index 3ec189ce53..460135bfc4 100644
--- a/VectoConsole/Program.cs
+++ b/VectoConsole/Program.cs
@@ -208,7 +208,7 @@ Examples:
 									dataProvider = new XMLEngineeringInputDataProvider(file, true);
 									break;
 								case "VectoInputDeclaration":
-									dataProvider = new XMLInputDataProvider(XmlReader.Create(file), true);
+									dataProvider = new XMLDeclarationInputDataProvider(XmlReader.Create(file), true);
 									break;
 							}
 							break;
diff --git a/VectoCore/VectoCore/Configuration/Constants.cs b/VectoCore/VectoCore/Configuration/Constants.cs
index c5c0dc7f21..7019606256 100644
--- a/VectoCore/VectoCore/Configuration/Constants.cs
+++ b/VectoCore/VectoCore/Configuration/Constants.cs
@@ -175,7 +175,7 @@ namespace TUGraz.VectoCore.Configuration
 
 		public static class XML
 		{
-			public const string XSDDeclarationVersion = "0.6";
+			public const string XSDDeclarationVersion = "0.8";
 			public const string XSDEngineeringVersion = "0.7";
 
 			public const string DeclarationNSPrefix = "vdd";
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
index d5dfeb04c6..2df6ff7a50 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONComponentInputData.cs
@@ -47,6 +47,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 		protected IVehicleEngineeringInputData VehicleData;
 		protected IRetarderInputData Retarder;
 		protected IPTOTransmissionInputData PTOTransmission;
+		private IAirdragEngineeringInputData AirdragData;
 
 
 		public JSONComponentInputData(string filename, bool tolerateMissing = false)
@@ -66,6 +67,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			}
 			tmp.Switch()
 				.If<IVehicleEngineeringInputData>(c => VehicleData = c)
+				.If<IAirdragEngineeringInputData>(c => AirdragData = c)
 				.If<IEngineEngineeringInputData>(c => Engine = c)
 				.If<IGearboxEngineeringInputData>(c => Gearbox = c)
 				.If<IAxleGearInputData>(c => AxleGear = c)
@@ -87,6 +89,16 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return VehicleData; }
 		}
 
+		IAirdragDeclarationInputData IDeclarationInputDataProvider.AirdragInputData
+		{
+			get { return AirdragInputData; }
+		}
+
+		public IAirdragEngineeringInputData AirdragInputData
+		{
+			get { return AirdragData; }
+		}
+
 		IGearboxDeclarationInputData IDeclarationInputDataProvider.GearboxInputData
 		{
 			get { return GearboxInputData; }
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONEngineData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONEngineData.cs
index 0d08e8f3e9..af86cfd6c0 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONEngineData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONEngineData.cs
@@ -86,8 +86,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		public virtual TableData FuelConsumptionMap
 		{
-			get
-			{
+			get {
 				try {
 					return ReadTableData(Body.GetEx<string>(JsonKeys.Engine_FuelConsumptionMap), "FuelConsumptionMap");
 				} catch (Exception) {
@@ -103,8 +102,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		public virtual TableData FullLoadCurve
 		{
-			get
-			{
+			get {
 				try {
 					return ReadTableData(Body.GetEx<string>(JsonKeys.Engine_FullLoadCurveFile), "FullLoadCurve");
 				} catch (Exception) {
@@ -125,8 +123,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		public virtual double WHTCEngineering
 		{
-			get
-			{
+			get {
 				if (Body["WHTC-Engineering"] == null) {
 					return 1;
 				}
@@ -151,8 +148,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		public double ColdHotBalancingFactor
 		{
-			get
-			{
+			get {
 				if (Body["ColdHotBalancingFactor"] == null) {
 					return 1.0;
 				}
@@ -160,12 +156,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			}
 		}
 
-		public string Vendor
+		public string Manufacturer
 		{
 			get { return "N/A"; }
 		}
 
-		public string ModelName
+		public string Model
 		{
 			get { return Body.GetEx<string>(JsonKeys.Engine_ModelName); }
 		}
@@ -180,7 +176,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return "N/A"; }
 		}
 
-		public string TypeId
+		public string TechnicalReportId
+		{
+			get { return "N/A"; }
+		}
+
+		public string CertificationNumber
 		{
 			get { return "N/A"; }
 		}
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONGearboxData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONGearboxData.cs
index 87ef1ef1b0..16580b2765 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONGearboxData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONGearboxData.cs
@@ -461,12 +461,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		#endregion
 
-		public string Vendor
+		public string Manufacturer
 		{
 			get { return "N/A"; }
 		}
 
-		public string ModelName
+		public string Model
 		{
 			get { return Body.GetEx<string>(JsonKeys.Gearbox_ModelName); }
 		}
@@ -481,7 +481,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return "N/A"; }
 		}
 
-		public string TypeId
+		public string TechnicalReportId
+		{
+			get { return "N/A"; }
+		}
+
+		public string CertificationNumber
 		{
 			get { return "N/A"; }
 		}
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
index a7ef4a9f44..4d9ca1e7f0 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONInputData.cs
@@ -135,6 +135,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 		protected IPTOTransmissionInputData PTOTransmission;
 
 		private readonly string _jobname;
+		private IAirdragEngineeringInputData AirdragData;
 
 		public JSONInputDataV2(JObject data, string filename, bool tolerateMissing = false)
 			: base(data, filename, tolerateMissing)
@@ -155,6 +156,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			Angledrive = VehicleData as IAngledriveInputData;
 			Retarder = VehicleData as IRetarderInputData;
 			PTOTransmission = VehicleData as IPTOTransmissionInputData;
+			AirdragData = VehicleData as IAirdragEngineeringInputData;
 		}
 
 		private IVehicleEngineeringInputData ReadVehicle()
@@ -218,6 +220,16 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return VehicleInputData; }
 		}
 
+		IAirdragDeclarationInputData IDeclarationInputDataProvider.AirdragInputData
+		{
+			get { return AirdragInputData; }
+		}
+
+		public IAirdragEngineeringInputData AirdragInputData
+		{
+			get { return AirdragData; }
+		}
+
 		IGearboxDeclarationInputData IDeclarationInputDataProvider.GearboxInputData
 		{
 			get { return GearboxInputData; }
diff --git a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
index f01db54b3c..3a4de9a8f6 100644
--- a/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/JSON/JSONVehicleData.cs
@@ -42,7 +42,7 @@ using TUGraz.VectoCore.InputData.Impl;
 namespace TUGraz.VectoCore.InputData.FileIO.JSON
 {
 	public class JSONVehicleDataV7 : JSONFile, IVehicleEngineeringInputData, IRetarderInputData, IAngledriveInputData,
-		IPTOTransmissionInputData
+		IPTOTransmissionInputData, IAirdragEngineeringInputData
 	{
 		public JSONVehicleDataV7(JObject data, string fileName, bool tolerateMissing = false)
 			: base(data, fileName, tolerateMissing) {}
@@ -51,19 +51,18 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		public VehicleCategory VehicleCategory
 		{
-			get
-			{
+			get {
 				return
 					(VehicleCategory)Enum.Parse(typeof(VehicleCategory), Body[JsonKeys.Vehicle_VehicleCategory].Value<string>(), true);
 			}
 		}
 
-		public virtual Kilogram CurbWeightChassis
+		public virtual Kilogram CurbMassChassis
 		{
 			get { return Body.GetEx<double>(JsonKeys.Vehicle_CurbWeight).SI<Kilogram>(); }
 		}
 
-		public virtual Kilogram CurbWeightExtra
+		public virtual Kilogram CurbMassExtra
 		{
 			get { return Body.GetEx<double>(JsonKeys.Vehicle_CurbWeightExtra).SI<Kilogram>(); }
 		}
@@ -83,20 +82,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return Body.GetEx<double>(JsonKeys.Vehicle_DynamicTyreRadius).SI().Milli.Meter.Cast<Meter>(); }
 		}
 
-		public virtual SquareMeter AirDragArea
-		{
-			get { return Body.GetEx<double>(JsonKeys.Vehicle_DragCoefficient).SI<SquareMeter>(); }
-		}
-
-		public virtual CrossWindCorrectionMode CrossWindCorrectionMode
-		{
-			get { return CrossWindCorrectionModeHelper.Parse(Body.GetEx<string>("CdCorrMode")); }
-		}
-
 		public virtual AxleConfiguration AxleConfiguration
 		{
-			get
-			{
+			get {
 				return
 					AxleConfigurationHelper.Parse(
 						Body.GetEx(JsonKeys.Vehicle_AxleConfiguration).GetEx<string>(JsonKeys.Vehicle_AxleConfiguration_Type));
@@ -129,17 +117,31 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 					});
 		}
 
+		#endregion
+
+		#region Airdrag
+
+		public virtual SquareMeter AirDragArea
+		{
+			get { return Body.GetEx<double>(JsonKeys.Vehicle_DragCoefficient).SI<SquareMeter>(); }
+		}
+
+		public virtual CrossWindCorrectionMode CrossWindCorrectionMode
+		{
+			get { return CrossWindCorrectionModeHelper.Parse(Body.GetEx<string>("CdCorrMode")); }
+		}
+
 		public virtual TableData CrosswindCorrectionMap
 		{
-			get
-			{
+			get {
 				try {
 					return ReadTableData(Body.GetEx<string>("CdCorrFile"), "CrosswindCorrection File");
 				} catch (Exception) {
 					if (!TolerateMissing) {
 						throw;
 					}
-					return new TableData(Path.Combine(BasePath, Body["CdCorrFile"].ToString()) + MissingFileSuffix, DataSourceType.Missing);
+					return new TableData(Path.Combine(BasePath, Body["CdCorrFile"].ToString()) + MissingFileSuffix,
+						DataSourceType.Missing);
 				}
 			}
 		}
@@ -150,8 +152,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		RetarderType IRetarderInputData.Type
 		{
-			get
-			{
+			get {
 				var retarderType = Body.GetEx(JsonKeys.Vehicle_Retarder).GetEx<string>(JsonKeys.Vehicle_Retarder_Type);
 				return RetarderTypeHelper.Parse(retarderType);
 			}
@@ -164,8 +165,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		TableData IRetarderInputData.LossMap
 		{
-			get
-			{
+			get {
 				if (Body[JsonKeys.Vehicle_Retarder] != null &&
 					Body.GetEx(JsonKeys.Vehicle_Retarder)[JsonKeys.Vehicle_Retarder_LossMapFile] != null) {
 					var lossmapFile = Body.GetEx(JsonKeys.Vehicle_Retarder)[JsonKeys.Vehicle_Retarder_LossMapFile];
@@ -178,7 +178,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 						if (!TolerateMissing) {
 							throw;
 						}
-						return new TableData(Path.Combine(BasePath, lossmapFile.Value<string>()) + MissingFileSuffix, DataSourceType.Missing);
+						return new TableData(Path.Combine(BasePath, lossmapFile.Value<string>()) + MissingFileSuffix,
+							DataSourceType.Missing);
 					}
 				}
 				return null;
@@ -191,8 +192,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		AngledriveType IAngledriveInputData.Type
 		{
-			get
-			{
+			get {
 				var angleDrive = Body[JsonKeys.Vehicle_Angledrive];
 				if (angleDrive == null) {
 					return AngledriveType.None;
@@ -204,8 +204,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		double IAngledriveInputData.Ratio
 		{
-			get
-			{
+			get {
 				var angleDrive = Body[JsonKeys.Vehicle_Angledrive];
 				if (angleDrive == null) {
 					return double.NaN;
@@ -216,8 +215,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		TableData IAngledriveInputData.LossMap
 		{
-			get
-			{
+			get {
 				var angleDrive = Body[JsonKeys.Vehicle_Angledrive];
 				if (angleDrive == null || angleDrive[JsonKeys.Vehicle_Angledrive_LossMapFile] == null) {
 					return null;
@@ -232,7 +230,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 					if (!TolerateMissing) {
 						throw;
 					}
-					return new TableData(Path.Combine(BasePath, lossmapFile.Value<string>()) + MissingFileSuffix, DataSourceType.Missing);
+					return new TableData(Path.Combine(BasePath, lossmapFile.Value<string>()) + MissingFileSuffix,
+						DataSourceType.Missing);
 				}
 			}
 		}
@@ -248,8 +247,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		string IPTOTransmissionInputData.PTOTransmissionType
 		{
-			get
-			{
+			get {
 				var pto = Body[JsonKeys.Vehicle_PTO];
 				if (pto == null) {
 					return "None";
@@ -260,8 +258,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		TableData IPTOTransmissionInputData.PTOLossMap
 		{
-			get
-			{
+			get {
 				var pto = Body[JsonKeys.Vehicle_PTO];
 				if (pto == null || pto[JsonKeys.Vehicle_PTO_LossMapFile] == null) {
 					return null;
@@ -276,15 +273,15 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 					if (!TolerateMissing) {
 						throw;
 					}
-					return new TableData(Path.Combine(BasePath, lossmapFile.Value<string>()) + MissingFileSuffix, DataSourceType.Missing);
+					return new TableData(Path.Combine(BasePath, lossmapFile.Value<string>()) + MissingFileSuffix,
+						DataSourceType.Missing);
 				}
 			}
 		}
 
 		public TableData PTOCycle
 		{
-			get
-			{
+			get {
 				var pto = Body[JsonKeys.Vehicle_PTO];
 				if (pto == null || pto[JsonKeys.Vehicle_PTO_Cycle] == null) {
 					return null;
@@ -306,12 +303,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 
 		#endregion
 
-		public string Vendor
+		public string Manufacturer
 		{
 			get { return "N/A"; }
 		}
 
-		public string ModelName
+		public string Model
 		{
 			get { return "N/A"; }
 		}
@@ -326,7 +323,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.JSON
 			get { return "N/A"; }
 		}
 
-		public string TypeId
+		public string TechnicalReportId
+		{
+			get { return "N/A"; }
+		}
+
+		public string CertificationNumber
 		{
 			get { return "N/A"; }
 		}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/AbstractDeclarationXMLComponentDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/AbstractDeclarationXMLComponentDataProvider.cs
index 06c4749daf..20c5c9dfec 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/AbstractDeclarationXMLComponentDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/AbstractDeclarationXMLComponentDataProvider.cs
@@ -14,7 +14,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 {
 	public abstract class AbstractDeclarationXMLComponentDataProvider
 	{
-		protected readonly XMLInputDataProvider InputData;
+		protected readonly XMLDeclarationInputDataProvider InputData;
 		protected XPathNavigator Navigator;
 
 		protected string XBasePath = "";
@@ -27,7 +27,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 
 		protected AbstractDeclarationXMLComponentDataProvider() {}
 
-		protected AbstractDeclarationXMLComponentDataProvider(XMLInputDataProvider xmlInputDataProvider)
+		protected AbstractDeclarationXMLComponentDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider)
 		{
 			InputData = xmlInputDataProvider;
 			Navigator = xmlInputDataProvider.Document.CreateNavigator();
@@ -53,19 +53,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 			get { return true; }
 		}
 
-		public virtual string Vendor
+		public virtual string Manufacturer
 		{
-			get { return GetElementValue(XMLNames.Component_Vendor); }
+			get { return GetElementValue(XMLNames.Component_Manufacturer); }
 		}
 
-		public virtual string ModelName
+		public virtual string Model
 		{
-			get { return GetElementValue(XMLNames.Component_MakeAndModel); }
+			get { return GetElementValue(XMLNames.Component_Model); }
 		}
 
 		public virtual string Creator
 		{
-			get { return GetElementValue(XMLNames.Component_Creator); }
+			get { return "N.A."; }
 		}
 
 		public virtual string Date
@@ -73,9 +73,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 			get { return GetElementValue(XMLNames.Component_Date); }
 		}
 
-		public virtual string TypeId
+		public virtual string TechnicalReportId
 		{
-			get { return GetElementValue(XMLNames.Component_TypeId); }
+			get { return GetElementValue(XMLNames.Component_TechnicalReportId); }
+		}
+
+		public string CertificationNumber
+		{
+			get { return GetAttributeValue("../", "certificationNumber"); }
 		}
 
 		public virtual string DigestValue
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAirdragDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAirdragDataProvider.cs
new file mode 100644
index 0000000000..4b75142ad6
--- /dev/null
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAirdragDataProvider.cs
@@ -0,0 +1,25 @@
+using System;
+using TUGraz.VectoCommon.InputData;
+using TUGraz.VectoCommon.Utils;
+using TUGraz.VectoCore.Resources;
+
+namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
+{
+	public class XMLDeclarationAirdragDataProvider : AbstractDeclarationXMLComponentDataProvider,
+		IAirdragDeclarationInputData
+	{
+		public XMLDeclarationAirdragDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider)
+			: base(xmlInputDataProvider)
+		{
+			XBasePath = Helper.Query(VehiclePath,
+				XMLNames.Vehicle_Components,
+				XMLNames.Component_AirDrag,
+				XMLNames.ComponentDataWrapper);
+		}
+
+		public SquareMeter AirDragArea
+		{
+			get { return GetDoubleElementValue(XMLNames.AirDrag_DeclaredCdxA).SI<SquareMeter>(); }
+		}
+	}
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAngledriveDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAngledriveDataProvider.cs
index a33a8647ea..d08e38034d 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAngledriveDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAngledriveDataProvider.cs
@@ -8,7 +8,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 {
 	public class XMLDeclarationAngledriveDataProvider : AbstractDeclarationXMLComponentDataProvider, IAngledriveInputData
 	{
-		public XMLDeclarationAngledriveDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationAngledriveDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
 		{
 			XBasePath = Helper.Query(VehiclePath,
 				XMLNames.Vehicle_Components,
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAuxiliaryDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAuxiliaryDataProvider.cs
index 1954b385cd..d2a74f4469 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAuxiliaryDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAuxiliaryDataProvider.cs
@@ -10,7 +10,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 	public class XMLDeclarationAuxiliaryDataProvider : AbstractDeclarationXMLComponentDataProvider,
 		IAuxiliariesDeclarationInputData
 	{
-		public XMLDeclarationAuxiliaryDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationAuxiliaryDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
 		{
 			XBasePath = Helper.Query(VehiclePath,
 				XMLNames.Vehicle_Components,
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAxlegearDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAxlegearDataProvider.cs
index cea2b6445f..b4eedd1136 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAxlegearDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationAxlegearDataProvider.cs
@@ -7,7 +7,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 {
 	public class XMLDeclarationAxlegearDataProvider : AbstractDeclarationXMLComponentDataProvider, IAxleGearInputData
 	{
-		public XMLDeclarationAxlegearDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationAxlegearDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider)
+			: base(xmlInputDataProvider)
 		{
 			XBasePath = Helper.Query(VehiclePath,
 				XMLNames.Vehicle_Components,
@@ -22,8 +23,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 
 		public TableData LossMap
 		{
-			get
-			{
+			get {
 				return ReadTableData(AttributeMappings.TransmissionLossmapMapping,
 					Helper.Query(XMLNames.Axlegear_TorqueLossMap, XMLNames.Axlegear_TorqueLossMap_Entry));
 			}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationDriverDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationDriverDataProvider.cs
index ab2c7c6e60..243bd375ec 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationDriverDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationDriverDataProvider.cs
@@ -10,37 +10,36 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 	public class XMLDeclarationDriverDataProvider : AbstractDeclarationXMLComponentDataProvider,
 		IDriverDeclarationInputData
 	{
-		public XMLDeclarationDriverDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationDriverDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider)
+			: base(xmlInputDataProvider)
 		{
 			XBasePath = VehiclePath;
 		}
 
 		public IStartStopDeclarationInputData StartStop
 		{
-			get
-			{
-				var node =
-					Navigator.SelectSingleNode(Helper.Query(VehiclePath,
-						XMLNames.Vehicle_AdvancedDriverAssist,
-						XMLNames.Vehicle_AdvancedDriverAssist_EngineStartStop,
-						XMLNames.Vehicle_AdvancedDriverAssist_EngineStartStop_Enabled), Manager);
+			get {
+				//var node =
+				//	Navigator.SelectSingleNode(Helper.Query(VehiclePath,
+				//		XMLNames.Vehicle_AdvancedDriverAssist,
+				//		XMLNames.Vehicle_AdvancedDriverAssist_EngineStartStop,
+				//		XMLNames.Vehicle_AdvancedDriverAssist_EngineStartStop_Enabled), Manager);
 				return new StartStopInputData() {
-					Enabled = node != null && XmlConvert.ToBoolean(node.Value)
+					Enabled = false
 				};
 			}
 		}
 
 		public IOverSpeedEcoRollDeclarationInputData OverSpeedEcoRoll
 		{
-			get
-			{
-				var node =
-					Navigator.SelectSingleNode(Helper.Query(VehiclePath,
-						XMLNames.Vehicle_AdvancedDriverAssist,
-						XMLNames.DriverModel_Overspeed,
-						XMLNames.DriverModel_Overspeed_Mode), Manager);
+			get {
+				//var node =
+				//	Navigator.SelectSingleNode(Helper.Query(VehiclePath,
+				//		XMLNames.Vehicle_AdvancedDriverAssist,
+				//		XMLNames.DriverModel_Overspeed,
+				//		XMLNames.DriverModel_Overspeed_Mode), Manager);
 				return new OverSpeedEcoRollInputData() {
-					Mode = node != null ? DriverData.ParseDriverMode(node.Value) : DriverMode.Off
+					Mode = DriverMode.Overspeed
 				};
 			}
 		}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationEngineDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationEngineDataProvider.cs
index f689934634..7276fe0b46 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationEngineDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationEngineDataProvider.cs
@@ -8,7 +8,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 	public class XMLDeclarationEngineDataProvider : AbstractDeclarationXMLComponentDataProvider,
 		IEngineDeclarationInputData
 	{
-		public XMLDeclarationEngineDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationEngineDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
 		{
 			XBasePath = Helper.Query(VehiclePath,
 				XMLNames.Vehicle_Components,
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationGearboxDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationGearboxDataProvider.cs
index 735cecee61..aa44a89b48 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationGearboxDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationGearboxDataProvider.cs
@@ -13,7 +13,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 	public class XMLDeclarationGearboxDataProvider : AbstractDeclarationXMLComponentDataProvider,
 		IGearboxDeclarationInputData
 	{
-		public XMLDeclarationGearboxDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationGearboxDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider)
+			: base(xmlInputDataProvider)
 		{
 			XBasePath = Helper.Query(VehiclePath,
 				XMLNames.Vehicle_Components,
@@ -27,11 +28,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 				var value = GetElementValue(XMLNames.Gearbox_TransmissionType);
 				switch (value) {
 					case "MT":
+					case "SMT":
 						return GearboxType.MT;
 					case "AMT":
 						return GearboxType.AMT;
+					case "APT-S":
 					case "AT - Serial":
 						return GearboxType.ATSerial;
+					case "APT-P":
 					case "AT - PowerSplit":
 						return GearboxType.ATPowerSplit;
 				}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLInputDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationInputDataProvider.cs
similarity index 91%
rename from VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLInputDataProvider.cs
rename to VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationInputDataProvider.cs
index 16f2337da3..59a2c83d5b 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLInputDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationInputDataProvider.cs
@@ -8,7 +8,7 @@ using TUGraz.VectoCore.Utils;
 
 namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 {
-	public class XMLInputDataProvider : IDeclarationInputDataProvider
+	public class XMLDeclarationInputDataProvider : IDeclarationInputDataProvider
 	{
 		internal XPathDocument Document;
 
@@ -17,7 +17,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 		private readonly IDeclarationJobInputData XMLJobData;
 		protected internal readonly XMLDeclarationVehicleDataProvider _vehicleInputData;
 
-		public XMLInputDataProvider(XmlReader inputData, bool verifyXml)
+		public XMLDeclarationInputDataProvider(XmlReader inputData, bool verifyXml)
 		{
 			if (verifyXml) {
 				var settings = new XmlReaderSettings {
@@ -37,6 +37,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 
 			XMLJobData = new XMLDeclarationJobInputDataProvider(this);
 			_vehicleInputData = new XMLDeclarationVehicleDataProvider(this);
+			AirdragInputData = new XMLDeclarationAirdragDataProvider(this);
 			AxleGearInputData = new XMLDeclarationAxlegearDataProvider(this);
 			AngledriveInputData = new XMLDeclarationAngledriveDataProvider(this);
 			EngineInputData = new XMLDeclarationEngineDataProvider(this);
@@ -75,6 +76,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 			get { return _vehicleInputData; }
 		}
 
+		public IAirdragDeclarationInputData AirdragInputData { get; private set; }
 
 		public IGearboxDeclarationInputData GearboxInputData { get; private set; }
 
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationJobInputDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationJobInputDataProvider.cs
index 735877e036..91d79472fd 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationJobInputDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationJobInputDataProvider.cs
@@ -6,7 +6,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 	// ReSharper disable once InconsistentNaming
 	public class XMLDeclarationJobInputDataProvider : AbstractDeclarationXMLComponentDataProvider, IDeclarationJobInputData
 	{
-		public XMLDeclarationJobInputDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationJobInputDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
 		{
 			XBasePath = VehiclePath;
 		}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationRetarderDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationRetarderDataProvider.cs
index c93db27275..556f235174 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationRetarderDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationRetarderDataProvider.cs
@@ -7,7 +7,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 {
 	public class XMLDeclarationRetarderDataProvider : AbstractDeclarationXMLComponentDataProvider, IRetarderInputData
 	{
-		public XMLDeclarationRetarderDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationRetarderDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
 		{
 			XBasePath = Helper.Query(VehiclePath,
 				XMLNames.Vehicle_Components,
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationTorqueConverterDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationTorqueConverterDataProvider.cs
index 86ad5f79e2..9d63b2f2ce 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationTorqueConverterDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationTorqueConverterDataProvider.cs
@@ -7,7 +7,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 	public class XMLDeclarationTorqueConverterDataProvider : AbstractDeclarationXMLComponentDataProvider,
 		ITorqueConverterDeclarationInputData
 	{
-		public XMLDeclarationTorqueConverterDataProvider(XMLInputDataProvider xmlInputDataProvider)
+		public XMLDeclarationTorqueConverterDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider)
 			: base(xmlInputDataProvider)
 		{
 			XBasePath = Helper.Query(VehiclePath,
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationVehicleDataProvider.cs
index e1b4ab9412..08bfd2f41d 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationVehicleDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/XMLDeclarationVehicleDataProvider.cs
@@ -13,19 +13,25 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 	public class XMLDeclarationVehicleDataProvider : AbstractDeclarationXMLComponentDataProvider,
 		IVehicleDeclarationInputData
 	{
-		public XMLDeclarationVehicleDataProvider(XMLInputDataProvider xmlInputDataProvider) : base(xmlInputDataProvider)
+		public XMLDeclarationVehicleDataProvider(XMLDeclarationInputDataProvider xmlInputDataProvider)
+			: base(xmlInputDataProvider)
 		{
 			XBasePath = VehiclePath;
 		}
 
+		public override string TechnicalReportId
+		{
+			get { return GetElementValue(XMLNames.Vehicle_VIN); }
+		}
+
 		public VehicleCategory VehicleCategory
 		{
 			get { return GetElementValue(XMLNames.Vehicle_VehicleCategory).ParseEnum<VehicleCategory>(); }
 		}
 
-		public Kilogram CurbWeightChassis
+		public Kilogram CurbMassChassis
 		{
-			get { return GetDoubleElementValue(XMLNames.Vehicle_CurbWeightChassis).SI<Kilogram>(); }
+			get { return GetDoubleElementValue(XMLNames.Vehicle_CurbMassChassis).SI<Kilogram>(); }
 		}
 
 
@@ -54,10 +60,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 
 				var retVal = new IAxleDeclarationInputData[axles.Count];
 				while (axles.MoveNext()) {
-					//foreach (var axle in axles) {
-					var dimension = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_Dimension), Manager);
-					var rollResistance = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_RRCISO), Manager);
-					var tyreTestLoad = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_FzISO), Manager);
 					var axleNumber = axles.Current.GetAttribute(XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr, "").ToInt();
 					if (axleNumber < 1 || axleNumber > retVal.Length) {
 						throw new VectoException("Axle #{0} exceeds axle count", axleNumber);
@@ -65,9 +67,22 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration
 					if (retVal[axleNumber - 1] != null) {
 						throw new VectoException("Axle #{0} defined multiple times!", axleNumber);
 					}
+					var axleType = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_AxleType), Manager);
+					var twinTyres = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_TwinTyres), Manager);
+					var steered = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_Steered), Manager);
+					var tyre =
+						axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_Tyre, XMLNames.ComponentDataWrapper),
+							Manager);
+					if (tyre == null) {
+						throw new VectoException("Axle #{0} contains no tyre definition", axleNumber);
+					}
+					var dimension = tyre.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_Dimension), Manager);
+					var rollResistance = tyre.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_RRCDeclared), Manager);
+					var tyreTestLoad = tyre.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_FzISO), Manager);
 					retVal[axleNumber - 1] = new AxleInputData {
-						AxleType = axles.Current.GetAttribute(XMLNames.AxleWheels_Axles_Axle_AxleType_Attr, "").ParseEnum<AxleType>(),
-						TwinTyres = XmlConvert.ToBoolean(axles.Current.GetAttribute(XMLNames.AxleWheels_Axles_Axle_TwinTyres_Attr, "")),
+						AxleType = axleType == null ? AxleType.VehicleNonDriven : axleType.Value.ParseEnum<AxleType>(),
+						TwinTyres = twinTyres != null && XmlConvert.ToBoolean(twinTyres.Value),
+						Steered = steered != null && XmlConvert.ToBoolean(steered.Value),
 						TyreTestLoad = tyreTestLoad == null ? null : tyreTestLoad.Value.ToDouble().SI<Newton>(),
 						RollResistanceCoefficient = rollResistance == null ? double.NaN : rollResistance.Value.ToDouble(),
 						Wheels = dimension == null ? null : dimension.Value,
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/AbstractEngineeringXMLComponentDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/AbstractEngineeringXMLComponentDataProvider.cs
index 0e5910d505..6e7bcbf04f 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/AbstractEngineeringXMLComponentDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/AbstractEngineeringXMLComponentDataProvider.cs
@@ -43,14 +43,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			get { return false; }
 		}
 
-		public override string Vendor
+		public override string Manufacturer
 		{
-			get { return GetElementValue(XMLNames.Component_Vendor); }
+			get { return GetElementValue(XMLNames.Component_Manufacturer); }
 		}
 
-		public override string ModelName
+		public override string Model
 		{
-			get { return GetElementValue(XMLNames.Component_MakeAndModel); }
+			get { return GetElementValue(XMLNames.Component_Model); }
 		}
 
 		public override string Creator
@@ -63,9 +63,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			get { return GetElementValue(XMLNames.Component_Date); }
 		}
 
-		public override string TypeId
+		public override string TechnicalReportId
 		{
-			get { return GetElementValue(XMLNames.Component_TypeId); }
+			get { return "N.A."; }
 		}
 
 		public override string DigestValue
@@ -96,8 +96,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 
 		protected string ExtCsvResourceTag
 		{
-			get
-			{
+			get {
 				return Helper.Query(Helper.QueryConstraint(XMLNames.ExternalResource, XMLNames.ExtResource_Type_Attr,
 					XMLNames.ExtResource_Type_Value_CSV));
 			}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAirdragDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAirdragDataProvider.cs
new file mode 100644
index 0000000000..74ee5e26a1
--- /dev/null
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAirdragDataProvider.cs
@@ -0,0 +1,36 @@
+using System;
+using System.Xml.XPath;
+using TUGraz.IVT.VectoXML;
+using TUGraz.VectoCommon.InputData;
+using TUGraz.VectoCommon.Models;
+using TUGraz.VectoCommon.Utils;
+using TUGraz.VectoCore.Resources;
+
+namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
+{
+	public class XMLEngineeringAirdragDataProvider : AbstractEngineeringXMLComponentDataProvider,
+		IAirdragEngineeringInputData
+	{
+		public XMLEngineeringAirdragDataProvider(XMLEngineeringInputDataProvider xmlEngineeringJobInputDataProvider,
+			XPathDocument axlegearDocument, string xmlBasePath, string fsBasePath)
+			: base(xmlEngineeringJobInputDataProvider, axlegearDocument, xmlBasePath, fsBasePath) {}
+
+		public SquareMeter AirDragArea
+		{
+			get { return GetDoubleElementValue(XMLNames.Vehicle_AirDragArea).SI<SquareMeter>(); }
+		}
+
+		public CrossWindCorrectionMode CrossWindCorrectionMode
+		{
+			get { return GetElementValue(XMLNames.Vehicle_CrossWindCorrectionMode).ParseEnum<CrossWindCorrectionMode>(); }
+		}
+
+		public TableData CrosswindCorrectionMap
+		{
+			get {
+				return ReadTableData(AttributeMappings.CrossWindCorrectionMapping,
+					Helper.Query(XMLNames.Vehicle_CrosswindCorrectionData, XMLNames.Vehicle_CrosswindCorrectionData_Entry));
+			}
+		}
+	}
+}
\ No newline at end of file
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAngledriveDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAngledriveDataProvider.cs
index 927e95764d..24c4a8c3b7 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAngledriveDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAngledriveDataProvider.cs
@@ -23,8 +23,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 
 		public TableData LossMap
 		{
-			get
-			{
+			get {
 				if (ElementExists(Helper.Query(XMLNames.AngleDrive_TorqueLossMap, XMLNames.Angledrive_LossMap_Entry))) {
 					return ReadTableData(AttributeMappings.TransmissionLossmapMapping,
 						Helper.Query(XMLNames.AngleDrive_TorqueLossMap, XMLNames.Angledrive_LossMap_Entry));
@@ -35,7 +34,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 
 		public double Efficiency
 		{
-			get { return GetDoubleElementValue(XMLNames.AngleDrive_Efficiency); }
+			get {
+				return GetDoubleElementValue(Helper.Query(XMLNames.AngleDrive_TorqueLossMap, XMLNames.AngleDrive_Efficiency));
+			}
 		}
 	}
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAxlegearDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAxlegearDataProvider.cs
index 1172131c21..c753be74f5 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAxlegearDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringAxlegearDataProvider.cs
@@ -18,8 +18,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 
 		public TableData LossMap
 		{
-			get
-			{
+			get {
 				if (ElementExists(Helper.Query(XMLNames.Axlegear_TorqueLossMap, XMLNames.Axlegear_TorqueLossMap_Entry))) {
 					return ReadTableData(AttributeMappings.TransmissionLossmapMapping,
 						Helper.Query(XMLNames.Axlegear_TorqueLossMap, XMLNames.Axlegear_TorqueLossMap_Entry));
@@ -30,7 +29,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 
 		public double Efficiency
 		{
-			get { return GetDoubleElementValue(XMLNames.Axlegear_Efficiency); }
+			get { return GetDoubleElementValue(Helper.Query(XMLNames.Axlegear_TorqueLossMap, XMLNames.Axlegear_Efficiency)); }
 		}
 	}
 }
\ No newline at end of file
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringInputDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringInputDataProvider.cs
index 905438b1ba..0472ce0210 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringInputDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringInputDataProvider.cs
@@ -93,7 +93,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 				Path.GetDirectoryName(Path.GetFullPath(FileName)));
 			if (XMLEngineeringJobData.EngineOnlyMode) {
 				EngineInputData = new XMLEngineeringEngineDataProvider(this, Document,
-					helper.QueryAbs(helper.NSPrefix(XMLNames.VectoInputEngineering, Constants.XML.RootNSPrefix), XMLNames.Component_Engine,
+					helper.QueryAbs(helper.NSPrefix(XMLNames.VectoInputEngineering, Constants.XML.RootNSPrefix),
+						XMLNames.Component_Engine,
 						XMLNames.ComponentDataWrapper), Path.GetDirectoryName(Path.GetFullPath(FileName)));
 				return;
 			}
@@ -108,6 +109,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			GearboxInputData = _vehicleInputData.GetGearboxData(settings);
 			TorqueConverterInputData = GearboxInputData.TorqueConverter;
 			PTOTransmissionInputData = _vehicleInputData.GetPTOData(settings);
+			AirdragInputData = _vehicleInputData.GetAirdragInputData(settings);
 		}
 
 		private static void ValidationCallBack(object sender, ValidationEventArgs args)
@@ -160,7 +162,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 
 		private static XmlSchemaSet GetXMLSchema(string version)
 		{
-			var resource = RessourceHelper.LoadResourceAsStream(RessourceHelper.ResourceType.XMLSchema, "VectoEngineeringInput.xsd");
+			var resource = RessourceHelper.LoadResourceAsStream(RessourceHelper.ResourceType.XMLSchema,
+				"VectoEngineeringInput.xsd");
 			var xset = new XmlSchemaSet() { XmlResolver = new XmlResourceResolver() };
 			var reader = XmlReader.Create(resource, new XmlReaderSettings(), XmlResourceResolver.BaseUri);
 			xset.Add(XmlSchema.Read(reader, null));
@@ -178,6 +181,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			get { return _vehicleInputData; }
 		}
 
+		public IAirdragEngineeringInputData AirdragInputData { get; private set; }
+
 
 		public IGearboxEngineeringInputData GearboxInputData { get; private set; }
 
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringJobInputDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringJobInputDataProvider.cs
index b890c2e898..0de4146d14 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringJobInputDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringJobInputDataProvider.cs
@@ -125,7 +125,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			get
 			{
 				return InputData.JobInputData().EngineOnlyMode
-					? InputData.EngineInputData.TypeId
+					? InputData.EngineInputData.TechnicalReportId
 					: InputData._vehicleInputData.GetVehicleID;
 			}
 		}
diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringVehicleDataProvider.cs
index 46bd3100b6..3b8ed664d8 100644
--- a/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringVehicleDataProvider.cs
+++ b/VectoCore/VectoCore/InputData/FileIO/XML/Engineering/XMLEngineeringVehicleDataProvider.cs
@@ -35,14 +35,14 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			get { return GetElementValue(XMLNames.Vehicle_VehicleCategory).ParseEnum<VehicleCategory>(); }
 		}
 
-		public Kilogram CurbWeightChassis
+		public Kilogram CurbMassChassis
 		{
-			get { return GetDoubleElementValue(XMLNames.Vehicle_CurbWeightChassis).SI<Kilogram>(); }
+			get { return GetDoubleElementValue(XMLNames.Vehicle_CurbMassChassis).SI<Kilogram>(); }
 		}
 
-		public Kilogram CurbWeightExtra
+		public Kilogram CurbMassExtra
 		{
-			get { return GetDoubleElementValue(XMLNames.Vehicle_CurbWeightExtra).SI<Kilogram>(); }
+			get { return GetDoubleElementValue(XMLNames.Vehicle_CurbMassExtra).SI<Kilogram>(); }
 		}
 
 		public Kilogram GrossVehicleMassRating
@@ -62,8 +62,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 					XMLNames.Component_AxleWheels,
 					XMLNames.ComponentDataWrapper,
 					XMLNames.AxleWheels_Axles,
-					Helper.QueryConstraint(XMLNames.AxleWheels_Axles_Axle, XMLNames.AxleWheels_Axles_Axle_AxleType_Attr,
-						AxleType.VehicleDriven.ToString()), // query
+					Helper.QueryConstraint(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle),
+						Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_AxleType),
+						AxleType.VehicleDriven.ToString(), ""), // query
 					XMLNames.AxleWheels_Axles_Axle_DynamicTyreRadius
 					);
 				return (GetDoubleElementValue(queryPath) / 1000).SI<Meter>();
@@ -71,12 +72,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 		}
 
 
-		public SquareMeter AirDragArea
-		{
-			get { return GetDoubleElementValue(XMLNames.Vehicle_AirDragArea).SI<SquareMeter>(); }
-		}
-
-
 		public AxleConfiguration AxleConfiguration
 		{
 			get { return AxleConfigurationHelper.Parse(GetElementValue(XMLNames.Vehicle_AxleConfiguration)); }
@@ -106,11 +101,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			var retVal = new AxleInputData[axles.Count];
 
 			while (axles.MoveNext()) {
-				var dimension = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_Dimension), Manager);
-				var rollResistance = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_RRCISO), Manager);
-				var tyreTestLoad = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_FzISO), Manager);
-				var weightShare = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_WeightShare), Manager);
-				var inertia = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_Inertia), Manager);
 				var axleNumber = axles.Current.GetAttribute(XMLNames.AxleWheels_Axles_Axle_AxleNumber_Attr, "").ToInt();
 				if (axleNumber < 1 || axleNumber > retVal.Length) {
 					throw new VectoException("Axle #{0} exceeds axle count", axleNumber);
@@ -118,9 +108,19 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 				if (retVal[axleNumber - 1] != null) {
 					throw new VectoException("Axle #{0} defined multiple times!", axleNumber);
 				}
+				var dimension = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_Dimension), Manager);
+				var rollResistance = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_RRCISO), Manager);
+				var tyreTestLoad = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_FzISO), Manager);
+				var weightShare = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_WeightShare), Manager);
+				var inertia = axles.Current.SelectSingleNode(Helper.Query(XMLNames.AxleWheels_Axles_Axle_Inertia), Manager);
+				var axleType = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_AxleType), Manager);
+				var twinTyres = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_TwinTyres), Manager);
+				var steered = axles.Current.SelectSingleNode(Helper.NSPrefix(XMLNames.AxleWheels_Axles_Axle_Steered), Manager);
+
 				retVal[axleNumber - 1] = new AxleInputData {
-					AxleType = axles.Current.GetAttribute(XMLNames.AxleWheels_Axles_Axle_AxleType_Attr, "").ParseEnum<AxleType>(),
-					TwinTyres = XmlConvert.ToBoolean(axles.Current.GetAttribute(XMLNames.AxleWheels_Axles_Axle_TwinTyres_Attr, "")),
+					AxleType = axleType == null ? AxleType.VehicleNonDriven : axleType.Value.ParseEnum<AxleType>(),
+					TwinTyres = twinTyres != null && XmlConvert.ToBoolean(twinTyres.Value),
+					Steered = steered != null && XmlConvert.ToBoolean(steered.Value),
 					TyreTestLoad = tyreTestLoad == null ? null : tyreTestLoad.ValueAsDouble.SI<Newton>(),
 					RollResistanceCoefficient = rollResistance == null ? double.NaN : rollResistance.ValueAsDouble,
 					Wheels = dimension == null ? null : dimension.Value,
@@ -131,20 +131,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			return retVal;
 		}
 
-
-		public CrossWindCorrectionMode CrossWindCorrectionMode
-		{
-			get { return GetElementValue(XMLNames.Vehicle_CrossWindCorrectionMode).ParseEnum<CrossWindCorrectionMode>(); }
-		}
-
-		public TableData CrosswindCorrectionMap
-		{
-			get {
-				return ReadTableData(AttributeMappings.CrossWindCorrectionMapping,
-					Helper.Query(XMLNames.Vehicle_CrosswindCorrectionData, XMLNames.Vehicle_CrosswindCorrectionData_Entry));
-			}
-		}
-
 		public double RetarderRatio
 		{
 			get { return GetDoubleElementValue(XMLNames.Vehicle_RetarderRatio); }
@@ -160,6 +146,12 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			get { return GetElementValue(XMLNames.Vehicle_AngledriveType).ParseEnum<AngledriveType>(); }
 		}
 
+		public IAirdragEngineeringInputData GetAirdragInputData(XmlReaderSettings settings)
+		{
+			return CreateComponentInput(XMLNames.Component_AirDrag, settings,
+				(a, b, c, d) => new XMLEngineeringAirdragDataProvider(a, b, c, d));
+		}
+
 		public XMLEngineeringAxlegearDataProvider GetAxleGearInputData(XmlReaderSettings settings)
 		{
 			return CreateComponentInput(XMLNames.Component_Axlegear, settings,
@@ -227,7 +219,6 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Engineering
 			throw new VectoException("Component {0} not found!", componentName);
 		}
 
-
 		public XMLEngineeringAngledriveDataProvider GetAngularGearInputData(XmlReaderSettings settings)
 		{
 			return new XMLEngineeringAngledriveDataProvider(InputData, XMLDocument,
diff --git a/VectoCore/VectoCore/InputData/Impl/InputData.cs b/VectoCore/VectoCore/InputData/Impl/InputData.cs
index a88e4115a9..e3f08e411f 100644
--- a/VectoCore/VectoCore/InputData/Impl/InputData.cs
+++ b/VectoCore/VectoCore/InputData/Impl/InputData.cs
@@ -109,15 +109,17 @@ namespace TUGraz.VectoCore.InputData.Impl
 
 		public string Source { get; internal set; }
 
-		public string Vendor { get; internal set; }
+		public string Manufacturer { get; internal set; }
 
-		public string ModelName { get; internal set; }
+		public string Model { get; internal set; }
 
 		public string Creator { get; internal set; }
 
 		public string Date { get; internal set; }
 
-		public string TypeId { get; internal set; }
+		public string TechnicalReportId { get; internal set; }
+
+		public string CertificationNumber { get; internal set; }
 
 		public string DigestValue { get; internal set; }
 
@@ -127,6 +129,8 @@ namespace TUGraz.VectoCore.InputData.Impl
 
 		public bool TwinTyres { get; internal set; }
 
+		public bool Steered { get; internal set; }
+
 		public AxleType AxleType { get; internal set; }
 
 		public double RollResistanceCoefficient { get; internal set; }
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/AbstractSimulationDataAdapter.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/AbstractSimulationDataAdapter.cs
index 1e703ce3f0..303c8051f0 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/AbstractSimulationDataAdapter.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/AbstractSimulationDataAdapter.cs
@@ -51,16 +51,16 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 		{
 			var retVal = new VehicleData {
 				SavedInDeclarationMode = data.SavedInDeclarationMode,
-				Vendor = data.Vendor,
-				ModelName = data.ModelName,
+				Vendor = data.Manufacturer,
+				ModelName = data.Model,
 				Creator = data.Creator,
 				Date = data.Date,
-				TypeId = data.TypeId,
+				TypeId = data.TechnicalReportId,
 				DigestValue = data.DigestValue,
 				IntegrityStatus = data.IntegrityStatus,
 				VehicleCategory = data.VehicleCategory,
 				AxleConfiguration = data.AxleConfiguration,
-				CurbWeight = data.CurbWeightChassis,
+				CurbWeight = data.CurbMassChassis,
 				GrossVehicleWeight = data.GrossVehicleMassRating,
 			};
 
@@ -93,11 +93,11 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 					return retarder;
 				}
 				retarder.SavedInDeclarationMode = data.SavedInDeclarationMode;
-				retarder.Vendor = data.Vendor;
-				retarder.ModelName = data.ModelName;
+				retarder.Vendor = data.Manufacturer;
+				retarder.ModelName = data.Model;
 				retarder.Creator = data.Creator;
 				retarder.Date = data.Date;
-				retarder.TypeId = data.TypeId;
+				retarder.TypeId = data.TechnicalReportId;
 				retarder.DigestValue = data.DigestValue;
 				retarder.IntegrityStatus = data.IntegrityStatus;
 
@@ -111,11 +111,11 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 		{
 			var retVal = new CombustionEngineData {
 				SavedInDeclarationMode = data.SavedInDeclarationMode,
-				Vendor = data.Vendor,
-				ModelName = data.ModelName,
+				Vendor = data.Manufacturer,
+				ModelName = data.Model,
 				Creator = data.Creator,
 				Date = data.Date,
-				TypeId = data.TypeId,
+				TypeId = data.TechnicalReportId,
 				DigestValue = data.DigestValue,
 				IntegrityStatus = data.IntegrityStatus,
 				Displacement = data.Displacement,
@@ -129,11 +129,11 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 		{
 			return new GearboxData {
 				SavedInDeclarationMode = data.SavedInDeclarationMode,
-				Vendor = data.Vendor,
-				ModelName = data.ModelName,
+				Vendor = data.Manufacturer,
+				ModelName = data.Model,
 				Creator = data.Creator,
 				Date = data.Date,
-				TypeId = data.TypeId,
+				TypeId = data.TechnicalReportId,
 				DigestValue = data.DigestValue,
 				IntegrityStatus = data.IntegrityStatus,
 				Type = data.Type
@@ -157,11 +157,11 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 
 			return new AxleGearData {
 				SavedInDeclarationMode = data.SavedInDeclarationMode,
-				Vendor = data.Vendor,
-				ModelName = data.ModelName,
+				Vendor = data.Manufacturer,
+				ModelName = data.Model,
 				Creator = data.Creator,
 				Date = data.Date,
-				TypeId = data.TypeId,
+				TypeId = data.TechnicalReportId,
 				DigestValue = data.DigestValue,
 				IntegrityStatus = data.IntegrityStatus,
 				AxleGear = new GearData { LossMap = axleLossMap, Ratio = data.Ratio }
@@ -186,11 +186,11 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 					case AngledriveType.SeparateAngledrive:
 						var angledriveData = new AngledriveData {
 							SavedInDeclarationMode = data.SavedInDeclarationMode,
-							Vendor = data.Vendor,
-							ModelName = data.ModelName,
+							Vendor = data.Manufacturer,
+							ModelName = data.Model,
 							Creator = data.Creator,
 							Date = data.Date,
-							TypeId = data.TypeId,
+							TypeId = data.TechnicalReportId,
 							DigestValue = data.DigestValue,
 							IntegrityStatus = data.IntegrityStatus,
 							Type = type,
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapter.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapter.cs
index 068a58eadd..af8a4f9a80 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapter.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/DeclarationDataAdapter.cs
@@ -87,7 +87,8 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 			return retVal;
 		}
 
-		internal VehicleData CreateVehicleData(IVehicleDeclarationInputData data, Mission mission, Kilogram loading,
+		internal VehicleData CreateVehicleData(IVehicleDeclarationInputData data, IAirdragDeclarationInputData airdragData,
+			Mission mission, Kilogram loading,
 			Meter vehicleHeight)
 		{
 			if (!data.SavedInDeclarationMode) {
@@ -105,7 +106,7 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 				DeclarationData.Wheels.Lookup(data.Axles[drivenIndex].Wheels).DynamicTyreRadius;
 			retVal.CargoVolume = mission.MissionType != MissionType.Construction ? mission.TotalCargoVolume : 0.SI<CubicMeter>();
 
-			var aerodynamicDragArea = data.AirDragArea + mission.Trailer.Sum(t => t.DeltaCdA).DefaultIfNull(0);
+			var aerodynamicDragArea = airdragData.AirDragArea + mission.Trailer.Sum(t => t.DeltaCdA).DefaultIfNull(0);
 
 			retVal.CrossWindCorrectionCurve =
 				new CrosswindCorrectionCdxALookup(aerodynamicDragArea,
diff --git a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/EngineeringDataAdapter.cs b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/EngineeringDataAdapter.cs
index a952032a86..ddfc3d114f 100644
--- a/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/EngineeringDataAdapter.cs
+++ b/VectoCore/VectoCore/InputData/Reader/DataObjectAdapter/EngineeringDataAdapter.cs
@@ -48,47 +48,47 @@ namespace TUGraz.VectoCore.InputData.Reader.DataObjectAdapter
 {
 	public class EngineeringDataAdapter : AbstractSimulationDataAdapter
 	{
-		internal VehicleData CreateVehicleData(IVehicleEngineeringInputData data)
+		internal VehicleData CreateVehicleData(IVehicleEngineeringInputData data, IAirdragEngineeringInputData airdragData)
 		{
 			if (data.SavedInDeclarationMode) {
 				WarnEngineeringMode("VehicleData");
 			}
 
 			var retVal = SetCommonVehicleData(data);
-			retVal.BodyAndTrailerWeight = data.CurbWeightExtra;
-			retVal.CurbWeight += data.CurbWeightExtra;
+			retVal.BodyAndTrailerWeight = data.CurbMassExtra;
+			retVal.CurbWeight += data.CurbMassExtra;
 			retVal.TrailerGrossVehicleWeight = 0.SI<Kilogram>();
 			retVal.Loading = data.Loading;
 			retVal.DynamicTyreRadius = data.DynamicTyreRadius;
-			retVal.CrossWindCorrectionMode = data.CrossWindCorrectionMode;
+			retVal.CrossWindCorrectionMode = airdragData.CrossWindCorrectionMode;
 			var axles = data.Axles;
-			switch (data.CrossWindCorrectionMode) {
+			switch (airdragData.CrossWindCorrectionMode) {
 				case CrossWindCorrectionMode.NoCorrection:
 					retVal.CrossWindCorrectionCurve =
-						new CrosswindCorrectionCdxALookup(data.AirDragArea,
-							CrossWindCorrectionCurveReader.GetNoCorrectionCurve(data.AirDragArea),
+						new CrosswindCorrectionCdxALookup(airdragData.AirDragArea,
+							CrossWindCorrectionCurveReader.GetNoCorrectionCurve(airdragData.AirDragArea),
 							CrossWindCorrectionMode.NoCorrection);
 					break;
 				case CrossWindCorrectionMode.SpeedDependentCorrectionFactor:
-					retVal.CrossWindCorrectionCurve = new CrosswindCorrectionCdxALookup(data.AirDragArea,
-						CrossWindCorrectionCurveReader.ReadSpeedDependentCorrectionCurve(data.CrosswindCorrectionMap,
-							data.AirDragArea), CrossWindCorrectionMode.SpeedDependentCorrectionFactor);
+					retVal.CrossWindCorrectionCurve = new CrosswindCorrectionCdxALookup(airdragData.AirDragArea,
+						CrossWindCorrectionCurveReader.ReadSpeedDependentCorrectionCurve(airdragData.CrosswindCorrectionMap,
+							airdragData.AirDragArea), CrossWindCorrectionMode.SpeedDependentCorrectionFactor);
 					break;
 				case CrossWindCorrectionMode.VAirBetaLookupTable:
-					retVal.CrossWindCorrectionCurve = new CrosswindCorrectionVAirBeta(data.AirDragArea,
-						CrossWindCorrectionCurveReader.ReadCdxABetaTable(data.CrosswindCorrectionMap));
+					retVal.CrossWindCorrectionCurve = new CrosswindCorrectionVAirBeta(airdragData.AirDragArea,
+						CrossWindCorrectionCurveReader.ReadCdxABetaTable(airdragData.CrosswindCorrectionMap));
 					break;
 				case CrossWindCorrectionMode.DeclarationModeCorrection:
 					var height = DeclarationData.Segments.LookupHeight(data.VehicleCategory, data.AxleConfiguration,
 						retVal.GrossVehicleWeight);
 					retVal.CrossWindCorrectionCurve =
-						new CrosswindCorrectionCdxALookup(data.AirDragArea,
+						new CrosswindCorrectionCdxALookup(airdragData.AirDragArea,
 							DeclarationDataAdapter.GetDeclarationAirResistanceCurve(
 								GetAirdragParameterSet(retVal.VehicleCategory, data.AxleConfiguration, axles.Count),
-								data.AirDragArea, height), CrossWindCorrectionMode.DeclarationModeCorrection);
+								airdragData.AirDragArea, height), CrossWindCorrectionMode.DeclarationModeCorrection);
 					break;
 				default:
-					throw new ArgumentOutOfRangeException("CrosswindCorrection", data.CrossWindCorrectionMode.ToString());
+					throw new ArgumentOutOfRangeException("CrosswindCorrection", airdragData.CrossWindCorrectionMode.ToString());
 			}
 
 			retVal.AxleData = axles.Select(axle => new Axle {
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs
index d4c7ad4358..ca36a173d3 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/DeclarationModeVectoRunDataFactory.cs
@@ -66,11 +66,12 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 			var dao = new DeclarationDataAdapter();
 			var segment = GetVehicleClassification(InputDataProvider.VehicleInputData.VehicleCategory,
 				InputDataProvider.VehicleInputData.AxleConfiguration,
-				InputDataProvider.VehicleInputData.GrossVehicleMassRating, InputDataProvider.VehicleInputData.CurbWeightChassis);
+				InputDataProvider.VehicleInputData.GrossVehicleMassRating, InputDataProvider.VehicleInputData.CurbMassChassis);
 			var driverdata = dao.CreateDriverData(InputDataProvider.DriverInputData);
 			driverdata.AccelerationCurve = AccelerationCurveReader.ReadFromStream(segment.AccelerationFile);
 
-			var tempVehicle = dao.CreateVehicleData(InputDataProvider.VehicleInputData, segment.Missions.First(),
+			var tempVehicle = dao.CreateVehicleData(InputDataProvider.VehicleInputData, InputDataProvider.AirdragInputData,
+				segment.Missions.First(),
 				segment.Missions.First().Loadings.First().Value, segment.VehicleHeight);
 			var engineData = dao.CreateEngineData(InputDataProvider.EngineInputData, InputDataProvider.GearboxInputData.Type);
 			var axlegearData = dao.CreateAxleGearData(InputDataProvider.AxleGearInputData, false);
@@ -81,8 +82,10 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 
 			if (Report != null) {
 				var powertrainConfig = new VectoRunData() {
-					VehicleData = dao.CreateVehicleData(InputDataProvider.VehicleInputData, segment.Missions.First(),
-						segment.Missions.First().Loadings.First().Value, segment.VehicleHeight),
+					VehicleData =
+						dao.CreateVehicleData(InputDataProvider.VehicleInputData, InputDataProvider.AirdragInputData,
+							segment.Missions.First(),
+							segment.Missions.First().Loadings.First().Value, segment.VehicleHeight),
 					EngineData = engineData,
 					GearboxData = gearboxData,
 					AxleGearData = axlegearData,
@@ -109,8 +112,10 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 				foreach (var loading in mission.Loadings) {
 					var simulationRunData = new VectoRunData {
 						Loading = loading.Key,
-						VehicleData = dao.CreateVehicleData(InputDataProvider.VehicleInputData, mission, loading.Value,
-							segment.VehicleHeight),
+						VehicleData =
+							dao.CreateVehicleData(InputDataProvider.VehicleInputData, InputDataProvider.AirdragInputData, mission,
+								loading.Value,
+								segment.VehicleHeight),
 						EngineData = engineData.Copy(),
 						GearboxData = gearboxData,
 						AxleGearData = axlegearData,
diff --git a/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs b/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs
index 77be77dc91..75c8f302d9 100644
--- a/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs
+++ b/VectoCore/VectoCore/InputData/Reader/Impl/EngineeringModeVectoRunDataFactory.cs
@@ -63,13 +63,13 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 			var driver = dao.CreateDriverData(InputDataProvider.DriverInputData);
 			var engineData = dao.CreateEngineData(InputDataProvider.EngineInputData, InputDataProvider.GearboxInputData);
 
-			var tempVehicle = dao.CreateVehicleData(InputDataProvider.VehicleInputData);
+			var tempVehicle = dao.CreateVehicleData(InputDataProvider.VehicleInputData, InputDataProvider.AirdragInputData);
 
-			var vehicleInputData = InputDataProvider.VehicleInputData;
 			var axlegearData = dao.CreateAxleGearData(InputDataProvider.AxleGearInputData, useEfficiencyFallback: true);
 			var gearboxData = dao.CreateGearboxData(InputDataProvider.GearboxInputData, engineData, axlegearData.AxleGear.Ratio,
 				tempVehicle.DynamicTyreRadius, useEfficiencyFallback: true);
-			var crossWindRequired = vehicleInputData.CrossWindCorrectionMode == CrossWindCorrectionMode.VAirBetaLookupTable;
+			var crossWindRequired = InputDataProvider.AirdragInputData.CrossWindCorrectionMode ==
+									CrossWindCorrectionMode.VAirBetaLookupTable;
 			var angledriveData = dao.CreateAngledriveData(InputDataProvider.AngledriveInputData, useEfficiencyFallback: true);
 			var ptoTransmissionData = dao.CreatePTOTransmissionData(InputDataProvider.PTOTransmissionInputData);
 
@@ -87,7 +87,7 @@ namespace TUGraz.VectoCore.InputData.Reader.Impl
 					GearboxData = gearboxData,
 					AxleGearData = axlegearData,
 					AngledriveData = angledriveData,
-					VehicleData = dao.CreateVehicleData(vehicleInputData),
+					VehicleData = dao.CreateVehicleData(InputDataProvider.VehicleInputData, InputDataProvider.AirdragInputData),
 					DriverData = driver,
 					Aux = dao.CreateAuxiliaryData(InputDataProvider.AuxiliaryInputData()),
 					AdvancedAux = dao.CreateAdvancedAuxData(InputDataProvider.AuxiliaryInputData()),
diff --git a/VectoCore/VectoCore/OutputData/XML/AbstractXMLWriter.cs b/VectoCore/VectoCore/OutputData/XML/AbstractXMLWriter.cs
index efd437645e..1f06181ff8 100644
--- a/VectoCore/VectoCore/OutputData/XML/AbstractXMLWriter.cs
+++ b/VectoCore/VectoCore/OutputData/XML/AbstractXMLWriter.cs
@@ -33,11 +33,11 @@ namespace TUGraz.IVT.VectoXML.Writer
 		protected XElement[] GetDefaultComponentElements(string typeId, string makeAndModel)
 		{
 			return new[] {
-				new XElement(tns + XMLNames.Component_Vendor, String.Format("{0,-5}", Vendor)),
+				new XElement(tns + XMLNames.Component_Manufacturer, String.Format("{0,-5}", Vendor)),
 				new XElement(tns + XMLNames.Component_Creator, String.Format("{0,-10}", Creator)),
 				new XElement(tns + XMLNames.Component_Date, XmlConvert.ToString(DateTime.Now, XmlDateTimeSerializationMode.Utc)),
-				new XElement(tns + XMLNames.Component_MakeAndModel, String.Format("{0,-10}", makeAndModel)),
-				new XElement(tns + XMLNames.Component_TypeId, String.Format("{0,-10}", typeId)),
+				new XElement(tns + XMLNames.Component_Model, String.Format("{0,-10}", makeAndModel)),
+				new XElement(tns + XMLNames.Component_CertificationNumber, String.Format("{0,-10}", typeId)),
 			};
 		}
 
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationWriter.cs b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationWriter.cs
index f766e3eb5c..da5bb8c6b9 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLDeclarationWriter.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLDeclarationWriter.cs
@@ -91,13 +91,13 @@ namespace TUGraz.VectoCore.OutputData.XML
 			//var pto = data.PTOTransmissionInputData;
 
 			return new XElement(tns + XMLNames.Component_Vehicle,
-				new XAttribute(XMLNames.Component_ID_Attr, "VEH-" + vehicle.ModelName),
-				GetDefaultComponentElements(vehicle.TypeId, vehicle.ModelName),
+				new XAttribute(XMLNames.Component_ID_Attr, "VEH-" + vehicle.Model),
+				GetDefaultComponentElements(vehicle.TechnicalReportId, vehicle.Model),
 				new XElement(tns + XMLNames.Vehicle_VehicleCategory, GetVehicleCategoryXML(vehicle.VehicleCategory)),
 				new XElement(tns + XMLNames.Vehicle_AxleConfiguration, vehicle.AxleConfiguration.GetName()),
-				new XElement(tns + XMLNames.Vehicle_CurbWeightChassis, vehicle.CurbWeightChassis.Value()),
+				new XElement(tns + XMLNames.Vehicle_CurbWeightChassis, vehicle.CurbMassChassis.Value()),
 				new XElement(tns + XMLNames.Vehicle_GrossVehicleMass, vehicle.GrossVehicleMassRating.Value()),
-				new XElement(tns + XMLNames.Vehicle_AirDragArea, vehicle.AirDragArea.Value()),
+				//new XElement(tns + XMLNames.Vehicle_AirDragArea, vehicle.AirDragArea.Value()),
 				new XElement(tns + XMLNames.Vehicle_SteeredAxles, numSteeredaxles),
 				new XElement(tns + XMLNames.Vehicle_RetarderType, GetRetarterTypeXML(retarder.Type)),
 				retarder.Type.IsDedicatedComponent() ? new XElement(tns + XMLNames.Vehicle_RetarderRatio, retarder.Ratio) : null,
@@ -110,7 +110,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 					retarder.Type.IsDedicatedComponent() ? CreateRetarder(retarder) : null,
 					CreateAxlegear(data.AxleGearInputData),
 					CreateAxleWheels(data.VehicleInputData),
-					CreateAuxiliaries(data.AuxiliaryInputData())
+					CreateAuxiliaries(data.AuxiliaryInputData()),
+					CreateAirdrag(data.AirdragInputData)
 					),
 				new XElement(tns + XMLNames.Vehicle_AdvancedDriverAssist,
 					new XElement(tns + XMLNames.Vehicle_AdvancedDriverAssist_EngineStartStop,
@@ -125,8 +126,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 		{
 			return new XElement(tns + XMLNames.Component_Engine,
 				new XElement(tns + XMLNames.ComponentDataWrapper,
-					new XAttribute(XMLNames.Component_ID_Attr, string.Format("ENG-{0}", data.ModelName)),
-					GetDefaultComponentElements(string.Format("ENG-{0}", data.ModelName), data.ModelName),
+					new XAttribute(XMLNames.Component_ID_Attr, string.Format("ENG-{0}", data.Model)),
+					GetDefaultComponentElements(string.Format("ENG-{0}", data.Model), data.Model),
 					new XElement(tns + XMLNames.Engine_Displacement, data.Displacement.Value() * 1000 * 1000),
 					new XElement(tns + XMLNames.Engine_IdlingSpeed, data.IdleSpeed.AsRPM),
 					new XElement(tns + XMLNames.Engine_WHTCUrban, data.WHTCUrban),
@@ -160,8 +161,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 			}
 			return new XElement(tns + XMLNames.Component_Gearbox,
 				new XElement(tns + XMLNames.ComponentDataWrapper,
-					new XAttribute(XMLNames.Component_ID_Attr, string.Format("GBX-{0}", gbxData.ModelName)),
-					GetDefaultComponentElements(string.Format("GBX-{0}", gbxData.ModelName), gbxData.ModelName),
+					new XAttribute(XMLNames.Component_ID_Attr, string.Format("GBX-{0}", gbxData.Model)),
+					GetDefaultComponentElements(string.Format("GBX-{0}", gbxData.Model), gbxData.Model),
 					new XElement(tns + XMLNames.Gearbox_TransmissionType, GearboxtypeToXML(gbxData.Type)),
 					gears
 					),
@@ -186,8 +187,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 		{
 			return new XElement(tns + XMLNames.Component_Angledrive,
 				new XElement(tns + XMLNames.ComponentDataWrapper,
-					new XAttribute(XMLNames.Component_ID_Attr, "ANGL-" + data.ModelName),
-					GetDefaultComponentElements(data.TypeId, data.ModelName),
+					new XAttribute(XMLNames.Component_ID_Attr, "ANGL-" + data.Model),
+					GetDefaultComponentElements(data.TechnicalReportId, data.Model),
 					new XElement(tns + XMLNames.AngleDrive_Ratio, data.Ratio),
 					new XElement(tns + XMLNames.AngleDrive_TorqueLossMap,
 						EmbedDataTable(data.LossMap, AttributeMappings.TransmissionLossmapMapping))));
@@ -198,7 +199,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 			return new XElement(tns + XMLNames.Component_Retarder,
 				new XElement(tns + XMLNames.ComponentDataWrapper,
 					new XAttribute(XMLNames.Component_ID_Attr, "RET-none"),
-					GetDefaultComponentElements(data.TypeId, data.ModelName),
+					GetDefaultComponentElements(data.TechnicalReportId, data.Model),
 					new XElement(tns + XMLNames.Retarder_RetarderLossMap,
 						EmbedDataTable(data.LossMap, AttributeMappings.RetarderLossmapMapping)
 						)
@@ -269,6 +270,16 @@ namespace TUGraz.VectoCore.OutputData.XML
 			return new XElement(tns + XMLNames.Component_Auxiliaries, aux);
 		}
 
+		private XElement CreateAirdrag(IAirdragDeclarationInputData data)
+		{
+			return new XElement(tns + XMLNames.Component_AirDrag,
+				new XElement(tns + XMLNames.ComponentDataWrapper,
+					new XAttribute(XMLNames.Component_ID_Attr,
+						string.Format("Airdrag-{0}", data.Model)),
+					GetDefaultComponentElements(data.Model, "N.A."),
+					new XElement(tns + XMLNames.AirDrag_DeclaredCdxA, data.AirDragArea.Value()))
+				);
+		}
 
 		private string AuxTypeToXML(AuxiliaryType type)
 		{
diff --git a/VectoCore/VectoCore/OutputData/XML/XMLEngineeringWriter.cs b/VectoCore/VectoCore/OutputData/XML/XMLEngineeringWriter.cs
index fa0aa08268..2676c5b39d 100644
--- a/VectoCore/VectoCore/OutputData/XML/XMLEngineeringWriter.cs
+++ b/VectoCore/VectoCore/OutputData/XML/XMLEngineeringWriter.cs
@@ -182,26 +182,27 @@ namespace TUGraz.VectoCore.OutputData.XML
 			var retarder = data.RetarderInputData;
 			var gearbox = data.GearboxInputData;
 			var vehicle = data.VehicleInputData;
+			var airdrag = data.AirdragInputData;
 			var angledrive = data.AngledriveInputData;
 			var pto = data.PTOTransmissionInputData;
 
 			return new XElement(tns + XMLNames.Component_Vehicle,
-				new XAttribute(XMLNames.Component_ID_Attr, "VEH-" + vehicle.ModelName),
-				GetDefaultComponentElements(vehicle.TypeId, vehicle.ModelName),
+				new XAttribute(XMLNames.Component_ID_Attr, "VEH-" + vehicle.Model),
+				GetDefaultComponentElements(vehicle.TechnicalReportId, vehicle.Model),
 				new XElement(tns + XMLNames.Vehicle_VehicleCategory, GetVehicleCategoryXML(vehicle.VehicleCategory)),
 				new XElement(tns + XMLNames.Vehicle_AxleConfiguration, vehicle.AxleConfiguration.GetName()),
-				new XElement(tns + XMLNames.Vehicle_CurbWeightChassis, vehicle.CurbWeightChassis.Value()),
+				new XElement(tns + XMLNames.Vehicle_CurbWeightChassis, vehicle.CurbMassChassis.Value()),
 				new XElement(tns + XMLNames.Vehicle_GrossVehicleMass, vehicle.GrossVehicleMassRating.Value()),
-				new XElement(tns + XMLNames.Vehicle_AirDragArea, vehicle.AirDragArea.Value()),
+				new XElement(tns + XMLNames.Vehicle_AirDragArea, airdrag.AirDragArea.Value()),
 				new XElement(tns + XMLNames.Vehicle_RetarderType, GetRetarterTypeXML(retarder.Type)),
 				retarder.Type.IsDedicatedComponent() ? new XElement(tns + XMLNames.Vehicle_RetarderRatio, retarder.Ratio) : null,
 				new XElement(tns + XMLNames.Vehicle_AngledriveType, angledrive.Type),
 				new XElement(tns + XMLNames.Vehicle_PTOType, pto.PTOTransmissionType),
 				GetPTOData(pto),
-				new XElement(tns + XMLNames.Vehicle_CurbWeightExtra, vehicle.CurbWeightExtra.Value()),
+				new XElement(tns + XMLNames.Vehicle_CurbWeightExtra, vehicle.CurbMassExtra.Value()),
 				new XElement(tns + XMLNames.Vehicle_Loading, vehicle.Loading.Value()),
-				new XElement(tns + XMLNames.Vehicle_CrossWindCorrectionMode, GetCorrectionModeXML(vehicle.CrossWindCorrectionMode)),
-				GetCrossWindCorrectionData(vehicle),
+				new XElement(tns + XMLNames.Vehicle_CrossWindCorrectionMode, GetCorrectionModeXML(airdrag.CrossWindCorrectionMode)),
+				GetCrossWindCorrectionData(airdrag),
 				new XElement(tns + XMLNames.Vehicle_Components,
 					CreateEngine(data.EngineInputData),
 					CreateGearbox(gearbox, gearbox.TorqueConverter),
@@ -209,7 +210,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 					retarder.Type.IsDedicatedComponent() ? CreateRetarder(retarder) : null,
 					CreateAxlegear(data.AxleGearInputData),
 					CreateAxleWheels(data.VehicleInputData),
-					CreateAuxiliaries(data.AuxiliaryInputData(), RemoveInvalidFileCharacters(data.VehicleInputData.ModelName))
+					CreateAuxiliaries(data.AuxiliaryInputData(), RemoveInvalidFileCharacters(data.VehicleInputData.Model))
 					),
 				new XElement(tns + XMLNames.Vehicle_AdvancedDriverAssist,
 					new XElement(tns + XMLNames.Vehicle_AdvancedDriverAssist_EngineStartStop,
@@ -239,22 +240,22 @@ namespace TUGraz.VectoCore.OutputData.XML
 			return new object[] { ptoLossMap, ptoCycle };
 		}
 
-		private XElement GetCrossWindCorrectionData(IVehicleEngineeringInputData vehicle)
+		private XElement GetCrossWindCorrectionData(IAirdragEngineeringInputData airdrag)
 		{
-			if (vehicle.CrossWindCorrectionMode == CrossWindCorrectionMode.NoCorrection ||
-				vehicle.CrossWindCorrectionMode == CrossWindCorrectionMode.DeclarationModeCorrection) {
+			if (airdrag.CrossWindCorrectionMode == CrossWindCorrectionMode.NoCorrection ||
+				airdrag.CrossWindCorrectionMode == CrossWindCorrectionMode.DeclarationModeCorrection) {
 				return null;
 			}
 
 			var correctionMap = new XElement(tns + XMLNames.Vehicle_CrosswindCorrectionData);
 
 			if (_singleFile) {
-				correctionMap.Add(EmbedDataTable(vehicle.CrosswindCorrectionMap, AttributeMappings.CrossWindCorrectionMapping));
+				correctionMap.Add(EmbedDataTable(airdrag.CrosswindCorrectionMap, AttributeMappings.CrossWindCorrectionMapping));
 			} else {
-				var ext = vehicle.CrossWindCorrectionMode == CrossWindCorrectionMode.SpeedDependentCorrectionFactor
+				var ext = airdrag.CrossWindCorrectionMode == CrossWindCorrectionMode.SpeedDependentCorrectionFactor
 					? "vcdv"
 					: "vcdb";
-				correctionMap.Add(ExtCSVResource(vehicle.CrosswindCorrectionMap, "CrossWindCorrection." + ext));
+				correctionMap.Add(ExtCSVResource(airdrag.CrosswindCorrectionMap, "CrossWindCorrection." + ext));
 			}
 
 			return correctionMap;
@@ -264,8 +265,9 @@ namespace TUGraz.VectoCore.OutputData.XML
 		{
 			var angledrive = new XElement(tns + XMLNames.Component_Angledrive,
 				new XElement(tns + XMLNames.ComponentDataWrapper,
-					new XAttribute(XMLNames.Component_ID_Attr, "ANGL-" + data.ModelName),
-					GetDefaultComponentElements(data.TypeId, data.ModelName), new XElement(tns + XMLNames.AngleDrive_Ratio, data.Ratio),
+					new XAttribute(XMLNames.Component_ID_Attr, "ANGL-" + data.Model),
+					GetDefaultComponentElements(data.TechnicalReportId, data.Model),
+					new XElement(tns + XMLNames.AngleDrive_Ratio, data.Ratio),
 					data.LossMap == null
 						? new XElement(tns + XMLNames.AngleDrive_Efficiency, data.Efficiency)
 						: new XElement(tns + XMLNames.AngleDrive_TorqueLossMap, GetTransmissionLossMap(data.LossMap))));
@@ -369,11 +371,11 @@ namespace TUGraz.VectoCore.OutputData.XML
 		{
 			var retarder = new XElement(tns + XMLNames.Component_Retarder,
 				new XElement(tns + XMLNames.ComponentDataWrapper, new XAttribute(XMLNames.Component_ID_Attr, "RET-none"),
-					GetDefaultComponentElements(data.TypeId, data.ModelName),
+					GetDefaultComponentElements(data.TechnicalReportId, data.Model),
 					new XElement(tns + XMLNames.Retarder_RetarderLossMap,
 						_singleFile
 							? EmbedDataTable(data.LossMap, AttributeMappings.RetarderLossmapMapping)
-							: ExtCSVResource(data.LossMap, string.Format("RET_{0}.vrlm", RemoveInvalidFileCharacters(data.ModelName))))));
+							: ExtCSVResource(data.LossMap, string.Format("RET_{0}.vrlm", RemoveInvalidFileCharacters(data.Model))))));
 			//if (_singleFile) {
 			return retarder;
 			//}
@@ -405,8 +407,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 			}
 			var gbx = new XElement(tns + XMLNames.Component_Gearbox,
 				new XElement(tns + XMLNames.ComponentDataWrapper,
-					new XAttribute(XMLNames.Component_ID_Attr, string.Format("GBX-{0}", data.ModelName)),
-					GetDefaultComponentElements(string.Format("GBX-{0}", data.ModelName), data.ModelName),
+					new XAttribute(XMLNames.Component_ID_Attr, string.Format("GBX-{0}", data.Model)),
+					GetDefaultComponentElements(string.Format("GBX-{0}", data.Model), data.Model),
 					new XElement(tns + XMLNames.Gearbox_TransmissionType, GearboxtypeToXML(data.Type)),
 					new XElement(tns + XMLNames.Gearbox_Inertia, data.Inertia.Value()),
 					new XElement(tns + XMLNames.Gearbox_TractionInterruption, data.TractionInterruption.Value()), gears),
@@ -415,7 +417,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 			if (_singleFile) {
 				return gbx;
 			}
-			return ExtComponent(XMLNames.Component_Gearbox, gbx, string.Format("GBX-{0}.xml", data.ModelName));
+			return ExtComponent(XMLNames.Component_Gearbox, gbx, string.Format("GBX-{0}.xml", data.Model));
 		}
 
 		private XElement CreateTorqueConverter(ITorqueConverterEngineeringInputData torqueConverterData)
@@ -455,8 +457,8 @@ namespace TUGraz.VectoCore.OutputData.XML
 		{
 			var engine = new XElement(tns + XMLNames.Component_Engine,
 				new XElement(tns + XMLNames.ComponentDataWrapper,
-					new XAttribute(XMLNames.Component_ID_Attr, string.Format("ENG-{0}", data.ModelName)),
-					GetDefaultComponentElements(string.Format("ENG-{0}", data.ModelName), data.ModelName),
+					new XAttribute(XMLNames.Component_ID_Attr, string.Format("ENG-{0}", data.Model)),
+					GetDefaultComponentElements(string.Format("ENG-{0}", data.Model), data.Model),
 					new XElement(tns + XMLNames.Engine_Displacement, data.Displacement.Value() * 1000 * 1000),
 					new XElement(tns + XMLNames.Engine_IdlingSpeed, data.IdleSpeed.AsRPM),
 					new XElement(tns + XMLNames.Engine_Inertia, data.Inertia.Value()),
@@ -466,7 +468,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 			if (!allowSeparateFile || _singleFile) {
 				return engine;
 			}
-			return ExtComponent(XMLNames.Component_Engine, engine, string.Format("ENG-{0}.xml", data.ModelName));
+			return ExtComponent(XMLNames.Component_Engine, engine, string.Format("ENG-{0}.xml", data.Model));
 		}
 
 		private XElement ExtComponent(string component, XElement componentXML, string filename)
@@ -485,7 +487,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 			if (_singleFile) {
 				return EmbedDataTable(data.FullLoadCurve, AttributeMappings.EngineFullLoadCurveMapping);
 			}
-			var filename = string.Format("ENG_{0}.vfld", data.ModelName);
+			var filename = string.Format("ENG_{0}.vfld", data.Model);
 			return ExtCSVResource(data.FullLoadCurve, filename);
 		}
 
@@ -495,7 +497,7 @@ namespace TUGraz.VectoCore.OutputData.XML
 				return EmbedDataTable(data.FuelConsumptionMap, AttributeMappings.FuelConsumptionMapMapping);
 			}
 
-			var filename = string.Format("ENG_{0}.vmap", data.ModelName);
+			var filename = string.Format("ENG_{0}.vmap", data.Model);
 			return ExtCSVResource(data.FuelConsumptionMap, filename);
 		}
 
diff --git a/VectoCore/VectoCore/Resources/XMLNames.Designer.cs b/VectoCore/VectoCore/Resources/XMLNames.Designer.cs
index b9f373dd86..c972ed40ca 100644
--- a/VectoCore/VectoCore/Resources/XMLNames.Designer.cs
+++ b/VectoCore/VectoCore/Resources/XMLNames.Designer.cs
@@ -1,1665 +1,1764 @@
 //------------------------------------------------------------------------------
 // <auto-generated>
-//     Dieser Code wurde von einem Tool generiert.
-//     Laufzeitversion:4.0.30319.42000
+//     This code was generated by a tool.
+//     Runtime Version:4.0.30319.42000
 //
-//     Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
-//     der Code erneut generiert wird.
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
 // </auto-generated>
 //------------------------------------------------------------------------------
 
-namespace TUGraz.VectoCore.Resources{
-	using System;
-	
-	
-	/// <summary>
-	///   Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
-	/// </summary>
-	// Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
-	// -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
-	// Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
-	// mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
-	[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
-	[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-	[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-	public class XMLNames {
-		
-		private static global::System.Resources.ResourceManager resourceMan;
-		
-		private static global::System.Globalization.CultureInfo resourceCulture;
-		
-		[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
-		internal XMLNames() {
-		}
-		
-		/// <summary>
-		///   Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
-		/// </summary>
-		[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-		public static global::System.Resources.ResourceManager ResourceManager {
-			get {
-				if (object.ReferenceEquals(resourceMan, null)) {
-					global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TUGraz.VectoCore.Resources.XMLNames", typeof(XMLNames).Assembly);
-					resourceMan = temp;
-				}
-				return resourceMan;
-			}
-		}
-		
-		/// <summary>
-		///   Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
-		///   Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
-		/// </summary>
-		[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-		public static global::System.Globalization.CultureInfo Culture {
-			get {
-				return resourceCulture;
-			}
-			set {
-				resourceCulture = value;
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Efficiency ähnelt.
-		/// </summary>
-		public static string AngleDrive_Efficiency {
-			get {
-				return ResourceManager.GetString("AngleDrive_Efficiency", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Angledrive_LossMap_Entry {
-			get {
-				return ResourceManager.GetString("Angledrive_LossMap_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Ratio ähnelt.
-		/// </summary>
-		public static string AngleDrive_Ratio {
-			get {
-				return ResourceManager.GetString("AngleDrive_Ratio", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TorqueLossMap ähnelt.
-		/// </summary>
-		public static string AngleDrive_TorqueLossMap {
-			get {
-				return ResourceManager.GetString("AngleDrive_TorqueLossMap", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die auxiliarySpeed ähnelt.
-		/// </summary>
-		public static string Aux_AuxMap_AuxiliarySpeed_Attr {
-			get {
-				return ResourceManager.GetString("Aux_AuxMap_AuxiliarySpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die mechanicalPower ähnelt.
-		/// </summary>
-		public static string Aux_AuxMap_MechanicalPower_Attr {
-			get {
-				return ResourceManager.GetString("Aux_AuxMap_MechanicalPower_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Auxiliary ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die AuxMap ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_AuxMap {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_AuxMap", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_AuxMap_Entry {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_AuxMap_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ConstantAuxLoad ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_ConstantAuxLoad {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_ConstantAuxLoad", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die EfficiencyAuxSupply ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_EfficiencyAuxSupply {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_EfficiencyAuxSupply", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die EfficiencyToEngine ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_EfficiencyToEngine {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_EfficiencyToEngine", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die id ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_ID_Attr {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_ID_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Technology ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_Technology {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_Technology", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TransmissionRatioToEngine ähnelt.
-		/// </summary>
-		public static string Auxiliaries_Auxiliary_TransmissionRatioToEngine {
-			get {
-				return ResourceManager.GetString("Auxiliaries_Auxiliary_TransmissionRatioToEngine", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die supplyPower ähnelt.
-		/// </summary>
-		public static string Auxr_AuxMapMapping_SupplyPower_Attr {
-			get {
-				return ResourceManager.GetString("Auxr_AuxMapMapping_SupplyPower_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Efficiency ähnelt.
-		/// </summary>
-		public static string Axlegear_Efficiency {
-			get {
-				return ResourceManager.GetString("Axlegear_Efficiency", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Ratio ähnelt.
-		/// </summary>
-		public static string Axlegear_Ratio {
-			get {
-				return ResourceManager.GetString("Axlegear_Ratio", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TorqueLossMap ähnelt.
-		/// </summary>
-		public static string Axlegear_TorqueLossMap {
-			get {
-				return ResourceManager.GetString("Axlegear_TorqueLossMap", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Axlegear_TorqueLossMap_Entry {
-			get {
-				return ResourceManager.GetString("Axlegear_TorqueLossMap_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Axles ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Axle ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die axleNumber ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_AxleNumber_Attr {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_AxleNumber_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die axleType ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_AxleType_Attr {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_AxleType_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Dimension ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_Dimension {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_Dimension", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die DynamicTyreRadius ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_DynamicTyreRadius {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_DynamicTyreRadius", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die FzISO ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_FzISO {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_FzISO", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Inertia ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_Inertia {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_Inertia", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die RRCISO ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_RRCISO {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_RRCISO", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die twinTyres ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_TwinTyres_Attr {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_TwinTyres_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die WeightShare ähnelt.
-		/// </summary>
-		public static string AxleWheels_Axles_Axle_WeightShare {
-			get {
-				return ResourceManager.GetString("AxleWheels_Axles_Axle_WeightShare", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Angledrive ähnelt.
-		/// </summary>
-		public static string Component_Angledrive {
-			get {
-				return ResourceManager.GetString("Component_Angledrive", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Auxiliaries ähnelt.
-		/// </summary>
-		public static string Component_Auxiliaries {
-			get {
-				return ResourceManager.GetString("Component_Auxiliaries", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Axlegear ähnelt.
-		/// </summary>
-		public static string Component_Axlegear {
-			get {
-				return ResourceManager.GetString("Component_Axlegear", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die AxleWheels ähnelt.
-		/// </summary>
-		public static string Component_AxleWheels {
-			get {
-				return ResourceManager.GetString("Component_AxleWheels", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Creator ähnelt.
-		/// </summary>
-		public static string Component_Creator {
-			get {
-				return ResourceManager.GetString("Component_Creator", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Date ähnelt.
-		/// </summary>
-		public static string Component_Date {
-			get {
-				return ResourceManager.GetString("Component_Date", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die DriverModel ähnelt.
-		/// </summary>
-		public static string Component_DriverModel {
-			get {
-				return ResourceManager.GetString("Component_DriverModel", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Engine ähnelt.
-		/// </summary>
-		public static string Component_Engine {
-			get {
-				return ResourceManager.GetString("Component_Engine", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Gearbox ähnelt.
-		/// </summary>
-		public static string Component_Gearbox {
-			get {
-				return ResourceManager.GetString("Component_Gearbox", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die id ähnelt.
-		/// </summary>
-		public static string Component_ID_Attr {
-			get {
-				return ResourceManager.GetString("Component_ID_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die MakeAndModel ähnelt.
-		/// </summary>
-		public static string Component_MakeAndModel {
-			get {
-				return ResourceManager.GetString("Component_MakeAndModel", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Retarder ähnelt.
-		/// </summary>
-		public static string Component_Retarder {
-			get {
-				return ResourceManager.GetString("Component_Retarder", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TorqueConverter ähnelt.
-		/// </summary>
-		public static string Component_TorqueConverter {
-			get {
-				return ResourceManager.GetString("Component_TorqueConverter", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TypeId ähnelt.
-		/// </summary>
-		public static string Component_TypeId {
-			get {
-				return ResourceManager.GetString("Component_TypeId", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Vehicle ähnelt.
-		/// </summary>
-		public static string Component_Vehicle {
-			get {
-				return ResourceManager.GetString("Component_Vehicle", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Vendor ähnelt.
-		/// </summary>
-		public static string Component_Vendor {
-			get {
-				return ResourceManager.GetString("Component_Vendor", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Data ähnelt.
-		/// </summary>
-		public static string ComponentDataWrapper {
-			get {
-				return ResourceManager.GetString("ComponentDataWrapper", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die decisionFactorVel ähnelt.
-		/// </summary>
-		public static string Driver_CoastingDFTargetSpeedLookupMapping_DecisionFactor_Attr {
-			get {
-				return ResourceManager.GetString("Driver_CoastingDFTargetSpeedLookupMapping_DecisionFactor_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die targetVelocity ähnelt.
-		/// </summary>
-		public static string Driver_CoastingDFTargetSpeedLookupMapping_TargetVelocity_Attr {
-			get {
-				return ResourceManager.GetString("Driver_CoastingDFTargetSpeedLookupMapping_TargetVelocity_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die decisionFactorDrop ähnelt.
-		/// </summary>
-		public static string Driver_CoastingDFVelocityDropLookupMapping_DecisionFactorDrop_Attr {
-			get {
-				return ResourceManager.GetString("Driver_CoastingDFVelocityDropLookupMapping_DecisionFactorDrop_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die velocityDrop ähnelt.
-		/// </summary>
-		public static string Driver_CoastingDFVelocityDropLookupMapping_VelocityDrop_Attr {
-			get {
-				return ResourceManager.GetString("Driver_CoastingDFVelocityDropLookupMapping_VelocityDrop_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die DriverAccelerationCurve ähnelt.
-		/// </summary>
-		public static string DriverModel_DriverAccelerationCurve {
-			get {
-				return ResourceManager.GetString("DriverModel_DriverAccelerationCurve", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string DriverModel_DriverAccelerationCurve_Entry {
-			get {
-				return ResourceManager.GetString("DriverModel_DriverAccelerationCurve_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die LookAheadCoasting ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die DecisionFactorOffset ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting_DecisionFactorOffset {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting_DecisionFactorOffset", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die DecisionFactorScaling ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting_DecisionFactorScaling {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting_DecisionFactorScaling", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Enabled ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting_Enabled {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting_Enabled", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die MinSpeed ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting_MinSpeed {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting_MinSpeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die PreviewDistanceFactor ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting_PreviewDistanceFactor {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting_PreviewDistanceFactor", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die SpeedDependentDecisionFactor ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting_SpeedDependentDecisionFactor {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting_SpeedDependentDecisionFactor", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die VelocityDropDecisionFactor ähnelt.
-		/// </summary>
-		public static string DriverModel_LookAheadCoasting_VelocityDropDecisionFactor {
-			get {
-				return ResourceManager.GetString("DriverModel_LookAheadCoasting_VelocityDropDecisionFactor", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Overspeed ähnelt.
-		/// </summary>
-		public static string DriverModel_Overspeed {
-			get {
-				return ResourceManager.GetString("DriverModel_Overspeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die AllowedOverspeed ähnelt.
-		/// </summary>
-		public static string DriverModel_Overspeed_AllowedOverspeed {
-			get {
-				return ResourceManager.GetString("DriverModel_Overspeed_AllowedOverspeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die AllowedUnderspeed ähnelt.
-		/// </summary>
-		public static string DriverModel_Overspeed_AllowedUnderspeed {
-			get {
-				return ResourceManager.GetString("DriverModel_Overspeed_AllowedUnderspeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die MinSpeed ähnelt.
-		/// </summary>
-		public static string DriverModel_Overspeed_MinSpeed {
-			get {
-				return ResourceManager.GetString("DriverModel_Overspeed_MinSpeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Mode ähnelt.
-		/// </summary>
-		public static string DriverModel_Overspeed_Mode {
-			get {
-				return ResourceManager.GetString("DriverModel_Overspeed_Mode", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ShiftStrategyParameters ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die DownshiftAfterUpshiftDelay ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_DownshiftAfterUpshiftDelay {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_DownshiftAfterUpshiftDelay", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die StartAcceleration ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_StartAcceleration {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_StartAcceleration", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die StartSpeed ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_StartSpeed {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_StartSpeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die StartTorqueReserve ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_StartTorqueReserve {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_StartTorqueReserve", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TimeBetweenGearshift ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_TimeBetweenGearshift {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_TimeBetweenGearshift", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TorqueReserve ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_TorqueReserve {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_TorqueReserve", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die UpshiftAfterDownshiftDelay ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_UpshiftAfterDownshiftDelay {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_UpshiftAfterDownshiftDelay", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die UpshiftMinAcceleration ähnelt.
-		/// </summary>
-		public static string DriverModel_ShiftStrategyParameters_UpshiftMinAcceleration {
-			get {
-				return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_UpshiftMinAcceleration", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ColdHotBalancingFactor ähnelt.
-		/// </summary>
-		public static string Engine_ColdHotBalancingFactor {
-			get {
-				return ResourceManager.GetString("Engine_ColdHotBalancingFactor", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Displacement ähnelt.
-		/// </summary>
-		public static string Engine_Displacement {
-			get {
-				return ResourceManager.GetString("Engine_Displacement", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die engineSpeed ähnelt.
-		/// </summary>
-		public static string Engine_EngineFullLoadCurve_EngineSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Engine_EngineFullLoadCurve_EngineSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die FuelConsumptionMap ähnelt.
-		/// </summary>
-		public static string Engine_FuelConsumptionMap {
-			get {
-				return ResourceManager.GetString("Engine_FuelConsumptionMap", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die engineSpeed ähnelt.
-		/// </summary>
-		public static string Engine_FuelConsumptionMap_EngineSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Engine_FuelConsumptionMap_EngineSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Engine_FuelConsumptionMap_Entry {
-			get {
-				return ResourceManager.GetString("Engine_FuelConsumptionMap_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die fuelConsumption ähnelt.
-		/// </summary>
-		public static string Engine_FuelConsumptionMap_FuelConsumption_Attr {
-			get {
-				return ResourceManager.GetString("Engine_FuelConsumptionMap_FuelConsumption_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die torque ähnelt.
-		/// </summary>
-		public static string Engine_FuelConsumptionMap_Torque_Attr {
-			get {
-				return ResourceManager.GetString("Engine_FuelConsumptionMap_Torque_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die FullLoadAndDragCurve ähnelt.
-		/// </summary>
-		public static string Engine_FullLoadAndDragCurve {
-			get {
-				return ResourceManager.GetString("Engine_FullLoadAndDragCurve", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die dragTorque ähnelt.
-		/// </summary>
-		public static string Engine_FullLoadCurve_DragTorque_Attr {
-			get {
-				return ResourceManager.GetString("Engine_FullLoadCurve_DragTorque_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Engine_FullLoadCurve_Entry {
-			get {
-				return ResourceManager.GetString("Engine_FullLoadCurve_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die maxTorque ähnelt.
-		/// </summary>
-		public static string Engine_FullLoadCurve_MaxTorque_Attr {
-			get {
-				return ResourceManager.GetString("Engine_FullLoadCurve_MaxTorque_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die IdlingSpeed ähnelt.
-		/// </summary>
-		public static string Engine_IdlingSpeed {
-			get {
-				return ResourceManager.GetString("Engine_IdlingSpeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Inertia ähnelt.
-		/// </summary>
-		public static string Engine_Inertia {
-			get {
-				return ResourceManager.GetString("Engine_Inertia", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die WHTCEngineering ähnelt.
-		/// </summary>
-		public static string Engine_WHTCEngineering {
-			get {
-				return ResourceManager.GetString("Engine_WHTCEngineering", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die WHTCMotorway ähnelt.
-		/// </summary>
-		public static string Engine_WHTCMotorway {
-			get {
-				return ResourceManager.GetString("Engine_WHTCMotorway", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die WHTCRural ähnelt.
-		/// </summary>
-		public static string Engine_WHTCRural {
-			get {
-				return ResourceManager.GetString("Engine_WHTCRural", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die WHTCUrban ähnelt.
-		/// </summary>
-		public static string Engine_WHTCUrban {
-			get {
-				return ResourceManager.GetString("Engine_WHTCUrban", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Resource ähnelt.
-		/// </summary>
-		public static string ExternalResource {
-			get {
-				return ResourceManager.GetString("ExternalResource", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die component ähnelt.
-		/// </summary>
-		public static string ExtResource_Component_Attr {
-			get {
-				return ResourceManager.GetString("ExtResource_Component_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die file ähnelt.
-		/// </summary>
-		public static string ExtResource_File_Attr {
-			get {
-				return ResourceManager.GetString("ExtResource_File_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die type ähnelt.
-		/// </summary>
-		public static string ExtResource_Type_Attr {
-			get {
-				return ResourceManager.GetString("ExtResource_Type_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die csv ähnelt.
-		/// </summary>
-		public static string ExtResource_Type_Value_CSV {
-			get {
-				return ResourceManager.GetString("ExtResource_Type_Value_CSV", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die xml ähnelt.
-		/// </summary>
-		public static string ExtResource_Type_Value_XML {
-			get {
-				return ResourceManager.GetString("ExtResource_Type_Value_XML", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die engineTorque ähnelt.
-		/// </summary>
-		public static string Gear_ShiftPolygon_EngineTorque_Attr {
-			get {
-				return ResourceManager.GetString("Gear_ShiftPolygon_EngineTorque_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die downshiftSpeed ähnelt.
-		/// </summary>
-		public static string Gear_ShiftPolygonMapping_DownshiftSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Gear_ShiftPolygonMapping_DownshiftSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die upshiftSpeed ähnelt.
-		/// </summary>
-		public static string Gear_ShiftPolygonMapping_UpshiftSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Gear_ShiftPolygonMapping_UpshiftSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Efficiency ähnelt.
-		/// </summary>
-		public static string Gearbox_Gear_Efficiency {
-			get {
-				return ResourceManager.GetString("Gearbox_Gear_Efficiency", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die number ähnelt.
-		/// </summary>
-		public static string Gearbox_Gear_GearNumber_Attr {
-			get {
-				return ResourceManager.GetString("Gearbox_Gear_GearNumber_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Ratio ähnelt.
-		/// </summary>
-		public static string Gearbox_Gear_Ratio {
-			get {
-				return ResourceManager.GetString("Gearbox_Gear_Ratio", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TorqueLossMap ähnelt.
-		/// </summary>
-		public static string Gearbox_Gear_TorqueLossMap {
-			get {
-				return ResourceManager.GetString("Gearbox_Gear_TorqueLossMap", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Gearbox_Gear_TorqueLossMap_Entry {
-			get {
-				return ResourceManager.GetString("Gearbox_Gear_TorqueLossMap_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Gears ähnelt.
-		/// </summary>
-		public static string Gearbox_Gears {
-			get {
-				return ResourceManager.GetString("Gearbox_Gears", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Gear ähnelt.
-		/// </summary>
-		public static string Gearbox_Gears_Gear {
-			get {
-				return ResourceManager.GetString("Gearbox_Gears_Gear", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ShiftPolygon ähnelt.
-		/// </summary>
-		public static string Gearbox_Gears_Gear_ShiftPolygon {
-			get {
-				return ResourceManager.GetString("Gearbox_Gears_Gear_ShiftPolygon", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Gearbox_Gears_Gear_ShiftPolygon_Entry {
-			get {
-				return ResourceManager.GetString("Gearbox_Gears_Gear_ShiftPolygon_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die MaxTorque ähnelt.
-		/// </summary>
-		public static string Gearbox_Gears_MaxTorque {
-			get {
-				return ResourceManager.GetString("Gearbox_Gears_MaxTorque", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Inertia ähnelt.
-		/// </summary>
-		public static string Gearbox_Inertia {
-			get {
-				return ResourceManager.GetString("Gearbox_Inertia", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TractionInterruption ähnelt.
-		/// </summary>
-		public static string Gearbox_TractionInterruption {
-			get {
-				return ResourceManager.GetString("Gearbox_TractionInterruption", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die TransmissionType ähnelt.
-		/// </summary>
-		public static string Gearbox_TransmissionType {
-			get {
-				return ResourceManager.GetString("Gearbox_TransmissionType", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string LookAheadCoasting_SpeedDependentDecisionFactor_Entry {
-			get {
-				return ResourceManager.GetString("LookAheadCoasting_SpeedDependentDecisionFactor_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string LookAheadCoasting_VelocityDropDecisionFactor_Entry {
-			get {
-				return ResourceManager.GetString("LookAheadCoasting_VelocityDropDecisionFactor_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Cycle ähnelt.
-		/// </summary>
-		public static string Missions_Cycle {
-			get {
-				return ResourceManager.GetString("Missions_Cycle", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die RetarderLossMap ähnelt.
-		/// </summary>
-		public static string Retarder_RetarderLossMap {
-			get {
-				return ResourceManager.GetString("Retarder_RetarderLossMap", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Retarder_RetarderLossMap_Entry {
-			get {
-				return ResourceManager.GetString("Retarder_RetarderLossMap_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die retarderSpeed ähnelt.
-		/// </summary>
-		public static string Retarder_RetarderLossmap_RetarderSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Retarder_RetarderLossmap_RetarderSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die torqueLoss ähnelt.
-		/// </summary>
-		public static string Retarder_RetarderLossmap_TorqueLoss_Attr {
-			get {
-				return ResourceManager.GetString("Retarder_RetarderLossmap_TorqueLoss_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Characteristics ähnelt.
-		/// </summary>
-		public static string TorqueConverter_Characteristics {
-			get {
-				return ResourceManager.GetString("TorqueConverter_Characteristics", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string TorqueConverter_Characteristics_Entry {
-			get {
-				return ResourceManager.GetString("TorqueConverter_Characteristics_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Inertia ähnelt.
-		/// </summary>
-		public static string TorqueConverter_Inertia {
-			get {
-				return ResourceManager.GetString("TorqueConverter_Inertia", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ReferenceRPM ähnelt.
-		/// </summary>
-		public static string TorqueConverter_ReferenceRPM {
-			get {
-				return ResourceManager.GetString("TorqueConverter_ReferenceRPM", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ShiftPolygon ähnelt.
-		/// </summary>
-		public static string TorqueConverter_ShiftPolygon {
-			get {
-				return ResourceManager.GetString("TorqueConverter_ShiftPolygon", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string TorqueConverter_ShiftPolygon_Entry {
-			get {
-				return ResourceManager.GetString("TorqueConverter_ShiftPolygon_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die speedRatio ähnelt.
-		/// </summary>
-		public static string TorqueConverterData_SpeedRatio_Attr {
-			get {
-				return ResourceManager.GetString("TorqueConverterData_SpeedRatio_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die torqueRatio ähnelt.
-		/// </summary>
-		public static string TorqueConverterData_TorqueRatio_Attr {
-			get {
-				return ResourceManager.GetString("TorqueConverterData_TorqueRatio_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die inputTorqueRef ähnelt.
-		/// </summary>
-		public static string TorqueConverterDataMapping_InputTorqueRef_Attr {
-			get {
-				return ResourceManager.GetString("TorqueConverterDataMapping_InputTorqueRef_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die inputSpeed ähnelt.
-		/// </summary>
-		public static string TransmissionLossmap_InputSpeed_Attr {
-			get {
-				return ResourceManager.GetString("TransmissionLossmap_InputSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die inputTorque ähnelt.
-		/// </summary>
-		public static string TransmissionLossmap_InputTorque_Attr {
-			get {
-				return ResourceManager.GetString("TransmissionLossmap_InputTorque_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die torqueLoss ähnelt.
-		/// </summary>
-		public static string TransmissionLossmap_TorqueLoss_Attr {
-			get {
-				return ResourceManager.GetString("TransmissionLossmap_TorqueLoss_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die VectoComponentEngineering ähnelt.
-		/// </summary>
-		public static string VectoComponentEngineering {
-			get {
-				return ResourceManager.GetString("VectoComponentEngineering", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die VectoInputDeclaration ähnelt.
-		/// </summary>
-		public static string VectoInputDeclaration {
-			get {
-				return ResourceManager.GetString("VectoInputDeclaration", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die VectoInputEngineering ähnelt.
-		/// </summary>
-		public static string VectoInputEngineering {
-			get {
-				return ResourceManager.GetString("VectoInputEngineering", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die EngineOnlyMode ähnelt.
-		/// </summary>
-		public static string VectoJob_EngineOnlyMode {
-			get {
-				return ResourceManager.GetString("VectoJob_EngineOnlyMode", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die MissionCycles ähnelt.
-		/// </summary>
-		public static string VectoJob_MissionCycles {
-			get {
-				return ResourceManager.GetString("VectoJob_MissionCycles", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die maxAcceleration ähnelt.
-		/// </summary>
-		public static string Vehicle_AccelerationCurve_MaxAcceleration_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_AccelerationCurve_MaxAcceleration_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die maxDeceleration ähnelt.
-		/// </summary>
-		public static string Vehicle_AccelerationCurve_MaxDeceleration_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_AccelerationCurve_MaxDeceleration_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die vehicleSpeed ähnelt.
-		/// </summary>
-		public static string Vehicle_AccelerationCurve_VehicleSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_AccelerationCurve_VehicleSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die AdvancedDriverAssist ähnelt.
-		/// </summary>
-		public static string Vehicle_AdvancedDriverAssist {
-			get {
-				return ResourceManager.GetString("Vehicle_AdvancedDriverAssist", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die EngineStartStop ähnelt.
-		/// </summary>
-		public static string Vehicle_AdvancedDriverAssist_EngineStartStop {
-			get {
-				return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ActivationDelay ähnelt.
-		/// </summary>
-		public static string Vehicle_AdvancedDriverAssist_EngineStartStop_ActivationDelay {
-			get {
-				return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_ActivationDelay", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Enabled ähnelt.
-		/// </summary>
-		public static string Vehicle_AdvancedDriverAssist_EngineStartStop_Enabled {
-			get {
-				return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_Enabled", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die MaxSpeed ähnelt.
-		/// </summary>
-		public static string Vehicle_AdvancedDriverAssist_EngineStartStop_MaxSpeed {
-			get {
-				return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_MaxSpeed", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die MinOnTime ähnelt.
-		/// </summary>
-		public static string Vehicle_AdvancedDriverAssist_EngineStartStop_MinOnTime {
-			get {
-				return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_MinOnTime", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die CdxA ähnelt.
-		/// </summary>
-		public static string Vehicle_AirDragArea {
-			get {
-				return ResourceManager.GetString("Vehicle_AirDragArea", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die AngledriveType ähnelt.
-		/// </summary>
-		public static string Vehicle_AngledriveType {
-			get {
-				return ResourceManager.GetString("Vehicle_AngledriveType", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die AxleConfiguration ähnelt.
-		/// </summary>
-		public static string Vehicle_AxleConfiguration {
-			get {
-				return ResourceManager.GetString("Vehicle_AxleConfiguration", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Components ähnelt.
-		/// </summary>
-		public static string Vehicle_Components {
-			get {
-				return ResourceManager.GetString("Vehicle_Components", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die CrossWindCorrectionData ähnelt.
-		/// </summary>
-		public static string Vehicle_CrosswindCorrectionData {
-			get {
-				return ResourceManager.GetString("Vehicle_CrosswindCorrectionData", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Vehicle_CrosswindCorrectionData_Entry {
-			get {
-				return ResourceManager.GetString("Vehicle_CrosswindCorrectionData_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die beta ähnelt.
-		/// </summary>
-		public static string Vehicle_CrosswindCorrectionMap_Beta {
-			get {
-				return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_Beta", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die CdScalingFactor ähnelt.
-		/// </summary>
-		public static string Vehicle_CrosswindCorrectionMap_CdScalingFactor {
-			get {
-				return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_CdScalingFactor", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die deltaCdxA ähnelt.
-		/// </summary>
-		public static string Vehicle_CrosswindCorrectionMap_DeltaCdxA {
-			get {
-				return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_DeltaCdxA", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die vehicleSpeed ähnelt.
-		/// </summary>
-		public static string Vehicle_CrosswindCorrectionMap_VehicleSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_VehicleSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die CrossWindCorrectionMode ähnelt.
-		/// </summary>
-		public static string Vehicle_CrossWindCorrectionMode {
-			get {
-				return ResourceManager.GetString("Vehicle_CrossWindCorrectionMode", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die CurbWeightChassis ähnelt.
-		/// </summary>
-		public static string Vehicle_CurbWeightChassis {
-			get {
-				return ResourceManager.GetString("Vehicle_CurbWeightChassis", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die CurbWeightExtra ähnelt.
-		/// </summary>
-		public static string Vehicle_CurbWeightExtra {
-			get {
-				return ResourceManager.GetString("Vehicle_CurbWeightExtra", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die GrossVehicleMass ähnelt.
-		/// </summary>
-		public static string Vehicle_GrossVehicleMass {
-			get {
-				return ResourceManager.GetString("Vehicle_GrossVehicleMass", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Loading ähnelt.
-		/// </summary>
-		public static string Vehicle_Loading {
-			get {
-				return ResourceManager.GetString("Vehicle_Loading", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die PTOCycle ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOCycle {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOCycle", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die engineSpeed ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOCycle_EngineSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOCycle_EngineSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOCycle_Entry {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOCycle_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die time ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOCycle_Time_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOCycle_Time_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die torque ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOCycle_Torque_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOCycle_Torque_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die PTOIdleLossMap ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOIdleLossMap {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOIdleLossMap", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die engineSpeed ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOIdleLossMap_EngineSpeed_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOIdleLossMap_EngineSpeed_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die Entry ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOIdleLossMap_Entry {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOIdleLossMap_Entry", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die ptoTorqueLoss ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOIdleLossMap_TorqueLoss_Attr {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOIdleLossMap_TorqueLoss_Attr", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die PTOType ähnelt.
-		/// </summary>
-		public static string Vehicle_PTOType {
-			get {
-				return ResourceManager.GetString("Vehicle_PTOType", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die RetarderRatio ähnelt.
-		/// </summary>
-		public static string Vehicle_RetarderRatio {
-			get {
-				return ResourceManager.GetString("Vehicle_RetarderRatio", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die RetarderType ähnelt.
-		/// </summary>
-		public static string Vehicle_RetarderType {
-			get {
-				return ResourceManager.GetString("Vehicle_RetarderType", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die SteeredAxles ähnelt.
-		/// </summary>
-		public static string Vehicle_SteeredAxles {
-			get {
-				return ResourceManager.GetString("Vehicle_SteeredAxles", resourceCulture);
-			}
-		}
-		
-		/// <summary>
-		///   Sucht eine lokalisierte Zeichenfolge, die VehicleCategory ähnelt.
-		/// </summary>
-		public static string Vehicle_VehicleCategory {
-			get {
-				return ResourceManager.GetString("Vehicle_VehicleCategory", resourceCulture);
-			}
-		}
-	}
+namespace TUGraz.VectoCore.Resources {
+    using System;
+    
+    
+    /// <summary>
+    ///   A strongly-typed resource class, for looking up localized strings, etc.
+    /// </summary>
+    // This class was auto-generated by the StronglyTypedResourceBuilder
+    // class via a tool like ResGen or Visual Studio.
+    // To add or remove a member, edit your .ResX file then rerun ResGen
+    // with the /str option, or rebuild your VS project.
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    public class XMLNames {
+        
+        private static global::System.Resources.ResourceManager resourceMan;
+        
+        private static global::System.Globalization.CultureInfo resourceCulture;
+        
+        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+        internal XMLNames() {
+        }
+        
+        /// <summary>
+        ///   Returns the cached ResourceManager instance used by this class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        public static global::System.Resources.ResourceManager ResourceManager {
+            get {
+                if (object.ReferenceEquals(resourceMan, null)) {
+                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TUGraz.VectoCore.Resources.XMLNames", typeof(XMLNames).Assembly);
+                    resourceMan = temp;
+                }
+                return resourceMan;
+            }
+        }
+        
+        /// <summary>
+        ///   Overrides the current thread's CurrentUICulture property for all
+        ///   resource lookups using this strongly typed resource class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        public static global::System.Globalization.CultureInfo Culture {
+            get {
+                return resourceCulture;
+            }
+            set {
+                resourceCulture = value;
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to DeclaredCdxA.
+        /// </summary>
+        public static string AirDrag_DeclaredCdxA {
+            get {
+                return ResourceManager.GetString("AirDrag_DeclaredCdxA", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Efficiency.
+        /// </summary>
+        public static string AngleDrive_Efficiency {
+            get {
+                return ResourceManager.GetString("AngleDrive_Efficiency", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Angledrive_LossMap_Entry {
+            get {
+                return ResourceManager.GetString("Angledrive_LossMap_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Ratio.
+        /// </summary>
+        public static string AngleDrive_Ratio {
+            get {
+                return ResourceManager.GetString("AngleDrive_Ratio", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TorqueLossMap.
+        /// </summary>
+        public static string AngleDrive_TorqueLossMap {
+            get {
+                return ResourceManager.GetString("AngleDrive_TorqueLossMap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to auxiliarySpeed.
+        /// </summary>
+        public static string Aux_AuxMap_AuxiliarySpeed_Attr {
+            get {
+                return ResourceManager.GetString("Aux_AuxMap_AuxiliarySpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to mechanicalPower.
+        /// </summary>
+        public static string Aux_AuxMap_MechanicalPower_Attr {
+            get {
+                return ResourceManager.GetString("Aux_AuxMap_MechanicalPower_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Auxiliary.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AuxMap.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_AuxMap {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_AuxMap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_AuxMap_Entry {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_AuxMap_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to ConstantAuxLoad.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_ConstantAuxLoad {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_ConstantAuxLoad", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to EfficiencyAuxSupply.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_EfficiencyAuxSupply {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_EfficiencyAuxSupply", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to EfficiencyToEngine.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_EfficiencyToEngine {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_EfficiencyToEngine", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to id.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_ID_Attr {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_ID_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Technology.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_Technology {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_Technology", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TransmissionRatioToEngine.
+        /// </summary>
+        public static string Auxiliaries_Auxiliary_TransmissionRatioToEngine {
+            get {
+                return ResourceManager.GetString("Auxiliaries_Auxiliary_TransmissionRatioToEngine", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to supplyPower.
+        /// </summary>
+        public static string Auxr_AuxMapMapping_SupplyPower_Attr {
+            get {
+                return ResourceManager.GetString("Auxr_AuxMapMapping_SupplyPower_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Efficiency.
+        /// </summary>
+        public static string Axlegear_Efficiency {
+            get {
+                return ResourceManager.GetString("Axlegear_Efficiency", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Ratio.
+        /// </summary>
+        public static string Axlegear_Ratio {
+            get {
+                return ResourceManager.GetString("Axlegear_Ratio", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TorqueLossMap.
+        /// </summary>
+        public static string Axlegear_TorqueLossMap {
+            get {
+                return ResourceManager.GetString("Axlegear_TorqueLossMap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Axlegear_TorqueLossMap_Entry {
+            get {
+                return ResourceManager.GetString("Axlegear_TorqueLossMap_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Axles.
+        /// </summary>
+        public static string AxleWheels_Axles {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Axle.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to axleNumber.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_AxleNumber_Attr {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_AxleNumber_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AxleType.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_AxleType {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_AxleType", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to axleType.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_AxleType_Attr {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_AxleType_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Dimension.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_Dimension {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_Dimension", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to DynamicTyreRadius.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_DynamicTyreRadius {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_DynamicTyreRadius", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to FzISO.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_FzISO {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_FzISO", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Inertia.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_Inertia {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_Inertia", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to RRCDeclared.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_RRCDeclared {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_RRCDeclared", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to RRCISO.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_RRCISO {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_RRCISO", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Steered.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_Steered {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_Steered", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TwinTyres.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_TwinTyres {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_TwinTyres", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to twinTyres.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_TwinTyres_Attr {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_TwinTyres_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Tyre.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_Tyre {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_Tyre", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to WeightShare.
+        /// </summary>
+        public static string AxleWheels_Axles_Axle_WeightShare {
+            get {
+                return ResourceManager.GetString("AxleWheels_Axles_Axle_WeightShare", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AirDrag.
+        /// </summary>
+        public static string Component_AirDrag {
+            get {
+                return ResourceManager.GetString("Component_AirDrag", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Angledrive.
+        /// </summary>
+        public static string Component_Angledrive {
+            get {
+                return ResourceManager.GetString("Component_Angledrive", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Auxiliaries.
+        /// </summary>
+        public static string Component_Auxiliaries {
+            get {
+                return ResourceManager.GetString("Component_Auxiliaries", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Axlegear.
+        /// </summary>
+        public static string Component_Axlegear {
+            get {
+                return ResourceManager.GetString("Component_Axlegear", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AxleWheels.
+        /// </summary>
+        public static string Component_AxleWheels {
+            get {
+                return ResourceManager.GetString("Component_AxleWheels", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CertificationNumber.
+        /// </summary>
+        public static string Component_CertificationNumber {
+            get {
+                return ResourceManager.GetString("Component_CertificationNumber", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Creator.
+        /// </summary>
+        public static string Component_Creator {
+            get {
+                return ResourceManager.GetString("Component_Creator", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Date.
+        /// </summary>
+        public static string Component_Date {
+            get {
+                return ResourceManager.GetString("Component_Date", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to DriverModel.
+        /// </summary>
+        public static string Component_DriverModel {
+            get {
+                return ResourceManager.GetString("Component_DriverModel", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Engine.
+        /// </summary>
+        public static string Component_Engine {
+            get {
+                return ResourceManager.GetString("Component_Engine", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Gearbox.
+        /// </summary>
+        public static string Component_Gearbox {
+            get {
+                return ResourceManager.GetString("Component_Gearbox", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to id.
+        /// </summary>
+        public static string Component_ID_Attr {
+            get {
+                return ResourceManager.GetString("Component_ID_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Manufacturer.
+        /// </summary>
+        public static string Component_Manufacturer {
+            get {
+                return ResourceManager.GetString("Component_Manufacturer", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Model.
+        /// </summary>
+        public static string Component_Model {
+            get {
+                return ResourceManager.GetString("Component_Model", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Retarder.
+        /// </summary>
+        public static string Component_Retarder {
+            get {
+                return ResourceManager.GetString("Component_Retarder", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TechnicalReportId.
+        /// </summary>
+        public static string Component_TechnicalReportId {
+            get {
+                return ResourceManager.GetString("Component_TechnicalReportId", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TorqueConverter.
+        /// </summary>
+        public static string Component_TorqueConverter {
+            get {
+                return ResourceManager.GetString("Component_TorqueConverter", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Vehicle.
+        /// </summary>
+        public static string Component_Vehicle {
+            get {
+                return ResourceManager.GetString("Component_Vehicle", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Data.
+        /// </summary>
+        public static string ComponentDataWrapper {
+            get {
+                return ResourceManager.GetString("ComponentDataWrapper", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to decisionFactorVel.
+        /// </summary>
+        public static string Driver_CoastingDFTargetSpeedLookupMapping_DecisionFactor_Attr {
+            get {
+                return ResourceManager.GetString("Driver_CoastingDFTargetSpeedLookupMapping_DecisionFactor_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to targetVelocity.
+        /// </summary>
+        public static string Driver_CoastingDFTargetSpeedLookupMapping_TargetVelocity_Attr {
+            get {
+                return ResourceManager.GetString("Driver_CoastingDFTargetSpeedLookupMapping_TargetVelocity_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to decisionFactorDrop.
+        /// </summary>
+        public static string Driver_CoastingDFVelocityDropLookupMapping_DecisionFactorDrop_Attr {
+            get {
+                return ResourceManager.GetString("Driver_CoastingDFVelocityDropLookupMapping_DecisionFactorDrop_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to velocityDrop.
+        /// </summary>
+        public static string Driver_CoastingDFVelocityDropLookupMapping_VelocityDrop_Attr {
+            get {
+                return ResourceManager.GetString("Driver_CoastingDFVelocityDropLookupMapping_VelocityDrop_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to DriverAccelerationCurve.
+        /// </summary>
+        public static string DriverModel_DriverAccelerationCurve {
+            get {
+                return ResourceManager.GetString("DriverModel_DriverAccelerationCurve", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string DriverModel_DriverAccelerationCurve_Entry {
+            get {
+                return ResourceManager.GetString("DriverModel_DriverAccelerationCurve_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to LookAheadCoasting.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to DecisionFactorOffset.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting_DecisionFactorOffset {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting_DecisionFactorOffset", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to DecisionFactorScaling.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting_DecisionFactorScaling {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting_DecisionFactorScaling", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Enabled.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting_Enabled {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting_Enabled", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to MinSpeed.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting_MinSpeed {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting_MinSpeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to PreviewDistanceFactor.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting_PreviewDistanceFactor {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting_PreviewDistanceFactor", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to SpeedDependentDecisionFactor.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting_SpeedDependentDecisionFactor {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting_SpeedDependentDecisionFactor", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to VelocityDropDecisionFactor.
+        /// </summary>
+        public static string DriverModel_LookAheadCoasting_VelocityDropDecisionFactor {
+            get {
+                return ResourceManager.GetString("DriverModel_LookAheadCoasting_VelocityDropDecisionFactor", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Overspeed.
+        /// </summary>
+        public static string DriverModel_Overspeed {
+            get {
+                return ResourceManager.GetString("DriverModel_Overspeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AllowedOverspeed.
+        /// </summary>
+        public static string DriverModel_Overspeed_AllowedOverspeed {
+            get {
+                return ResourceManager.GetString("DriverModel_Overspeed_AllowedOverspeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AllowedUnderspeed.
+        /// </summary>
+        public static string DriverModel_Overspeed_AllowedUnderspeed {
+            get {
+                return ResourceManager.GetString("DriverModel_Overspeed_AllowedUnderspeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to MinSpeed.
+        /// </summary>
+        public static string DriverModel_Overspeed_MinSpeed {
+            get {
+                return ResourceManager.GetString("DriverModel_Overspeed_MinSpeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Mode.
+        /// </summary>
+        public static string DriverModel_Overspeed_Mode {
+            get {
+                return ResourceManager.GetString("DriverModel_Overspeed_Mode", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to ShiftStrategyParameters.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to DownshiftAfterUpshiftDelay.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_DownshiftAfterUpshiftDelay {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_DownshiftAfterUpshiftDelay", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to StartAcceleration.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_StartAcceleration {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_StartAcceleration", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to StartSpeed.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_StartSpeed {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_StartSpeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to StartTorqueReserve.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_StartTorqueReserve {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_StartTorqueReserve", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TimeBetweenGearshift.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_TimeBetweenGearshift {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_TimeBetweenGearshift", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TorqueReserve.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_TorqueReserve {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_TorqueReserve", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to UpshiftAfterDownshiftDelay.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_UpshiftAfterDownshiftDelay {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_UpshiftAfterDownshiftDelay", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to UpshiftMinAcceleration.
+        /// </summary>
+        public static string DriverModel_ShiftStrategyParameters_UpshiftMinAcceleration {
+            get {
+                return ResourceManager.GetString("DriverModel_ShiftStrategyParameters_UpshiftMinAcceleration", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to BFColdHot.
+        /// </summary>
+        public static string Engine_ColdHotBalancingFactor {
+            get {
+                return ResourceManager.GetString("Engine_ColdHotBalancingFactor", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Displacement.
+        /// </summary>
+        public static string Engine_Displacement {
+            get {
+                return ResourceManager.GetString("Engine_Displacement", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to engineSpeed.
+        /// </summary>
+        public static string Engine_EngineFullLoadCurve_EngineSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Engine_EngineFullLoadCurve_EngineSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to FuelConsumptionMap.
+        /// </summary>
+        public static string Engine_FuelConsumptionMap {
+            get {
+                return ResourceManager.GetString("Engine_FuelConsumptionMap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to engineSpeed.
+        /// </summary>
+        public static string Engine_FuelConsumptionMap_EngineSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Engine_FuelConsumptionMap_EngineSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Engine_FuelConsumptionMap_Entry {
+            get {
+                return ResourceManager.GetString("Engine_FuelConsumptionMap_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to fuelConsumption.
+        /// </summary>
+        public static string Engine_FuelConsumptionMap_FuelConsumption_Attr {
+            get {
+                return ResourceManager.GetString("Engine_FuelConsumptionMap_FuelConsumption_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to torque.
+        /// </summary>
+        public static string Engine_FuelConsumptionMap_Torque_Attr {
+            get {
+                return ResourceManager.GetString("Engine_FuelConsumptionMap_Torque_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to FullLoadAndDragCurve.
+        /// </summary>
+        public static string Engine_FullLoadAndDragCurve {
+            get {
+                return ResourceManager.GetString("Engine_FullLoadAndDragCurve", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to dragTorque.
+        /// </summary>
+        public static string Engine_FullLoadCurve_DragTorque_Attr {
+            get {
+                return ResourceManager.GetString("Engine_FullLoadCurve_DragTorque_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Engine_FullLoadCurve_Entry {
+            get {
+                return ResourceManager.GetString("Engine_FullLoadCurve_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to maxTorque.
+        /// </summary>
+        public static string Engine_FullLoadCurve_MaxTorque_Attr {
+            get {
+                return ResourceManager.GetString("Engine_FullLoadCurve_MaxTorque_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to IdlingSpeed.
+        /// </summary>
+        public static string Engine_IdlingSpeed {
+            get {
+                return ResourceManager.GetString("Engine_IdlingSpeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Inertia.
+        /// </summary>
+        public static string Engine_Inertia {
+            get {
+                return ResourceManager.GetString("Engine_Inertia", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to WHTCEngineering.
+        /// </summary>
+        public static string Engine_WHTCEngineering {
+            get {
+                return ResourceManager.GetString("Engine_WHTCEngineering", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to WHTCMotorway.
+        /// </summary>
+        public static string Engine_WHTCMotorway {
+            get {
+                return ResourceManager.GetString("Engine_WHTCMotorway", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to WHTCRural.
+        /// </summary>
+        public static string Engine_WHTCRural {
+            get {
+                return ResourceManager.GetString("Engine_WHTCRural", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to WHTCUrban.
+        /// </summary>
+        public static string Engine_WHTCUrban {
+            get {
+                return ResourceManager.GetString("Engine_WHTCUrban", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Resource.
+        /// </summary>
+        public static string ExternalResource {
+            get {
+                return ResourceManager.GetString("ExternalResource", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to component.
+        /// </summary>
+        public static string ExtResource_Component_Attr {
+            get {
+                return ResourceManager.GetString("ExtResource_Component_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to file.
+        /// </summary>
+        public static string ExtResource_File_Attr {
+            get {
+                return ResourceManager.GetString("ExtResource_File_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to type.
+        /// </summary>
+        public static string ExtResource_Type_Attr {
+            get {
+                return ResourceManager.GetString("ExtResource_Type_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to csv.
+        /// </summary>
+        public static string ExtResource_Type_Value_CSV {
+            get {
+                return ResourceManager.GetString("ExtResource_Type_Value_CSV", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to xml.
+        /// </summary>
+        public static string ExtResource_Type_Value_XML {
+            get {
+                return ResourceManager.GetString("ExtResource_Type_Value_XML", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to engineTorque.
+        /// </summary>
+        public static string Gear_ShiftPolygon_EngineTorque_Attr {
+            get {
+                return ResourceManager.GetString("Gear_ShiftPolygon_EngineTorque_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to downshiftSpeed.
+        /// </summary>
+        public static string Gear_ShiftPolygonMapping_DownshiftSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Gear_ShiftPolygonMapping_DownshiftSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to upshiftSpeed.
+        /// </summary>
+        public static string Gear_ShiftPolygonMapping_UpshiftSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Gear_ShiftPolygonMapping_UpshiftSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Efficiency.
+        /// </summary>
+        public static string Gearbox_Gear_Efficiency {
+            get {
+                return ResourceManager.GetString("Gearbox_Gear_Efficiency", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to number.
+        /// </summary>
+        public static string Gearbox_Gear_GearNumber_Attr {
+            get {
+                return ResourceManager.GetString("Gearbox_Gear_GearNumber_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Ratio.
+        /// </summary>
+        public static string Gearbox_Gear_Ratio {
+            get {
+                return ResourceManager.GetString("Gearbox_Gear_Ratio", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TorqueLossMap.
+        /// </summary>
+        public static string Gearbox_Gear_TorqueLossMap {
+            get {
+                return ResourceManager.GetString("Gearbox_Gear_TorqueLossMap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Gearbox_Gear_TorqueLossMap_Entry {
+            get {
+                return ResourceManager.GetString("Gearbox_Gear_TorqueLossMap_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Gears.
+        /// </summary>
+        public static string Gearbox_Gears {
+            get {
+                return ResourceManager.GetString("Gearbox_Gears", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Gear.
+        /// </summary>
+        public static string Gearbox_Gears_Gear {
+            get {
+                return ResourceManager.GetString("Gearbox_Gears_Gear", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to ShiftPolygon.
+        /// </summary>
+        public static string Gearbox_Gears_Gear_ShiftPolygon {
+            get {
+                return ResourceManager.GetString("Gearbox_Gears_Gear_ShiftPolygon", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Gearbox_Gears_Gear_ShiftPolygon_Entry {
+            get {
+                return ResourceManager.GetString("Gearbox_Gears_Gear_ShiftPolygon_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to MaxTorque.
+        /// </summary>
+        public static string Gearbox_Gears_MaxTorque {
+            get {
+                return ResourceManager.GetString("Gearbox_Gears_MaxTorque", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Inertia.
+        /// </summary>
+        public static string Gearbox_Inertia {
+            get {
+                return ResourceManager.GetString("Gearbox_Inertia", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TractionInterruption.
+        /// </summary>
+        public static string Gearbox_TractionInterruption {
+            get {
+                return ResourceManager.GetString("Gearbox_TractionInterruption", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to TransmissionType.
+        /// </summary>
+        public static string Gearbox_TransmissionType {
+            get {
+                return ResourceManager.GetString("Gearbox_TransmissionType", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string LookAheadCoasting_SpeedDependentDecisionFactor_Entry {
+            get {
+                return ResourceManager.GetString("LookAheadCoasting_SpeedDependentDecisionFactor_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string LookAheadCoasting_VelocityDropDecisionFactor_Entry {
+            get {
+                return ResourceManager.GetString("LookAheadCoasting_VelocityDropDecisionFactor_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Cycle.
+        /// </summary>
+        public static string Missions_Cycle {
+            get {
+                return ResourceManager.GetString("Missions_Cycle", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to RetarderLossMap.
+        /// </summary>
+        public static string Retarder_RetarderLossMap {
+            get {
+                return ResourceManager.GetString("Retarder_RetarderLossMap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Retarder_RetarderLossMap_Entry {
+            get {
+                return ResourceManager.GetString("Retarder_RetarderLossMap_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to retarderSpeed.
+        /// </summary>
+        public static string Retarder_RetarderLossmap_RetarderSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Retarder_RetarderLossmap_RetarderSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to torqueLoss.
+        /// </summary>
+        public static string Retarder_RetarderLossmap_TorqueLoss_Attr {
+            get {
+                return ResourceManager.GetString("Retarder_RetarderLossmap_TorqueLoss_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Characteristics.
+        /// </summary>
+        public static string TorqueConverter_Characteristics {
+            get {
+                return ResourceManager.GetString("TorqueConverter_Characteristics", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string TorqueConverter_Characteristics_Entry {
+            get {
+                return ResourceManager.GetString("TorqueConverter_Characteristics_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Inertia.
+        /// </summary>
+        public static string TorqueConverter_Inertia {
+            get {
+                return ResourceManager.GetString("TorqueConverter_Inertia", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to ReferenceRPM.
+        /// </summary>
+        public static string TorqueConverter_ReferenceRPM {
+            get {
+                return ResourceManager.GetString("TorqueConverter_ReferenceRPM", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to ShiftPolygon.
+        /// </summary>
+        public static string TorqueConverter_ShiftPolygon {
+            get {
+                return ResourceManager.GetString("TorqueConverter_ShiftPolygon", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string TorqueConverter_ShiftPolygon_Entry {
+            get {
+                return ResourceManager.GetString("TorqueConverter_ShiftPolygon_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to speedRatio.
+        /// </summary>
+        public static string TorqueConverterData_SpeedRatio_Attr {
+            get {
+                return ResourceManager.GetString("TorqueConverterData_SpeedRatio_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to torqueRatio.
+        /// </summary>
+        public static string TorqueConverterData_TorqueRatio_Attr {
+            get {
+                return ResourceManager.GetString("TorqueConverterData_TorqueRatio_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to inputTorqueRef.
+        /// </summary>
+        public static string TorqueConverterDataMapping_InputTorqueRef_Attr {
+            get {
+                return ResourceManager.GetString("TorqueConverterDataMapping_InputTorqueRef_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to inputSpeed.
+        /// </summary>
+        public static string TransmissionLossmap_InputSpeed_Attr {
+            get {
+                return ResourceManager.GetString("TransmissionLossmap_InputSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to inputTorque.
+        /// </summary>
+        public static string TransmissionLossmap_InputTorque_Attr {
+            get {
+                return ResourceManager.GetString("TransmissionLossmap_InputTorque_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to torqueLoss.
+        /// </summary>
+        public static string TransmissionLossmap_TorqueLoss_Attr {
+            get {
+                return ResourceManager.GetString("TransmissionLossmap_TorqueLoss_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to VectoComponentEngineering.
+        /// </summary>
+        public static string VectoComponentEngineering {
+            get {
+                return ResourceManager.GetString("VectoComponentEngineering", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to VectoInputDeclaration.
+        /// </summary>
+        public static string VectoInputDeclaration {
+            get {
+                return ResourceManager.GetString("VectoInputDeclaration", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to VectoInputEngineering.
+        /// </summary>
+        public static string VectoInputEngineering {
+            get {
+                return ResourceManager.GetString("VectoInputEngineering", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to EngineOnlyMode.
+        /// </summary>
+        public static string VectoJob_EngineOnlyMode {
+            get {
+                return ResourceManager.GetString("VectoJob_EngineOnlyMode", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to MissionCycles.
+        /// </summary>
+        public static string VectoJob_MissionCycles {
+            get {
+                return ResourceManager.GetString("VectoJob_MissionCycles", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to maxAcceleration.
+        /// </summary>
+        public static string Vehicle_AccelerationCurve_MaxAcceleration_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_AccelerationCurve_MaxAcceleration_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to maxDeceleration.
+        /// </summary>
+        public static string Vehicle_AccelerationCurve_MaxDeceleration_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_AccelerationCurve_MaxDeceleration_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to vehicleSpeed.
+        /// </summary>
+        public static string Vehicle_AccelerationCurve_VehicleSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_AccelerationCurve_VehicleSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AdvancedDriverAssist.
+        /// </summary>
+        public static string Vehicle_AdvancedDriverAssist {
+            get {
+                return ResourceManager.GetString("Vehicle_AdvancedDriverAssist", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to EngineStartStop.
+        /// </summary>
+        public static string Vehicle_AdvancedDriverAssist_EngineStartStop {
+            get {
+                return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to ActivationDelay.
+        /// </summary>
+        public static string Vehicle_AdvancedDriverAssist_EngineStartStop_ActivationDelay {
+            get {
+                return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_ActivationDelay", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Enabled.
+        /// </summary>
+        public static string Vehicle_AdvancedDriverAssist_EngineStartStop_Enabled {
+            get {
+                return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_Enabled", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to MaxSpeed.
+        /// </summary>
+        public static string Vehicle_AdvancedDriverAssist_EngineStartStop_MaxSpeed {
+            get {
+                return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_MaxSpeed", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to MinOnTime.
+        /// </summary>
+        public static string Vehicle_AdvancedDriverAssist_EngineStartStop_MinOnTime {
+            get {
+                return ResourceManager.GetString("Vehicle_AdvancedDriverAssist_EngineStartStop_MinOnTime", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CdxA.
+        /// </summary>
+        public static string Vehicle_AirDragArea {
+            get {
+                return ResourceManager.GetString("Vehicle_AirDragArea", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AngledriveType.
+        /// </summary>
+        public static string Vehicle_AngledriveType {
+            get {
+                return ResourceManager.GetString("Vehicle_AngledriveType", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to AxleConfiguration.
+        /// </summary>
+        public static string Vehicle_AxleConfiguration {
+            get {
+                return ResourceManager.GetString("Vehicle_AxleConfiguration", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Components.
+        /// </summary>
+        public static string Vehicle_Components {
+            get {
+                return ResourceManager.GetString("Vehicle_Components", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CrossWindCorrectionData.
+        /// </summary>
+        public static string Vehicle_CrosswindCorrectionData {
+            get {
+                return ResourceManager.GetString("Vehicle_CrosswindCorrectionData", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Vehicle_CrosswindCorrectionData_Entry {
+            get {
+                return ResourceManager.GetString("Vehicle_CrosswindCorrectionData_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to beta.
+        /// </summary>
+        public static string Vehicle_CrosswindCorrectionMap_Beta {
+            get {
+                return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_Beta", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CdScalingFactor.
+        /// </summary>
+        public static string Vehicle_CrosswindCorrectionMap_CdScalingFactor {
+            get {
+                return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_CdScalingFactor", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to deltaCdxA.
+        /// </summary>
+        public static string Vehicle_CrosswindCorrectionMap_DeltaCdxA {
+            get {
+                return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_DeltaCdxA", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to vehicleSpeed.
+        /// </summary>
+        public static string Vehicle_CrosswindCorrectionMap_VehicleSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_CrosswindCorrectionMap_VehicleSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CrossWindCorrectionMode.
+        /// </summary>
+        public static string Vehicle_CrossWindCorrectionMode {
+            get {
+                return ResourceManager.GetString("Vehicle_CrossWindCorrectionMode", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CurbMassChassis.
+        /// </summary>
+        public static string Vehicle_CurbMassChassis {
+            get {
+                return ResourceManager.GetString("Vehicle_CurbMassChassis", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CurbMassExtra.
+        /// </summary>
+        public static string Vehicle_CurbMassExtra {
+            get {
+                return ResourceManager.GetString("Vehicle_CurbMassExtra", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CurbWeightChassis.
+        /// </summary>
+        public static string Vehicle_CurbWeightChassis {
+            get {
+                return ResourceManager.GetString("Vehicle_CurbWeightChassis", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to CurbWeightExtra.
+        /// </summary>
+        public static string Vehicle_CurbWeightExtra {
+            get {
+                return ResourceManager.GetString("Vehicle_CurbWeightExtra", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to GrossVehicleMass.
+        /// </summary>
+        public static string Vehicle_GrossVehicleMass {
+            get {
+                return ResourceManager.GetString("Vehicle_GrossVehicleMass", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Loading.
+        /// </summary>
+        public static string Vehicle_Loading {
+            get {
+                return ResourceManager.GetString("Vehicle_Loading", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to PTOCycle.
+        /// </summary>
+        public static string Vehicle_PTOCycle {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOCycle", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to engineSpeed.
+        /// </summary>
+        public static string Vehicle_PTOCycle_EngineSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOCycle_EngineSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Vehicle_PTOCycle_Entry {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOCycle_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to time.
+        /// </summary>
+        public static string Vehicle_PTOCycle_Time_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOCycle_Time_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to torque.
+        /// </summary>
+        public static string Vehicle_PTOCycle_Torque_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOCycle_Torque_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to PTOIdleLossMap.
+        /// </summary>
+        public static string Vehicle_PTOIdleLossMap {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOIdleLossMap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to engineSpeed.
+        /// </summary>
+        public static string Vehicle_PTOIdleLossMap_EngineSpeed_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOIdleLossMap_EngineSpeed_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to Entry.
+        /// </summary>
+        public static string Vehicle_PTOIdleLossMap_Entry {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOIdleLossMap_Entry", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to ptoTorqueLoss.
+        /// </summary>
+        public static string Vehicle_PTOIdleLossMap_TorqueLoss_Attr {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOIdleLossMap_TorqueLoss_Attr", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to PTOType.
+        /// </summary>
+        public static string Vehicle_PTOType {
+            get {
+                return ResourceManager.GetString("Vehicle_PTOType", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to RetarderRatio.
+        /// </summary>
+        public static string Vehicle_RetarderRatio {
+            get {
+                return ResourceManager.GetString("Vehicle_RetarderRatio", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to RetarderType.
+        /// </summary>
+        public static string Vehicle_RetarderType {
+            get {
+                return ResourceManager.GetString("Vehicle_RetarderType", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to SteeredAxles.
+        /// </summary>
+        public static string Vehicle_SteeredAxles {
+            get {
+                return ResourceManager.GetString("Vehicle_SteeredAxles", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to VehicleCategory.
+        /// </summary>
+        public static string Vehicle_VehicleCategory {
+            get {
+                return ResourceManager.GetString("Vehicle_VehicleCategory", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to VIN.
+        /// </summary>
+        public static string Vehicle_VIN {
+            get {
+                return ResourceManager.GetString("Vehicle_VIN", resourceCulture);
+            }
+        }
+    }
 }
diff --git a/VectoCore/VectoCore/Resources/XMLNames.resx b/VectoCore/VectoCore/Resources/XMLNames.resx
index 895201fda4..fb7cbd034a 100644
--- a/VectoCore/VectoCore/Resources/XMLNames.resx
+++ b/VectoCore/VectoCore/Resources/XMLNames.resx
@@ -196,7 +196,7 @@
 		<value>WHTCMotorway</value>
 	</data>
 	<data name="Engine_ColdHotBalancingFactor" xml:space="preserve">
-		<value>ColdHotBalancingFactor</value>
+		<value>BFColdHot</value>
 	</data>
 	<data name="Engine_FuelConsumptionMap" xml:space="preserve">
 		<value>FuelConsumptionMap</value>
@@ -543,8 +543,8 @@
 	<data name="Driver_CoastingDFVelocityDropLookupMapping_DecisionFactorDrop_Attr" xml:space="preserve">
 		<value>decisionFactorDrop</value>
 	</data>
-	<data name="Component_Vendor" xml:space="preserve">
-		<value>Vendor</value>
+	<data name="Component_Manufacturer" xml:space="preserve">
+		<value>Manufacturer</value>
 	</data>
 	<data name="Component_Creator" xml:space="preserve">
 		<value>Creator</value>
@@ -552,11 +552,11 @@
 	<data name="Component_Date" xml:space="preserve">
 		<value>Date</value>
 	</data>
-	<data name="Component_MakeAndModel" xml:space="preserve">
-		<value>MakeAndModel</value>
+	<data name="Component_Model" xml:space="preserve">
+		<value>Model</value>
 	</data>
-	<data name="Component_TypeId" xml:space="preserve">
-		<value>TypeId</value>
+	<data name="Component_CertificationNumber" xml:space="preserve">
+		<value>CertificationNumber</value>
 	</data>
 	<data name="Angledrive_LossMap_Entry" xml:space="preserve">
 		<value>Entry</value>
@@ -650,5 +650,38 @@
   </data>
 	<data name="Vehicle_PTOCycle_Torque_Attr" xml:space="preserve">
     <value>torque</value>
+  </data>
+	<data name="Vehicle_CurbMassChassis" xml:space="preserve">
+    <value>CurbMassChassis</value>
+  </data>
+	<data name="Vehicle_VIN" xml:space="preserve">
+    <value>VIN</value>
+  </data>
+	<data name="AxleWheels_Axles_Axle_AxleType" xml:space="preserve">
+    <value>AxleType</value>
+  </data>
+	<data name="AxleWheels_Axles_Axle_TwinTyres" xml:space="preserve">
+    <value>TwinTyres</value>
+  </data>
+	<data name="AxleWheels_Axles_Axle_Steered" xml:space="preserve">
+    <value>Steered</value>
+  </data>
+	<data name="AxleWheels_Axles_Axle_Tyre" xml:space="preserve">
+    <value>Tyre</value>
+  </data>
+	<data name="Component_AirDrag" xml:space="preserve">
+    <value>AirDrag</value>
+  </data>
+	<data name="AirDrag_DeclaredCdxA" xml:space="preserve">
+    <value>DeclaredCdxA</value>
+  </data>
+	<data name="Vehicle_CurbMassExtra" xml:space="preserve">
+    <value>CurbMassExtra</value>
+  </data>
+	<data name="Component_TechnicalReportId" xml:space="preserve">
+    <value>TechnicalReportId</value>
+  </data>
+	<data name="AxleWheels_Axles_Axle_RRCDeclared" xml:space="preserve">
+    <value>RRCDeclared</value>
   </data>
 </root>
\ No newline at end of file
diff --git a/VectoCore/VectoCore/VectoCore.csproj b/VectoCore/VectoCore/VectoCore.csproj
index 83ce376e64..efe727aaa0 100644
--- a/VectoCore/VectoCore/VectoCore.csproj
+++ b/VectoCore/VectoCore/VectoCore.csproj
@@ -115,6 +115,7 @@
     <Compile Include="InputData\FileIO\JSON\JSONComponentInputData.cs" />
     <Compile Include="InputData\FileIO\JSON\JsonExtensionMethods.cs" />
     <Compile Include="InputData\FileIO\XML\Declaration\AbstractDeclarationXMLComponentDataProvider.cs" />
+    <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationAirdragDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationAngledriveDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationAuxiliaryDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationAxlegearDataProvider.cs" />
@@ -125,8 +126,9 @@
     <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationRetarderDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationTorqueConverterDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationVehicleDataProvider.cs" />
-    <Compile Include="InputData\FileIO\XML\Declaration\XMLInputDataProvider.cs" />
+    <Compile Include="InputData\FileIO\XML\Declaration\XMLDeclarationInputDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Engineering\AbstractEngineeringXMLComponentDataProvider.cs" />
+    <Compile Include="InputData\FileIO\XML\Engineering\XMLEngineeringAirdragDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Engineering\XMLEngineeringAngledriveDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Engineering\XMLEngineeringAuxiliaryDataProvider.cs" />
     <Compile Include="InputData\FileIO\XML\Engineering\XMLEngineeringAxlegearDataProvider.cs" />
@@ -193,7 +195,11 @@
     <Compile Include="OutputData\XML\XMLDeclarationReport.cs" />
     <Compile Include="OutputData\XML\XMLDeclarationWriter.cs" />
     <Compile Include="OutputData\XML\XMLEngineeringWriter.cs" />
-    <Compile Include="Resources\XMLNames.Designer.cs" />
+    <Compile Include="Resources\XMLNames.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>XMLNames.resx</DependentUpon>
+    </Compile>
     <Compile Include="Utils\ProviderExtensions.cs" />
     <Compile Include="Models\Declaration\AirDrag.cs" />
     <Compile Include="Models\Declaration\Fan.cs" />
@@ -339,6 +345,8 @@
   <ItemGroup>
     <EmbeddedResource Include="Resources\XMLNames.resx">
       <SubType>Designer</SubType>
+      <Generator>PublicResXFileCodeGenerator</Generator>
+      <LastGenOutput>XMLNames.Designer.cs</LastGenOutput>
     </EmbeddedResource>
     <None Include="app.config" />
     <None Include="packages.config" />
@@ -415,6 +423,12 @@
     <EmbeddedResource Include="Resources\XSD\VectoOutput.xsd">
       <SubType>Designer</SubType>
     </EmbeddedResource>
+    <EmbeddedResource Include="Resources\XSD\VectoDeclarationDefinitions.0.8.xsd">
+      <SubType>Designer</SubType>
+    </EmbeddedResource>
+    <EmbeddedResource Include="Resources\XSD\xmldsig-core-schema.xsd">
+      <SubType>Designer</SubType>
+    </EmbeddedResource>
   </ItemGroup>
   <ItemGroup>
     <EmbeddedResource Include="Resources\Declaration\Report\4x2r.png" />
diff --git a/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs b/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
index d77cd1a9d6..89828edd24 100644
--- a/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
+++ b/VectoCore/VectoCoreTest/Models/SimulationComponentData/ValidationTest.cs
@@ -118,7 +118,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			fullLoad.Rows.Add("3", "3", "-3", "3");
 			fullLoad.Rows.Add("3", "3", "-3", "3");
 			var data = new MockEngineDataProvider {
-				ModelName = "asdf",
+				Model = "asdf",
 				Displacement = 6374.SI().Cubic.Centi.Meter.Cast<CubicMeter>(),
 				IdleSpeed = 560.RPMtoRad(),
 				Inertia = 1.SI<KilogramSquareMeter>(),
@@ -153,7 +153,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData
 			fullLoad.Rows.Add("3", "3", "-3", "3");
 			fullLoad.Rows.Add("3", "3", "-3", "3");
 			var data = new MockEngineDataProvider {
-				ModelName = "asdf",
+				Model = "asdf",
 				Displacement = 6374.SI().Cubic.Centi.Meter.Cast<CubicMeter>(),
 				IdleSpeed = 560.RPMtoRad(),
 				Inertia = 1.SI<KilogramSquareMeter>(),
diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderEngineering/engineering_job-sample_FULL.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderEngineering/engineering_job-sample_FULL.xml
index 4505c30886..726dbaf471 100644
--- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderEngineering/engineering_job-sample_FULL.xml
+++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderEngineering/engineering_job-sample_FULL.xml
@@ -2553,7 +2553,6 @@
 				<TorqueConverter>
 					<Data>
 						<ReferenceRPM>1000</ReferenceRPM>
-						
 						<Characteristics>
 							<Entry speedRatio="0.0000" inputTorqueRef="300.00" torqueRatio="1.80"/>
 							<Entry speedRatio="1.0000" inputTorqueRef="10.00" torqueRatio="1.00"/>
@@ -3500,9 +3499,17 @@
 			<Entry vehicleSpeed="100" maxAcceleration="1" maxDeceleration="-1"/>
 		</DriverAccelerationCurve>
 		<ShiftStrategyParameters>
-			<UpshiftMinAcceleration>0.1</UpshiftMinAcceleration>
+			<UpshiftMinAcceleration>0.133</UpshiftMinAcceleration>
 			<DownshiftAfterUpshiftDelay>12</DownshiftAfterUpshiftDelay>
 			<UpshiftAfterDownshiftDelay>13</UpshiftAfterDownshiftDelay>
+			<TorqueReserve>0.213</TorqueReserve>
+			<TimeBetweenGearshift>2.33</TimeBetweenGearshift>
+			<StartSpeed>2.11</StartSpeed>
+			<StartAcceleration>0.211</StartAcceleration>
+			<StartTorqueReserve>0.212</StartTorqueReserve>
+			<PowershiftShiftTime>0.811</PowershiftShiftTime>
+			<CLUpshiftMinAcceleration>0.133</CLUpshiftMinAcceleration>
+			<CCUpshiftMinAcceleration>0.134</CCUpshiftMinAcceleration>
 		</ShiftStrategyParameters>
 	</DriverModel>
 	<MissionCycles>
diff --git a/VectoCore/VectoCoreTest/Utils/MockEngineDataProvider.cs b/VectoCore/VectoCoreTest/Utils/MockEngineDataProvider.cs
index c99795d2e7..440e4e22ee 100644
--- a/VectoCore/VectoCoreTest/Utils/MockEngineDataProvider.cs
+++ b/VectoCore/VectoCoreTest/Utils/MockEngineDataProvider.cs
@@ -40,11 +40,12 @@ namespace TUGraz.VectoCore.Tests.Utils
 		public DataSourceType SourceType { get; set; }
 		public string Source { get; set; }
 		public bool SavedInDeclarationMode { get; set; }
-		public string Vendor { get; set; }
-		public string ModelName { get; set; }
+		public string Manufacturer { get; set; }
+		public string Model { get; set; }
 		public string Creator { get; set; }
 		public string Date { get; set; }
-		public string TypeId { get; set; }
+		public string TechnicalReportId { get; set; }
+		public string CertificationNumber { get; set; }
 		public string DigestValue { get; set; }
 		public IntegrityStatus IntegrityStatus { get; set; }
 		public CubicMeter Displacement { get; set; }
diff --git a/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs b/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs
index 71717c378c..11c1a90055 100644
--- a/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs
+++ b/VectoCore/VectoCoreTest/Utils/MockSimulationDataFactory.cs
@@ -82,7 +82,8 @@ namespace TUGraz.VectoCore.Tests.Utils
 		{
 			var dao = new EngineeringDataAdapter();
 			var vehicleInput = JSONInputDataFactory.ReadJsonVehicle(vehicleDataFile);
-			return dao.CreateVehicleData(vehicleInput);
+			var airdragData = vehicleInput as IAirdragEngineeringInputData;
+			return dao.CreateVehicleData(vehicleInput, airdragData);
 		}
 
 		public static DriverData CreateDriverDataFromFile(string driverDataFile)
diff --git a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs
index df7209497f..3aa33804be 100644
--- a/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLDeclarationInputTest.cs
@@ -30,15 +30,15 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 
 			var engineDataProvider = inputDataProvider.EngineInputData;
 
 			Assert.IsTrue(engineDataProvider.SavedInDeclarationMode);
 
-			Assert.AreEqual("Generic 40t Long Haul Truck Engine", engineDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck Engine", engineDataProvider.Model);
 			Assert.AreEqual(0.012730, engineDataProvider.Displacement.Value());
-			Assert.AreEqual(0.97, engineDataProvider.WHTCUrban);
+			Assert.AreEqual(1.0097, engineDataProvider.WHTCUrban);
 			//AssertHelper.Exception<VectoException>(() => { var tmp = engineDataProvider.Inertia; });
 
 			var fcMapTable = engineDataProvider.FuelConsumptionMap;
@@ -47,7 +47,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("torque", fcMapTable.Columns[1].Caption);
 			Assert.AreEqual("fuel consumption", fcMapTable.Columns[2].Caption);
 
-			Assert.AreEqual("560", fcMapTable.Rows[0][0]);
+			Assert.AreEqual("560.00", fcMapTable.Rows[0][0]);
 			var fcMap = FuelConsumptionMapReader.Create(fcMapTable);
 			Assert.AreEqual(1256.SI().Gramm.Per.Hour.ConvertTo().Kilo.Gramm.Per.Second.Value(),
 				fcMap.GetFuelConsumption(0.SI<NewtonMeter>(), 560.RPMtoRad()).Value.Value());
@@ -65,18 +65,18 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 			var gearboxDataProvider = inputDataProvider.GearboxInputData;
 
-			Assert.AreEqual("Generic 40t Long Haul Truck Gearbox", gearboxDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck Gearbox", gearboxDataProvider.Model);
 			Assert.AreEqual(GearboxType.AMT, gearboxDataProvider.Type);
 			var gears = gearboxDataProvider.Gears;
 			Assert.AreEqual(12, gears.Count);
 
 			Assert.AreEqual(1, gears.First().Gear);
 			Assert.AreEqual(14.93, gears.First().Ratio);
-			Assert.AreEqual("0", gears.First().LossMap.Rows[0][0]);
-			Assert.AreEqual("-350", gears.First().LossMap.Rows[0][1]);
+			Assert.AreEqual("0.00", gears.First().LossMap.Rows[0][0]);
+			Assert.AreEqual("-350.00", gears.First().LossMap.Rows[0][1]);
 			Assert.AreEqual("12.06", gears.First().LossMap.Rows[0][2]);
 
 			var lossMap = TransmissionLossMapReader.Create(gears.First().LossMap, gears.First().Ratio,
@@ -90,16 +90,16 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 			var axlegearDataProvider = inputDataProvider.AxleGearInputData;
 
-			Assert.AreEqual("Generic 40t Long Haul Truck AxleGear", axlegearDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck AxleGear", axlegearDataProvider.Model);
 
 			var lossMapData = axlegearDataProvider.LossMap;
 			Assert.AreEqual(2.59, axlegearDataProvider.Ratio);
-			Assert.AreEqual("0", lossMapData.Rows[0][0]);
-			Assert.AreEqual("-5000", lossMapData.Rows[0][1]);
-			Assert.AreEqual("115", lossMapData.Rows[0][2]);
+			Assert.AreEqual("0.00", lossMapData.Rows[0][0]);
+			Assert.AreEqual("-5000.00", lossMapData.Rows[0][1]);
+			Assert.AreEqual("115.00", lossMapData.Rows[0][2]);
 
 			var lossMap = TransmissionLossMapReader.Create(lossMapData, axlegearDataProvider.Ratio, "AxleGear");
 			Assert.IsNotNull(lossMap);
@@ -112,17 +112,17 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 			var retarderDataProvider = inputDataProvider.RetarderInputData;
 
-			Assert.AreEqual("Generic Retarder", retarderDataProvider.ModelName);
+			Assert.AreEqual("Generic Retarder", retarderDataProvider.Model);
 
 			var lossMapData = retarderDataProvider.LossMap;
 
 			Assert.AreEqual(RetarderType.TransmissionOutputRetarder, retarderDataProvider.Type);
 
-			Assert.AreEqual("0", lossMapData.Rows[0][0]);
-			Assert.AreEqual("10", lossMapData.Rows[0][1]);
+			Assert.AreEqual("0.00", lossMapData.Rows[0][0]);
+			Assert.AreEqual("10.00", lossMapData.Rows[0][1]);
 
 			var lossMap = RetarderLossMapReader.Create(lossMapData);
 			Assert.IsNotNull(lossMap);
@@ -133,17 +133,17 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 			var vehicleDataProvider = inputDataProvider.VehicleInputData;
 
 			var axles = vehicleDataProvider.Axles;
 
 			Assert.AreEqual("315/70 R22.5", axles[0].Wheels);
-			Assert.AreEqual(0.00555, axles[0].RollResistanceCoefficient);
+			Assert.AreEqual(0.0055, axles[0].RollResistanceCoefficient);
 			Assert.AreEqual(31300, axles[0].TyreTestLoad.Value());
 
 			Assert.AreEqual("315/70 R22.5", axles[1].Wheels);
-			Assert.AreEqual(0.00628, axles[1].RollResistanceCoefficient);
+			Assert.AreEqual(0.0063, axles[1].RollResistanceCoefficient);
 			Assert.AreEqual(31300, axles[1].TyreTestLoad.Value());
 		}
 
@@ -174,7 +174,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-			var inputDataProvider = new XMLInputDataProvider(modified, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true);
 			var vehicleDataProvider = inputDataProvider.VehicleInputData;
 
 			AssertHelper.Exception<VectoException>(() => { var axles = vehicleDataProvider.Axles; });
@@ -207,7 +207,8 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-			AssertHelper.Exception<VectoException>(() => { var inputDataProvider = new XMLInputDataProvider(modified, true); });
+			AssertHelper.Exception<VectoException>(
+				() => { var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true); });
 		}
 
 		[TestMethod]
@@ -237,7 +238,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-			var inputDataProvider = new XMLInputDataProvider(modified, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true);
 			var vehicleDataProvider = inputDataProvider.VehicleInputData;
 
 			AssertHelper.Exception<VectoException>(() => { var axles = vehicleDataProvider.Axles; });
@@ -248,7 +249,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 			var auxDataProvider = inputDataProvider.AuxiliaryInputData();
 
 			var aux = auxDataProvider.Auxiliaries;
@@ -267,7 +268,7 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 
 			var adas = inputDataProvider.DriverInputData;
 
@@ -280,16 +281,16 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 
 			var vehicleDataProvider = inputDataProvider.VehicleInputData;
 
 			Assert.AreEqual(VehicleCategory.Tractor, vehicleDataProvider.VehicleCategory);
 			Assert.AreEqual(AxleConfiguration.AxleConfig_4x2, vehicleDataProvider.AxleConfiguration);
 
-			Assert.AreEqual(7100.0, vehicleDataProvider.CurbWeightChassis.Value());
+			Assert.AreEqual(7100.0, vehicleDataProvider.CurbMassChassis.Value());
 			Assert.AreEqual(40000.0, vehicleDataProvider.GrossVehicleMassRating.Value());
-			Assert.AreEqual(6.2985, vehicleDataProvider.AirDragArea.Value());
+			Assert.AreEqual(6.34, inputDataProvider.AirdragInputData.AirDragArea.Value());
 
 			Assert.AreEqual(1.0, inputDataProvider.RetarderInputData.Ratio);
 		}
@@ -303,7 +304,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var sumWriter = new FileOutputWriter("vecto_vehicle-sample_xml");
 			var sumData = new SummaryDataContainer(sumWriter);
 			var jobContainer = new JobContainer(sumData);
-			var dataProvider = new XMLInputDataProvider(reader, true);
+			var dataProvider = new XMLDeclarationInputDataProvider(reader, true);
 
 			var runsFactory = new SimulatorFactory(ExecutionMode.Declaration, dataProvider, fileWriter);
 			runsFactory.WriteModalResults = true;
@@ -318,14 +319,14 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 
 			var tcDataProvider = inputDataProvider.TorqueConverterInputData;
 
 
 			Assert.AreEqual(3, tcDataProvider.TCData.Rows.Count);
-			Assert.AreEqual("300", tcDataProvider.TCData.Rows[0][2]);
-			Assert.AreEqual("0.9", tcDataProvider.TCData.Rows[2][1]);
+			Assert.AreEqual("300.00", tcDataProvider.TCData.Rows[0][2]);
+			Assert.AreEqual("0.90", tcDataProvider.TCData.Rows[2][1]);
 		}
 
 		[TestMethod]
@@ -333,14 +334,14 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 
 
 			var angledriveDataProvider = inputDataProvider.AngledriveInputData;
 
-			Assert.AreEqual(1.2, angledriveDataProvider.Ratio);
+			Assert.AreEqual(2.345, angledriveDataProvider.Ratio);
 			Assert.AreEqual(6, angledriveDataProvider.LossMap.Rows.Count);
-			Assert.AreEqual("-10000", angledriveDataProvider.LossMap.Rows[0][1]);
+			Assert.AreEqual("-10000.00", angledriveDataProvider.LossMap.Rows[0][1]);
 
 			AssertHelper.Exception<VectoException>(() => { var tmp = angledriveDataProvider.Efficiency; });
 		}
@@ -350,15 +351,15 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var reader = XmlReader.Create(SampleVehicleFullDecl);
 
-			var inputDataProvider = new XMLInputDataProvider(reader, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(reader, true);
 			var vehicleDataProvider = inputDataProvider.JobInputData().Vehicle;
 
 			Assert.AreEqual(VehicleCategory.Tractor, vehicleDataProvider.VehicleCategory);
 			Assert.AreEqual(AxleConfiguration.AxleConfig_4x2, vehicleDataProvider.AxleConfiguration);
 
-			Assert.AreEqual(7100.0, vehicleDataProvider.CurbWeightChassis.Value());
+			Assert.AreEqual(7100.0, vehicleDataProvider.CurbMassChassis.Value());
 			Assert.AreEqual(40000.0, vehicleDataProvider.GrossVehicleMassRating.Value());
-			Assert.AreEqual(6.2985, vehicleDataProvider.AirDragArea.Value());
+			Assert.AreEqual(6.34, inputDataProvider.AirdragInputData.AirDragArea.Value());
 
 			Assert.AreEqual(1.0, inputDataProvider.RetarderInputData.Ratio);
 		}
@@ -384,7 +385,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-			var inputDataProvider = new XMLInputDataProvider(modified, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true);
 
 			AssertHelper.Exception<VectoException>(() => { var tmp = inputDataProvider.RetarderInputData.Ratio; });
 		}
@@ -416,7 +417,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-			var inputDataProvider = new XMLInputDataProvider(modified, true);
+			var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true);
 
 			var factory = new SimulatorFactory(ExecutionMode.Declaration, inputDataProvider, new FileOutputWriter("dummy"));
 			var jobContainer = new JobContainer(null);
@@ -453,7 +454,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-				var inputDataProvider = new XMLInputDataProvider(modified, true);
+				var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true);
 
 				Assert.AreEqual(retarderType.Value, inputDataProvider.RetarderInputData.Type);
 			}
@@ -464,14 +465,14 @@ namespace TUGraz.VectoCore.Tests.XML
 		{
 			var axleConfigurations = new Dictionary<string, AxleConfiguration>() {
 				{ "4x2", AxleConfiguration.AxleConfig_4x2 },
-				{ "4x4", AxleConfiguration.AxleConfig_4x4 },
+				//{ "4x4", AxleConfiguration.AxleConfig_4x4 },
 				{ "6x2", AxleConfiguration.AxleConfig_6x2 },
 				{ "6x4", AxleConfiguration.AxleConfig_6x4 },
-				{ "6x6", AxleConfiguration.AxleConfig_6x6 },
-				{ "8x2", AxleConfiguration.AxleConfig_8x2 },
+				//{ "6x6", AxleConfiguration.AxleConfig_6x6 },
+				//{ "8x2", AxleConfiguration.AxleConfig_8x2 },
 				{ "8x4", AxleConfiguration.AxleConfig_8x4 },
-				{ "8x6", AxleConfiguration.AxleConfig_8x6 },
-				{ "8x8", AxleConfiguration.AxleConfig_8x8 }
+				//{ "8x6", AxleConfiguration.AxleConfig_8x6 },
+				//{ "8x8", AxleConfiguration.AxleConfig_8x8 }
 			};
 			foreach (var axleConfiguration in axleConfigurations) {
 				var reader = XmlReader.Create(SampleVehicleDecl);
@@ -491,7 +492,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-				var inputDataProvider = new XMLInputDataProvider(modified, true);
+				var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true);
 
 				Assert.AreEqual(axleConfiguration.Value, inputDataProvider.VehicleInputData.AxleConfiguration);
 			}
@@ -503,9 +504,9 @@ namespace TUGraz.VectoCore.Tests.XML
 			var vehicleCategories = new Dictionary<string, VehicleCategory>() {
 				{ "Rigid Truck", VehicleCategory.RigidTruck },
 				{ "Tractor", VehicleCategory.Tractor },
-				{ "City Bus", VehicleCategory.CityBus },
-				{ "Interurban Bus", VehicleCategory.InterurbanBus },
-				{ "Coach", VehicleCategory.Coach }
+				//{ "City Bus", VehicleCategory.CityBus },
+				//{ "Interurban Bus", VehicleCategory.InterurbanBus },
+				//{ "Coach", VehicleCategory.Coach }
 			};
 			foreach (var vehicleCategory in vehicleCategories) {
 				var reader = XmlReader.Create(SampleVehicleDecl);
@@ -525,7 +526,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-				var inputDataProvider = new XMLInputDataProvider(modified, true);
+				var inputDataProvider = new XMLDeclarationInputDataProvider(modified, true);
 
 				Assert.AreEqual(vehicleCategory.Value, inputDataProvider.VehicleInputData.VehicleCategory);
 			}
@@ -556,7 +557,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-				var inputDataProvider = new XMLInputDataProvider(modified,
+				var inputDataProvider = new XMLDeclarationInputDataProvider(modified,
 					true);
 
 				Assert.AreEqual(retarderType.Value,
@@ -599,57 +600,20 @@ namespace TUGraz.VectoCore.Tests.XML
 
 				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-				var inputDataProvider = new XMLInputDataProvider(modified,
+				var inputDataProvider = new XMLDeclarationInputDataProvider(modified,
 					true);
 
 				//Assert.AreEqual(ptoType, inputDataProvider.VehicleInputData.pto);
 			}
 		}
 
-		[TestMethod]
-		public void TestOverspeedTypes()
-		{
-			var driverModes = new Dictionary<string, DriverMode>() {
-				{ "Overspeed", DriverMode.Overspeed },
-				{ "EcoRoll", DriverMode.EcoRoll }
-			};
-			foreach (var driverMode in driverModes) {
-				var reader = XmlReader.Create(SampleVehicleDecl);
-
-				var doc = new XmlDocument();
-				doc.Load(reader);
-				var nav = doc.CreateNavigator();
-				var manager = new XmlNamespaceManager(nav.NameTable);
-				var helper = new XPathHelper(ExecutionMode.Declaration);
-				helper.AddNamespaces(manager);
-
-				var xmlRetarderType = nav.SelectSingleNode(helper.QueryAbs(
-					helper.NSPrefix(XMLNames.VectoInputDeclaration,
-						Constants.XML.RootNSPrefix),
-					XMLNames.Component_Vehicle,
-					XMLNames.Vehicle_AdvancedDriverAssist,
-					XMLNames.DriverModel_Overspeed,
-					XMLNames.DriverModel_Overspeed_Mode),
-					manager);
-				xmlRetarderType.SetValue(driverMode.Key);
-
-				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
-
-				var inputDataProvider = new XMLInputDataProvider(modified,
-					true);
-
-				Assert.AreEqual(driverMode.Value,
-					inputDataProvider.DriverInputData.OverSpeedEcoRoll.Mode);
-			}
-		}
-
 		[TestMethod]
 		public void TestAngledriveTypes()
 		{
 			var angledriveTypes = new Dictionary<string, AngledriveType>() {
 				{ "None", AngledriveType.None },
-				{ "LossesIncludedInGearbox", AngledriveType.LossesIncludedInGearbox },
-				{ "SeparateAngledrive", AngledriveType.SeparateAngledrive }
+				{ "Losses included in Gearbox", AngledriveType.LossesIncludedInGearbox },
+				{ "Separate Angledrive", AngledriveType.SeparateAngledrive }
 			};
 			foreach (var angleDrive in angledriveTypes) {
 				var reader = XmlReader.Create(SampleVehicleDecl);
@@ -671,7 +635,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-				var inputDataProvider = new XMLInputDataProvider(modified,
+				var inputDataProvider = new XMLDeclarationInputDataProvider(modified,
 					true);
 
 				Assert.AreEqual(angleDrive.Value, inputDataProvider.AngledriveInputData.Type);
@@ -682,10 +646,10 @@ namespace TUGraz.VectoCore.Tests.XML
 		public void TestGearboxTypes()
 		{
 			var gearboxTypes = new Dictionary<string, GearboxType>() {
-				{ "MT", GearboxType.MT },
+				{ "SMT", GearboxType.MT },
 				{ "AMT", GearboxType.AMT },
-				{ "AT - Serial", GearboxType.ATSerial },
-				{ "AT - PowerSplit", GearboxType.ATPowerSplit }
+				{ "APT-S", GearboxType.ATSerial },
+				{ "APT-P", GearboxType.ATPowerSplit }
 			};
 			foreach (var gearboxType in gearboxTypes) {
 				var reader = XmlReader.Create(SampleVehicleDecl);
@@ -710,7 +674,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 				var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 
-				var inputDataProvider = new XMLInputDataProvider(modified,
+				var inputDataProvider = new XMLDeclarationInputDataProvider(modified,
 					true);
 
 				Assert.AreEqual(gearboxType.Value, inputDataProvider.GearboxInputData.Type);
diff --git a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs
index 4921faaa1b..e32dcc9d05 100644
--- a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputRefTest.cs
@@ -17,7 +17,7 @@ using TUGraz.VectoCore.Utils;
 namespace TUGraz.VectoCore.Tests.XML
 {
 	[TestClass]
-	public class EngineeringApiInputReferencedFilesTest
+	public class XMLEngineeringInputRefTest
 	{
 		public const string EngineeringSampleFile = "TestData/XML/XMLReaderEngineering/engineering_job-sample_ref.xml";
 
@@ -39,7 +39,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			Assert.IsFalse(engineDataProvider.SavedInDeclarationMode);
 
-			Assert.AreEqual("Generic 40t Long Haul Truck Engine", engineDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck Engine", engineDataProvider.Model);
 			Assert.AreEqual(0.012730, engineDataProvider.Displacement.Value());
 			Assert.AreEqual(0.77, engineDataProvider.Inertia.Value());
 
@@ -72,7 +72,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(EngineeringSampleFile, true);
 			var gearboxDataProvider = inputDataProvider.GearboxInputData;
 
-			Assert.AreEqual("Generic 40t Long Haul Truck Gearbox", gearboxDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck Gearbox", gearboxDataProvider.Model);
 			Assert.AreEqual(GearboxType.AMT, gearboxDataProvider.Type);
 			var gears = gearboxDataProvider.Gears;
 			Assert.AreEqual(12, gears.Count);
@@ -120,7 +120,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(EngineeringSampleFile, true);
 			var angledriveInputData = inputDataProvider.AngledriveInputData;
 
-			Assert.AreEqual("Generic Angledrive", angledriveInputData.ModelName);
+			Assert.AreEqual("Generic Angledrive", angledriveInputData.Model);
 
 			var lossMapData = angledriveInputData.LossMap;
 			Assert.AreEqual(1.2, angledriveInputData.Ratio);
@@ -137,7 +137,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(EngineeringSampleFile, true);
 			var axlegearDataProvider = inputDataProvider.AxleGearInputData;
 
-			Assert.AreEqual("Generic 40t Long Haul Truck AxleGear", axlegearDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck AxleGear", axlegearDataProvider.Model);
 
 			var lossMapData = axlegearDataProvider.LossMap;
 			Assert.AreEqual(2.59, axlegearDataProvider.Ratio);
@@ -154,7 +154,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(EngineeringSampleFile, true);
 			var retarderDataProvider = inputDataProvider.RetarderInputData;
 
-			Assert.AreEqual("Generic Retarder", retarderDataProvider.ModelName);
+			Assert.AreEqual("Generic Retarder", retarderDataProvider.Model);
 
 			var lossMapData = retarderDataProvider.LossMap;
 
@@ -175,11 +175,11 @@ namespace TUGraz.VectoCore.Tests.XML
 			var axles = vehicleDataProvider.Axles;
 
 			Assert.AreEqual("315/70 R22.5", axles[0].Wheels);
-			Assert.AreEqual(0.00555, axles[0].RollResistanceCoefficient);
+			Assert.AreEqual(0.0055, axles[0].RollResistanceCoefficient);
 			Assert.AreEqual(31300, axles[0].TyreTestLoad.Value());
 
 			Assert.AreEqual("315/70 R22.5", axles[1].Wheels);
-			Assert.AreEqual(0.00628, axles[1].RollResistanceCoefficient);
+			Assert.AreEqual(0.0063, axles[1].RollResistanceCoefficient);
 			Assert.AreEqual(31300, axles[1].TyreTestLoad.Value());
 
 			//AssertHelper.Exception<VectoException>(() => { var tmp = vehicleDataProvider.Rim; });
@@ -230,12 +230,12 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(VehicleCategory.Tractor, vehicleDataProvider.VehicleCategory);
 			Assert.AreEqual(AxleConfiguration.AxleConfig_4x2, vehicleDataProvider.AxleConfiguration);
 
-			Assert.AreEqual(7100.0, vehicleDataProvider.CurbWeightChassis.Value());
+			Assert.AreEqual(7100.0, vehicleDataProvider.CurbMassChassis.Value());
 			Assert.AreEqual(18000.0, vehicleDataProvider.GrossVehicleMassRating.Value());
-			Assert.AreEqual(6.2985, vehicleDataProvider.AirDragArea.Value());
+			Assert.AreEqual(6.29, inputDataProvider.AirdragInputData.AirDragArea.Value());
 
 			Assert.AreEqual(1500, vehicleDataProvider.Loading.Value());
-			Assert.AreEqual(500, vehicleDataProvider.CurbWeightExtra.Value());
+			Assert.AreEqual(500, vehicleDataProvider.CurbMassExtra.Value());
 
 			Assert.AreEqual(1.0, inputDataProvider.RetarderInputData.Ratio);
 		}
diff --git a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
index 3650103946..54beeeb44e 100644
--- a/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLEngineeringInputSingleTest.cs
@@ -22,7 +22,7 @@ using TUGraz.VectoCore.Utils;
 namespace TUGraz.VectoCore.Tests.XML
 {
 	[TestClass]
-	public class EngineeringApiInputSingleFileTest
+	public class XMLEngineeringInputSingleTest
 	{
 		public const string EngineeringSampleFile = "TestData/XML/XMLReaderEngineering/engineering_job-sample.xml";
 
@@ -40,7 +40,7 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			Assert.IsFalse(engineDataProvider.SavedInDeclarationMode);
 
-			Assert.AreEqual("Generic 40t Long Haul Truck Engine", engineDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck Engine", engineDataProvider.Model);
 			Assert.AreEqual(0.012730, engineDataProvider.Displacement.Value());
 			Assert.AreEqual(0.77, engineDataProvider.Inertia.Value());
 
@@ -54,7 +54,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual("torque", fcMapTable.Columns[1].Caption);
 			Assert.AreEqual("fuel consumption", fcMapTable.Columns[2].Caption);
 
-			Assert.AreEqual("560", fcMapTable.Rows[0][0]);
+			Assert.AreEqual("560.00", fcMapTable.Rows[0][0]);
 			var fcMap = FuelConsumptionMapReader.Create(fcMapTable);
 			Assert.AreEqual(1256.SI().Gramm.Per.Hour.ConvertTo().Kilo.Gramm.Per.Second.Value(),
 				fcMap.GetFuelConsumption(0.SI<NewtonMeter>(), 560.RPMtoRad()).Value.Value());
@@ -75,15 +75,15 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(reader, true);
 			var gearboxDataProvider = inputDataProvider.GearboxInputData;
 
-			Assert.AreEqual("Generic 40t Long Haul Truck Gearbox", gearboxDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck Gearbox", gearboxDataProvider.Model);
 			Assert.AreEqual(GearboxType.AMT, gearboxDataProvider.Type);
 			var gears = gearboxDataProvider.Gears;
 			Assert.AreEqual(12, gears.Count);
 
 			Assert.AreEqual(1, gears.First().Gear);
 			Assert.AreEqual(14.93, gears.First().Ratio);
-			Assert.AreEqual("0", gears.First().LossMap.Rows[0][0]);
-			Assert.AreEqual("-350", gears.First().LossMap.Rows[0][1]);
+			Assert.AreEqual("0.00", gears.First().LossMap.Rows[0][0]);
+			Assert.AreEqual("-350.00", gears.First().LossMap.Rows[0][1]);
 			Assert.AreEqual("12.06", gears.First().LossMap.Rows[0][2]);
 
 			var lossMap = TransmissionLossMapReader.Create(gears.First().LossMap, gears.First().Ratio,
@@ -104,13 +104,13 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(reader, true);
 			var axlegearDataProvider = inputDataProvider.AxleGearInputData;
 
-			Assert.AreEqual("Generic 40t Long Haul Truck AxleGear", axlegearDataProvider.ModelName);
+			Assert.AreEqual("Generic 40t Long Haul Truck AxleGear", axlegearDataProvider.Model);
 
 			var lossMapData = axlegearDataProvider.LossMap;
 			Assert.AreEqual(2.59, axlegearDataProvider.Ratio);
-			Assert.AreEqual("0", lossMapData.Rows[0][0]);
-			Assert.AreEqual("-5000", lossMapData.Rows[0][1]);
-			Assert.AreEqual("115", lossMapData.Rows[0][2]);
+			Assert.AreEqual("0.00", lossMapData.Rows[0][0]);
+			Assert.AreEqual("-5000.00", lossMapData.Rows[0][1]);
+			Assert.AreEqual("115.00", lossMapData.Rows[0][2]);
 
 			var lossMap = TransmissionLossMapReader.Create(lossMapData, axlegearDataProvider.Ratio, "AxleGear");
 		}
@@ -133,7 +133,8 @@ namespace TUGraz.VectoCore.Tests.XML
 				XMLNames.Component_Vehicle, XMLNames.Vehicle_Components, XMLNames.Component_Axlegear,
 				XMLNames.ComponentDataWrapper, XMLNames.Axlegear_TorqueLossMap), manager);
 			//accData.DeleteSelf();
-			axleglosses.ReplaceSelf(new XElement(XMLNames.Axlegear_Efficiency, "0.9123").ToString());
+			axleglosses.ReplaceSelf(
+				new XElement(XMLNames.Axlegear_TorqueLossMap, new XElement(XMLNames.Axlegear_Efficiency, "0.9123")).ToString());
 
 			//var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var stream = new MemoryStream();
@@ -156,14 +157,14 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(reader, true);
 			var retarderDataProvider = inputDataProvider.RetarderInputData;
 
-			Assert.AreEqual("Generic Retarder", retarderDataProvider.ModelName);
+			Assert.AreEqual("Generic Retarder", retarderDataProvider.Model);
 
 			var lossMapData = retarderDataProvider.LossMap;
 
 			Assert.AreEqual(RetarderType.TransmissionOutputRetarder, retarderDataProvider.Type);
 
-			Assert.AreEqual("0", lossMapData.Rows[0][0]);
-			Assert.AreEqual("10", lossMapData.Rows[0][1]);
+			Assert.AreEqual("0.00", lossMapData.Rows[0][0]);
+			Assert.AreEqual("10.00", lossMapData.Rows[0][1]);
 
 			var lossMap = RetarderLossMapReader.Create(lossMapData);
 		}
@@ -179,11 +180,11 @@ namespace TUGraz.VectoCore.Tests.XML
 			var axles = vehicleDataProvider.Axles;
 
 			Assert.AreEqual("315/70 R22.5", axles[0].Wheels);
-			Assert.AreEqual(0.00555, axles[0].RollResistanceCoefficient);
+			Assert.AreEqual(0.0055, axles[0].RollResistanceCoefficient);
 			Assert.AreEqual(31300, axles[0].TyreTestLoad.Value());
 
 			Assert.AreEqual("315/70 R22.5", axles[1].Wheels);
-			Assert.AreEqual(0.00628, axles[1].RollResistanceCoefficient);
+			Assert.AreEqual(0.0063, axles[1].RollResistanceCoefficient);
 			Assert.AreEqual(31300, axles[1].TyreTestLoad.Value());
 
 			//AssertHelper.Exception<VectoException>(() => { var tmp = vehicleDataProvider.Rim; });
@@ -349,12 +350,12 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(VehicleCategory.Tractor, vehicleDataProvider.VehicleCategory);
 			Assert.AreEqual(AxleConfiguration.AxleConfig_4x2, vehicleDataProvider.AxleConfiguration);
 
-			Assert.AreEqual(7100.0, vehicleDataProvider.CurbWeightChassis.Value());
+			Assert.AreEqual(7100.0, vehicleDataProvider.CurbMassChassis.Value());
 			Assert.AreEqual(40000.0, vehicleDataProvider.GrossVehicleMassRating.Value());
-			Assert.AreEqual(6.2985, vehicleDataProvider.AirDragArea.Value());
+			Assert.AreEqual(6.29, inputDataProvider.AirdragInputData.AirDragArea.Value());
 
 			Assert.AreEqual(1500, vehicleDataProvider.Loading.Value());
-			Assert.AreEqual(500, vehicleDataProvider.CurbWeightExtra.Value());
+			Assert.AreEqual(500, vehicleDataProvider.CurbMassExtra.Value());
 
 			Assert.AreEqual(1.0, inputDataProvider.RetarderInputData.Ratio);
 		}
@@ -484,8 +485,8 @@ namespace TUGraz.VectoCore.Tests.XML
 			Assert.AreEqual(1.1, tcDataProvider.Inertia.Value());
 
 			Assert.AreEqual(3, tcDataProvider.TCData.Rows.Count);
-			Assert.AreEqual("300", tcDataProvider.TCData.Rows[0][2]);
-			Assert.AreEqual("0.9", tcDataProvider.TCData.Rows[2][1]);
+			Assert.AreEqual("300.00", tcDataProvider.TCData.Rows[0][2]);
+			Assert.AreEqual("0.90", tcDataProvider.TCData.Rows[2][1]);
 
 			Assert.IsNotNull(tcDataProvider.ShiftPolygon);
 			Assert.AreEqual("700", tcDataProvider.ShiftPolygon.Rows[0][1]);
@@ -505,8 +506,8 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			Assert.AreEqual(1.2, angledriveDataProvider.Ratio);
 			Assert.AreEqual(6, angledriveDataProvider.LossMap.Rows.Count);
-			Assert.AreEqual("-10000", angledriveDataProvider.LossMap.Rows[0][1]);
-			Assert.AreEqual("100", angledriveDataProvider.LossMap.Rows[4][2]);
+			Assert.AreEqual("-10000.00", angledriveDataProvider.LossMap.Rows[0][1]);
+			Assert.AreEqual("100.00", angledriveDataProvider.LossMap.Rows[4][2]);
 		}
 
 		[TestMethod]
@@ -577,11 +578,11 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var inputDataProvider = new XMLEngineeringInputDataProvider(reader, true);
 
-			var vehicleData = inputDataProvider.VehicleInputData;
-			Assert.AreEqual(CrossWindCorrectionMode.SpeedDependentCorrectionFactor, vehicleData.CrossWindCorrectionMode);
-			Assert.AreEqual(2, vehicleData.CrosswindCorrectionMap.Rows.Count);
-			Assert.AreEqual("100", vehicleData.CrosswindCorrectionMap.Rows[1][0]);
-			Assert.AreEqual("1.8", vehicleData.CrosswindCorrectionMap.Rows[1][1]);
+			var airdragData = inputDataProvider.AirdragInputData;
+			Assert.AreEqual(CrossWindCorrectionMode.SpeedDependentCorrectionFactor, airdragData.CrossWindCorrectionMode);
+			Assert.AreEqual(2, airdragData.CrosswindCorrectionMap.Rows.Count);
+			Assert.AreEqual("100", airdragData.CrosswindCorrectionMap.Rows[1][0]);
+			Assert.AreEqual("1.8", airdragData.CrosswindCorrectionMap.Rows[1][1]);
 		}
 
 		[TestMethod]
@@ -595,13 +596,13 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			Assert.AreEqual("only the drive shaft of the PTO - multi-disc clutch", ptoData.PTOTransmissionType);
 			Assert.AreEqual(2, ptoData.PTOLossMap.Rows.Count);
-			Assert.AreEqual("2800", ptoData.PTOLossMap.Rows[1][0]);
-			Assert.AreEqual("100", ptoData.PTOLossMap.Rows[1][1]);
+			Assert.AreEqual("2800.00", ptoData.PTOLossMap.Rows[1][0]);
+			Assert.AreEqual("100.00", ptoData.PTOLossMap.Rows[1][1]);
 
 			Assert.AreEqual(4, ptoData.PTOCycle.Rows.Count);
 			Assert.AreEqual("3", ptoData.PTOCycle.Rows[3][0]);
-			Assert.AreEqual("1200", ptoData.PTOCycle.Rows[3][1]);
-			Assert.AreEqual("100", ptoData.PTOCycle.Rows[3][2]);
+			Assert.AreEqual("1200.00", ptoData.PTOCycle.Rows[3][1]);
+			Assert.AreEqual("100.00", ptoData.PTOCycle.Rows[3][2]);
 		}
 
 
@@ -613,13 +614,13 @@ namespace TUGraz.VectoCore.Tests.XML
 			var inputDataProvider = new XMLEngineeringInputDataProvider(reader, true);
 			var angledriveInputData = inputDataProvider.AngledriveInputData;
 
-			Assert.AreEqual("Generic Angledrive", angledriveInputData.ModelName);
+			Assert.AreEqual("Generic Angledrive", angledriveInputData.Model);
 
 			var lossMapData = angledriveInputData.LossMap;
 			Assert.AreEqual(1.2, angledriveInputData.Ratio);
-			Assert.AreEqual("0", lossMapData.Rows[0][0]);
-			Assert.AreEqual("-10000", lossMapData.Rows[0][1]);
-			Assert.AreEqual("100", lossMapData.Rows[0][2]);
+			Assert.AreEqual("0.00", lossMapData.Rows[0][0]);
+			Assert.AreEqual("-10000.00", lossMapData.Rows[0][1]);
+			Assert.AreEqual("100.00", lossMapData.Rows[0][2]);
 
 			var lossMap = TransmissionLossMapReader.Create(lossMapData, angledriveInputData.Ratio, "Angledrive");
 		}
@@ -642,7 +643,8 @@ namespace TUGraz.VectoCore.Tests.XML
 				XMLNames.Component_Vehicle, XMLNames.Vehicle_Components, XMLNames.Component_Angledrive,
 				XMLNames.ComponentDataWrapper, XMLNames.AngleDrive_TorqueLossMap), manager);
 			//accData.DeleteSelf();
-			angledrivelosses.ReplaceSelf(new XElement(XMLNames.AngleDrive_Efficiency, "0.9124").ToString());
+			angledrivelosses.ReplaceSelf(
+				new XElement(XMLNames.AngleDrive_TorqueLossMap, new XElement(XMLNames.AngleDrive_Efficiency, "0.9124")).ToString());
 
 			//var modified = XmlReader.Create(new StringReader(nav.OuterXml));
 			var stream = new MemoryStream();
diff --git a/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs b/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs
index 43d5183230..4d9a67d633 100644
--- a/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs
+++ b/VectoCore/VectoCoreTest/XML/XMLWritingTest.cs
@@ -128,7 +128,7 @@ namespace TUGraz.VectoCore.Tests.XML
 			job.Save(outputFile);
 
 			var reader = XmlReader.Create(outputFile);
-			var xml = new XMLInputDataProvider(reader, true);
+			var xml = new XMLDeclarationInputDataProvider(reader, true);
 
 			Assert.IsNotNull(xml);
 			Assert.AreEqual("VEH-N/A", xml.JobInputData().JobName);
@@ -145,12 +145,12 @@ namespace TUGraz.VectoCore.Tests.XML
 
 			var inputData = JSONInputDataFactory.ReadJsonJob(DeclarationJobFull);
 
-			var job = new XMLDeclarationWriter( "TUG_IVT").GenerateVectoJob((IDeclarationInputDataProvider)inputData);
+			var job = new XMLDeclarationWriter("TUG_IVT").GenerateVectoJob((IDeclarationInputDataProvider)inputData);
 
 			job.Save(outputFile);
 
 			var reader = XmlReader.Create(outputFile);
-			var xml = new XMLInputDataProvider(reader, true);
+			var xml = new XMLDeclarationInputDataProvider(reader, true);
 
 			Assert.IsNotNull(xml);
 			Assert.AreEqual("VEH-N/A", xml.JobInputData().JobName);
-- 
GitLab