#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct ComponentVariableRow {
pub component: &'static str,
pub variable: &'static str,
pub instance: &'static str,
pub required: bool,
pub data_type: &'static str,
pub unit: &'static str,
}
pub const COMPONENT_VARIABLE_MATRIX: &[ComponentVariableRow] = &[
ComponentVariableRow { component: "<generic>", variable: "ACCurrent", instance: "", required: false, data_type: "decimal", unit: "A" },
ComponentVariableRow { component: "<generic>", variable: "Active", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "ACVoltage", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "<generic>", variable: "AllowReset", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Angle", instance: "", required: false, data_type: "decimal", unit: "Deg" },
ComponentVariableRow { component: "<generic>", variable: "Attempts", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Certificate", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Color", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Complete", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "ConnectedTime", instance: "", required: false, data_type: "decimal", unit: "s" },
ComponentVariableRow { component: "<generic>", variable: "Count", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "CurrentImbalance", instance: "", required: false, data_type: "decimal", unit: "Percent" },
ComponentVariableRow { component: "<generic>", variable: "DataText", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "DateTime", instance: "", required: false, data_type: "dateTime", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "DCCurrent", instance: "", required: false, data_type: "decimal", unit: "A" },
ComponentVariableRow { component: "<generic>", variable: "DCVoltage", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "<generic>", variable: "ECVariant", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Energy", instance: "", required: false, data_type: "decimal", unit: "Wh, kWh" },
ComponentVariableRow { component: "<generic>", variable: "Entries", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Fallback", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "FanSpeed", instance: "", required: false, data_type: "decimal", unit: "RPM" },
ComponentVariableRow { component: "<generic>", variable: "FirmwareVersion", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Force", instance: "", required: false, data_type: "decimal", unit: "N" },
ComponentVariableRow { component: "<generic>", variable: "Formats", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Frequency", instance: "", required: false, data_type: "decimal", unit: "Hz" },
ComponentVariableRow { component: "<generic>", variable: "FuseRating", instance: "", required: false, data_type: "decimal", unit: "A" },
ComponentVariableRow { component: "<generic>", variable: "Height", instance: "", required: false, data_type: "decimal", unit: "m" },
ComponentVariableRow { component: "<generic>", variable: "Humidity", instance: "", required: false, data_type: "decimal", unit: "RH" },
ComponentVariableRow { component: "<generic>", variable: "Hysteresis", instance: "", required: false, data_type: "decimal", unit: "Percent" },
ComponentVariableRow { component: "<generic>", variable: "ICCID", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Impedance", instance: "", required: false, data_type: "decimal", unit: "Ohm" },
ComponentVariableRow { component: "<generic>", variable: "IMSI", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Interval", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "<generic>", variable: "Length", instance: "", required: false, data_type: "decimal", unit: "m" },
ComponentVariableRow { component: "<generic>", variable: "Light", instance: "", required: false, data_type: "decimal", unit: "lx" },
ComponentVariableRow { component: "<generic>", variable: "Manufacturer", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Message", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "MinimumStatusDuration", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "<generic>", variable: "Mode", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Model", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "NetworkAddress", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Operated", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "OperatingTimes", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Overload", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Percent", instance: "", required: false, data_type: "decimal", unit: "Percent" },
ComponentVariableRow { component: "<generic>", variable: "PhaseRotation", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "PostChargingTime", instance: "", required: false, data_type: "decimal", unit: "s" },
ComponentVariableRow { component: "<generic>", variable: "Power", instance: "", required: false, data_type: "decimal", unit: "W, kW" },
ComponentVariableRow { component: "<generic>", variable: "Problem", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Protecting", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "SerialNumber", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "SignalStrength", instance: "", required: false, data_type: "decimal", unit: "dBm" },
ComponentVariableRow { component: "<generic>", variable: "State", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "StateOfCharge", instance: "", required: false, data_type: "decimal", unit: "Percent" },
ComponentVariableRow { component: "<generic>", variable: "Storage", instance: "", required: false, data_type: "integer", unit: "B" },
ComponentVariableRow { component: "<generic>", variable: "SupplyPhases", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Suspending", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Suspension", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Temperature", instance: "", required: false, data_type: "decimal", unit: "Celsius, Fahrenheit" },
ComponentVariableRow { component: "<generic>", variable: "Time", instance: "", required: false, data_type: "dateTime", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Timeout", instance: "", required: false, data_type: "decimal", unit: "s" },
ComponentVariableRow { component: "<generic>", variable: "Tries", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Tripped", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "VendorName", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "VersionDate", instance: "", required: false, data_type: "dateTime", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "VersionNumber", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "VoltageImbalance", instance: "", required: false, data_type: "decimal", unit: "Percent" },
ComponentVariableRow { component: "<generic>", variable: "CommunicationParent", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "ElectricalParent", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "LogicalParent", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "PhysicalParent", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "<generic>", variable: "Label", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "Interval", instance: "", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "Measurands", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "SendDuringIdle", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "SignReadings", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "SignUpdatedReadings", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "TxEndedInterval", instance: "", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "TxEndedMeasurands", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "UpstreamInterval", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "AlignedDataCtrlr", variable: "UpstreamMeasurands", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "AuthCacheCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCacheCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCacheCtrlr", variable: "LifeTime", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "AuthCacheCtrlr", variable: "Policy", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "AuthCacheCtrlr", variable: "Storage", instance: "", required: false, data_type: "integer", unit: "B" },
ComponentVariableRow { component: "AuthCacheCtrlr", variable: "DisablePostAuthorize", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "AdditionalInfoItemsPerMessage", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "AuthorizeRemoteStart", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "LocalAuthorizeOffline", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "LocalPreAuthorize", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "MasterPassGroupId", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "OfflineTxForUnknownIdEnabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "DisableRemoteAuthorization", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "AuthCtrlr", variable: "SupportedIdTokenType", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "CHAdeMOCtrlr", variable: "SelftestActive", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "CHAdeMOCtrlr", variable: "CHAdeMOProtocolNumber", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "CHAdeMOCtrlr", variable: "VehicleStatus", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "CHAdeMOCtrlr", variable: "DynamicControl", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "CHAdeMOCtrlr", variable: "HighCurrentControl", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "CHAdeMOCtrlr", variable: "HighVoltageControl", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "CHAdeMOCtrlr", variable: "AutoManufacturerCode", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "ChargingStation", variable: "AllowNewSessionsPendingFirmwareUpdate", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ChargingStation", variable: "AvailabilityState", instance: "", required: true, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "ChargingStation", variable: "Available", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ChargingStation", variable: "Model", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ChargingStation", variable: "SupplyPhases", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "ChargingStation", variable: "VendorName", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ChargingStation", variable: "ActiveTransactionId", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "DateTime", instance: "", required: true, data_type: "dateTime", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "NextTimeOffsetTransitionDateTime", instance: "", required: false, data_type: "dateTime", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "NtpServerUri", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "NtpSource", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "TimeAdjustmentReportingThreshold", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "TimeOffset", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "TimeSource", instance: "", required: true, data_type: "SequenceList", unit: "" },
ComponentVariableRow { component: "ClockCtrlr", variable: "TimeZone", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "ProtocolAgreed", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "ProtocolSupportedByEV", instance: "<Priority>", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "VehicleID", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "VehicleCertificate", instance: "Leaf", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "VehicleCertificate", instance: "SubCA1", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "VehicleCertificate", instance: "SubCA2", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "VehicleCertificate", instance: "Root", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "ACCurrent(Min/MaxSet)", instance: "", required: false, data_type: "decimal", unit: "A" },
ComponentVariableRow { component: "ConnectedEV", variable: "DCCurrent(Min/MaxSet)", instance: "", required: false, data_type: "decimal", unit: "A" },
ComponentVariableRow { component: "ConnectedEV", variable: "DCCurrent(Target)", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "ConnectedEV", variable: "DCVoltage(Min/MaxSet)", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "ConnectedEV", variable: "DCVoltage(Target)", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "ConnectedEV", variable: "Power(MaxSet)", instance: "", required: false, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "ConnectedEV", variable: "DischargePower(MaxSet)", instance: "", required: false, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "ConnectedEV", variable: "EnergyImport(MaxSet)", instance: "", required: false, data_type: "decimal", unit: "Wh" },
ComponentVariableRow { component: "ConnectedEV", variable: "EnergyImport(MinSet)", instance: "", required: false, data_type: "decimal", unit: "Wh" },
ComponentVariableRow { component: "ConnectedEV", variable: "EnergyImport(Target)", instance: "", required: false, data_type: "decimal", unit: "Wh" },
ComponentVariableRow { component: "ConnectedEV", variable: "BatteryCapacity", instance: "", required: false, data_type: "decimal", unit: "Wh" },
ComponentVariableRow { component: "ConnectedEV", variable: "DepartureTime", instance: "", required: false, data_type: "DateTime", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "RemainingTimeBulk", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "ConnectedEV", variable: "RemainingTimeFull", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "ConnectedEV", variable: "StateOfChargeBulk", instance: "", required: false, data_type: "integer", unit: "%" },
ComponentVariableRow { component: "ConnectedEV", variable: "StateOfCharge(MaxSet)", instance: "", required: false, data_type: "integer", unit: "%" },
ComponentVariableRow { component: "ConnectedEV", variable: "StateOfCharge", instance: "", required: false, data_type: "integer", unit: "%" },
ComponentVariableRow { component: "ConnectedEV", variable: "ChargingCompleteBulk", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "ChargingCompleteFull", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ConnectedEV", variable: "ChargingState", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "Connector", variable: "AvailabilityState", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "Connector", variable: "Available", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "Connector", variable: "ChargeProtocol", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "Connector", variable: "ConnectorType", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "Connector", variable: "SupplyPhases", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "Connector", variable: "SlotStatus", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "CPPWMController", variable: "State", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "CustomizationCtrlr", variable: "CustomImplementationEnabled", instance: "<vendorId>", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "CustomizationCtrlr", variable: "CustomTriggers", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "BytesPerMessage", instance: "GetReport", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "BytesPerMessage", instance: "GetVariables", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "BytesPerMessage", instance: "SetVariables", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "ConfigurationValueSize", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "ItemsPerMessage", instance: "GetReport", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "ItemsPerMessage", instance: "GetVariables", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "ItemsPerMessage", instance: "SetVariables", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "ReportingValueSize", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DeviceDataCtrlr", variable: "ValueSize", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DisplayMessageCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "DisplayMessageCtrlr", variable: "DisplayMessages", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "DisplayMessageCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "DisplayMessageCtrlr", variable: "SupportedStates", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "DisplayMessageCtrlr", variable: "SupportedFormats", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "DisplayMessageCtrlr", variable: "SupportedPriorities", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "DisplayMessageCtrlr", variable: "Language", instance: "", required: true, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "AllowReset", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "AvailabilityState", instance: "", required: true, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "Available", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "EvseId", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "Power", instance: "", required: true, data_type: "decimal", unit: "W, kW" },
ComponentVariableRow { component: "EVSE", variable: "DischargePower", instance: "", required: false, data_type: "decimal", unit: "W, kW" },
ComponentVariableRow { component: "EVSE", variable: "SupplyPhases", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "DCInputPhaseControl", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "ISO15118EvseId", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "ChargingState", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "EVSE", variable: "ActiveTransactionId", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "FiscalMetering", variable: "EnergyExport", instance: "", required: false, data_type: "decimal", unit: "Wh, kWh" },
ComponentVariableRow { component: "FiscalMetering", variable: "EnergyExportRegister", instance: "", required: false, data_type: "decimal", unit: "Wh, kWh" },
ComponentVariableRow { component: "FiscalMetering", variable: "EnergyImport", instance: "", required: false, data_type: "decimal", unit: "Wh, kWh" },
ComponentVariableRow { component: "FiscalMetering", variable: "EnergyImportRegister", instance: "", required: false, data_type: "decimal", unit: "Wh, kWh" },
ComponentVariableRow { component: "FiscalMetering", variable: "PublicKey", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "CentralContractValidationAllowed", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "ContractValidationOffline", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "SeccId", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "MaxScheduleEntries", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "RequestedEnergyTransferMode", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "RequestMeteringReceipt", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "CountryName", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "OrganizationName", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "PnCEnabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "V2GCertificateInstallationEnabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "ContractCertificateInstallationEnabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "CertificateStatusSource", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "NotificationDelay", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "ServiceRenegotiationSupport", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "SupportedProviders", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "MaxPriceElements", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "ISO15118Ctrlr", variable: "ProtocolSupported", instance: "1, 2 .. 20", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "BytesPerMessage", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "Entries", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "ItemsPerMessage", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "Storage", instance: "", required: false, data_type: "integer", unit: "B" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "DisablePostAuthorize", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "LocalAuthListCtrlr", variable: "SupportsExpiryDateTime", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "LocalEnergyStorage", variable: "Capacity", instance: "", required: false, data_type: "decimal", unit: "Wh" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "BytesPerMessage", instance: "ClearVariableMonitoring", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "BytesPerMessage", instance: "SetVariableMonitoring", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "ItemsPerMessage", instance: "ClearVariableMonitoring", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "ItemsPerMessage", instance: "SetVariableMonitoring", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "OfflineQueuingSeverity", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "MonitoringBase", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "MonitoringLevel", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "ActiveMonitoringBase", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "ActiveMonitoringLevel", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "MonitoringCtrlr", variable: "MaxPeriodicEventStreams", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "ActiveNetworkProfile", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "FileTransferProtocols", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "HeartbeatInterval", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "MessageTimeout", instance: "Default", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "MessageAttemptInterval", instance: "TransactionEvent", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "MessageAttempts", instance: "TransactionEvent", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "NetworkConfigurationPriority", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "NetworkProfileConnectionAttempts", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "OfflineThreshold", instance: "", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "PublicKeyWithSignedMeterValue", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "QueueAllMessages", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "ResetRetries", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "RetryBackOffRandomRange", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "RetryBackOffRepeatTimes", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "RetryBackOffWaitMinimum", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "UnlockOnEVSideDisconnect", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "WebSocketPingInterval", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "FieldLength", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "OCPPCommCtrlr", variable: "ExternalConfigChangeDate", instance: "", required: false, data_type: "DateTime", unit: "" },
ComponentVariableRow { component: "ReservationCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ReservationCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "ReservationCtrlr", variable: "NonEvseSpecific", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "SignReadings", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "SignStartedReadings", instance: "", required: false, data_type: "", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "SignUpdatedReadings", instance: "", required: false, data_type: "", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "TxEndedInterval", instance: "", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "TxEndedMeasurands", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "TxStartedMeasurands", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "TxUpdatedInterval", instance: "", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "TxUpdatedMeasurands", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "RegisterValuesWithoutPhases", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "UpstreamInterval", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "SampledDataCtrlr", variable: "UpstreamMeasurands", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "AllowSecurityProfileDowngrade", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "AdditionalRootCertificateCheck", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "BasicAuthPassword", instance: "", required: false, data_type: "passwordString", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "CertificateEntries", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "CertSigningRepeatTimes", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "CertSigningWaitMinimum", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "Identity", instance: "", required: false, data_type: "identifierString", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "MaxCertificateChainSize", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "OrganizationName", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "SecurityCtrlr", variable: "SecurityProfile", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "ACPhaseSwitchingSupported", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "Available", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "Entries", instance: "ChargingProfiles", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "ExternalControlSignalsEnabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "LimitChangeSignificance", instance: "", required: true, data_type: "decimal", unit: "Percent" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "NotifyChargingLimitWithSchedules", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "PeriodsPerSchedule", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "Phases3to1", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "ProfileStackLevel", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "RateUnit", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "ExternalConstraintsProfileDisallowed", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "ChargingProfilePersistence", instance: "TxProfile", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "ChargingProfilePersistence", instance: "LocalGeneration", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "ChargingProfilePersistence", instance: "ChargingStationExternalConstraints", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SetpointPriority", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "MaxExternalConstraintsId", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SupportedAdditionalPurposes", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SupportsDynamicProfiles", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SupportsMaxOfflineDuration", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SupportsUseLocalTime", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SupportsRandomizedDelay", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SupportsLimitAtSoC", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "SmartChargingCtrlr", variable: "SupportsEvseSleep", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Available", instance: "Tariff", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Available", instance: "Cost", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Currency", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Enabled", instance: "Tariff", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Enabled", instance: "Cost", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Enabled", instance: "RunningCost", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "TariffFallbackMessage", instance: "<language>", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "TotalCostFallbackMessage", instance: "<language>", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "OfflineTariffFallbackMessage", instance: "<language>", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Interval", instance: "Tariff", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "Interval", instance: "Cost", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "MaxElements", instance: "Tariff", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "ConditionsSupported", instance: "Tariff", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TariffCostCtrlr", variable: "HandleFailedTariff", instance: "Tariff", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "TokenReader", variable: "Token", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "TokenReader", variable: "TokenType", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "ChargingTime", instance: "", required: false, data_type: "decimal", unit: "s" },
ComponentVariableRow { component: "TxCtrlr", variable: "EVConnectionTimeOut", instance: "", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "TxCtrlr", variable: "MaxEnergyOnInvalidId", instance: "", required: false, data_type: "integer", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "StopTxOnEVSideDisconnect", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "StopTxOnInvalidId", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "TxBeforeAcceptedEnabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "TxStartPoint", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "TxStopPoint", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "ResumptionTimeout", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "TxCtlrl", variable: "EnergyTransferResumptionRandomRange", instance: "", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "TxCtrlr", variable: "AllowEnergyTransferResumption", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "TxCtrlr", variable: "SupportedLimits", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "Enabled", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "SupportedEnergyTransferModes", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "SupportedOperationModes", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "LocalFrequencyUpdateThreshold", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "TxStartedMeasurands", instance: "<OperationMode>", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "TxEndedMeasurands", instance: "<OperationMode>", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "TxUpdatedMeasurands", instance: "<OperationMode>", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "TxEndedInterval", instance: "<OperationMode>", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "TxUpdatedInterval", instance: "<OperationMode>", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "LocalLoadBalancing", instance: "UpperThreshold", required: false, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "LocalLoadBalancing", instance: "LowerThreshold", required: false, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "LocalLoadBalancing", instance: "UpperOffset", required: false, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "V2XChargingCtrlr", variable: "LocalLoadBalancing", instance: "LowerOffset", required: false, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "FrequencySimulator", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "FrequencySimulator", variable: "DateTime", instance: "Start", required: false, data_type: "DateTime", unit: "" },
ComponentVariableRow { component: "FrequencySimulator", variable: "DateTime", instance: "End", required: false, data_type: "DateTime", unit: "" },
ComponentVariableRow { component: "FrequencySimulator", variable: "FrequencySchedule", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "DataCollector", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "DataCollector", variable: "DateTime", instance: "Start", required: false, data_type: "DateTime", unit: "" },
ComponentVariableRow { component: "DataCollector", variable: "DateTime", instance: "End", required: false, data_type: "DateTime", unit: "" },
ComponentVariableRow { component: "DataCollector", variable: "SamplingInterval", instance: "", required: false, data_type: "decimal", unit: "s" },
ComponentVariableRow { component: "DataCollector", variable: "SampledMeasurands", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "Enabled", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MaxW", instance: "", required: true, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "OverExcitedW", instance: "", required: true, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "OverExcitedPF", instance: "", required: true, data_type: "decimal", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "UnderExcitedW", instance: "", required: true, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "UnderExcitedPF", instance: "", required: true, data_type: "decimal", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MaxVA", instance: "", required: true, data_type: "decimal", unit: "VA" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MaxVar", instance: "", required: true, data_type: "decimal", unit: "Var" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MaxVarNeg", instance: "", required: true, data_type: "decimal", unit: "Var" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MaxChargeRateW", instance: "", required: true, data_type: "decimal", unit: "W" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MaxChargeRateVA", instance: "", required: true, data_type: "decimal", unit: "VA" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "VNom", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MaxV", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "MinV", instance: "", required: false, data_type: "decimal", unit: "V" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "ModesSupported", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "InverterManufacturer", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "InverterModel", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "InverterSerialNumber", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "InverterSwVersion", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "InverterHwVersion", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "IslandingDetectionMethod", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "IslandingDetectionTripTime", instance: "", required: false, data_type: "decimal", unit: "s" },
ComponentVariableRow { component: "DCDERCtrlr", variable: "ReactiveSusceptance", instance: "", required: true, data_type: "decimal", unit: "s" },
ComponentVariableRow { component: "ACDERCtrlr", variable: "ModesSupported", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "BatterySwapCtrlr", variable: "TargetSoC", instance: "", required: false, data_type: "integer", unit: "%" },
ComponentVariableRow { component: "BatterySwapCtrlr", variable: "MaxSoc", instance: "", required: false, data_type: "integer", unit: "%" },
ComponentVariableRow { component: "BatterySwapCtrlr", variable: "IdToken", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "BatterySwapCtrlr", variable: "Timeout", instance: "In", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "BatterySwapCtrlr", variable: "Timeout", instance: "Out", required: false, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "BatteryCartridge", variable: "SoC", instance: "", required: false, data_type: "integer", unit: "%" },
ComponentVariableRow { component: "BatteryCartridge", variable: "SoH", instance: "", required: false, data_type: "integer", unit: "%" },
ComponentVariableRow { component: "BatteryCartridge", variable: "WorkingMode", instance: "", required: false, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "OcppCsmsUrl", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "OcppInterface", instance: "", required: true, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "OcppTransport", instance: "", required: true, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "OcppVersion", instance: "", required: true, data_type: "OptionList", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "MessageTimeout", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "SecurityProfile", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "Identity", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "BasicAuthPassword", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "CsmsRootCertificateHashAlgorithm", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "CsmsRootCertificateIssuerKeyHash", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "CsmsRootCertificateIssuerNameHash", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "CsmsRootCertificateSerialNumber", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "VpnEnabled", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "VpnType", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "VpnServer", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "VpnUser", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "VpnGroup", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "VpnPassword", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "VpnKey", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "ApnEnabled", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "Apn", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "ApnUserName", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "ApnPassword", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "SimPin", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "PreferredNetwork", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "UseOnlyPreferredNetwork", instance: "", required: false, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "NetworkConfiguration", variable: "ApnAuthentication", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Enabled", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Problem", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "AuthorizeDirectPayment", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "AuthorizationAmount", instance: "", required: true, data_type: "decimal", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "IncrementalAuthorizationAmount", instance: "", required: false, data_type: "decimal", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "IncrementalAuthorizationThreshold", instance: "", required: false, data_type: "decimal", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "PaymentDetails", instance: "", required: true, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "SettlementByCSMS", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "ReceiptServerUrl", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "ReceiptByCSMS", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Merchant", instance: "Id", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Merchant", instance: "TaxId", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Merchant", instance: "Name", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Merchant", instance: "Address", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Merchant", instance: "City", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "TerminalID", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "PaymentServiceProvider", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "VendorName", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Model", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "SerialNumber", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "FirmwareVersion", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "IMSI", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "ICCID", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "PaymentCtrlr", variable: "Connected", instance: "", required: true, data_type: "boolean", unit: "" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "URLTemplate", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "URLParameters", instance: "", required: false, data_type: "MemberList", unit: "" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "TOTPVersion", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "ChargingStationId", instance: "", required: false, data_type: "string", unit: "" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "ValidityTime", instance: "", required: true, data_type: "integer", unit: "s" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "SharedSecret", instance: "", required: true, data_type: "string", unit: "" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "Length", instance: "", required: true, data_type: "integer", unit: "" },
ComponentVariableRow { component: "WebPaymentsCtrlr", variable: "QRCodeQuality", instance: "", required: false, data_type: "OptionList", unit: "" },
];
pub fn rows_for_component(component: &str) -> impl Iterator<Item = &'static ComponentVariableRow> {
COMPONENT_VARIABLE_MATRIX
.iter()
.filter(move |r| r.component.eq_ignore_ascii_case(component))
}