iso1EXIDatatypes.h 228 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992
  1. /*
  2. * Copyright (C) 2007-2018 Siemens AG
  3. *
  4. * This program is free software: you can redistribute it and/or modify
  5. * it under the terms of the GNU Lesser General Public License as published
  6. * by the Free Software Foundation, either version 3 of the License, or
  7. * (at your option) any later version.
  8. *
  9. * This program is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. * GNU Lesser General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Lesser General Public License
  15. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  16. */
  17. /*******************************************************************
  18. *
  19. * @author Daniel.Peintner.EXT@siemens.com
  20. * @version 0.9.4
  21. * @contact Richard.Kuntschke@siemens.com
  22. *
  23. * <p>Code generated by EXIdizer</p>
  24. * <p>Schema: V2G_CI_MsgDef.xsd</p>
  25. *
  26. *
  27. ********************************************************************/
  28. /**
  29. * \file EXIDatatypes.h
  30. * \brief Datatype definitions and structs for given XML Schema definitions and initialization methods
  31. *
  32. */
  33. #ifndef EXI_iso1_DATATYPES_H
  34. #define EXI_iso1_DATATYPES_H
  35. #ifdef __cplusplus
  36. extern "C" {
  37. #endif
  38. #define SUPPORT_YES 1
  39. #define SUPPORT_NO 2
  40. #define DEPLOY_ISO1_CODEC SUPPORT_YES
  41. #define DEPLOY_ISO1_CODEC_FRAGMENT SUPPORT_YES
  42. #if DEPLOY_ISO1_CODEC == SUPPORT_YES
  43. #include <stdint.h>
  44. #include "EXITypes.h"
  45. /* Datatype definitions and structs for given XML Schema definitions */
  46. #define UNION_YES 1
  47. #define UNION_NO 2
  48. #define SAVE_MEMORY_WITH_UNNAMED_UNION UNION_YES
  49. /* Note: Please find below a list of occurrence limits that have been applied */
  50. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":X509IssuerSerial from unbounded to 1 (see #define iso1X509DataType_X509IssuerSerial_ARRAY_SIZE) */
  51. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":X509SKI from unbounded to 1 (see #define iso1X509DataType_X509SKI_ARRAY_SIZE) */
  52. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":X509SubjectName from unbounded to 1 (see #define iso1X509DataType_X509SubjectName_ARRAY_SIZE) */
  53. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":X509Certificate from unbounded to 1 (see #define iso1X509DataType_X509Certificate_ARRAY_SIZE) */
  54. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":X509CRL from unbounded to 1 (see #define iso1X509DataType_X509CRL_ARRAY_SIZE) */
  55. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":XPath from unbounded to 1 (see #define iso1TransformType_XPath_ARRAY_SIZE) */
  56. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":SPKISexp from unbounded to 1 (see #define iso1SPKIDataType_SPKISexp_ARRAY_SIZE) */
  57. /* Limit occurrence of element "urn:iso:15118:2:2013:MsgDataTypes":RootCertificateID from unbounded to 5 (see #define iso1ListOfRootCertificateIDsType_RootCertificateID_ARRAY_SIZE) */
  58. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":Transform from unbounded to 1 (see #define iso1TransformsType_Transform_ARRAY_SIZE) */
  59. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":SignatureProperty from unbounded to 1 (see #define iso1SignaturePropertiesType_SignatureProperty_ARRAY_SIZE) */
  60. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":Reference from unbounded to 1 (see #define iso1SignedInfoType_Reference_ARRAY_SIZE) */
  61. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":Reference from unbounded to 1 (see #define iso1ManifestType_Reference_ARRAY_SIZE) */
  62. /* Limit occurrence of element "urn:iso:15118:2:2013:MsgDataTypes":PMaxScheduleEntry from unbounded to 5 (see #define iso1PMaxScheduleType_PMaxScheduleEntry_ARRAY_SIZE) */
  63. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":KeyName from unbounded to 1 (see #define iso1KeyInfoType_KeyName_ARRAY_SIZE) */
  64. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":KeyValue from unbounded to 1 (see #define iso1KeyInfoType_KeyValue_ARRAY_SIZE) */
  65. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":RetrievalMethod from unbounded to 1 (see #define iso1KeyInfoType_RetrievalMethod_ARRAY_SIZE) */
  66. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":X509Data from unbounded to 1 (see #define iso1KeyInfoType_X509Data_ARRAY_SIZE) */
  67. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":PGPData from unbounded to 1 (see #define iso1KeyInfoType_PGPData_ARRAY_SIZE) */
  68. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":SPKIData from unbounded to 1 (see #define iso1KeyInfoType_SPKIData_ARRAY_SIZE) */
  69. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":MgmtData from unbounded to 1 (see #define iso1KeyInfoType_MgmtData_ARRAY_SIZE) */
  70. /* Limit occurrence of element "urn:iso:15118:2:2013:MsgDataTypes":SalesTariffEntry from unbounded to 5 (see #define iso1SalesTariffType_SalesTariffEntry_ARRAY_SIZE) */
  71. /* Limit occurrence of element "http://www.w3.org/2000/09/xmldsig#":Object from unbounded to 1 (see #define iso1SignatureType_Object_ARRAY_SIZE) */
  72. /* Limit occurrence of element "urn:iso:15118:2:2013:MsgDataTypes":ParameterSet from unbounded to 5 (see #define iso1ServiceParameterListType_ParameterSet_ARRAY_SIZE) */
  73. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVChargeParameterType', base type name='anyType', content type='ELEMENT', isAbstract='true', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":DepartureTime{0-1})', derivedBy='RESTRICTION'. */
  74. struct iso1EVChargeParameterType {
  75. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DepartureTime, http://www.w3.org/2001/XMLSchema,unsignedInt */
  76. uint32_t DepartureTime ;
  77. unsigned int DepartureTime_isUsed:1;
  78. };
  79. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DiffieHellmanPublickeyType', base type name='dHpublickeyType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  80. #define iso1DiffieHellmanPublickeyType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  81. #define iso1DiffieHellmanPublickeyType_CONTENT_BYTES_SIZE 350
  82. struct iso1DiffieHellmanPublickeyType {
  83. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  84. struct {
  85. exi_string_character_t characters[iso1DiffieHellmanPublickeyType_Id_CHARACTERS_SIZE];
  86. uint16_t charactersLen;
  87. } Id ;
  88. /* simple content: urn:iso:15118:2:2013:MsgDataTypes,dHpublickeyType */
  89. struct {
  90. uint8_t bytes[iso1DiffieHellmanPublickeyType_CONTENT_BYTES_SIZE];
  91. uint16_t bytesLen;
  92. } CONTENT ;
  93. };
  94. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SASchedulesType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  95. struct iso1SASchedulesType {
  96. int noContent; /* avoid warning */
  97. };
  98. typedef enum {
  99. iso1DC_EVErrorCodeType_NO_ERROR = 0,
  100. iso1DC_EVErrorCodeType_FAILED_RESSTemperatureInhibit = 1,
  101. iso1DC_EVErrorCodeType_FAILED_EVShiftPosition = 2,
  102. iso1DC_EVErrorCodeType_FAILED_ChargerConnectorLockFault = 3,
  103. iso1DC_EVErrorCodeType_FAILED_EVRESSMalfunction = 4,
  104. iso1DC_EVErrorCodeType_FAILED_ChargingCurrentdifferential = 5,
  105. iso1DC_EVErrorCodeType_FAILED_ChargingVoltageOutOfRange = 6,
  106. iso1DC_EVErrorCodeType_Reserved_A = 7,
  107. iso1DC_EVErrorCodeType_Reserved_B = 8,
  108. iso1DC_EVErrorCodeType_Reserved_C = 9,
  109. iso1DC_EVErrorCodeType_FAILED_ChargingSystemIncompatibility = 10,
  110. iso1DC_EVErrorCodeType_NoData = 11
  111. } iso1DC_EVErrorCodeType;
  112. typedef enum {
  113. iso1EVSENotificationType_None = 0,
  114. iso1EVSENotificationType_StopCharging = 1,
  115. iso1EVSENotificationType_ReNegotiation = 2
  116. } iso1EVSENotificationType;
  117. typedef enum {
  118. iso1responseCodeType_OK = 0,
  119. iso1responseCodeType_OK_NewSessionEstablished = 1,
  120. iso1responseCodeType_OK_OldSessionJoined = 2,
  121. iso1responseCodeType_OK_CertificateExpiresSoon = 3,
  122. iso1responseCodeType_FAILED = 4,
  123. iso1responseCodeType_FAILED_SequenceError = 5,
  124. iso1responseCodeType_FAILED_ServiceIDInvalid = 6,
  125. iso1responseCodeType_FAILED_UnknownSession = 7,
  126. iso1responseCodeType_FAILED_ServiceSelectionInvalid = 8,
  127. iso1responseCodeType_FAILED_PaymentSelectionInvalid = 9,
  128. iso1responseCodeType_FAILED_CertificateExpired = 10,
  129. iso1responseCodeType_FAILED_SignatureError = 11,
  130. iso1responseCodeType_FAILED_NoCertificateAvailable = 12,
  131. iso1responseCodeType_FAILED_CertChainError = 13,
  132. iso1responseCodeType_FAILED_ChallengeInvalid = 14,
  133. iso1responseCodeType_FAILED_ContractCanceled = 15,
  134. iso1responseCodeType_FAILED_WrongChargeParameter = 16,
  135. iso1responseCodeType_FAILED_PowerDeliveryNotApplied = 17,
  136. iso1responseCodeType_FAILED_TariffSelectionInvalid = 18,
  137. iso1responseCodeType_FAILED_ChargingProfileInvalid = 19,
  138. iso1responseCodeType_FAILED_MeteringSignatureNotValid = 20,
  139. iso1responseCodeType_FAILED_NoChargeServiceSelected = 21,
  140. iso1responseCodeType_FAILED_WrongEnergyTransferMode = 22,
  141. iso1responseCodeType_FAILED_ContactorError = 23,
  142. iso1responseCodeType_FAILED_CertificateNotAllowedAtThisEVSE = 24,
  143. iso1responseCodeType_FAILED_CertificateRevoked = 25
  144. } iso1responseCodeType;
  145. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDetailReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ServiceID)', derivedBy='EXTENSION'. */
  146. struct iso1ServiceDetailReqType {
  147. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceID, urn:iso:15118:2:2013:MsgDataTypes,serviceIDType */
  148. uint16_t ServiceID ;
  149. };
  150. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,RelativeTimeIntervalType', base type name='IntervalType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":start,"urn:iso:15118:2:2013:MsgDataTypes":duration{0-1})', derivedBy='EXTENSION'. */
  151. struct iso1RelativeTimeIntervalType {
  152. /* element: "urn:iso:15118:2:2013:MsgDataTypes":start, urn:iso:15118:2:2013:MsgDataTypes,#AnonType_startRelativeTimeIntervalType */
  153. uint32_t start ;
  154. /* element: "urn:iso:15118:2:2013:MsgDataTypes":duration, urn:iso:15118:2:2013:MsgDataTypes,#AnonType_durationRelativeTimeIntervalType */
  155. uint32_t duration ;
  156. unsigned int duration_isUsed:1;
  157. };
  158. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EMAIDType', base type name='eMAIDType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  159. #define iso1EMAIDType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  160. #define iso1EMAIDType_CONTENT_CHARACTERS_SIZE 50 + EXTRA_CHAR
  161. struct iso1EMAIDType {
  162. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  163. struct {
  164. exi_string_character_t characters[iso1EMAIDType_Id_CHARACTERS_SIZE];
  165. uint16_t charactersLen;
  166. } Id ;
  167. /* simple content: urn:iso:15118:2:2013:MsgDataTypes,eMAIDType */
  168. struct {
  169. exi_string_character_t characters[iso1EMAIDType_CONTENT_CHARACTERS_SIZE];
  170. uint16_t charactersLen;
  171. } CONTENT ;
  172. };
  173. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVStatusType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  174. struct iso1EVStatusType {
  175. int noContent; /* avoid warning */
  176. };
  177. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVSEChargeParameterType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  178. struct iso1EVSEChargeParameterType {
  179. int noContent; /* avoid warning */
  180. };
  181. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVPowerDeliveryParameterType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  182. struct iso1EVPowerDeliveryParameterType {
  183. int noContent; /* avoid warning */
  184. };
  185. /* Complex type name='urn:iso:15118:2:2013:MsgBody,AuthorizationReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":GenChallenge{0-1})', derivedBy='EXTENSION'. */
  186. #define iso1AuthorizationReqType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  187. #define iso1AuthorizationReqType_GenChallenge_BYTES_SIZE 16 /* XML schema facet length for urn:iso:15118:2:2013:MsgDataTypes,genChallengeType is 16 */
  188. struct iso1AuthorizationReqType {
  189. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  190. struct {
  191. exi_string_character_t characters[iso1AuthorizationReqType_Id_CHARACTERS_SIZE];
  192. uint16_t charactersLen;
  193. } Id ;
  194. unsigned int Id_isUsed:1;
  195. /* element: "urn:iso:15118:2:2013:MsgBody":GenChallenge, urn:iso:15118:2:2013:MsgDataTypes,genChallengeType */
  196. struct {
  197. uint8_t bytes[iso1AuthorizationReqType_GenChallenge_BYTES_SIZE];
  198. uint16_t bytesLen;
  199. } GenChallenge ;
  200. unsigned int GenChallenge_isUsed:1;
  201. };
  202. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,MeterInfoType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":MeterID,"urn:iso:15118:2:2013:MsgDataTypes":MeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":SigMeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":MeterStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":TMeter{0-1})', derivedBy='RESTRICTION'. */
  203. #define iso1MeterInfoType_MeterID_CHARACTERS_SIZE 32 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,meterIDType is 32 */
  204. #define iso1MeterInfoType_SigMeterReading_BYTES_SIZE 64 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,sigMeterReadingType is 64 */
  205. struct iso1MeterInfoType {
  206. /* element: "urn:iso:15118:2:2013:MsgDataTypes":MeterID, urn:iso:15118:2:2013:MsgDataTypes,meterIDType */
  207. struct {
  208. exi_string_character_t characters[iso1MeterInfoType_MeterID_CHARACTERS_SIZE];
  209. uint16_t charactersLen;
  210. } MeterID ;
  211. /* element: "urn:iso:15118:2:2013:MsgDataTypes":MeterReading, http://www.w3.org/2001/XMLSchema,unsignedLong */
  212. uint64_t MeterReading ;
  213. unsigned int MeterReading_isUsed:1;
  214. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SigMeterReading, urn:iso:15118:2:2013:MsgDataTypes,sigMeterReadingType */
  215. struct {
  216. uint8_t bytes[iso1MeterInfoType_SigMeterReading_BYTES_SIZE];
  217. uint16_t bytesLen;
  218. } SigMeterReading ;
  219. unsigned int SigMeterReading_isUsed:1;
  220. /* element: "urn:iso:15118:2:2013:MsgDataTypes":MeterStatus, urn:iso:15118:2:2013:MsgDataTypes,meterStatusType */
  221. int16_t MeterStatus ;
  222. unsigned int MeterStatus_isUsed:1;
  223. /* element: "urn:iso:15118:2:2013:MsgDataTypes":TMeter, http://www.w3.org/2001/XMLSchema,long */
  224. int64_t TMeter ;
  225. unsigned int TMeter_isUsed:1;
  226. };
  227. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,ObjectType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##any])){0-UNBOUNDED}', derivedBy='RESTRICTION'. */
  228. #define iso1ObjectType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  229. #define iso1ObjectType_MimeType_CHARACTERS_SIZE 50 + EXTRA_CHAR
  230. #define iso1ObjectType_Encoding_CHARACTERS_SIZE 50 + EXTRA_CHAR
  231. #define iso1ObjectType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  232. struct iso1ObjectType {
  233. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  234. struct {
  235. exi_string_character_t characters[iso1ObjectType_Id_CHARACTERS_SIZE];
  236. uint16_t charactersLen;
  237. } Id ;
  238. unsigned int Id_isUsed:1;
  239. /* attribute: MimeType {http://www.w3.org/2001/XMLSchema,string} */
  240. struct {
  241. exi_string_character_t characters[iso1ObjectType_MimeType_CHARACTERS_SIZE];
  242. uint16_t charactersLen;
  243. } MimeType ;
  244. unsigned int MimeType_isUsed:1;
  245. /* attribute: Encoding {http://www.w3.org/2001/XMLSchema,anyURI} */
  246. struct {
  247. exi_string_character_t characters[iso1ObjectType_Encoding_CHARACTERS_SIZE];
  248. uint16_t charactersLen;
  249. } Encoding ;
  250. unsigned int Encoding_isUsed:1;
  251. /* element: WC[##any] */
  252. struct {
  253. exi_string_character_t characters[iso1ObjectType_ANY_CHARACTERS_SIZE];
  254. uint16_t charactersLen;
  255. } ANY ;
  256. unsigned int ANY_isUsed:1;
  257. };
  258. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,RSAKeyValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Modulus,"http://www.w3.org/2000/09/xmldsig#":Exponent)', derivedBy='RESTRICTION'. */
  259. #define iso1RSAKeyValueType_Modulus_BYTES_SIZE 350
  260. #define iso1RSAKeyValueType_Exponent_BYTES_SIZE 350
  261. struct iso1RSAKeyValueType {
  262. /* element: "http://www.w3.org/2000/09/xmldsig#":Modulus, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  263. struct {
  264. uint8_t bytes[iso1RSAKeyValueType_Modulus_BYTES_SIZE];
  265. uint16_t bytesLen;
  266. } Modulus ;
  267. /* element: "http://www.w3.org/2000/09/xmldsig#":Exponent, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  268. struct {
  269. uint8_t bytes[iso1RSAKeyValueType_Exponent_BYTES_SIZE];
  270. uint16_t bytesLen;
  271. } Exponent ;
  272. };
  273. /* Complex type name='urn:iso:15118:2:2013:MsgBody,SessionStopResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode)', derivedBy='EXTENSION'. */
  274. struct iso1SessionStopResType {
  275. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  276. iso1responseCodeType ResponseCode ;
  277. };
  278. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,SignatureValueType', base type name='base64Binary', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  279. #define iso1SignatureValueType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  280. #define iso1SignatureValueType_CONTENT_BYTES_SIZE 350
  281. struct iso1SignatureValueType {
  282. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  283. struct {
  284. exi_string_character_t characters[iso1SignatureValueType_Id_CHARACTERS_SIZE];
  285. uint16_t charactersLen;
  286. } Id ;
  287. unsigned int Id_isUsed:1;
  288. /* simple content: http://www.w3.org/2001/XMLSchema,base64Binary */
  289. struct {
  290. uint8_t bytes[iso1SignatureValueType_CONTENT_BYTES_SIZE];
  291. uint16_t bytesLen;
  292. } CONTENT ;
  293. };
  294. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SubCertificatesType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate{1-4})', derivedBy='RESTRICTION'. */
  295. #define iso1SubCertificatesType_Certificate_BYTES_SIZE 800 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,certificateType is 800 */
  296. #define iso1SubCertificatesType_Certificate_ARRAY_SIZE 4
  297. struct iso1SubCertificatesType {
  298. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Certificate, urn:iso:15118:2:2013:MsgDataTypes,certificateType */
  299. struct {
  300. struct {
  301. uint8_t bytes[iso1SubCertificatesType_Certificate_BYTES_SIZE];
  302. uint16_t bytesLen;
  303. } array[iso1SubCertificatesType_Certificate_ARRAY_SIZE];
  304. uint16_t arrayLen;
  305. } Certificate;
  306. };
  307. typedef enum {
  308. iso1faultCodeType_ParsingError = 0,
  309. iso1faultCodeType_NoTLSRootCertificatAvailable = 1,
  310. iso1faultCodeType_UnknownError = 2
  311. } iso1faultCodeType;
  312. typedef enum {
  313. iso1DC_EVSEStatusCodeType_EVSE_NotReady = 0,
  314. iso1DC_EVSEStatusCodeType_EVSE_Ready = 1,
  315. iso1DC_EVSEStatusCodeType_EVSE_Shutdown = 2,
  316. iso1DC_EVSEStatusCodeType_EVSE_UtilityInterruptEvent = 3,
  317. iso1DC_EVSEStatusCodeType_EVSE_IsolationMonitoringActive = 4,
  318. iso1DC_EVSEStatusCodeType_EVSE_EmergencyShutdown = 5,
  319. iso1DC_EVSEStatusCodeType_EVSE_Malfunction = 6,
  320. iso1DC_EVSEStatusCodeType_Reserved_8 = 7,
  321. iso1DC_EVSEStatusCodeType_Reserved_9 = 8,
  322. iso1DC_EVSEStatusCodeType_Reserved_A = 9,
  323. iso1DC_EVSEStatusCodeType_Reserved_B = 10,
  324. iso1DC_EVSEStatusCodeType_Reserved_C = 11
  325. } iso1DC_EVSEStatusCodeType;
  326. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,DSAKeyValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("http://www.w3.org/2000/09/xmldsig#":P,"http://www.w3.org/2000/09/xmldsig#":Q){0-1},"http://www.w3.org/2000/09/xmldsig#":G{0-1},"http://www.w3.org/2000/09/xmldsig#":Y,"http://www.w3.org/2000/09/xmldsig#":J{0-1},("http://www.w3.org/2000/09/xmldsig#":Seed,"http://www.w3.org/2000/09/xmldsig#":PgenCounter){0-1})', derivedBy='RESTRICTION'. */
  327. #define iso1DSAKeyValueType_P_BYTES_SIZE 350
  328. #define iso1DSAKeyValueType_Q_BYTES_SIZE 350
  329. #define iso1DSAKeyValueType_G_BYTES_SIZE 350
  330. #define iso1DSAKeyValueType_Y_BYTES_SIZE 350
  331. #define iso1DSAKeyValueType_J_BYTES_SIZE 350
  332. #define iso1DSAKeyValueType_Seed_BYTES_SIZE 350
  333. #define iso1DSAKeyValueType_PgenCounter_BYTES_SIZE 350
  334. struct iso1DSAKeyValueType {
  335. /* element: "http://www.w3.org/2000/09/xmldsig#":P, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  336. struct {
  337. uint8_t bytes[iso1DSAKeyValueType_P_BYTES_SIZE];
  338. uint16_t bytesLen;
  339. } P ;
  340. unsigned int P_isUsed:1;
  341. /* element: "http://www.w3.org/2000/09/xmldsig#":Q, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  342. struct {
  343. uint8_t bytes[iso1DSAKeyValueType_Q_BYTES_SIZE];
  344. uint16_t bytesLen;
  345. } Q ;
  346. unsigned int Q_isUsed:1;
  347. /* element: "http://www.w3.org/2000/09/xmldsig#":G, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  348. struct {
  349. uint8_t bytes[iso1DSAKeyValueType_G_BYTES_SIZE];
  350. uint16_t bytesLen;
  351. } G ;
  352. unsigned int G_isUsed:1;
  353. /* element: "http://www.w3.org/2000/09/xmldsig#":Y, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  354. struct {
  355. uint8_t bytes[iso1DSAKeyValueType_Y_BYTES_SIZE];
  356. uint16_t bytesLen;
  357. } Y ;
  358. /* element: "http://www.w3.org/2000/09/xmldsig#":J, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  359. struct {
  360. uint8_t bytes[iso1DSAKeyValueType_J_BYTES_SIZE];
  361. uint16_t bytesLen;
  362. } J ;
  363. unsigned int J_isUsed:1;
  364. /* element: "http://www.w3.org/2000/09/xmldsig#":Seed, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  365. struct {
  366. uint8_t bytes[iso1DSAKeyValueType_Seed_BYTES_SIZE];
  367. uint16_t bytesLen;
  368. } Seed ;
  369. unsigned int Seed_isUsed:1;
  370. /* element: "http://www.w3.org/2000/09/xmldsig#":PgenCounter, http://www.w3.org/2000/09/xmldsig#,CryptoBinary */
  371. struct {
  372. uint8_t bytes[iso1DSAKeyValueType_PgenCounter_BYTES_SIZE];
  373. uint16_t bytesLen;
  374. } PgenCounter ;
  375. unsigned int PgenCounter_isUsed:1;
  376. };
  377. typedef enum {
  378. iso1EVSEProcessingType_Finished = 0,
  379. iso1EVSEProcessingType_Ongoing = 1,
  380. iso1EVSEProcessingType_Ongoing_WaitingForCustomerInteraction = 2
  381. } iso1EVSEProcessingType;
  382. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,IntervalType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  383. struct iso1IntervalType {
  384. int noContent; /* avoid warning */
  385. };
  386. /* Complex type name='urn:iso:15118:2:2013:MsgBody,MeteringReceiptReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":SessionID,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID{0-1},"urn:iso:15118:2:2013:MsgBody":MeterInfo)', derivedBy='EXTENSION'. */
  387. #define iso1MeteringReceiptReqType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  388. #define iso1MeteringReceiptReqType_SessionID_BYTES_SIZE 8 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,sessionIDType is 8 */
  389. struct iso1MeteringReceiptReqType {
  390. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  391. struct {
  392. exi_string_character_t characters[iso1MeteringReceiptReqType_Id_CHARACTERS_SIZE];
  393. uint16_t charactersLen;
  394. } Id ;
  395. unsigned int Id_isUsed:1;
  396. /* element: "urn:iso:15118:2:2013:MsgBody":SessionID, urn:iso:15118:2:2013:MsgDataTypes,sessionIDType */
  397. struct {
  398. uint8_t bytes[iso1MeteringReceiptReqType_SessionID_BYTES_SIZE];
  399. uint16_t bytesLen;
  400. } SessionID ;
  401. /* element: "urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID, urn:iso:15118:2:2013:MsgDataTypes,SAIDType */
  402. uint8_t SAScheduleTupleID ;
  403. unsigned int SAScheduleTupleID_isUsed:1;
  404. /* element: "urn:iso:15118:2:2013:MsgBody":MeterInfo, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,MeterInfoType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":MeterID,"urn:iso:15118:2:2013:MsgDataTypes":MeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":SigMeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":MeterStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":TMeter{0-1})', derivedBy='RESTRICTION'. */
  405. struct iso1MeterInfoType MeterInfo ;
  406. };
  407. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,KeyValueType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":DSAKeyValue|"http://www.w3.org/2000/09/xmldsig#":RSAKeyValue|(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]))', derivedBy='RESTRICTION'. */
  408. #define iso1KeyValueType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  409. struct iso1KeyValueType {
  410. /* element: "http://www.w3.org/2000/09/xmldsig#":DSAKeyValue, Complex type name='http://www.w3.org/2000/09/xmldsig#,DSAKeyValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("http://www.w3.org/2000/09/xmldsig#":P,"http://www.w3.org/2000/09/xmldsig#":Q){0-1},"http://www.w3.org/2000/09/xmldsig#":G{0-1},"http://www.w3.org/2000/09/xmldsig#":Y,"http://www.w3.org/2000/09/xmldsig#":J{0-1},("http://www.w3.org/2000/09/xmldsig#":Seed,"http://www.w3.org/2000/09/xmldsig#":PgenCounter){0-1})', derivedBy='RESTRICTION'. */
  411. struct iso1DSAKeyValueType DSAKeyValue ;
  412. unsigned int DSAKeyValue_isUsed:1;
  413. /* element: "http://www.w3.org/2000/09/xmldsig#":RSAKeyValue, Complex type name='http://www.w3.org/2000/09/xmldsig#,RSAKeyValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Modulus,"http://www.w3.org/2000/09/xmldsig#":Exponent)', derivedBy='RESTRICTION'. */
  414. struct iso1RSAKeyValueType RSAKeyValue ;
  415. unsigned int RSAKeyValue_isUsed:1;
  416. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  417. struct {
  418. exi_string_character_t characters[iso1KeyValueType_ANY_CHARACTERS_SIZE];
  419. uint16_t charactersLen;
  420. } ANY ;
  421. unsigned int ANY_isUsed:1;
  422. };
  423. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,X509IssuerSerialType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":X509IssuerName,"http://www.w3.org/2000/09/xmldsig#":X509SerialNumber)', derivedBy='RESTRICTION'. */
  424. #define iso1X509IssuerSerialType_X509IssuerName_CHARACTERS_SIZE 50 + EXTRA_CHAR
  425. #define iso1X509IssuerSerialType_X509SerialNumber_BYTES_SIZE 20
  426. struct iso1X509IssuerSerialType {
  427. /* element: "http://www.w3.org/2000/09/xmldsig#":X509IssuerName, http://www.w3.org/2001/XMLSchema,string */
  428. struct {
  429. exi_string_character_t characters[iso1X509IssuerSerialType_X509IssuerName_CHARACTERS_SIZE];
  430. uint16_t charactersLen;
  431. } X509IssuerName ;
  432. /* element: "http://www.w3.org/2000/09/xmldsig#":X509SerialNumber, http://www.w3.org/2001/XMLSchema,integer */
  433. /* int64_t X509SerialNumber; */
  434. struct {
  435. /** a sign value */
  436. int negative;
  437. /* container size */
  438. /* size_t size; iso1X509IssuerSerialType_X509SerialNumber_BYTES_SIZE */
  439. /** array data container */
  440. /* For negative values, the Unsigned Integer holds the
  441. * magnitude of the value minus 1 */
  442. uint8_t data[iso1X509IssuerSerialType_X509SerialNumber_BYTES_SIZE];
  443. /** array length (len <= size) */
  444. size_t len;
  445. } X509SerialNumber;
  446. };
  447. typedef enum {
  448. iso1chargingSessionType_Terminate = 0,
  449. iso1chargingSessionType_Pause = 1
  450. } iso1chargingSessionType;
  451. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVSEStatusType', base type name='anyType', content type='ELEMENT', isAbstract='true', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification)', derivedBy='RESTRICTION'. */
  452. struct iso1EVSEStatusType {
  453. /* element: "urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay, http://www.w3.org/2001/XMLSchema,unsignedShort */
  454. uint16_t NotificationMaxDelay ;
  455. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSENotification, urn:iso:15118:2:2013:MsgDataTypes,EVSENotificationType */
  456. iso1EVSENotificationType EVSENotification ;
  457. };
  458. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,SignatureMethodType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":HMACOutputLength{0-1},(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  459. #define iso1SignatureMethodType_Algorithm_CHARACTERS_SIZE 65 + EXTRA_CHAR
  460. #define iso1SignatureMethodType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  461. struct iso1SignatureMethodType {
  462. /* attribute: Algorithm {http://www.w3.org/2001/XMLSchema,anyURI} */
  463. struct {
  464. exi_string_character_t characters[iso1SignatureMethodType_Algorithm_CHARACTERS_SIZE];
  465. uint16_t charactersLen;
  466. } Algorithm ;
  467. /* element: "http://www.w3.org/2000/09/xmldsig#":HMACOutputLength, http://www.w3.org/2000/09/xmldsig#,HMACOutputLengthType */
  468. int64_t HMACOutputLength ;
  469. unsigned int HMACOutputLength_isUsed:1;
  470. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  471. struct {
  472. exi_string_character_t characters[iso1SignatureMethodType_ANY_CHARACTERS_SIZE];
  473. uint16_t charactersLen;
  474. } ANY ;
  475. unsigned int ANY_isUsed:1;
  476. };
  477. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,X509DataType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("http://www.w3.org/2000/09/xmldsig#":X509IssuerSerial|"http://www.w3.org/2000/09/xmldsig#":X509SKI|"http://www.w3.org/2000/09/xmldsig#":X509SubjectName|"http://www.w3.org/2000/09/xmldsig#":X509Certificate|"http://www.w3.org/2000/09/xmldsig#":X509CRL|(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]))){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  478. #define iso1X509DataType_X509IssuerSerial_ARRAY_SIZE 1
  479. #define iso1X509DataType_X509SKI_BYTES_SIZE 350
  480. #define iso1X509DataType_X509SKI_ARRAY_SIZE 1
  481. #define iso1X509DataType_X509SubjectName_CHARACTERS_SIZE 50 + EXTRA_CHAR
  482. #define iso1X509DataType_X509SubjectName_ARRAY_SIZE 1
  483. #define iso1X509DataType_X509Certificate_BYTES_SIZE 350
  484. #define iso1X509DataType_X509Certificate_ARRAY_SIZE 1
  485. #define iso1X509DataType_X509CRL_BYTES_SIZE 350
  486. #define iso1X509DataType_X509CRL_ARRAY_SIZE 1
  487. #define iso1X509DataType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  488. struct iso1X509DataType {
  489. /* element: "http://www.w3.org/2000/09/xmldsig#":X509IssuerSerial, Complex type name='http://www.w3.org/2000/09/xmldsig#,X509IssuerSerialType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":X509IssuerName,"http://www.w3.org/2000/09/xmldsig#":X509SerialNumber)', derivedBy='RESTRICTION'. */
  490. struct {
  491. struct iso1X509IssuerSerialType array[iso1X509DataType_X509IssuerSerial_ARRAY_SIZE];
  492. uint16_t arrayLen;
  493. } X509IssuerSerial;
  494. /* element: "http://www.w3.org/2000/09/xmldsig#":X509SKI, http://www.w3.org/2001/XMLSchema,base64Binary */
  495. struct {
  496. struct {
  497. uint8_t bytes[iso1X509DataType_X509SKI_BYTES_SIZE];
  498. uint16_t bytesLen;
  499. } array[iso1X509DataType_X509SKI_ARRAY_SIZE];
  500. uint16_t arrayLen;
  501. } X509SKI;
  502. /* element: "http://www.w3.org/2000/09/xmldsig#":X509SubjectName, http://www.w3.org/2001/XMLSchema,string */
  503. struct {
  504. struct {
  505. exi_string_character_t characters[iso1X509DataType_X509SubjectName_CHARACTERS_SIZE];
  506. uint16_t charactersLen;
  507. } array[iso1X509DataType_X509SubjectName_ARRAY_SIZE];
  508. uint16_t arrayLen;
  509. } X509SubjectName;
  510. /* element: "http://www.w3.org/2000/09/xmldsig#":X509Certificate, http://www.w3.org/2001/XMLSchema,base64Binary */
  511. struct {
  512. struct {
  513. uint8_t bytes[iso1X509DataType_X509Certificate_BYTES_SIZE];
  514. uint16_t bytesLen;
  515. } array[iso1X509DataType_X509Certificate_ARRAY_SIZE];
  516. uint16_t arrayLen;
  517. } X509Certificate;
  518. /* element: "http://www.w3.org/2000/09/xmldsig#":X509CRL, http://www.w3.org/2001/XMLSchema,base64Binary */
  519. struct {
  520. struct {
  521. uint8_t bytes[iso1X509DataType_X509CRL_BYTES_SIZE];
  522. uint16_t bytesLen;
  523. } array[iso1X509DataType_X509CRL_ARRAY_SIZE];
  524. uint16_t arrayLen;
  525. } X509CRL;
  526. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  527. struct {
  528. exi_string_character_t characters[iso1X509DataType_ANY_CHARACTERS_SIZE];
  529. uint16_t charactersLen;
  530. } ANY ;
  531. unsigned int ANY_isUsed:1;
  532. };
  533. typedef enum {
  534. iso1serviceCategoryType_EVCharging = 0,
  535. iso1serviceCategoryType_Internet = 1,
  536. iso1serviceCategoryType_ContractCertificate = 2,
  537. iso1serviceCategoryType_OtherCustom = 3
  538. } iso1serviceCategoryType;
  539. typedef enum {
  540. iso1paymentOptionType_Contract = 0,
  541. iso1paymentOptionType_ExternalPayment = 1
  542. } iso1paymentOptionType;
  543. typedef enum {
  544. iso1EnergyTransferModeType_AC_single_phase_core = 0,
  545. iso1EnergyTransferModeType_AC_three_phase_core = 1,
  546. iso1EnergyTransferModeType_DC_core = 2,
  547. iso1EnergyTransferModeType_DC_extended = 3,
  548. iso1EnergyTransferModeType_DC_combo_core = 4,
  549. iso1EnergyTransferModeType_DC_unique = 5
  550. } iso1EnergyTransferModeType;
  551. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,NotificationType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":FaultCode,"urn:iso:15118:2:2013:MsgDataTypes":FaultMsg{0-1})', derivedBy='RESTRICTION'. */
  552. #define iso1NotificationType_FaultMsg_CHARACTERS_SIZE 64 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,faultMsgType is 64 */
  553. struct iso1NotificationType {
  554. /* element: "urn:iso:15118:2:2013:MsgDataTypes":FaultCode, urn:iso:15118:2:2013:MsgDataTypes,faultCodeType */
  555. iso1faultCodeType FaultCode ;
  556. /* element: "urn:iso:15118:2:2013:MsgDataTypes":FaultMsg, urn:iso:15118:2:2013:MsgDataTypes,faultMsgType */
  557. struct {
  558. exi_string_character_t characters[iso1NotificationType_FaultMsg_CHARACTERS_SIZE];
  559. uint16_t charactersLen;
  560. } FaultMsg ;
  561. unsigned int FaultMsg_isUsed:1;
  562. };
  563. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,TransformType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##other:"http://www.w3.org/2000/09/xmldsig#"])|"http://www.w3.org/2000/09/xmldsig#":XPath){0-UNBOUNDED}', derivedBy='RESTRICTION'. */
  564. #define iso1TransformType_Algorithm_CHARACTERS_SIZE 65 + EXTRA_CHAR
  565. #define iso1TransformType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  566. #define iso1TransformType_XPath_CHARACTERS_SIZE 50 + EXTRA_CHAR
  567. #define iso1TransformType_XPath_ARRAY_SIZE 1
  568. struct iso1TransformType {
  569. /* attribute: Algorithm {http://www.w3.org/2001/XMLSchema,anyURI} */
  570. struct {
  571. exi_string_character_t characters[iso1TransformType_Algorithm_CHARACTERS_SIZE];
  572. uint16_t charactersLen;
  573. } Algorithm ;
  574. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  575. struct {
  576. exi_string_character_t characters[iso1TransformType_ANY_CHARACTERS_SIZE];
  577. uint16_t charactersLen;
  578. } ANY ;
  579. unsigned int ANY_isUsed:1;
  580. /* element: "http://www.w3.org/2000/09/xmldsig#":XPath, http://www.w3.org/2001/XMLSchema,string */
  581. struct {
  582. struct {
  583. exi_string_character_t characters[iso1TransformType_XPath_CHARACTERS_SIZE];
  584. uint16_t charactersLen;
  585. } array[iso1TransformType_XPath_ARRAY_SIZE];
  586. uint16_t arrayLen;
  587. } XPath;
  588. };
  589. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentDetailsResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":GenChallenge,"urn:iso:15118:2:2013:MsgBody":EVSETimeStamp)', derivedBy='EXTENSION'. */
  590. #define iso1PaymentDetailsResType_GenChallenge_BYTES_SIZE 16 /* XML schema facet length for urn:iso:15118:2:2013:MsgDataTypes,genChallengeType is 16 */
  591. struct iso1PaymentDetailsResType {
  592. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  593. iso1responseCodeType ResponseCode ;
  594. /* element: "urn:iso:15118:2:2013:MsgBody":GenChallenge, urn:iso:15118:2:2013:MsgDataTypes,genChallengeType */
  595. struct {
  596. uint8_t bytes[iso1PaymentDetailsResType_GenChallenge_BYTES_SIZE];
  597. uint16_t bytesLen;
  598. } GenChallenge ;
  599. /* element: "urn:iso:15118:2:2013:MsgBody":EVSETimeStamp, http://www.w3.org/2001/XMLSchema,long */
  600. int64_t EVSETimeStamp ;
  601. };
  602. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ContractSignatureEncryptedPrivateKeyType', base type name='privateKeyType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  603. #define iso1ContractSignatureEncryptedPrivateKeyType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  604. #define iso1ContractSignatureEncryptedPrivateKeyType_CONTENT_BYTES_SIZE 350
  605. struct iso1ContractSignatureEncryptedPrivateKeyType {
  606. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  607. struct {
  608. exi_string_character_t characters[iso1ContractSignatureEncryptedPrivateKeyType_Id_CHARACTERS_SIZE];
  609. uint16_t charactersLen;
  610. } Id ;
  611. /* simple content: urn:iso:15118:2:2013:MsgDataTypes,privateKeyType */
  612. struct {
  613. uint8_t bytes[iso1ContractSignatureEncryptedPrivateKeyType_CONTENT_BYTES_SIZE];
  614. uint16_t bytesLen;
  615. } CONTENT ;
  616. };
  617. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,SPKIDataType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":SPKISexp,(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-1}){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  618. #define iso1SPKIDataType_SPKISexp_BYTES_SIZE 350
  619. #define iso1SPKIDataType_SPKISexp_ARRAY_SIZE 1
  620. #define iso1SPKIDataType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  621. struct iso1SPKIDataType {
  622. /* element: "http://www.w3.org/2000/09/xmldsig#":SPKISexp, http://www.w3.org/2001/XMLSchema,base64Binary */
  623. struct {
  624. struct {
  625. uint8_t bytes[iso1SPKIDataType_SPKISexp_BYTES_SIZE];
  626. uint16_t bytesLen;
  627. } array[iso1SPKIDataType_SPKISexp_ARRAY_SIZE];
  628. uint16_t arrayLen;
  629. } SPKISexp;
  630. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  631. struct {
  632. exi_string_character_t characters[iso1SPKIDataType_ANY_CHARACTERS_SIZE];
  633. uint16_t charactersLen;
  634. } ANY ;
  635. unsigned int ANY_isUsed:1;
  636. };
  637. /* Complex type name='urn:iso:15118:2:2013:MsgBody,SessionStopReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ChargingSession)', derivedBy='EXTENSION'. */
  638. struct iso1SessionStopReqType {
  639. /* element: "urn:iso:15118:2:2013:MsgBody":ChargingSession, urn:iso:15118:2:2013:MsgDataTypes,chargingSessionType */
  640. iso1chargingSessionType ChargingSession ;
  641. };
  642. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EntryType', base type name='anyType', content type='ELEMENT', isAbstract='true', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":TimeInterval)', derivedBy='RESTRICTION'. */
  643. struct iso1EntryType {
  644. /* substitutionGroup */
  645. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  646. union {
  647. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  648. /* element: "urn:iso:15118:2:2013:MsgDataTypes":TimeInterval, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,IntervalType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  649. struct iso1IntervalType TimeInterval ;
  650. /* element: "urn:iso:15118:2:2013:MsgDataTypes":RelativeTimeInterval, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,RelativeTimeIntervalType', base type name='IntervalType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":start,"urn:iso:15118:2:2013:MsgDataTypes":duration{0-1})', derivedBy='EXTENSION'. */
  651. struct iso1RelativeTimeIntervalType RelativeTimeInterval ;
  652. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  653. };
  654. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  655. unsigned int TimeInterval_isUsed:1;
  656. unsigned int RelativeTimeInterval_isUsed:1;
  657. };
  658. /* Complex type name='urn:iso:15118:2:2013:MsgBody,SessionSetupReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":EVCCID)', derivedBy='EXTENSION'. */
  659. #define iso1SessionSetupReqType_EVCCID_BYTES_SIZE 6 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,evccIDType is 6 */
  660. struct iso1SessionSetupReqType {
  661. /* element: "urn:iso:15118:2:2013:MsgBody":EVCCID, urn:iso:15118:2:2013:MsgDataTypes,evccIDType */
  662. struct {
  663. uint8_t bytes[iso1SessionSetupReqType_EVCCID_BYTES_SIZE];
  664. uint16_t bytesLen;
  665. } EVCCID ;
  666. };
  667. typedef enum {
  668. iso1isolationLevelType_Invalid = 0,
  669. iso1isolationLevelType_Valid = 1,
  670. iso1isolationLevelType_Warning = 2,
  671. iso1isolationLevelType_Fault = 3,
  672. iso1isolationLevelType_No_IMD = 4
  673. } iso1isolationLevelType;
  674. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,CanonicalizationMethodType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##any]){0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  675. #define iso1CanonicalizationMethodType_Algorithm_CHARACTERS_SIZE 65 + EXTRA_CHAR
  676. #define iso1CanonicalizationMethodType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  677. struct iso1CanonicalizationMethodType {
  678. /* attribute: Algorithm {http://www.w3.org/2001/XMLSchema,anyURI} */
  679. struct {
  680. exi_string_character_t characters[iso1CanonicalizationMethodType_Algorithm_CHARACTERS_SIZE];
  681. uint16_t charactersLen;
  682. } Algorithm ;
  683. /* element: WC[##any] */
  684. struct {
  685. exi_string_character_t characters[iso1CanonicalizationMethodType_ANY_CHARACTERS_SIZE];
  686. uint16_t charactersLen;
  687. } ANY ;
  688. unsigned int ANY_isUsed:1;
  689. };
  690. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVStatusType', base type name='EVStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EVReady,"urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode,"urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC)', derivedBy='EXTENSION'. */
  691. struct iso1DC_EVStatusType {
  692. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVReady, http://www.w3.org/2001/XMLSchema,boolean */
  693. int EVReady ;
  694. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode, urn:iso:15118:2:2013:MsgDataTypes,DC_EVErrorCodeType */
  695. iso1DC_EVErrorCodeType EVErrorCode ;
  696. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC, urn:iso:15118:2:2013:MsgDataTypes,percentValueType */
  697. int8_t EVRESSSOC ;
  698. };
  699. typedef enum {
  700. iso1costKindType_relativePricePercentage = 0,
  701. iso1costKindType_RenewableGenerationPercentage = 1,
  702. iso1costKindType_CarbonDioxideEmission = 2
  703. } iso1costKindType;
  704. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ServiceType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ServiceID,"urn:iso:15118:2:2013:MsgDataTypes":ServiceName{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ServiceCategory,"urn:iso:15118:2:2013:MsgDataTypes":ServiceScope{0-1},"urn:iso:15118:2:2013:MsgDataTypes":FreeService)', derivedBy='RESTRICTION'. */
  705. #define iso1ServiceType_ServiceName_CHARACTERS_SIZE 32 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,serviceNameType is 32 */
  706. #define iso1ServiceType_ServiceScope_CHARACTERS_SIZE 64 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,serviceScopeType is 64 */
  707. struct iso1ServiceType {
  708. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceID, urn:iso:15118:2:2013:MsgDataTypes,serviceIDType */
  709. uint16_t ServiceID ;
  710. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceName, urn:iso:15118:2:2013:MsgDataTypes,serviceNameType */
  711. struct {
  712. exi_string_character_t characters[iso1ServiceType_ServiceName_CHARACTERS_SIZE];
  713. uint16_t charactersLen;
  714. } ServiceName ;
  715. unsigned int ServiceName_isUsed:1;
  716. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceCategory, urn:iso:15118:2:2013:MsgDataTypes,serviceCategoryType */
  717. iso1serviceCategoryType ServiceCategory ;
  718. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceScope, urn:iso:15118:2:2013:MsgDataTypes,serviceScopeType */
  719. struct {
  720. exi_string_character_t characters[iso1ServiceType_ServiceScope_CHARACTERS_SIZE];
  721. uint16_t charactersLen;
  722. } ServiceScope ;
  723. unsigned int ServiceScope_isUsed:1;
  724. /* element: "urn:iso:15118:2:2013:MsgDataTypes":FreeService, http://www.w3.org/2001/XMLSchema,boolean */
  725. int FreeService ;
  726. };
  727. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDiscoveryReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ServiceScope{0-1},"urn:iso:15118:2:2013:MsgBody":ServiceCategory{0-1})', derivedBy='EXTENSION'. */
  728. #define iso1ServiceDiscoveryReqType_ServiceScope_CHARACTERS_SIZE 64 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,serviceScopeType is 64 */
  729. struct iso1ServiceDiscoveryReqType {
  730. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceScope, urn:iso:15118:2:2013:MsgDataTypes,serviceScopeType */
  731. struct {
  732. exi_string_character_t characters[iso1ServiceDiscoveryReqType_ServiceScope_CHARACTERS_SIZE];
  733. uint16_t charactersLen;
  734. } ServiceScope ;
  735. unsigned int ServiceScope_isUsed:1;
  736. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceCategory, urn:iso:15118:2:2013:MsgDataTypes,serviceCategoryType */
  737. iso1serviceCategoryType ServiceCategory ;
  738. unsigned int ServiceCategory_isUsed:1;
  739. };
  740. typedef enum {
  741. iso1chargeProgressType_Start = 0,
  742. iso1chargeProgressType_Stop = 1,
  743. iso1chargeProgressType_Renegotiate = 2
  744. } iso1chargeProgressType;
  745. typedef enum {
  746. iso1valueType_bool = 0,
  747. iso1valueType_byte = 1,
  748. iso1valueType_short = 2,
  749. iso1valueType_int = 3,
  750. iso1valueType_physicalValue = 4,
  751. iso1valueType_string = 5
  752. } iso1valueType;
  753. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CableCheckReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus)', derivedBy='EXTENSION'. */
  754. struct iso1CableCheckReqType {
  755. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVStatusType', base type name='EVStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EVReady,"urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode,"urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC)', derivedBy='EXTENSION'. */
  756. struct iso1DC_EVStatusType DC_EVStatus ;
  757. };
  758. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SelectedServiceType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ServiceID,"urn:iso:15118:2:2013:MsgDataTypes":ParameterSetID{0-1})', derivedBy='RESTRICTION'. */
  759. struct iso1SelectedServiceType {
  760. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceID, urn:iso:15118:2:2013:MsgDataTypes,serviceIDType */
  761. uint16_t ServiceID ;
  762. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ParameterSetID, http://www.w3.org/2001/XMLSchema,short */
  763. int16_t ParameterSetID ;
  764. unsigned int ParameterSetID_isUsed:1;
  765. };
  766. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":RCD))', derivedBy='EXTENSION'. */
  767. struct iso1AC_EVSEStatusType {
  768. /* element: "urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay, http://www.w3.org/2001/XMLSchema,unsignedShort */
  769. uint16_t NotificationMaxDelay ;
  770. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSENotification, urn:iso:15118:2:2013:MsgDataTypes,EVSENotificationType */
  771. iso1EVSENotificationType EVSENotification ;
  772. /* element: "urn:iso:15118:2:2013:MsgDataTypes":RCD, http://www.w3.org/2001/XMLSchema,boolean */
  773. int RCD ;
  774. };
  775. /* Complex type name='urn:iso:15118:2:2013:MsgBody,BodyBaseType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  776. struct iso1BodyBaseType {
  777. int noContent; /* avoid warning */
  778. };
  779. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SupportedEnergyTransferModeType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EnergyTransferMode{1-6})', derivedBy='RESTRICTION'. */
  780. #define iso1SupportedEnergyTransferModeType_EnergyTransferMode_ARRAY_SIZE 6
  781. struct iso1SupportedEnergyTransferModeType {
  782. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EnergyTransferMode, urn:iso:15118:2:2013:MsgDataTypes,EnergyTransferModeType */
  783. struct {
  784. iso1EnergyTransferModeType array[iso1SupportedEnergyTransferModeType_EnergyTransferMode_ARRAY_SIZE];
  785. uint16_t arrayLen;
  786. } EnergyTransferMode;
  787. };
  788. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ChargingStatusReqType', base type name='BodyBaseType', content type='EMPTY', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  789. struct iso1ChargingStatusReqType {
  790. int noContent; /* avoid warning */
  791. };
  792. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentServiceSelectionResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode)', derivedBy='EXTENSION'. */
  793. struct iso1PaymentServiceSelectionResType {
  794. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  795. iso1responseCodeType ResponseCode ;
  796. };
  797. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,DigestMethodType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  798. #define iso1DigestMethodType_Algorithm_CHARACTERS_SIZE 65 + EXTRA_CHAR
  799. #define iso1DigestMethodType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  800. struct iso1DigestMethodType {
  801. /* attribute: Algorithm {http://www.w3.org/2001/XMLSchema,anyURI} */
  802. struct {
  803. exi_string_character_t characters[iso1DigestMethodType_Algorithm_CHARACTERS_SIZE];
  804. uint16_t charactersLen;
  805. } Algorithm ;
  806. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  807. struct {
  808. exi_string_character_t characters[iso1DigestMethodType_ANY_CHARACTERS_SIZE];
  809. uint16_t charactersLen;
  810. } ANY ;
  811. unsigned int ANY_isUsed:1;
  812. };
  813. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,SignaturePropertyType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##other:"http://www.w3.org/2000/09/xmldsig#"])){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  814. #define iso1SignaturePropertyType_Target_CHARACTERS_SIZE 50 + EXTRA_CHAR
  815. #define iso1SignaturePropertyType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  816. #define iso1SignaturePropertyType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  817. struct iso1SignaturePropertyType {
  818. /* attribute: Target {http://www.w3.org/2001/XMLSchema,anyURI} */
  819. struct {
  820. exi_string_character_t characters[iso1SignaturePropertyType_Target_CHARACTERS_SIZE];
  821. uint16_t charactersLen;
  822. } Target ;
  823. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  824. struct {
  825. exi_string_character_t characters[iso1SignaturePropertyType_Id_CHARACTERS_SIZE];
  826. uint16_t charactersLen;
  827. } Id ;
  828. unsigned int Id_isUsed:1;
  829. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  830. struct {
  831. exi_string_character_t characters[iso1SignaturePropertyType_ANY_CHARACTERS_SIZE];
  832. uint16_t charactersLen;
  833. } ANY ;
  834. unsigned int ANY_isUsed:1;
  835. };
  836. typedef enum {
  837. iso1unitSymbolType_h = 0,
  838. iso1unitSymbolType_m = 1,
  839. iso1unitSymbolType_s = 2,
  840. iso1unitSymbolType_A = 3,
  841. iso1unitSymbolType_V = 4,
  842. iso1unitSymbolType_W = 5,
  843. iso1unitSymbolType_Wh = 6
  844. } iso1unitSymbolType;
  845. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,PGPDataType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("http://www.w3.org/2000/09/xmldsig#":PGPKeyID,"http://www.w3.org/2000/09/xmldsig#":PGPKeyPacket{0-1},(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED})|("http://www.w3.org/2000/09/xmldsig#":PGPKeyPacket,(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED}))', derivedBy='RESTRICTION'. */
  846. #define iso1PGPDataType_PGPKeyID_BYTES_SIZE 350
  847. #define iso1PGPDataType_PGPKeyPacket_BYTES_SIZE 350
  848. #define iso1PGPDataType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  849. struct iso1PGPDataType {
  850. /* element: "http://www.w3.org/2000/09/xmldsig#":PGPKeyID, http://www.w3.org/2001/XMLSchema,base64Binary */
  851. struct {
  852. uint8_t bytes[iso1PGPDataType_PGPKeyID_BYTES_SIZE];
  853. uint16_t bytesLen;
  854. } PGPKeyID ;
  855. unsigned int PGPKeyID_isUsed:1;
  856. /* element: "http://www.w3.org/2000/09/xmldsig#":PGPKeyPacket, http://www.w3.org/2001/XMLSchema,base64Binary */
  857. struct {
  858. uint8_t bytes[iso1PGPDataType_PGPKeyPacket_BYTES_SIZE];
  859. uint16_t bytesLen;
  860. } PGPKeyPacket ;
  861. unsigned int PGPKeyPacket_isUsed:1;
  862. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  863. struct {
  864. exi_string_character_t characters[iso1PGPDataType_ANY_CHARACTERS_SIZE];
  865. uint16_t charactersLen;
  866. } ANY ;
  867. unsigned int ANY_isUsed:1;
  868. };
  869. /* Complex type name='urn:iso:15118:2:2013:MsgBody,SessionSetupResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEID,"urn:iso:15118:2:2013:MsgBody":EVSETimeStamp{0-1})', derivedBy='EXTENSION'. */
  870. #define iso1SessionSetupResType_EVSEID_CHARACTERS_SIZE 37 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,evseIDType is 37 */
  871. struct iso1SessionSetupResType {
  872. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  873. iso1responseCodeType ResponseCode ;
  874. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEID, urn:iso:15118:2:2013:MsgDataTypes,evseIDType */
  875. struct {
  876. exi_string_character_t characters[iso1SessionSetupResType_EVSEID_CHARACTERS_SIZE];
  877. uint16_t charactersLen;
  878. } EVSEID ;
  879. /* element: "urn:iso:15118:2:2013:MsgBody":EVSETimeStamp, http://www.w3.org/2001/XMLSchema,long */
  880. int64_t EVSETimeStamp ;
  881. unsigned int EVSETimeStamp_isUsed:1;
  882. };
  883. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CertificateChainType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate,"urn:iso:15118:2:2013:MsgDataTypes":SubCertificates{0-1})', derivedBy='RESTRICTION'. */
  884. #define iso1CertificateChainType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  885. #define iso1CertificateChainType_Certificate_BYTES_SIZE 800 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,certificateType is 800 */
  886. struct iso1CertificateChainType {
  887. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  888. struct {
  889. exi_string_character_t characters[iso1CertificateChainType_Id_CHARACTERS_SIZE];
  890. uint16_t charactersLen;
  891. } Id ;
  892. unsigned int Id_isUsed:1;
  893. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Certificate, urn:iso:15118:2:2013:MsgDataTypes,certificateType */
  894. struct {
  895. uint8_t bytes[iso1CertificateChainType_Certificate_BYTES_SIZE];
  896. uint16_t bytesLen;
  897. } Certificate ;
  898. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SubCertificates, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SubCertificatesType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate{1-4})', derivedBy='RESTRICTION'. */
  899. struct iso1SubCertificatesType SubCertificates ;
  900. unsigned int SubCertificates_isUsed:1;
  901. };
  902. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  903. struct iso1DC_EVSEStatusType {
  904. /* element: "urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay, http://www.w3.org/2001/XMLSchema,unsignedShort */
  905. uint16_t NotificationMaxDelay ;
  906. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSENotification, urn:iso:15118:2:2013:MsgDataTypes,EVSENotificationType */
  907. iso1EVSENotificationType EVSENotification ;
  908. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus, urn:iso:15118:2:2013:MsgDataTypes,isolationLevelType */
  909. iso1isolationLevelType EVSEIsolationStatus ;
  910. unsigned int EVSEIsolationStatus_isUsed:1;
  911. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode, urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusCodeType */
  912. iso1DC_EVSEStatusCodeType EVSEStatusCode ;
  913. };
  914. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ServiceListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Service{1-8})', derivedBy='RESTRICTION'. */
  915. #define iso1ServiceListType_Service_ARRAY_SIZE 8
  916. struct iso1ServiceListType {
  917. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Service, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ServiceType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ServiceID,"urn:iso:15118:2:2013:MsgDataTypes":ServiceName{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ServiceCategory,"urn:iso:15118:2:2013:MsgDataTypes":ServiceScope{0-1},"urn:iso:15118:2:2013:MsgDataTypes":FreeService)', derivedBy='RESTRICTION'. */
  918. struct {
  919. struct iso1ServiceType array[iso1ServiceListType_Service_ARRAY_SIZE];
  920. uint16_t arrayLen;
  921. } Service;
  922. };
  923. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PowerDeliveryResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatus)', derivedBy='EXTENSION'. */
  924. struct iso1PowerDeliveryResType {
  925. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  926. iso1responseCodeType ResponseCode ;
  927. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVSEStatusType', base type name='anyType', content type='ELEMENT', isAbstract='true', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification)', derivedBy='RESTRICTION'. */
  928. struct iso1EVSEStatusType EVSEStatus ;
  929. unsigned int EVSEStatus_isUsed:1;
  930. /* element: "urn:iso:15118:2:2013:MsgDataTypes":AC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":RCD))', derivedBy='EXTENSION'. */
  931. struct iso1AC_EVSEStatusType AC_EVSEStatus ;
  932. unsigned int AC_EVSEStatus_isUsed:1;
  933. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  934. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  935. unsigned int DC_EVSEStatus_isUsed:1;
  936. };
  937. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PaymentOptionListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":PaymentOption{1-2})', derivedBy='RESTRICTION'. */
  938. #define iso1PaymentOptionListType_PaymentOption_ARRAY_SIZE 2
  939. struct iso1PaymentOptionListType {
  940. /* element: "urn:iso:15118:2:2013:MsgDataTypes":PaymentOption, urn:iso:15118:2:2013:MsgDataTypes,paymentOptionType */
  941. struct {
  942. iso1paymentOptionType array[iso1PaymentOptionListType_PaymentOption_ARRAY_SIZE];
  943. uint16_t arrayLen;
  944. } PaymentOption;
  945. };
  946. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  947. struct iso1PhysicalValueType {
  948. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Multiplier, urn:iso:15118:2:2013:MsgDataTypes,unitMultiplierType */
  949. int8_t Multiplier ;
  950. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Unit, urn:iso:15118:2:2013:MsgDataTypes,unitSymbolType */
  951. iso1unitSymbolType Unit ;
  952. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Value, http://www.w3.org/2001/XMLSchema,short */
  953. int16_t Value ;
  954. };
  955. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentDetailsReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":eMAID,"urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain)', derivedBy='EXTENSION'. */
  956. #define iso1PaymentDetailsReqType_eMAID_CHARACTERS_SIZE 15 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,eMAIDType is 15 */
  957. struct iso1PaymentDetailsReqType {
  958. /* element: "urn:iso:15118:2:2013:MsgBody":eMAID, urn:iso:15118:2:2013:MsgDataTypes,eMAIDType */
  959. struct {
  960. exi_string_character_t characters[iso1PaymentDetailsReqType_eMAID_CHARACTERS_SIZE];
  961. uint16_t charactersLen;
  962. } eMAID ;
  963. /* element: "urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CertificateChainType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate,"urn:iso:15118:2:2013:MsgDataTypes":SubCertificates{0-1})', derivedBy='RESTRICTION'. */
  964. struct iso1CertificateChainType ContractSignatureCertChain ;
  965. };
  966. /* Complex type name='urn:iso:15118:2:2013:MsgBody,AuthorizationResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEProcessing)', derivedBy='EXTENSION'. */
  967. struct iso1AuthorizationResType {
  968. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  969. iso1responseCodeType ResponseCode ;
  970. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEProcessing, urn:iso:15118:2:2013:MsgDataTypes,EVSEProcessingType */
  971. iso1EVSEProcessingType EVSEProcessing ;
  972. };
  973. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEChargeParameterType', base type name='EVSEChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumCurrentLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumPowerLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumVoltageLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMinimumCurrentLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMinimumVoltageLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSECurrentRegulationTolerance{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEPeakCurrentRipple,"urn:iso:15118:2:2013:MsgDataTypes":EVSEEnergyToBeDelivered{0-1})', derivedBy='EXTENSION'. */
  974. struct iso1DC_EVSEChargeParameterType {
  975. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  976. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  977. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumCurrentLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  978. struct iso1PhysicalValueType EVSEMaximumCurrentLimit ;
  979. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumPowerLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  980. struct iso1PhysicalValueType EVSEMaximumPowerLimit ;
  981. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumVoltageLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  982. struct iso1PhysicalValueType EVSEMaximumVoltageLimit ;
  983. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEMinimumCurrentLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  984. struct iso1PhysicalValueType EVSEMinimumCurrentLimit ;
  985. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEMinimumVoltageLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  986. struct iso1PhysicalValueType EVSEMinimumVoltageLimit ;
  987. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSECurrentRegulationTolerance, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  988. struct iso1PhysicalValueType EVSECurrentRegulationTolerance ;
  989. unsigned int EVSECurrentRegulationTolerance_isUsed:1;
  990. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEPeakCurrentRipple, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  991. struct iso1PhysicalValueType EVSEPeakCurrentRipple ;
  992. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEEnergyToBeDelivered, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  993. struct iso1PhysicalValueType EVSEEnergyToBeDelivered ;
  994. unsigned int EVSEEnergyToBeDelivered_isUsed:1;
  995. };
  996. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ChargingStatusResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEID,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgBody":EVSEMaxCurrent{0-1},"urn:iso:15118:2:2013:MsgBody":MeterInfo{0-1},"urn:iso:15118:2:2013:MsgBody":ReceiptRequired{0-1},"urn:iso:15118:2:2013:MsgBody":AC_EVSEStatus)', derivedBy='EXTENSION'. */
  997. #define iso1ChargingStatusResType_EVSEID_CHARACTERS_SIZE 37 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,evseIDType is 37 */
  998. struct iso1ChargingStatusResType {
  999. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1000. iso1responseCodeType ResponseCode ;
  1001. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEID, urn:iso:15118:2:2013:MsgDataTypes,evseIDType */
  1002. struct {
  1003. exi_string_character_t characters[iso1ChargingStatusResType_EVSEID_CHARACTERS_SIZE];
  1004. uint16_t charactersLen;
  1005. } EVSEID ;
  1006. /* element: "urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID, urn:iso:15118:2:2013:MsgDataTypes,SAIDType */
  1007. uint8_t SAScheduleTupleID ;
  1008. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEMaxCurrent, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1009. struct iso1PhysicalValueType EVSEMaxCurrent ;
  1010. unsigned int EVSEMaxCurrent_isUsed:1;
  1011. /* element: "urn:iso:15118:2:2013:MsgBody":MeterInfo, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,MeterInfoType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":MeterID,"urn:iso:15118:2:2013:MsgDataTypes":MeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":SigMeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":MeterStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":TMeter{0-1})', derivedBy='RESTRICTION'. */
  1012. struct iso1MeterInfoType MeterInfo ;
  1013. unsigned int MeterInfo_isUsed:1;
  1014. /* element: "urn:iso:15118:2:2013:MsgBody":ReceiptRequired, http://www.w3.org/2001/XMLSchema,boolean */
  1015. int ReceiptRequired ;
  1016. unsigned int ReceiptRequired_isUsed:1;
  1017. /* element: "urn:iso:15118:2:2013:MsgBody":AC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":RCD))', derivedBy='EXTENSION'. */
  1018. struct iso1AC_EVSEStatusType AC_EVSEStatus ;
  1019. };
  1020. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ListOfRootCertificateIDsType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":RootCertificateID{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1021. #define iso1ListOfRootCertificateIDsType_RootCertificateID_ARRAY_SIZE 5
  1022. struct iso1ListOfRootCertificateIDsType {
  1023. /* element: "urn:iso:15118:2:2013:MsgDataTypes":RootCertificateID, Complex type name='http://www.w3.org/2000/09/xmldsig#,X509IssuerSerialType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":X509IssuerName,"http://www.w3.org/2000/09/xmldsig#":X509SerialNumber)', derivedBy='RESTRICTION'. */
  1024. struct {
  1025. struct iso1X509IssuerSerialType array[iso1ListOfRootCertificateIDsType_RootCertificateID_ARRAY_SIZE];
  1026. uint16_t arrayLen;
  1027. } RootCertificateID;
  1028. };
  1029. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ChargeServiceType', base type name='ServiceType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":ServiceID,"urn:iso:15118:2:2013:MsgDataTypes":ServiceName{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ServiceCategory,"urn:iso:15118:2:2013:MsgDataTypes":ServiceScope{0-1},"urn:iso:15118:2:2013:MsgDataTypes":FreeService),("urn:iso:15118:2:2013:MsgDataTypes":SupportedEnergyTransferMode))', derivedBy='EXTENSION'. */
  1030. #define iso1ChargeServiceType_ServiceName_CHARACTERS_SIZE 32 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,serviceNameType is 32 */
  1031. #define iso1ChargeServiceType_ServiceScope_CHARACTERS_SIZE 64 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,serviceScopeType is 64 */
  1032. struct iso1ChargeServiceType {
  1033. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceID, urn:iso:15118:2:2013:MsgDataTypes,serviceIDType */
  1034. uint16_t ServiceID ;
  1035. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceName, urn:iso:15118:2:2013:MsgDataTypes,serviceNameType */
  1036. struct {
  1037. exi_string_character_t characters[iso1ChargeServiceType_ServiceName_CHARACTERS_SIZE];
  1038. uint16_t charactersLen;
  1039. } ServiceName ;
  1040. unsigned int ServiceName_isUsed:1;
  1041. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceCategory, urn:iso:15118:2:2013:MsgDataTypes,serviceCategoryType */
  1042. iso1serviceCategoryType ServiceCategory ;
  1043. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ServiceScope, urn:iso:15118:2:2013:MsgDataTypes,serviceScopeType */
  1044. struct {
  1045. exi_string_character_t characters[iso1ChargeServiceType_ServiceScope_CHARACTERS_SIZE];
  1046. uint16_t charactersLen;
  1047. } ServiceScope ;
  1048. unsigned int ServiceScope_isUsed:1;
  1049. /* element: "urn:iso:15118:2:2013:MsgDataTypes":FreeService, http://www.w3.org/2001/XMLSchema,boolean */
  1050. int FreeService ;
  1051. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SupportedEnergyTransferMode, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SupportedEnergyTransferModeType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EnergyTransferMode{1-6})', derivedBy='RESTRICTION'. */
  1052. struct iso1SupportedEnergyTransferModeType SupportedEnergyTransferMode ;
  1053. };
  1054. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SelectedServiceListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SelectedService{1-16})', derivedBy='RESTRICTION'. */
  1055. #define iso1SelectedServiceListType_SelectedService_ARRAY_SIZE 16
  1056. struct iso1SelectedServiceListType {
  1057. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SelectedService, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SelectedServiceType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ServiceID,"urn:iso:15118:2:2013:MsgDataTypes":ParameterSetID{0-1})', derivedBy='RESTRICTION'. */
  1058. struct {
  1059. struct iso1SelectedServiceType array[iso1SelectedServiceListType_SelectedService_ARRAY_SIZE];
  1060. uint16_t arrayLen;
  1061. } SelectedService;
  1062. };
  1063. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CableCheckResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEProcessing)', derivedBy='EXTENSION'. */
  1064. struct iso1CableCheckResType {
  1065. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1066. iso1responseCodeType ResponseCode ;
  1067. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  1068. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  1069. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEProcessing, urn:iso:15118:2:2013:MsgDataTypes,EVSEProcessingType */
  1070. iso1EVSEProcessingType EVSEProcessing ;
  1071. };
  1072. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,TransformsType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transform{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1073. #define iso1TransformsType_Transform_ARRAY_SIZE 1
  1074. struct iso1TransformsType {
  1075. /* element: "http://www.w3.org/2000/09/xmldsig#":Transform, Complex type name='http://www.w3.org/2000/09/xmldsig#,TransformType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##other:"http://www.w3.org/2000/09/xmldsig#"])|"http://www.w3.org/2000/09/xmldsig#":XPath){0-UNBOUNDED}', derivedBy='RESTRICTION'. */
  1076. struct {
  1077. struct iso1TransformType array[iso1TransformsType_Transform_ARRAY_SIZE];
  1078. uint16_t arrayLen;
  1079. } Transform;
  1080. };
  1081. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PreChargeReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus,"urn:iso:15118:2:2013:MsgBody":EVTargetVoltage,"urn:iso:15118:2:2013:MsgBody":EVTargetCurrent)', derivedBy='EXTENSION'. */
  1082. struct iso1PreChargeReqType {
  1083. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVStatusType', base type name='EVStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EVReady,"urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode,"urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC)', derivedBy='EXTENSION'. */
  1084. struct iso1DC_EVStatusType DC_EVStatus ;
  1085. /* element: "urn:iso:15118:2:2013:MsgBody":EVTargetVoltage, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1086. struct iso1PhysicalValueType EVTargetVoltage ;
  1087. /* element: "urn:iso:15118:2:2013:MsgBody":EVTargetCurrent, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1088. struct iso1PhysicalValueType EVTargetCurrent ;
  1089. };
  1090. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVChargeParameterType', base type name='EVChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":DepartureTime{0-1}),("urn:iso:15118:2:2013:MsgDataTypes":EAmount,"urn:iso:15118:2:2013:MsgDataTypes":EVMaxVoltage,"urn:iso:15118:2:2013:MsgDataTypes":EVMaxCurrent,"urn:iso:15118:2:2013:MsgDataTypes":EVMinCurrent))', derivedBy='EXTENSION'. */
  1091. struct iso1AC_EVChargeParameterType {
  1092. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DepartureTime, http://www.w3.org/2001/XMLSchema,unsignedInt */
  1093. uint32_t DepartureTime ;
  1094. unsigned int DepartureTime_isUsed:1;
  1095. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EAmount, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1096. struct iso1PhysicalValueType EAmount ;
  1097. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVMaxVoltage, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1098. struct iso1PhysicalValueType EVMaxVoltage ;
  1099. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVMaxCurrent, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1100. struct iso1PhysicalValueType EVMaxCurrent ;
  1101. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVMinCurrent, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1102. struct iso1PhysicalValueType EVMinCurrent ;
  1103. };
  1104. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PMaxScheduleEntryType', base type name='EntryType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":TimeInterval),("urn:iso:15118:2:2013:MsgDataTypes":PMax))', derivedBy='EXTENSION'. */
  1105. struct iso1PMaxScheduleEntryType {
  1106. /* element: "urn:iso:15118:2:2013:MsgDataTypes":TimeInterval, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,IntervalType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  1107. struct iso1IntervalType TimeInterval ;
  1108. unsigned int TimeInterval_isUsed:1;
  1109. /* element: "urn:iso:15118:2:2013:MsgDataTypes":RelativeTimeInterval, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,RelativeTimeIntervalType', base type name='IntervalType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":start,"urn:iso:15118:2:2013:MsgDataTypes":duration{0-1})', derivedBy='EXTENSION'. */
  1110. struct iso1RelativeTimeIntervalType RelativeTimeInterval ;
  1111. unsigned int RelativeTimeInterval_isUsed:1;
  1112. /* element: "urn:iso:15118:2:2013:MsgDataTypes":PMax, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1113. struct iso1PhysicalValueType PMax ;
  1114. };
  1115. /* Complex type name='urn:iso:15118:2:2013:MsgBody,MeteringReceiptResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatus)', derivedBy='EXTENSION'. */
  1116. struct iso1MeteringReceiptResType {
  1117. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1118. iso1responseCodeType ResponseCode ;
  1119. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVSEStatusType', base type name='anyType', content type='ELEMENT', isAbstract='true', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification)', derivedBy='RESTRICTION'. */
  1120. struct iso1EVSEStatusType EVSEStatus ;
  1121. unsigned int EVSEStatus_isUsed:1;
  1122. /* element: "urn:iso:15118:2:2013:MsgDataTypes":AC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":RCD))', derivedBy='EXTENSION'. */
  1123. struct iso1AC_EVSEStatusType AC_EVSEStatus ;
  1124. unsigned int AC_EVSEStatus_isUsed:1;
  1125. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  1126. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  1127. unsigned int DC_EVSEStatus_isUsed:1;
  1128. };
  1129. /* Complex type name='urn:iso:15118:2:2013:MsgBody,WeldingDetectionResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage)', derivedBy='EXTENSION'. */
  1130. struct iso1WeldingDetectionResType {
  1131. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1132. iso1responseCodeType ResponseCode ;
  1133. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  1134. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  1135. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1136. struct iso1PhysicalValueType EVSEPresentVoltage ;
  1137. };
  1138. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,ReferenceType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transforms{0-1},"http://www.w3.org/2000/09/xmldsig#":DigestMethod,"http://www.w3.org/2000/09/xmldsig#":DigestValue)', derivedBy='RESTRICTION'. */
  1139. #define iso1ReferenceType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1140. #define iso1ReferenceType_URI_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1141. #define iso1ReferenceType_Type_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1142. #define iso1ReferenceType_DigestValue_BYTES_SIZE 350
  1143. struct iso1ReferenceType {
  1144. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1145. struct {
  1146. exi_string_character_t characters[iso1ReferenceType_Id_CHARACTERS_SIZE];
  1147. uint16_t charactersLen;
  1148. } Id ;
  1149. unsigned int Id_isUsed:1;
  1150. /* attribute: URI {http://www.w3.org/2001/XMLSchema,anyURI} */
  1151. struct {
  1152. exi_string_character_t characters[iso1ReferenceType_URI_CHARACTERS_SIZE];
  1153. uint16_t charactersLen;
  1154. } URI ;
  1155. unsigned int URI_isUsed:1;
  1156. /* attribute: Type {http://www.w3.org/2001/XMLSchema,anyURI} */
  1157. struct {
  1158. exi_string_character_t characters[iso1ReferenceType_Type_CHARACTERS_SIZE];
  1159. uint16_t charactersLen;
  1160. } Type ;
  1161. unsigned int Type_isUsed:1;
  1162. /* element: "http://www.w3.org/2000/09/xmldsig#":Transforms, Complex type name='http://www.w3.org/2000/09/xmldsig#,TransformsType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transform{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1163. struct iso1TransformsType Transforms ;
  1164. unsigned int Transforms_isUsed:1;
  1165. /* element: "http://www.w3.org/2000/09/xmldsig#":DigestMethod, Complex type name='http://www.w3.org/2000/09/xmldsig#,DigestMethodType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1166. struct iso1DigestMethodType DigestMethod ;
  1167. /* element: "http://www.w3.org/2000/09/xmldsig#":DigestValue, http://www.w3.org/2000/09/xmldsig#,DigestValueType */
  1168. struct {
  1169. uint8_t bytes[iso1ReferenceType_DigestValue_BYTES_SIZE];
  1170. uint16_t bytesLen;
  1171. } DigestValue ;
  1172. };
  1173. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CurrentDemandReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus,"urn:iso:15118:2:2013:MsgBody":EVTargetCurrent,"urn:iso:15118:2:2013:MsgBody":EVMaximumVoltageLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVMaximumCurrentLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVMaximumPowerLimit{0-1},"urn:iso:15118:2:2013:MsgBody":BulkChargingComplete{0-1},"urn:iso:15118:2:2013:MsgBody":ChargingComplete,"urn:iso:15118:2:2013:MsgBody":RemainingTimeToFullSoC{0-1},"urn:iso:15118:2:2013:MsgBody":RemainingTimeToBulkSoC{0-1},"urn:iso:15118:2:2013:MsgBody":EVTargetVoltage)', derivedBy='EXTENSION'. */
  1174. struct iso1CurrentDemandReqType {
  1175. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVStatusType', base type name='EVStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EVReady,"urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode,"urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC)', derivedBy='EXTENSION'. */
  1176. struct iso1DC_EVStatusType DC_EVStatus ;
  1177. /* element: "urn:iso:15118:2:2013:MsgBody":EVTargetCurrent, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1178. struct iso1PhysicalValueType EVTargetCurrent ;
  1179. /* element: "urn:iso:15118:2:2013:MsgBody":EVMaximumVoltageLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1180. struct iso1PhysicalValueType EVMaximumVoltageLimit ;
  1181. unsigned int EVMaximumVoltageLimit_isUsed:1;
  1182. /* element: "urn:iso:15118:2:2013:MsgBody":EVMaximumCurrentLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1183. struct iso1PhysicalValueType EVMaximumCurrentLimit ;
  1184. unsigned int EVMaximumCurrentLimit_isUsed:1;
  1185. /* element: "urn:iso:15118:2:2013:MsgBody":EVMaximumPowerLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1186. struct iso1PhysicalValueType EVMaximumPowerLimit ;
  1187. unsigned int EVMaximumPowerLimit_isUsed:1;
  1188. /* element: "urn:iso:15118:2:2013:MsgBody":BulkChargingComplete, http://www.w3.org/2001/XMLSchema,boolean */
  1189. int BulkChargingComplete ;
  1190. unsigned int BulkChargingComplete_isUsed:1;
  1191. /* element: "urn:iso:15118:2:2013:MsgBody":ChargingComplete, http://www.w3.org/2001/XMLSchema,boolean */
  1192. int ChargingComplete ;
  1193. /* element: "urn:iso:15118:2:2013:MsgBody":RemainingTimeToFullSoC, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1194. struct iso1PhysicalValueType RemainingTimeToFullSoC ;
  1195. unsigned int RemainingTimeToFullSoC_isUsed:1;
  1196. /* element: "urn:iso:15118:2:2013:MsgBody":RemainingTimeToBulkSoC, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1197. struct iso1PhysicalValueType RemainingTimeToBulkSoC ;
  1198. unsigned int RemainingTimeToBulkSoC_isUsed:1;
  1199. /* element: "urn:iso:15118:2:2013:MsgBody":EVTargetVoltage, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1200. struct iso1PhysicalValueType EVTargetVoltage ;
  1201. };
  1202. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CostType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":costKind,"urn:iso:15118:2:2013:MsgDataTypes":amount,"urn:iso:15118:2:2013:MsgDataTypes":amountMultiplier{0-1})', derivedBy='RESTRICTION'. */
  1203. struct iso1CostType {
  1204. /* element: "urn:iso:15118:2:2013:MsgDataTypes":costKind, urn:iso:15118:2:2013:MsgDataTypes,costKindType */
  1205. iso1costKindType costKind ;
  1206. /* element: "urn:iso:15118:2:2013:MsgDataTypes":amount, http://www.w3.org/2001/XMLSchema,unsignedInt */
  1207. uint32_t amount ;
  1208. /* element: "urn:iso:15118:2:2013:MsgDataTypes":amountMultiplier, urn:iso:15118:2:2013:MsgDataTypes,unitMultiplierType */
  1209. int8_t amountMultiplier ;
  1210. unsigned int amountMultiplier_isUsed:1;
  1211. };
  1212. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVPowerDeliveryParameterType', base type name='EVPowerDeliveryParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":DC_EVStatus,"urn:iso:15118:2:2013:MsgDataTypes":BulkChargingComplete{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ChargingComplete)', derivedBy='EXTENSION'. */
  1213. struct iso1DC_EVPowerDeliveryParameterType {
  1214. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVStatusType', base type name='EVStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EVReady,"urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode,"urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC)', derivedBy='EXTENSION'. */
  1215. struct iso1DC_EVStatusType DC_EVStatus ;
  1216. /* element: "urn:iso:15118:2:2013:MsgDataTypes":BulkChargingComplete, http://www.w3.org/2001/XMLSchema,boolean */
  1217. int BulkChargingComplete ;
  1218. unsigned int BulkChargingComplete_isUsed:1;
  1219. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ChargingComplete, http://www.w3.org/2001/XMLSchema,boolean */
  1220. int ChargingComplete ;
  1221. };
  1222. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,RetrievalMethodType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transforms{0-1})', derivedBy='RESTRICTION'. */
  1223. #define iso1RetrievalMethodType_URI_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1224. #define iso1RetrievalMethodType_Type_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1225. struct iso1RetrievalMethodType {
  1226. /* attribute: URI {http://www.w3.org/2001/XMLSchema,anyURI} */
  1227. struct {
  1228. exi_string_character_t characters[iso1RetrievalMethodType_URI_CHARACTERS_SIZE];
  1229. uint16_t charactersLen;
  1230. } URI ;
  1231. unsigned int URI_isUsed:1;
  1232. /* attribute: Type {http://www.w3.org/2001/XMLSchema,anyURI} */
  1233. struct {
  1234. exi_string_character_t characters[iso1RetrievalMethodType_Type_CHARACTERS_SIZE];
  1235. uint16_t charactersLen;
  1236. } Type ;
  1237. unsigned int Type_isUsed:1;
  1238. /* element: "http://www.w3.org/2000/09/xmldsig#":Transforms, Complex type name='http://www.w3.org/2000/09/xmldsig#,TransformsType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transform{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1239. struct iso1TransformsType Transforms ;
  1240. unsigned int Transforms_isUsed:1;
  1241. };
  1242. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateUpdateResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":SAProvisioningCertificateChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureEncryptedPrivateKey,"urn:iso:15118:2:2013:MsgBody":DHpublickey,"urn:iso:15118:2:2013:MsgBody":eMAID,"urn:iso:15118:2:2013:MsgBody":RetryCounter{0-1})', derivedBy='EXTENSION'. */
  1243. struct iso1CertificateUpdateResType {
  1244. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1245. iso1responseCodeType ResponseCode ;
  1246. /* element: "urn:iso:15118:2:2013:MsgBody":SAProvisioningCertificateChain, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CertificateChainType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate,"urn:iso:15118:2:2013:MsgDataTypes":SubCertificates{0-1})', derivedBy='RESTRICTION'. */
  1247. struct iso1CertificateChainType SAProvisioningCertificateChain ;
  1248. /* element: "urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CertificateChainType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate,"urn:iso:15118:2:2013:MsgDataTypes":SubCertificates{0-1})', derivedBy='RESTRICTION'. */
  1249. struct iso1CertificateChainType ContractSignatureCertChain ;
  1250. /* element: "urn:iso:15118:2:2013:MsgBody":ContractSignatureEncryptedPrivateKey, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ContractSignatureEncryptedPrivateKeyType', base type name='privateKeyType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1251. struct iso1ContractSignatureEncryptedPrivateKeyType ContractSignatureEncryptedPrivateKey ;
  1252. /* element: "urn:iso:15118:2:2013:MsgBody":DHpublickey, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DiffieHellmanPublickeyType', base type name='dHpublickeyType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1253. struct iso1DiffieHellmanPublickeyType DHpublickey ;
  1254. /* element: "urn:iso:15118:2:2013:MsgBody":eMAID, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EMAIDType', base type name='eMAIDType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1255. struct iso1EMAIDType eMAID ;
  1256. /* element: "urn:iso:15118:2:2013:MsgBody":RetryCounter, http://www.w3.org/2001/XMLSchema,short */
  1257. int16_t RetryCounter ;
  1258. unsigned int RetryCounter_isUsed:1;
  1259. };
  1260. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateInstallationResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":SAProvisioningCertificateChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureEncryptedPrivateKey,"urn:iso:15118:2:2013:MsgBody":DHpublickey,"urn:iso:15118:2:2013:MsgBody":eMAID)', derivedBy='EXTENSION'. */
  1261. struct iso1CertificateInstallationResType {
  1262. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1263. iso1responseCodeType ResponseCode ;
  1264. /* element: "urn:iso:15118:2:2013:MsgBody":SAProvisioningCertificateChain, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CertificateChainType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate,"urn:iso:15118:2:2013:MsgDataTypes":SubCertificates{0-1})', derivedBy='RESTRICTION'. */
  1265. struct iso1CertificateChainType SAProvisioningCertificateChain ;
  1266. /* element: "urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CertificateChainType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate,"urn:iso:15118:2:2013:MsgDataTypes":SubCertificates{0-1})', derivedBy='RESTRICTION'. */
  1267. struct iso1CertificateChainType ContractSignatureCertChain ;
  1268. /* element: "urn:iso:15118:2:2013:MsgBody":ContractSignatureEncryptedPrivateKey, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ContractSignatureEncryptedPrivateKeyType', base type name='privateKeyType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1269. struct iso1ContractSignatureEncryptedPrivateKeyType ContractSignatureEncryptedPrivateKey ;
  1270. /* element: "urn:iso:15118:2:2013:MsgBody":DHpublickey, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DiffieHellmanPublickeyType', base type name='dHpublickeyType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1271. struct iso1DiffieHellmanPublickeyType DHpublickey ;
  1272. /* element: "urn:iso:15118:2:2013:MsgBody":eMAID, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EMAIDType', base type name='eMAIDType', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1273. struct iso1EMAIDType eMAID ;
  1274. };
  1275. /* Complex type name='urn:iso:15118:2:2013:MsgBody,WeldingDetectionReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus)', derivedBy='EXTENSION'. */
  1276. struct iso1WeldingDetectionReqType {
  1277. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVStatusType', base type name='EVStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EVReady,"urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode,"urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC)', derivedBy='EXTENSION'. */
  1278. struct iso1DC_EVStatusType DC_EVStatus ;
  1279. };
  1280. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CurrentDemandResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage,"urn:iso:15118:2:2013:MsgBody":EVSEPresentCurrent,"urn:iso:15118:2:2013:MsgBody":EVSECurrentLimitAchieved,"urn:iso:15118:2:2013:MsgBody":EVSEVoltageLimitAchieved,"urn:iso:15118:2:2013:MsgBody":EVSEPowerLimitAchieved,"urn:iso:15118:2:2013:MsgBody":EVSEMaximumVoltageLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVSEMaximumCurrentLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVSEMaximumPowerLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVSEID,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgBody":MeterInfo{0-1},"urn:iso:15118:2:2013:MsgBody":ReceiptRequired{0-1})', derivedBy='EXTENSION'. */
  1281. #define iso1CurrentDemandResType_EVSEID_CHARACTERS_SIZE 37 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,evseIDType is 37 */
  1282. struct iso1CurrentDemandResType {
  1283. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1284. iso1responseCodeType ResponseCode ;
  1285. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  1286. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  1287. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1288. struct iso1PhysicalValueType EVSEPresentVoltage ;
  1289. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEPresentCurrent, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1290. struct iso1PhysicalValueType EVSEPresentCurrent ;
  1291. /* element: "urn:iso:15118:2:2013:MsgBody":EVSECurrentLimitAchieved, http://www.w3.org/2001/XMLSchema,boolean */
  1292. int EVSECurrentLimitAchieved ;
  1293. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEVoltageLimitAchieved, http://www.w3.org/2001/XMLSchema,boolean */
  1294. int EVSEVoltageLimitAchieved ;
  1295. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEPowerLimitAchieved, http://www.w3.org/2001/XMLSchema,boolean */
  1296. int EVSEPowerLimitAchieved ;
  1297. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEMaximumVoltageLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1298. struct iso1PhysicalValueType EVSEMaximumVoltageLimit ;
  1299. unsigned int EVSEMaximumVoltageLimit_isUsed:1;
  1300. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEMaximumCurrentLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1301. struct iso1PhysicalValueType EVSEMaximumCurrentLimit ;
  1302. unsigned int EVSEMaximumCurrentLimit_isUsed:1;
  1303. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEMaximumPowerLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1304. struct iso1PhysicalValueType EVSEMaximumPowerLimit ;
  1305. unsigned int EVSEMaximumPowerLimit_isUsed:1;
  1306. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEID, urn:iso:15118:2:2013:MsgDataTypes,evseIDType */
  1307. struct {
  1308. exi_string_character_t characters[iso1CurrentDemandResType_EVSEID_CHARACTERS_SIZE];
  1309. uint16_t charactersLen;
  1310. } EVSEID ;
  1311. /* element: "urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID, urn:iso:15118:2:2013:MsgDataTypes,SAIDType */
  1312. uint8_t SAScheduleTupleID ;
  1313. /* element: "urn:iso:15118:2:2013:MsgBody":MeterInfo, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,MeterInfoType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":MeterID,"urn:iso:15118:2:2013:MsgDataTypes":MeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":SigMeterReading{0-1},"urn:iso:15118:2:2013:MsgDataTypes":MeterStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":TMeter{0-1})', derivedBy='RESTRICTION'. */
  1314. struct iso1MeterInfoType MeterInfo ;
  1315. unsigned int MeterInfo_isUsed:1;
  1316. /* element: "urn:iso:15118:2:2013:MsgBody":ReceiptRequired, http://www.w3.org/2001/XMLSchema,boolean */
  1317. int ReceiptRequired ;
  1318. unsigned int ReceiptRequired_isUsed:1;
  1319. };
  1320. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVSEChargeParameterType', base type name='EVSEChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":AC_EVSEStatus,"urn:iso:15118:2:2013:MsgDataTypes":EVSENominalVoltage,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaxCurrent)', derivedBy='EXTENSION'. */
  1321. struct iso1AC_EVSEChargeParameterType {
  1322. /* element: "urn:iso:15118:2:2013:MsgDataTypes":AC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":RCD))', derivedBy='EXTENSION'. */
  1323. struct iso1AC_EVSEStatusType AC_EVSEStatus ;
  1324. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSENominalVoltage, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1325. struct iso1PhysicalValueType EVSENominalVoltage ;
  1326. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEMaxCurrent, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1327. struct iso1PhysicalValueType EVSEMaxCurrent ;
  1328. };
  1329. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentServiceSelectionReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":SelectedPaymentOption,"urn:iso:15118:2:2013:MsgBody":SelectedServiceList)', derivedBy='EXTENSION'. */
  1330. struct iso1PaymentServiceSelectionReqType {
  1331. /* element: "urn:iso:15118:2:2013:MsgBody":SelectedPaymentOption, urn:iso:15118:2:2013:MsgDataTypes,paymentOptionType */
  1332. iso1paymentOptionType SelectedPaymentOption ;
  1333. /* element: "urn:iso:15118:2:2013:MsgBody":SelectedServiceList, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SelectedServiceListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SelectedService{1-16})', derivedBy='RESTRICTION'. */
  1334. struct iso1SelectedServiceListType SelectedServiceList ;
  1335. };
  1336. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,SignaturePropertiesType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":SignatureProperty{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1337. #define iso1SignaturePropertiesType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1338. #define iso1SignaturePropertiesType_SignatureProperty_ARRAY_SIZE 1
  1339. struct iso1SignaturePropertiesType {
  1340. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1341. struct {
  1342. exi_string_character_t characters[iso1SignaturePropertiesType_Id_CHARACTERS_SIZE];
  1343. uint16_t charactersLen;
  1344. } Id ;
  1345. unsigned int Id_isUsed:1;
  1346. /* element: "http://www.w3.org/2000/09/xmldsig#":SignatureProperty, Complex type name='http://www.w3.org/2000/09/xmldsig#,SignaturePropertyType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##other:"http://www.w3.org/2000/09/xmldsig#"])){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  1347. struct {
  1348. struct iso1SignaturePropertyType array[iso1SignaturePropertiesType_SignatureProperty_ARRAY_SIZE];
  1349. uint16_t arrayLen;
  1350. } SignatureProperty;
  1351. };
  1352. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ParameterType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":boolValue|"urn:iso:15118:2:2013:MsgDataTypes":byteValue|"urn:iso:15118:2:2013:MsgDataTypes":shortValue|"urn:iso:15118:2:2013:MsgDataTypes":intValue|"urn:iso:15118:2:2013:MsgDataTypes":physicalValue|"urn:iso:15118:2:2013:MsgDataTypes":stringValue)', derivedBy='RESTRICTION'. */
  1353. #define iso1ParameterType_Name_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1354. #define iso1ParameterType_stringValue_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1355. struct iso1ParameterType {
  1356. /* attribute: Name {http://www.w3.org/2001/XMLSchema,string} */
  1357. struct {
  1358. exi_string_character_t characters[iso1ParameterType_Name_CHARACTERS_SIZE];
  1359. uint16_t charactersLen;
  1360. } Name ;
  1361. /* element: "urn:iso:15118:2:2013:MsgDataTypes":boolValue, http://www.w3.org/2001/XMLSchema,boolean */
  1362. int boolValue ;
  1363. unsigned int boolValue_isUsed:1;
  1364. /* element: "urn:iso:15118:2:2013:MsgDataTypes":byteValue, http://www.w3.org/2001/XMLSchema,byte */
  1365. int8_t byteValue ;
  1366. unsigned int byteValue_isUsed:1;
  1367. /* element: "urn:iso:15118:2:2013:MsgDataTypes":shortValue, http://www.w3.org/2001/XMLSchema,short */
  1368. int16_t shortValue ;
  1369. unsigned int shortValue_isUsed:1;
  1370. /* element: "urn:iso:15118:2:2013:MsgDataTypes":intValue, http://www.w3.org/2001/XMLSchema,int */
  1371. int32_t intValue ;
  1372. unsigned int intValue_isUsed:1;
  1373. /* element: "urn:iso:15118:2:2013:MsgDataTypes":physicalValue, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1374. struct iso1PhysicalValueType physicalValue ;
  1375. unsigned int physicalValue_isUsed:1;
  1376. /* element: "urn:iso:15118:2:2013:MsgDataTypes":stringValue, http://www.w3.org/2001/XMLSchema,string */
  1377. struct {
  1378. exi_string_character_t characters[iso1ParameterType_stringValue_CHARACTERS_SIZE];
  1379. uint16_t charactersLen;
  1380. } stringValue ;
  1381. unsigned int stringValue_isUsed:1;
  1382. };
  1383. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateInstallationReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":OEMProvisioningCert,"urn:iso:15118:2:2013:MsgBody":ListOfRootCertificateIDs)', derivedBy='EXTENSION'. */
  1384. #define iso1CertificateInstallationReqType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1385. #define iso1CertificateInstallationReqType_OEMProvisioningCert_BYTES_SIZE 800 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,certificateType is 800 */
  1386. struct iso1CertificateInstallationReqType {
  1387. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1388. struct {
  1389. exi_string_character_t characters[iso1CertificateInstallationReqType_Id_CHARACTERS_SIZE];
  1390. uint16_t charactersLen;
  1391. } Id ;
  1392. /* element: "urn:iso:15118:2:2013:MsgBody":OEMProvisioningCert, urn:iso:15118:2:2013:MsgDataTypes,certificateType */
  1393. struct {
  1394. uint8_t bytes[iso1CertificateInstallationReqType_OEMProvisioningCert_BYTES_SIZE];
  1395. uint16_t bytesLen;
  1396. } OEMProvisioningCert ;
  1397. /* element: "urn:iso:15118:2:2013:MsgBody":ListOfRootCertificateIDs, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ListOfRootCertificateIDsType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":RootCertificateID{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1398. struct iso1ListOfRootCertificateIDsType ListOfRootCertificateIDs ;
  1399. };
  1400. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDiscoveryResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":PaymentOptionList,"urn:iso:15118:2:2013:MsgBody":ChargeService,"urn:iso:15118:2:2013:MsgBody":ServiceList{0-1})', derivedBy='EXTENSION'. */
  1401. struct iso1ServiceDiscoveryResType {
  1402. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1403. iso1responseCodeType ResponseCode ;
  1404. /* element: "urn:iso:15118:2:2013:MsgBody":PaymentOptionList, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PaymentOptionListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":PaymentOption{1-2})', derivedBy='RESTRICTION'. */
  1405. struct iso1PaymentOptionListType PaymentOptionList ;
  1406. /* element: "urn:iso:15118:2:2013:MsgBody":ChargeService, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ChargeServiceType', base type name='ServiceType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":ServiceID,"urn:iso:15118:2:2013:MsgDataTypes":ServiceName{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ServiceCategory,"urn:iso:15118:2:2013:MsgDataTypes":ServiceScope{0-1},"urn:iso:15118:2:2013:MsgDataTypes":FreeService),("urn:iso:15118:2:2013:MsgDataTypes":SupportedEnergyTransferMode))', derivedBy='EXTENSION'. */
  1407. struct iso1ChargeServiceType ChargeService ;
  1408. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceList, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ServiceListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Service{1-8})', derivedBy='RESTRICTION'. */
  1409. struct iso1ServiceListType ServiceList ;
  1410. unsigned int ServiceList_isUsed:1;
  1411. };
  1412. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PreChargeResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage)', derivedBy='EXTENSION'. */
  1413. struct iso1PreChargeResType {
  1414. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1415. iso1responseCodeType ResponseCode ;
  1416. /* element: "urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEStatusType', base type name='EVSEStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":NotificationMaxDelay,"urn:iso:15118:2:2013:MsgDataTypes":EVSENotification),("urn:iso:15118:2:2013:MsgDataTypes":EVSEIsolationStatus{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatusCode))', derivedBy='EXTENSION'. */
  1417. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  1418. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1419. struct iso1PhysicalValueType EVSEPresentVoltage ;
  1420. };
  1421. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ParameterSetType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ParameterSetID,"urn:iso:15118:2:2013:MsgDataTypes":Parameter{1-16})', derivedBy='RESTRICTION'. */
  1422. #define iso1ParameterSetType_Parameter_ARRAY_SIZE 16
  1423. struct iso1ParameterSetType {
  1424. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ParameterSetID, http://www.w3.org/2001/XMLSchema,short */
  1425. int16_t ParameterSetID ;
  1426. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Parameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ParameterType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":boolValue|"urn:iso:15118:2:2013:MsgDataTypes":byteValue|"urn:iso:15118:2:2013:MsgDataTypes":shortValue|"urn:iso:15118:2:2013:MsgDataTypes":intValue|"urn:iso:15118:2:2013:MsgDataTypes":physicalValue|"urn:iso:15118:2:2013:MsgDataTypes":stringValue)', derivedBy='RESTRICTION'. */
  1427. struct {
  1428. struct iso1ParameterType array[iso1ParameterSetType_Parameter_ARRAY_SIZE];
  1429. uint16_t arrayLen;
  1430. } Parameter;
  1431. };
  1432. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,SignedInfoType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":CanonicalizationMethod,"http://www.w3.org/2000/09/xmldsig#":SignatureMethod,"http://www.w3.org/2000/09/xmldsig#":Reference{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1433. #define iso1SignedInfoType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1434. #define iso1SignedInfoType_Reference_ARRAY_SIZE 1
  1435. struct iso1SignedInfoType {
  1436. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1437. struct {
  1438. exi_string_character_t characters[iso1SignedInfoType_Id_CHARACTERS_SIZE];
  1439. uint16_t charactersLen;
  1440. } Id ;
  1441. unsigned int Id_isUsed:1;
  1442. /* element: "http://www.w3.org/2000/09/xmldsig#":CanonicalizationMethod, Complex type name='http://www.w3.org/2000/09/xmldsig#,CanonicalizationMethodType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##any]){0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1443. struct iso1CanonicalizationMethodType CanonicalizationMethod ;
  1444. /* element: "http://www.w3.org/2000/09/xmldsig#":SignatureMethod, Complex type name='http://www.w3.org/2000/09/xmldsig#,SignatureMethodType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":HMACOutputLength{0-1},(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1445. struct iso1SignatureMethodType SignatureMethod ;
  1446. /* element: "http://www.w3.org/2000/09/xmldsig#":Reference, Complex type name='http://www.w3.org/2000/09/xmldsig#,ReferenceType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transforms{0-1},"http://www.w3.org/2000/09/xmldsig#":DigestMethod,"http://www.w3.org/2000/09/xmldsig#":DigestValue)', derivedBy='RESTRICTION'. */
  1447. struct {
  1448. struct iso1ReferenceType array[iso1SignedInfoType_Reference_ARRAY_SIZE];
  1449. uint16_t arrayLen;
  1450. } Reference;
  1451. };
  1452. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ProfileEntryType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryStart,"urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryMaxPower,"urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryMaxNumberOfPhasesInUse{0-1})', derivedBy='RESTRICTION'. */
  1453. struct iso1ProfileEntryType {
  1454. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryStart, http://www.w3.org/2001/XMLSchema,unsignedInt */
  1455. uint32_t ChargingProfileEntryStart ;
  1456. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryMaxPower, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1457. struct iso1PhysicalValueType ChargingProfileEntryMaxPower ;
  1458. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryMaxNumberOfPhasesInUse, urn:iso:15118:2:2013:MsgDataTypes,maxNumPhasesType */
  1459. int8_t ChargingProfileEntryMaxNumberOfPhasesInUse ;
  1460. unsigned int ChargingProfileEntryMaxNumberOfPhasesInUse_isUsed:1;
  1461. };
  1462. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,ManifestType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Reference{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1463. #define iso1ManifestType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1464. #define iso1ManifestType_Reference_ARRAY_SIZE 1
  1465. struct iso1ManifestType {
  1466. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1467. struct {
  1468. exi_string_character_t characters[iso1ManifestType_Id_CHARACTERS_SIZE];
  1469. uint16_t charactersLen;
  1470. } Id ;
  1471. unsigned int Id_isUsed:1;
  1472. /* element: "http://www.w3.org/2000/09/xmldsig#":Reference, Complex type name='http://www.w3.org/2000/09/xmldsig#,ReferenceType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transforms{0-1},"http://www.w3.org/2000/09/xmldsig#":DigestMethod,"http://www.w3.org/2000/09/xmldsig#":DigestValue)', derivedBy='RESTRICTION'. */
  1473. struct {
  1474. struct iso1ReferenceType array[iso1ManifestType_Reference_ARRAY_SIZE];
  1475. uint16_t arrayLen;
  1476. } Reference;
  1477. };
  1478. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVChargeParameterType', base type name='EVChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":DepartureTime{0-1}),("urn:iso:15118:2:2013:MsgDataTypes":DC_EVStatus,"urn:iso:15118:2:2013:MsgDataTypes":EVMaximumCurrentLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVMaximumPowerLimit{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVMaximumVoltageLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVEnergyCapacity{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVEnergyRequest{0-1},"urn:iso:15118:2:2013:MsgDataTypes":FullSOC{0-1},"urn:iso:15118:2:2013:MsgDataTypes":BulkSOC{0-1}))', derivedBy='EXTENSION'. */
  1479. struct iso1DC_EVChargeParameterType {
  1480. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DepartureTime, http://www.w3.org/2001/XMLSchema,unsignedInt */
  1481. uint32_t DepartureTime ;
  1482. unsigned int DepartureTime_isUsed:1;
  1483. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVStatus, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVStatusType', base type name='EVStatusType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":EVReady,"urn:iso:15118:2:2013:MsgDataTypes":EVErrorCode,"urn:iso:15118:2:2013:MsgDataTypes":EVRESSSOC)', derivedBy='EXTENSION'. */
  1484. struct iso1DC_EVStatusType DC_EVStatus ;
  1485. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVMaximumCurrentLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1486. struct iso1PhysicalValueType EVMaximumCurrentLimit ;
  1487. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVMaximumPowerLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1488. struct iso1PhysicalValueType EVMaximumPowerLimit ;
  1489. unsigned int EVMaximumPowerLimit_isUsed:1;
  1490. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVMaximumVoltageLimit, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1491. struct iso1PhysicalValueType EVMaximumVoltageLimit ;
  1492. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVEnergyCapacity, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1493. struct iso1PhysicalValueType EVEnergyCapacity ;
  1494. unsigned int EVEnergyCapacity_isUsed:1;
  1495. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVEnergyRequest, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1496. struct iso1PhysicalValueType EVEnergyRequest ;
  1497. unsigned int EVEnergyRequest_isUsed:1;
  1498. /* element: "urn:iso:15118:2:2013:MsgDataTypes":FullSOC, urn:iso:15118:2:2013:MsgDataTypes,percentValueType */
  1499. int8_t FullSOC ;
  1500. unsigned int FullSOC_isUsed:1;
  1501. /* element: "urn:iso:15118:2:2013:MsgDataTypes":BulkSOC, urn:iso:15118:2:2013:MsgDataTypes,percentValueType */
  1502. int8_t BulkSOC ;
  1503. unsigned int BulkSOC_isUsed:1;
  1504. };
  1505. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ConsumptionCostType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":startValue,"urn:iso:15118:2:2013:MsgDataTypes":Cost{1-3})', derivedBy='RESTRICTION'. */
  1506. #define iso1ConsumptionCostType_Cost_ARRAY_SIZE 3
  1507. struct iso1ConsumptionCostType {
  1508. /* element: "urn:iso:15118:2:2013:MsgDataTypes":startValue, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PhysicalValueType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Multiplier,"urn:iso:15118:2:2013:MsgDataTypes":Unit,"urn:iso:15118:2:2013:MsgDataTypes":Value)', derivedBy='RESTRICTION'. */
  1509. struct iso1PhysicalValueType startValue ;
  1510. /* element: "urn:iso:15118:2:2013:MsgDataTypes":Cost, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CostType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":costKind,"urn:iso:15118:2:2013:MsgDataTypes":amount,"urn:iso:15118:2:2013:MsgDataTypes":amountMultiplier{0-1})', derivedBy='RESTRICTION'. */
  1511. struct {
  1512. struct iso1CostType array[iso1ConsumptionCostType_Cost_ARRAY_SIZE];
  1513. uint16_t arrayLen;
  1514. } Cost;
  1515. };
  1516. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PMaxScheduleType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":PMaxScheduleEntry{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1517. #define iso1PMaxScheduleType_PMaxScheduleEntry_ARRAY_SIZE 5
  1518. struct iso1PMaxScheduleType {
  1519. /* element: "urn:iso:15118:2:2013:MsgDataTypes":PMaxScheduleEntry, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PMaxScheduleEntryType', base type name='EntryType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":TimeInterval),("urn:iso:15118:2:2013:MsgDataTypes":PMax))', derivedBy='EXTENSION'. */
  1520. struct {
  1521. struct iso1PMaxScheduleEntryType array[iso1PMaxScheduleType_PMaxScheduleEntry_ARRAY_SIZE];
  1522. uint16_t arrayLen;
  1523. } PMaxScheduleEntry;
  1524. };
  1525. /* Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateUpdateReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain,"urn:iso:15118:2:2013:MsgBody":eMAID,"urn:iso:15118:2:2013:MsgBody":ListOfRootCertificateIDs)', derivedBy='EXTENSION'. */
  1526. #define iso1CertificateUpdateReqType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1527. #define iso1CertificateUpdateReqType_eMAID_CHARACTERS_SIZE 15 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,eMAIDType is 15 */
  1528. struct iso1CertificateUpdateReqType {
  1529. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1530. struct {
  1531. exi_string_character_t characters[iso1CertificateUpdateReqType_Id_CHARACTERS_SIZE];
  1532. uint16_t charactersLen;
  1533. } Id ;
  1534. /* element: "urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,CertificateChainType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":Certificate,"urn:iso:15118:2:2013:MsgDataTypes":SubCertificates{0-1})', derivedBy='RESTRICTION'. */
  1535. struct iso1CertificateChainType ContractSignatureCertChain ;
  1536. /* element: "urn:iso:15118:2:2013:MsgBody":eMAID, urn:iso:15118:2:2013:MsgDataTypes,eMAIDType */
  1537. struct {
  1538. exi_string_character_t characters[iso1CertificateUpdateReqType_eMAID_CHARACTERS_SIZE];
  1539. uint16_t charactersLen;
  1540. } eMAID ;
  1541. /* element: "urn:iso:15118:2:2013:MsgBody":ListOfRootCertificateIDs, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ListOfRootCertificateIDsType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":RootCertificateID{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1542. struct iso1ListOfRootCertificateIDsType ListOfRootCertificateIDs ;
  1543. };
  1544. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,KeyInfoType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":KeyName|"http://www.w3.org/2000/09/xmldsig#":KeyValue|"http://www.w3.org/2000/09/xmldsig#":RetrievalMethod|"http://www.w3.org/2000/09/xmldsig#":X509Data|"http://www.w3.org/2000/09/xmldsig#":PGPData|"http://www.w3.org/2000/09/xmldsig#":SPKIData|"http://www.w3.org/2000/09/xmldsig#":MgmtData|(WC[##other:"http://www.w3.org/2000/09/xmldsig#"])){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  1545. #define iso1KeyInfoType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1546. #define iso1KeyInfoType_KeyName_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1547. #define iso1KeyInfoType_KeyName_ARRAY_SIZE 1
  1548. #define iso1KeyInfoType_KeyValue_ARRAY_SIZE 1
  1549. #define iso1KeyInfoType_RetrievalMethod_ARRAY_SIZE 1
  1550. #define iso1KeyInfoType_X509Data_ARRAY_SIZE 1
  1551. #define iso1KeyInfoType_PGPData_ARRAY_SIZE 1
  1552. #define iso1KeyInfoType_SPKIData_ARRAY_SIZE 1
  1553. #define iso1KeyInfoType_MgmtData_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1554. #define iso1KeyInfoType_MgmtData_ARRAY_SIZE 1
  1555. #define iso1KeyInfoType_ANY_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1556. struct iso1KeyInfoType {
  1557. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1558. struct {
  1559. exi_string_character_t characters[iso1KeyInfoType_Id_CHARACTERS_SIZE];
  1560. uint16_t charactersLen;
  1561. } Id ;
  1562. unsigned int Id_isUsed:1;
  1563. /* element: "http://www.w3.org/2000/09/xmldsig#":KeyName, http://www.w3.org/2001/XMLSchema,string */
  1564. struct {
  1565. struct {
  1566. exi_string_character_t characters[iso1KeyInfoType_KeyName_CHARACTERS_SIZE];
  1567. uint16_t charactersLen;
  1568. } array[iso1KeyInfoType_KeyName_ARRAY_SIZE];
  1569. uint16_t arrayLen;
  1570. } KeyName;
  1571. /* element: "http://www.w3.org/2000/09/xmldsig#":KeyValue, Complex type name='http://www.w3.org/2000/09/xmldsig#,KeyValueType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":DSAKeyValue|"http://www.w3.org/2000/09/xmldsig#":RSAKeyValue|(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]))', derivedBy='RESTRICTION'. */
  1572. struct {
  1573. struct iso1KeyValueType array[iso1KeyInfoType_KeyValue_ARRAY_SIZE];
  1574. uint16_t arrayLen;
  1575. } KeyValue;
  1576. /* element: "http://www.w3.org/2000/09/xmldsig#":RetrievalMethod, Complex type name='http://www.w3.org/2000/09/xmldsig#,RetrievalMethodType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":Transforms{0-1})', derivedBy='RESTRICTION'. */
  1577. struct {
  1578. struct iso1RetrievalMethodType array[iso1KeyInfoType_RetrievalMethod_ARRAY_SIZE];
  1579. uint16_t arrayLen;
  1580. } RetrievalMethod;
  1581. /* element: "http://www.w3.org/2000/09/xmldsig#":X509Data, Complex type name='http://www.w3.org/2000/09/xmldsig#,X509DataType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("http://www.w3.org/2000/09/xmldsig#":X509IssuerSerial|"http://www.w3.org/2000/09/xmldsig#":X509SKI|"http://www.w3.org/2000/09/xmldsig#":X509SubjectName|"http://www.w3.org/2000/09/xmldsig#":X509Certificate|"http://www.w3.org/2000/09/xmldsig#":X509CRL|(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]))){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  1582. struct {
  1583. struct iso1X509DataType array[iso1KeyInfoType_X509Data_ARRAY_SIZE];
  1584. uint16_t arrayLen;
  1585. } X509Data;
  1586. /* element: "http://www.w3.org/2000/09/xmldsig#":PGPData, Complex type name='http://www.w3.org/2000/09/xmldsig#,PGPDataType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("http://www.w3.org/2000/09/xmldsig#":PGPKeyID,"http://www.w3.org/2000/09/xmldsig#":PGPKeyPacket{0-1},(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED})|("http://www.w3.org/2000/09/xmldsig#":PGPKeyPacket,(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-UNBOUNDED}))', derivedBy='RESTRICTION'. */
  1587. struct {
  1588. struct iso1PGPDataType array[iso1KeyInfoType_PGPData_ARRAY_SIZE];
  1589. uint16_t arrayLen;
  1590. } PGPData;
  1591. /* element: "http://www.w3.org/2000/09/xmldsig#":SPKIData, Complex type name='http://www.w3.org/2000/09/xmldsig#,SPKIDataType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":SPKISexp,(WC[##other:"http://www.w3.org/2000/09/xmldsig#"]){0-1}){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  1592. struct {
  1593. struct iso1SPKIDataType array[iso1KeyInfoType_SPKIData_ARRAY_SIZE];
  1594. uint16_t arrayLen;
  1595. } SPKIData;
  1596. /* element: "http://www.w3.org/2000/09/xmldsig#":MgmtData, http://www.w3.org/2001/XMLSchema,string */
  1597. struct {
  1598. struct {
  1599. exi_string_character_t characters[iso1KeyInfoType_MgmtData_CHARACTERS_SIZE];
  1600. uint16_t charactersLen;
  1601. } array[iso1KeyInfoType_MgmtData_ARRAY_SIZE];
  1602. uint16_t arrayLen;
  1603. } MgmtData;
  1604. /* element: WC[##other:"http://www.w3.org/2000/09/xmldsig#"] */
  1605. struct {
  1606. exi_string_character_t characters[iso1KeyInfoType_ANY_CHARACTERS_SIZE];
  1607. uint16_t charactersLen;
  1608. } ANY ;
  1609. unsigned int ANY_isUsed:1;
  1610. };
  1611. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ChargeParameterDiscoveryReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":MaxEntriesSAScheduleTuple{0-1},"urn:iso:15118:2:2013:MsgBody":RequestedEnergyTransferMode,"urn:iso:15118:2:2013:MsgDataTypes":EVChargeParameter)', derivedBy='EXTENSION'. */
  1612. struct iso1ChargeParameterDiscoveryReqType {
  1613. /* element: "urn:iso:15118:2:2013:MsgBody":MaxEntriesSAScheduleTuple, http://www.w3.org/2001/XMLSchema,unsignedShort */
  1614. uint16_t MaxEntriesSAScheduleTuple ;
  1615. unsigned int MaxEntriesSAScheduleTuple_isUsed:1;
  1616. /* element: "urn:iso:15118:2:2013:MsgBody":RequestedEnergyTransferMode, urn:iso:15118:2:2013:MsgDataTypes,EnergyTransferModeType */
  1617. iso1EnergyTransferModeType RequestedEnergyTransferMode ;
  1618. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVChargeParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVChargeParameterType', base type name='anyType', content type='ELEMENT', isAbstract='true', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":DepartureTime{0-1})', derivedBy='RESTRICTION'. */
  1619. struct iso1EVChargeParameterType EVChargeParameter ;
  1620. unsigned int EVChargeParameter_isUsed:1;
  1621. /* element: "urn:iso:15118:2:2013:MsgDataTypes":AC_EVChargeParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVChargeParameterType', base type name='EVChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":DepartureTime{0-1}),("urn:iso:15118:2:2013:MsgDataTypes":EAmount,"urn:iso:15118:2:2013:MsgDataTypes":EVMaxVoltage,"urn:iso:15118:2:2013:MsgDataTypes":EVMaxCurrent,"urn:iso:15118:2:2013:MsgDataTypes":EVMinCurrent))', derivedBy='EXTENSION'. */
  1622. struct iso1AC_EVChargeParameterType AC_EVChargeParameter ;
  1623. unsigned int AC_EVChargeParameter_isUsed:1;
  1624. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVChargeParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVChargeParameterType', base type name='EVChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":DepartureTime{0-1}),("urn:iso:15118:2:2013:MsgDataTypes":DC_EVStatus,"urn:iso:15118:2:2013:MsgDataTypes":EVMaximumCurrentLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVMaximumPowerLimit{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVMaximumVoltageLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVEnergyCapacity{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVEnergyRequest{0-1},"urn:iso:15118:2:2013:MsgDataTypes":FullSOC{0-1},"urn:iso:15118:2:2013:MsgDataTypes":BulkSOC{0-1}))', derivedBy='EXTENSION'. */
  1625. struct iso1DC_EVChargeParameterType DC_EVChargeParameter ;
  1626. unsigned int DC_EVChargeParameter_isUsed:1;
  1627. };
  1628. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ChargingProfileType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ProfileEntry{1-24})', derivedBy='RESTRICTION'. */
  1629. #define iso1ChargingProfileType_ProfileEntry_ARRAY_SIZE 24
  1630. struct iso1ChargingProfileType {
  1631. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ProfileEntry, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ProfileEntryType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryStart,"urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryMaxPower,"urn:iso:15118:2:2013:MsgDataTypes":ChargingProfileEntryMaxNumberOfPhasesInUse{0-1})', derivedBy='RESTRICTION'. */
  1632. struct {
  1633. struct iso1ProfileEntryType array[iso1ChargingProfileType_ProfileEntry_ARRAY_SIZE];
  1634. uint16_t arrayLen;
  1635. } ProfileEntry;
  1636. };
  1637. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SalesTariffEntryType', base type name='EntryType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":TimeInterval),("urn:iso:15118:2:2013:MsgDataTypes":EPriceLevel{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ConsumptionCost{0-3}))', derivedBy='EXTENSION'. */
  1638. #define iso1SalesTariffEntryType_ConsumptionCost_ARRAY_SIZE 3
  1639. struct iso1SalesTariffEntryType {
  1640. /* element: "urn:iso:15118:2:2013:MsgDataTypes":TimeInterval, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,IntervalType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  1641. struct iso1IntervalType TimeInterval ;
  1642. unsigned int TimeInterval_isUsed:1;
  1643. /* element: "urn:iso:15118:2:2013:MsgDataTypes":RelativeTimeInterval, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,RelativeTimeIntervalType', base type name='IntervalType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":start,"urn:iso:15118:2:2013:MsgDataTypes":duration{0-1})', derivedBy='EXTENSION'. */
  1644. struct iso1RelativeTimeIntervalType RelativeTimeInterval ;
  1645. unsigned int RelativeTimeInterval_isUsed:1;
  1646. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EPriceLevel, http://www.w3.org/2001/XMLSchema,unsignedByte */
  1647. uint8_t EPriceLevel ;
  1648. unsigned int EPriceLevel_isUsed:1;
  1649. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ConsumptionCost, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ConsumptionCostType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":startValue,"urn:iso:15118:2:2013:MsgDataTypes":Cost{1-3})', derivedBy='RESTRICTION'. */
  1650. struct {
  1651. struct iso1ConsumptionCostType array[iso1SalesTariffEntryType_ConsumptionCost_ARRAY_SIZE];
  1652. uint16_t arrayLen;
  1653. } ConsumptionCost;
  1654. };
  1655. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SalesTariffType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SalesTariffID,"urn:iso:15118:2:2013:MsgDataTypes":SalesTariffDescription{0-1},"urn:iso:15118:2:2013:MsgDataTypes":NumEPriceLevels{0-1},"urn:iso:15118:2:2013:MsgDataTypes":SalesTariffEntry{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1656. #define iso1SalesTariffType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1657. #define iso1SalesTariffType_SalesTariffDescription_CHARACTERS_SIZE 32 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,tariffDescriptionType is 32 */
  1658. #define iso1SalesTariffType_SalesTariffEntry_ARRAY_SIZE 5
  1659. struct iso1SalesTariffType {
  1660. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1661. struct {
  1662. exi_string_character_t characters[iso1SalesTariffType_Id_CHARACTERS_SIZE];
  1663. uint16_t charactersLen;
  1664. } Id ;
  1665. unsigned int Id_isUsed:1;
  1666. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SalesTariffID, urn:iso:15118:2:2013:MsgDataTypes,SAIDType */
  1667. uint8_t SalesTariffID ;
  1668. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SalesTariffDescription, urn:iso:15118:2:2013:MsgDataTypes,tariffDescriptionType */
  1669. struct {
  1670. exi_string_character_t characters[iso1SalesTariffType_SalesTariffDescription_CHARACTERS_SIZE];
  1671. uint16_t charactersLen;
  1672. } SalesTariffDescription ;
  1673. unsigned int SalesTariffDescription_isUsed:1;
  1674. /* element: "urn:iso:15118:2:2013:MsgDataTypes":NumEPriceLevels, http://www.w3.org/2001/XMLSchema,unsignedByte */
  1675. uint8_t NumEPriceLevels ;
  1676. unsigned int NumEPriceLevels_isUsed:1;
  1677. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SalesTariffEntry, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SalesTariffEntryType', base type name='EntryType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(("urn:iso:15118:2:2013:MsgDataTypes":TimeInterval),("urn:iso:15118:2:2013:MsgDataTypes":EPriceLevel{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ConsumptionCost{0-3}))', derivedBy='EXTENSION'. */
  1678. struct {
  1679. struct iso1SalesTariffEntryType array[iso1SalesTariffType_SalesTariffEntry_ARRAY_SIZE];
  1680. uint16_t arrayLen;
  1681. } SalesTariffEntry;
  1682. };
  1683. /* Complex type name='http://www.w3.org/2000/09/xmldsig#,SignatureType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":SignedInfo,"http://www.w3.org/2000/09/xmldsig#":SignatureValue,"http://www.w3.org/2000/09/xmldsig#":KeyInfo{0-1},"http://www.w3.org/2000/09/xmldsig#":Object{0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1684. #define iso1SignatureType_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1685. #define iso1SignatureType_Object_ARRAY_SIZE 1
  1686. struct iso1SignatureType {
  1687. /* attribute: Id {http://www.w3.org/2001/XMLSchema,ID} */
  1688. struct {
  1689. exi_string_character_t characters[iso1SignatureType_Id_CHARACTERS_SIZE];
  1690. uint16_t charactersLen;
  1691. } Id ;
  1692. unsigned int Id_isUsed:1;
  1693. /* element: "http://www.w3.org/2000/09/xmldsig#":SignedInfo, Complex type name='http://www.w3.org/2000/09/xmldsig#,SignedInfoType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":CanonicalizationMethod,"http://www.w3.org/2000/09/xmldsig#":SignatureMethod,"http://www.w3.org/2000/09/xmldsig#":Reference{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1694. struct iso1SignedInfoType SignedInfo ;
  1695. /* element: "http://www.w3.org/2000/09/xmldsig#":SignatureValue, Complex type name='http://www.w3.org/2000/09/xmldsig#,SignatureValueType', base type name='base64Binary', content type='SIMPLE', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1696. struct iso1SignatureValueType SignatureValue ;
  1697. /* element: "http://www.w3.org/2000/09/xmldsig#":KeyInfo, Complex type name='http://www.w3.org/2000/09/xmldsig#,KeyInfoType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":KeyName|"http://www.w3.org/2000/09/xmldsig#":KeyValue|"http://www.w3.org/2000/09/xmldsig#":RetrievalMethod|"http://www.w3.org/2000/09/xmldsig#":X509Data|"http://www.w3.org/2000/09/xmldsig#":PGPData|"http://www.w3.org/2000/09/xmldsig#":SPKIData|"http://www.w3.org/2000/09/xmldsig#":MgmtData|(WC[##other:"http://www.w3.org/2000/09/xmldsig#"])){1-UNBOUNDED}', derivedBy='RESTRICTION'. */
  1698. struct iso1KeyInfoType KeyInfo ;
  1699. unsigned int KeyInfo_isUsed:1;
  1700. /* element: "http://www.w3.org/2000/09/xmldsig#":Object, Complex type name='http://www.w3.org/2000/09/xmldsig#,ObjectType', base type name='anyType', content type='MIXED', isAbstract='false', hasTypeId='false', final='0', block='0', particle='((WC[##any])){0-UNBOUNDED}', derivedBy='RESTRICTION'. */
  1701. struct {
  1702. struct iso1ObjectType array[iso1SignatureType_Object_ARRAY_SIZE];
  1703. uint16_t arrayLen;
  1704. } Object;
  1705. };
  1706. /* Complex type name='urn:iso:15118:2:2013:MsgBody,PowerDeliveryReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ChargeProgress,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgBody":ChargingProfile{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVPowerDeliveryParameter{0-1})', derivedBy='EXTENSION'. */
  1707. struct iso1PowerDeliveryReqType {
  1708. /* element: "urn:iso:15118:2:2013:MsgBody":ChargeProgress, urn:iso:15118:2:2013:MsgDataTypes,chargeProgressType */
  1709. iso1chargeProgressType ChargeProgress ;
  1710. /* element: "urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID, urn:iso:15118:2:2013:MsgDataTypes,SAIDType */
  1711. uint8_t SAScheduleTupleID ;
  1712. /* element: "urn:iso:15118:2:2013:MsgBody":ChargingProfile, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ChargingProfileType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ProfileEntry{1-24})', derivedBy='RESTRICTION'. */
  1713. struct iso1ChargingProfileType ChargingProfile ;
  1714. unsigned int ChargingProfile_isUsed:1;
  1715. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVPowerDeliveryParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVPowerDeliveryParameterType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  1716. struct iso1EVPowerDeliveryParameterType EVPowerDeliveryParameter ;
  1717. unsigned int EVPowerDeliveryParameter_isUsed:1;
  1718. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVPowerDeliveryParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVPowerDeliveryParameterType', base type name='EVPowerDeliveryParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":DC_EVStatus,"urn:iso:15118:2:2013:MsgDataTypes":BulkChargingComplete{0-1},"urn:iso:15118:2:2013:MsgDataTypes":ChargingComplete)', derivedBy='EXTENSION'. */
  1719. struct iso1DC_EVPowerDeliveryParameterType DC_EVPowerDeliveryParameter ;
  1720. unsigned int DC_EVPowerDeliveryParameter_isUsed:1;
  1721. };
  1722. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ServiceParameterListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ParameterSet{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1723. #define iso1ServiceParameterListType_ParameterSet_ARRAY_SIZE 5
  1724. struct iso1ServiceParameterListType {
  1725. /* element: "urn:iso:15118:2:2013:MsgDataTypes":ParameterSet, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ParameterSetType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ParameterSetID,"urn:iso:15118:2:2013:MsgDataTypes":Parameter{1-16})', derivedBy='RESTRICTION'. */
  1726. struct {
  1727. struct iso1ParameterSetType array[iso1ServiceParameterListType_ParameterSet_ARRAY_SIZE];
  1728. uint16_t arrayLen;
  1729. } ParameterSet;
  1730. };
  1731. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDetailResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":ServiceID,"urn:iso:15118:2:2013:MsgBody":ServiceParameterList{0-1})', derivedBy='EXTENSION'. */
  1732. struct iso1ServiceDetailResType {
  1733. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1734. iso1responseCodeType ResponseCode ;
  1735. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceID, urn:iso:15118:2:2013:MsgDataTypes,serviceIDType */
  1736. uint16_t ServiceID ;
  1737. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceParameterList, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,ServiceParameterListType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":ParameterSet{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1738. struct iso1ServiceParameterListType ServiceParameterList ;
  1739. unsigned int ServiceParameterList_isUsed:1;
  1740. };
  1741. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SAScheduleTupleType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgDataTypes":PMaxSchedule,"urn:iso:15118:2:2013:MsgDataTypes":SalesTariff{0-1})', derivedBy='RESTRICTION'. */
  1742. struct iso1SAScheduleTupleType {
  1743. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SAScheduleTupleID, urn:iso:15118:2:2013:MsgDataTypes,SAIDType */
  1744. uint8_t SAScheduleTupleID ;
  1745. /* element: "urn:iso:15118:2:2013:MsgDataTypes":PMaxSchedule, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,PMaxScheduleType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":PMaxScheduleEntry{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1746. struct iso1PMaxScheduleType PMaxSchedule ;
  1747. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SalesTariff, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SalesTariffType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SalesTariffID,"urn:iso:15118:2:2013:MsgDataTypes":SalesTariffDescription{0-1},"urn:iso:15118:2:2013:MsgDataTypes":NumEPriceLevels{0-1},"urn:iso:15118:2:2013:MsgDataTypes":SalesTariffEntry{1-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1748. struct iso1SalesTariffType SalesTariff ;
  1749. unsigned int SalesTariff_isUsed:1;
  1750. };
  1751. /* Complex type name='urn:iso:15118:2:2013:MsgHeader,MessageHeaderType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgHeader":SessionID,"urn:iso:15118:2:2013:MsgHeader":Notification{0-1},"http://www.w3.org/2000/09/xmldsig#":Signature{0-1})', derivedBy='RESTRICTION'. */
  1752. #define iso1MessageHeaderType_SessionID_BYTES_SIZE 8 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,sessionIDType is 8 */
  1753. struct iso1MessageHeaderType {
  1754. /* element: "urn:iso:15118:2:2013:MsgHeader":SessionID, urn:iso:15118:2:2013:MsgDataTypes,sessionIDType */
  1755. struct {
  1756. uint8_t bytes[iso1MessageHeaderType_SessionID_BYTES_SIZE];
  1757. uint16_t bytesLen;
  1758. } SessionID ;
  1759. /* element: "urn:iso:15118:2:2013:MsgHeader":Notification, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,NotificationType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":FaultCode,"urn:iso:15118:2:2013:MsgDataTypes":FaultMsg{0-1})', derivedBy='RESTRICTION'. */
  1760. struct iso1NotificationType Notification ;
  1761. unsigned int Notification_isUsed:1;
  1762. /* element: "http://www.w3.org/2000/09/xmldsig#":Signature, Complex type name='http://www.w3.org/2000/09/xmldsig#,SignatureType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("http://www.w3.org/2000/09/xmldsig#":SignedInfo,"http://www.w3.org/2000/09/xmldsig#":SignatureValue,"http://www.w3.org/2000/09/xmldsig#":KeyInfo{0-1},"http://www.w3.org/2000/09/xmldsig#":Object{0-UNBOUNDED})', derivedBy='RESTRICTION'. */
  1763. struct iso1SignatureType Signature ;
  1764. unsigned int Signature_isUsed:1;
  1765. };
  1766. /* Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SAScheduleListType', base type name='SASchedulesType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SAScheduleTuple{1-3})', derivedBy='EXTENSION'. */
  1767. #define iso1SAScheduleListType_SAScheduleTuple_ARRAY_SIZE 3
  1768. struct iso1SAScheduleListType {
  1769. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SAScheduleTuple, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SAScheduleTupleType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgDataTypes":PMaxSchedule,"urn:iso:15118:2:2013:MsgDataTypes":SalesTariff{0-1})', derivedBy='RESTRICTION'. */
  1770. struct {
  1771. struct iso1SAScheduleTupleType array[iso1SAScheduleListType_SAScheduleTuple_ARRAY_SIZE];
  1772. uint16_t arrayLen;
  1773. } SAScheduleTuple;
  1774. };
  1775. /* Complex type name='urn:iso:15118:2:2013:MsgBody,ChargeParameterDiscoveryResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEProcessing,"urn:iso:15118:2:2013:MsgDataTypes":SASchedules{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEChargeParameter)', derivedBy='EXTENSION'. */
  1776. struct iso1ChargeParameterDiscoveryResType {
  1777. /* element: "urn:iso:15118:2:2013:MsgBody":ResponseCode, urn:iso:15118:2:2013:MsgDataTypes,responseCodeType */
  1778. iso1responseCodeType ResponseCode ;
  1779. /* element: "urn:iso:15118:2:2013:MsgBody":EVSEProcessing, urn:iso:15118:2:2013:MsgDataTypes,EVSEProcessingType */
  1780. iso1EVSEProcessingType EVSEProcessing ;
  1781. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SASchedules, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SASchedulesType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  1782. struct iso1SASchedulesType SASchedules ;
  1783. unsigned int SASchedules_isUsed:1;
  1784. /* element: "urn:iso:15118:2:2013:MsgDataTypes":SAScheduleList, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,SAScheduleListType', base type name='SASchedulesType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":SAScheduleTuple{1-3})', derivedBy='EXTENSION'. */
  1785. struct iso1SAScheduleListType SAScheduleList ;
  1786. unsigned int SAScheduleList_isUsed:1;
  1787. /* element: "urn:iso:15118:2:2013:MsgDataTypes":EVSEChargeParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,EVSEChargeParameterType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  1788. struct iso1EVSEChargeParameterType EVSEChargeParameter ;
  1789. unsigned int EVSEChargeParameter_isUsed:1;
  1790. /* element: "urn:iso:15118:2:2013:MsgDataTypes":AC_EVSEChargeParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,AC_EVSEChargeParameterType', base type name='EVSEChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":AC_EVSEStatus,"urn:iso:15118:2:2013:MsgDataTypes":EVSENominalVoltage,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaxCurrent)', derivedBy='EXTENSION'. */
  1791. struct iso1AC_EVSEChargeParameterType AC_EVSEChargeParameter ;
  1792. unsigned int AC_EVSEChargeParameter_isUsed:1;
  1793. /* element: "urn:iso:15118:2:2013:MsgDataTypes":DC_EVSEChargeParameter, Complex type name='urn:iso:15118:2:2013:MsgDataTypes,DC_EVSEChargeParameterType', base type name='EVSEChargeParameterType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDataTypes":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumCurrentLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumPowerLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMaximumVoltageLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMinimumCurrentLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSEMinimumVoltageLimit,"urn:iso:15118:2:2013:MsgDataTypes":EVSECurrentRegulationTolerance{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEPeakCurrentRipple,"urn:iso:15118:2:2013:MsgDataTypes":EVSEEnergyToBeDelivered{0-1})', derivedBy='EXTENSION'. */
  1794. struct iso1DC_EVSEChargeParameterType DC_EVSEChargeParameter ;
  1795. unsigned int DC_EVSEChargeParameter_isUsed:1;
  1796. };
  1797. /* Complex type name='urn:iso:15118:2:2013:MsgBody,BodyType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":BodyElement{0-1})', derivedBy='RESTRICTION'. */
  1798. struct iso1BodyType {
  1799. /* substitutionGroup */
  1800. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  1801. union {
  1802. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  1803. /* element: "urn:iso:15118:2:2013:MsgBody":BodyElement, Complex type name='urn:iso:15118:2:2013:MsgBody,BodyBaseType', base type name='anyType', content type='EMPTY', isAbstract='true', hasTypeId='false', final='0', block='0', derivedBy='RESTRICTION'. */
  1804. struct iso1BodyBaseType BodyElement ;
  1805. /* element: "urn:iso:15118:2:2013:MsgBody":SessionSetupReq, Complex type name='urn:iso:15118:2:2013:MsgBody,SessionSetupReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":EVCCID)', derivedBy='EXTENSION'. */
  1806. struct iso1SessionSetupReqType SessionSetupReq ;
  1807. /* element: "urn:iso:15118:2:2013:MsgBody":SessionSetupRes, Complex type name='urn:iso:15118:2:2013:MsgBody,SessionSetupResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEID,"urn:iso:15118:2:2013:MsgBody":EVSETimeStamp{0-1})', derivedBy='EXTENSION'. */
  1808. struct iso1SessionSetupResType SessionSetupRes ;
  1809. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceDiscoveryReq, Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDiscoveryReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ServiceScope{0-1},"urn:iso:15118:2:2013:MsgBody":ServiceCategory{0-1})', derivedBy='EXTENSION'. */
  1810. struct iso1ServiceDiscoveryReqType ServiceDiscoveryReq ;
  1811. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceDiscoveryRes, Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDiscoveryResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":PaymentOptionList,"urn:iso:15118:2:2013:MsgBody":ChargeService,"urn:iso:15118:2:2013:MsgBody":ServiceList{0-1})', derivedBy='EXTENSION'. */
  1812. struct iso1ServiceDiscoveryResType ServiceDiscoveryRes ;
  1813. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceDetailReq, Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDetailReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ServiceID)', derivedBy='EXTENSION'. */
  1814. struct iso1ServiceDetailReqType ServiceDetailReq ;
  1815. /* element: "urn:iso:15118:2:2013:MsgBody":ServiceDetailRes, Complex type name='urn:iso:15118:2:2013:MsgBody,ServiceDetailResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":ServiceID,"urn:iso:15118:2:2013:MsgBody":ServiceParameterList{0-1})', derivedBy='EXTENSION'. */
  1816. struct iso1ServiceDetailResType ServiceDetailRes ;
  1817. /* element: "urn:iso:15118:2:2013:MsgBody":PaymentServiceSelectionReq, Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentServiceSelectionReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":SelectedPaymentOption,"urn:iso:15118:2:2013:MsgBody":SelectedServiceList)', derivedBy='EXTENSION'. */
  1818. struct iso1PaymentServiceSelectionReqType PaymentServiceSelectionReq ;
  1819. /* element: "urn:iso:15118:2:2013:MsgBody":PaymentServiceSelectionRes, Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentServiceSelectionResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode)', derivedBy='EXTENSION'. */
  1820. struct iso1PaymentServiceSelectionResType PaymentServiceSelectionRes ;
  1821. /* element: "urn:iso:15118:2:2013:MsgBody":PaymentDetailsReq, Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentDetailsReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":eMAID,"urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain)', derivedBy='EXTENSION'. */
  1822. struct iso1PaymentDetailsReqType PaymentDetailsReq ;
  1823. /* element: "urn:iso:15118:2:2013:MsgBody":PaymentDetailsRes, Complex type name='urn:iso:15118:2:2013:MsgBody,PaymentDetailsResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":GenChallenge,"urn:iso:15118:2:2013:MsgBody":EVSETimeStamp)', derivedBy='EXTENSION'. */
  1824. struct iso1PaymentDetailsResType PaymentDetailsRes ;
  1825. /* element: "urn:iso:15118:2:2013:MsgBody":AuthorizationReq, Complex type name='urn:iso:15118:2:2013:MsgBody,AuthorizationReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":GenChallenge{0-1})', derivedBy='EXTENSION'. */
  1826. struct iso1AuthorizationReqType AuthorizationReq ;
  1827. /* element: "urn:iso:15118:2:2013:MsgBody":AuthorizationRes, Complex type name='urn:iso:15118:2:2013:MsgBody,AuthorizationResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEProcessing)', derivedBy='EXTENSION'. */
  1828. struct iso1AuthorizationResType AuthorizationRes ;
  1829. /* element: "urn:iso:15118:2:2013:MsgBody":ChargeParameterDiscoveryReq, Complex type name='urn:iso:15118:2:2013:MsgBody,ChargeParameterDiscoveryReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":MaxEntriesSAScheduleTuple{0-1},"urn:iso:15118:2:2013:MsgBody":RequestedEnergyTransferMode,"urn:iso:15118:2:2013:MsgDataTypes":EVChargeParameter)', derivedBy='EXTENSION'. */
  1830. struct iso1ChargeParameterDiscoveryReqType ChargeParameterDiscoveryReq ;
  1831. /* element: "urn:iso:15118:2:2013:MsgBody":ChargeParameterDiscoveryRes, Complex type name='urn:iso:15118:2:2013:MsgBody,ChargeParameterDiscoveryResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEProcessing,"urn:iso:15118:2:2013:MsgDataTypes":SASchedules{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVSEChargeParameter)', derivedBy='EXTENSION'. */
  1832. struct iso1ChargeParameterDiscoveryResType ChargeParameterDiscoveryRes ;
  1833. /* element: "urn:iso:15118:2:2013:MsgBody":PowerDeliveryReq, Complex type name='urn:iso:15118:2:2013:MsgBody,PowerDeliveryReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ChargeProgress,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgBody":ChargingProfile{0-1},"urn:iso:15118:2:2013:MsgDataTypes":EVPowerDeliveryParameter{0-1})', derivedBy='EXTENSION'. */
  1834. struct iso1PowerDeliveryReqType PowerDeliveryReq ;
  1835. /* element: "urn:iso:15118:2:2013:MsgBody":PowerDeliveryRes, Complex type name='urn:iso:15118:2:2013:MsgBody,PowerDeliveryResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatus)', derivedBy='EXTENSION'. */
  1836. struct iso1PowerDeliveryResType PowerDeliveryRes ;
  1837. /* element: "urn:iso:15118:2:2013:MsgBody":MeteringReceiptReq, Complex type name='urn:iso:15118:2:2013:MsgBody,MeteringReceiptReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":SessionID,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID{0-1},"urn:iso:15118:2:2013:MsgBody":MeterInfo)', derivedBy='EXTENSION'. */
  1838. struct iso1MeteringReceiptReqType MeteringReceiptReq ;
  1839. /* element: "urn:iso:15118:2:2013:MsgBody":MeteringReceiptRes, Complex type name='urn:iso:15118:2:2013:MsgBody,MeteringReceiptResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgDataTypes":EVSEStatus)', derivedBy='EXTENSION'. */
  1840. struct iso1MeteringReceiptResType MeteringReceiptRes ;
  1841. /* element: "urn:iso:15118:2:2013:MsgBody":SessionStopReq, Complex type name='urn:iso:15118:2:2013:MsgBody,SessionStopReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ChargingSession)', derivedBy='EXTENSION'. */
  1842. struct iso1SessionStopReqType SessionStopReq ;
  1843. /* element: "urn:iso:15118:2:2013:MsgBody":SessionStopRes, Complex type name='urn:iso:15118:2:2013:MsgBody,SessionStopResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode)', derivedBy='EXTENSION'. */
  1844. struct iso1SessionStopResType SessionStopRes ;
  1845. /* element: "urn:iso:15118:2:2013:MsgBody":CertificateUpdateReq, Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateUpdateReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain,"urn:iso:15118:2:2013:MsgBody":eMAID,"urn:iso:15118:2:2013:MsgBody":ListOfRootCertificateIDs)', derivedBy='EXTENSION'. */
  1846. struct iso1CertificateUpdateReqType CertificateUpdateReq ;
  1847. /* element: "urn:iso:15118:2:2013:MsgBody":CertificateUpdateRes, Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateUpdateResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":SAProvisioningCertificateChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureEncryptedPrivateKey,"urn:iso:15118:2:2013:MsgBody":DHpublickey,"urn:iso:15118:2:2013:MsgBody":eMAID,"urn:iso:15118:2:2013:MsgBody":RetryCounter{0-1})', derivedBy='EXTENSION'. */
  1848. struct iso1CertificateUpdateResType CertificateUpdateRes ;
  1849. /* element: "urn:iso:15118:2:2013:MsgBody":CertificateInstallationReq, Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateInstallationReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":OEMProvisioningCert,"urn:iso:15118:2:2013:MsgBody":ListOfRootCertificateIDs)', derivedBy='EXTENSION'. */
  1850. struct iso1CertificateInstallationReqType CertificateInstallationReq ;
  1851. /* element: "urn:iso:15118:2:2013:MsgBody":CertificateInstallationRes, Complex type name='urn:iso:15118:2:2013:MsgBody,CertificateInstallationResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":SAProvisioningCertificateChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureCertChain,"urn:iso:15118:2:2013:MsgBody":ContractSignatureEncryptedPrivateKey,"urn:iso:15118:2:2013:MsgBody":DHpublickey,"urn:iso:15118:2:2013:MsgBody":eMAID)', derivedBy='EXTENSION'. */
  1852. struct iso1CertificateInstallationResType CertificateInstallationRes ;
  1853. /* element: "urn:iso:15118:2:2013:MsgBody":ChargingStatusReq, Complex type name='urn:iso:15118:2:2013:MsgBody,ChargingStatusReqType', base type name='BodyBaseType', content type='EMPTY', isAbstract='false', hasTypeId='false', final='0', block='0', derivedBy='EXTENSION'. */
  1854. struct iso1ChargingStatusReqType ChargingStatusReq ;
  1855. /* element: "urn:iso:15118:2:2013:MsgBody":ChargingStatusRes, Complex type name='urn:iso:15118:2:2013:MsgBody,ChargingStatusResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":EVSEID,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgBody":EVSEMaxCurrent{0-1},"urn:iso:15118:2:2013:MsgBody":MeterInfo{0-1},"urn:iso:15118:2:2013:MsgBody":ReceiptRequired{0-1},"urn:iso:15118:2:2013:MsgBody":AC_EVSEStatus)', derivedBy='EXTENSION'. */
  1856. struct iso1ChargingStatusResType ChargingStatusRes ;
  1857. /* element: "urn:iso:15118:2:2013:MsgBody":CableCheckReq, Complex type name='urn:iso:15118:2:2013:MsgBody,CableCheckReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus)', derivedBy='EXTENSION'. */
  1858. struct iso1CableCheckReqType CableCheckReq ;
  1859. /* element: "urn:iso:15118:2:2013:MsgBody":CableCheckRes, Complex type name='urn:iso:15118:2:2013:MsgBody,CableCheckResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEProcessing)', derivedBy='EXTENSION'. */
  1860. struct iso1CableCheckResType CableCheckRes ;
  1861. /* element: "urn:iso:15118:2:2013:MsgBody":PreChargeReq, Complex type name='urn:iso:15118:2:2013:MsgBody,PreChargeReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus,"urn:iso:15118:2:2013:MsgBody":EVTargetVoltage,"urn:iso:15118:2:2013:MsgBody":EVTargetCurrent)', derivedBy='EXTENSION'. */
  1862. struct iso1PreChargeReqType PreChargeReq ;
  1863. /* element: "urn:iso:15118:2:2013:MsgBody":PreChargeRes, Complex type name='urn:iso:15118:2:2013:MsgBody,PreChargeResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage)', derivedBy='EXTENSION'. */
  1864. struct iso1PreChargeResType PreChargeRes ;
  1865. /* element: "urn:iso:15118:2:2013:MsgBody":CurrentDemandReq, Complex type name='urn:iso:15118:2:2013:MsgBody,CurrentDemandReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus,"urn:iso:15118:2:2013:MsgBody":EVTargetCurrent,"urn:iso:15118:2:2013:MsgBody":EVMaximumVoltageLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVMaximumCurrentLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVMaximumPowerLimit{0-1},"urn:iso:15118:2:2013:MsgBody":BulkChargingComplete{0-1},"urn:iso:15118:2:2013:MsgBody":ChargingComplete,"urn:iso:15118:2:2013:MsgBody":RemainingTimeToFullSoC{0-1},"urn:iso:15118:2:2013:MsgBody":RemainingTimeToBulkSoC{0-1},"urn:iso:15118:2:2013:MsgBody":EVTargetVoltage)', derivedBy='EXTENSION'. */
  1866. struct iso1CurrentDemandReqType CurrentDemandReq ;
  1867. /* element: "urn:iso:15118:2:2013:MsgBody":CurrentDemandRes, Complex type name='urn:iso:15118:2:2013:MsgBody,CurrentDemandResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage,"urn:iso:15118:2:2013:MsgBody":EVSEPresentCurrent,"urn:iso:15118:2:2013:MsgBody":EVSECurrentLimitAchieved,"urn:iso:15118:2:2013:MsgBody":EVSEVoltageLimitAchieved,"urn:iso:15118:2:2013:MsgBody":EVSEPowerLimitAchieved,"urn:iso:15118:2:2013:MsgBody":EVSEMaximumVoltageLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVSEMaximumCurrentLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVSEMaximumPowerLimit{0-1},"urn:iso:15118:2:2013:MsgBody":EVSEID,"urn:iso:15118:2:2013:MsgBody":SAScheduleTupleID,"urn:iso:15118:2:2013:MsgBody":MeterInfo{0-1},"urn:iso:15118:2:2013:MsgBody":ReceiptRequired{0-1})', derivedBy='EXTENSION'. */
  1868. struct iso1CurrentDemandResType CurrentDemandRes ;
  1869. /* element: "urn:iso:15118:2:2013:MsgBody":WeldingDetectionReq, Complex type name='urn:iso:15118:2:2013:MsgBody,WeldingDetectionReqType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":DC_EVStatus)', derivedBy='EXTENSION'. */
  1870. struct iso1WeldingDetectionReqType WeldingDetectionReq ;
  1871. /* element: "urn:iso:15118:2:2013:MsgBody":WeldingDetectionRes, Complex type name='urn:iso:15118:2:2013:MsgBody,WeldingDetectionResType', base type name='BodyBaseType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":ResponseCode,"urn:iso:15118:2:2013:MsgBody":DC_EVSEStatus,"urn:iso:15118:2:2013:MsgBody":EVSEPresentVoltage)', derivedBy='EXTENSION'. */
  1872. struct iso1WeldingDetectionResType WeldingDetectionRes ;
  1873. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  1874. };
  1875. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  1876. unsigned int BodyElement_isUsed:1;
  1877. unsigned int SessionSetupReq_isUsed:1;
  1878. unsigned int SessionSetupRes_isUsed:1;
  1879. unsigned int ServiceDiscoveryReq_isUsed:1;
  1880. unsigned int ServiceDiscoveryRes_isUsed:1;
  1881. unsigned int ServiceDetailReq_isUsed:1;
  1882. unsigned int ServiceDetailRes_isUsed:1;
  1883. unsigned int PaymentServiceSelectionReq_isUsed:1;
  1884. unsigned int PaymentServiceSelectionRes_isUsed:1;
  1885. unsigned int PaymentDetailsReq_isUsed:1;
  1886. unsigned int PaymentDetailsRes_isUsed:1;
  1887. unsigned int AuthorizationReq_isUsed:1;
  1888. unsigned int AuthorizationRes_isUsed:1;
  1889. unsigned int ChargeParameterDiscoveryReq_isUsed:1;
  1890. unsigned int ChargeParameterDiscoveryRes_isUsed:1;
  1891. unsigned int PowerDeliveryReq_isUsed:1;
  1892. unsigned int PowerDeliveryRes_isUsed:1;
  1893. unsigned int MeteringReceiptReq_isUsed:1;
  1894. unsigned int MeteringReceiptRes_isUsed:1;
  1895. unsigned int SessionStopReq_isUsed:1;
  1896. unsigned int SessionStopRes_isUsed:1;
  1897. unsigned int CertificateUpdateReq_isUsed:1;
  1898. unsigned int CertificateUpdateRes_isUsed:1;
  1899. unsigned int CertificateInstallationReq_isUsed:1;
  1900. unsigned int CertificateInstallationRes_isUsed:1;
  1901. unsigned int ChargingStatusReq_isUsed:1;
  1902. unsigned int ChargingStatusRes_isUsed:1;
  1903. unsigned int CableCheckReq_isUsed:1;
  1904. unsigned int CableCheckRes_isUsed:1;
  1905. unsigned int PreChargeReq_isUsed:1;
  1906. unsigned int PreChargeRes_isUsed:1;
  1907. unsigned int CurrentDemandReq_isUsed:1;
  1908. unsigned int CurrentDemandRes_isUsed:1;
  1909. unsigned int WeldingDetectionReq_isUsed:1;
  1910. unsigned int WeldingDetectionRes_isUsed:1;
  1911. };
  1912. /* Complex type name='urn:iso:15118:2:2013:MsgDef,#AnonType_V2G_Message', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgDef":Header,"urn:iso:15118:2:2013:MsgDef":Body)', derivedBy='RESTRICTION'. */
  1913. struct iso1AnonType_V2G_Message {
  1914. /* element: "urn:iso:15118:2:2013:MsgDef":Header, Complex type name='urn:iso:15118:2:2013:MsgHeader,MessageHeaderType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgHeader":SessionID,"urn:iso:15118:2:2013:MsgHeader":Notification{0-1},"http://www.w3.org/2000/09/xmldsig#":Signature{0-1})', derivedBy='RESTRICTION'. */
  1915. struct iso1MessageHeaderType Header ;
  1916. /* element: "urn:iso:15118:2:2013:MsgDef":Body, Complex type name='urn:iso:15118:2:2013:MsgBody,BodyType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='("urn:iso:15118:2:2013:MsgBody":BodyElement{0-1})', derivedBy='RESTRICTION'. */
  1917. struct iso1BodyType Body ;
  1918. };
  1919. #define iso1EXIDocument_MgmtData_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1920. #define iso1EXIDocument_KeyName_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1921. #define iso1EXIDocument_DigestValue_BYTES_SIZE 350
  1922. #define iso1EXIFragment_Exponent_BYTES_SIZE 350
  1923. #define iso1EXIFragment_PgenCounter_BYTES_SIZE 350
  1924. #define iso1EXIFragment_SessionID_BYTES_SIZE 8 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,sessionIDType is 8 */
  1925. #define iso1EXIFragment_PGPKeyPacket_BYTES_SIZE 350
  1926. #define iso1EXIFragment_Seed_BYTES_SIZE 350
  1927. #define iso1EXIFragment_XPath_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1928. #define iso1EXIFragment_OEMProvisioningCert_BYTES_SIZE 800 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,certificateType is 800 */
  1929. #define iso1EXIFragment_SalesTariffDescription_CHARACTERS_SIZE 32 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,tariffDescriptionType is 32 */
  1930. #define iso1EXIFragment_EVCCID_BYTES_SIZE 6 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,evccIDType is 6 */
  1931. #define iso1EXIFragment_MgmtData_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1932. #define iso1EXIFragment_P_BYTES_SIZE 350
  1933. #define iso1EXIFragment_Q_BYTES_SIZE 350
  1934. #define iso1EXIFragment_X509SubjectName_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1935. #define iso1EXIFragment_G_BYTES_SIZE 350
  1936. #define iso1EXIFragment_J_BYTES_SIZE 350
  1937. #define iso1EXIFragment_ServiceScope_CHARACTERS_SIZE 64 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,serviceScopeType is 64 */
  1938. #define iso1EXIFragment_ServiceName_CHARACTERS_SIZE 32 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,serviceNameType is 32 */
  1939. #define iso1EXIFragment_X509CRL_BYTES_SIZE 350
  1940. #define iso1EXIFragment_Y_BYTES_SIZE 350
  1941. #define iso1EXIFragment_DigestValue_BYTES_SIZE 350
  1942. #define iso1EXIFragment_SPKISexp_BYTES_SIZE 350
  1943. #define iso1EXIFragment_stringValue_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1944. #define iso1EXIFragment_PGPKeyID_BYTES_SIZE 350
  1945. #define iso1EXIFragment_X509Certificate_BYTES_SIZE 350
  1946. #define iso1EXIFragment_FaultMsg_CHARACTERS_SIZE 64 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,faultMsgType is 64 */
  1947. #define iso1EXIFragment_EVSEID_CHARACTERS_SIZE 37 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,evseIDType is 37 */
  1948. #define iso1EXIFragment_SigMeterReading_BYTES_SIZE 64 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,sigMeterReadingType is 64 */
  1949. #define iso1EXIFragment_MeterID_CHARACTERS_SIZE 32 + EXTRA_CHAR /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,meterIDType is 32 */
  1950. #define iso1EXIFragment_KeyName_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1951. #define iso1EXIFragment_GenChallenge_BYTES_SIZE 16 /* XML schema facet length for urn:iso:15118:2:2013:MsgDataTypes,genChallengeType is 16 */
  1952. #define iso1EXIFragment_X509SKI_BYTES_SIZE 350
  1953. #define iso1EXIFragment_Certificate_BYTES_SIZE 800 /* XML schema facet maxLength for urn:iso:15118:2:2013:MsgDataTypes,certificateType is 800 */
  1954. #define iso1EXIFragment_X509IssuerName_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1955. #define iso1EXIFragment_Modulus_BYTES_SIZE 350
  1956. #define iso1exiElementFrag_Id_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1957. #define iso1exiElementFrag_CHARACTERS_GENERIC_CHARACTERS_SIZE 50 + EXTRA_CHAR
  1958. /* Global elements of EXI Document */
  1959. struct iso1EXIDocument {
  1960. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  1961. union {
  1962. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  1963. struct iso1AnonType_V2G_Message V2G_Message ;
  1964. struct iso1ServiceDiscoveryReqType ServiceDiscoveryReq ;
  1965. struct iso1ServiceDiscoveryResType ServiceDiscoveryRes ;
  1966. struct iso1MeteringReceiptReqType MeteringReceiptReq ;
  1967. struct iso1PaymentDetailsReqType PaymentDetailsReq ;
  1968. struct iso1MeteringReceiptResType MeteringReceiptRes ;
  1969. struct iso1PaymentDetailsResType PaymentDetailsRes ;
  1970. struct iso1SessionSetupReqType SessionSetupReq ;
  1971. struct iso1SessionSetupResType SessionSetupRes ;
  1972. struct iso1CableCheckReqType CableCheckReq ;
  1973. struct iso1CableCheckResType CableCheckRes ;
  1974. struct iso1CertificateInstallationReqType CertificateInstallationReq ;
  1975. struct iso1CertificateInstallationResType CertificateInstallationRes ;
  1976. struct iso1WeldingDetectionReqType WeldingDetectionReq ;
  1977. struct iso1WeldingDetectionResType WeldingDetectionRes ;
  1978. struct iso1CertificateUpdateReqType CertificateUpdateReq ;
  1979. struct iso1CertificateUpdateResType CertificateUpdateRes ;
  1980. struct iso1PaymentServiceSelectionReqType PaymentServiceSelectionReq ;
  1981. struct iso1PowerDeliveryReqType PowerDeliveryReq ;
  1982. struct iso1PaymentServiceSelectionResType PaymentServiceSelectionRes ;
  1983. struct iso1PowerDeliveryResType PowerDeliveryRes ;
  1984. struct iso1ChargingStatusReqType ChargingStatusReq ;
  1985. struct iso1ChargingStatusResType ChargingStatusRes ;
  1986. struct iso1BodyBaseType BodyElement ;
  1987. struct iso1CurrentDemandReqType CurrentDemandReq ;
  1988. struct iso1PreChargeReqType PreChargeReq ;
  1989. struct iso1CurrentDemandResType CurrentDemandRes ;
  1990. struct iso1PreChargeResType PreChargeRes ;
  1991. struct iso1SessionStopReqType SessionStopReq ;
  1992. struct iso1AuthorizationReqType AuthorizationReq ;
  1993. struct iso1SessionStopResType SessionStopRes ;
  1994. struct iso1AuthorizationResType AuthorizationRes ;
  1995. struct iso1ChargeParameterDiscoveryReqType ChargeParameterDiscoveryReq ;
  1996. struct iso1ChargeParameterDiscoveryResType ChargeParameterDiscoveryRes ;
  1997. struct iso1ServiceDetailReqType ServiceDetailReq ;
  1998. struct iso1ServiceDetailResType ServiceDetailRes ;
  1999. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  2000. struct iso1RelativeTimeIntervalType RelativeTimeInterval ;
  2001. struct iso1SalesTariffEntryType SalesTariffEntry ;
  2002. struct iso1DC_EVPowerDeliveryParameterType DC_EVPowerDeliveryParameter ;
  2003. struct iso1SASchedulesType SASchedules ;
  2004. struct iso1AC_EVChargeParameterType AC_EVChargeParameter ;
  2005. struct iso1SAScheduleListType SAScheduleList ;
  2006. struct iso1DC_EVStatusType DC_EVStatus ;
  2007. struct iso1EVStatusType EVStatus ;
  2008. struct iso1DC_EVChargeParameterType DC_EVChargeParameter ;
  2009. struct iso1DC_EVSEChargeParameterType DC_EVSEChargeParameter ;
  2010. struct iso1EVSEStatusType EVSEStatus ;
  2011. struct iso1IntervalType TimeInterval ;
  2012. struct iso1EVPowerDeliveryParameterType EVPowerDeliveryParameter ;
  2013. struct iso1EVSEChargeParameterType EVSEChargeParameter ;
  2014. struct iso1AC_EVSEStatusType AC_EVSEStatus ;
  2015. struct iso1EntryType Entry ;
  2016. struct iso1AC_EVSEChargeParameterType AC_EVSEChargeParameter ;
  2017. struct iso1PMaxScheduleEntryType PMaxScheduleEntry ;
  2018. struct iso1EVChargeParameterType EVChargeParameter ;
  2019. struct iso1SignaturePropertyType SignatureProperty ;
  2020. struct iso1DSAKeyValueType DSAKeyValue ;
  2021. struct iso1SignaturePropertiesType SignatureProperties ;
  2022. struct iso1KeyValueType KeyValue ;
  2023. struct iso1TransformsType Transforms ;
  2024. struct iso1DigestMethodType DigestMethod ;
  2025. struct iso1SignatureType Signature ;
  2026. struct iso1RetrievalMethodType RetrievalMethod ;
  2027. struct iso1ManifestType Manifest ;
  2028. struct iso1ReferenceType Reference ;
  2029. struct iso1CanonicalizationMethodType CanonicalizationMethod ;
  2030. struct iso1RSAKeyValueType RSAKeyValue ;
  2031. struct iso1TransformType Transform ;
  2032. struct iso1PGPDataType PGPData ;
  2033. struct {
  2034. exi_string_character_t characters[iso1EXIDocument_MgmtData_CHARACTERS_SIZE];
  2035. uint16_t charactersLen;
  2036. } MgmtData ;
  2037. struct iso1SignatureMethodType SignatureMethod ;
  2038. struct iso1KeyInfoType KeyInfo ;
  2039. struct iso1SPKIDataType SPKIData ;
  2040. struct iso1X509DataType X509Data ;
  2041. struct iso1SignatureValueType SignatureValue ;
  2042. struct {
  2043. exi_string_character_t characters[iso1EXIDocument_KeyName_CHARACTERS_SIZE];
  2044. uint16_t charactersLen;
  2045. } KeyName ;
  2046. struct {
  2047. uint8_t bytes[iso1EXIDocument_DigestValue_BYTES_SIZE];
  2048. uint16_t bytesLen;
  2049. } DigestValue ;
  2050. struct iso1SignedInfoType SignedInfo ;
  2051. struct iso1ObjectType Object ;
  2052. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  2053. };
  2054. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  2055. unsigned int V2G_Message_isUsed:1;
  2056. unsigned int ServiceDiscoveryReq_isUsed:1;
  2057. unsigned int ServiceDiscoveryRes_isUsed:1;
  2058. unsigned int MeteringReceiptReq_isUsed:1;
  2059. unsigned int PaymentDetailsReq_isUsed:1;
  2060. unsigned int MeteringReceiptRes_isUsed:1;
  2061. unsigned int PaymentDetailsRes_isUsed:1;
  2062. unsigned int SessionSetupReq_isUsed:1;
  2063. unsigned int SessionSetupRes_isUsed:1;
  2064. unsigned int CableCheckReq_isUsed:1;
  2065. unsigned int CableCheckRes_isUsed:1;
  2066. unsigned int CertificateInstallationReq_isUsed:1;
  2067. unsigned int CertificateInstallationRes_isUsed:1;
  2068. unsigned int WeldingDetectionReq_isUsed:1;
  2069. unsigned int WeldingDetectionRes_isUsed:1;
  2070. unsigned int CertificateUpdateReq_isUsed:1;
  2071. unsigned int CertificateUpdateRes_isUsed:1;
  2072. unsigned int PaymentServiceSelectionReq_isUsed:1;
  2073. unsigned int PowerDeliveryReq_isUsed:1;
  2074. unsigned int PaymentServiceSelectionRes_isUsed:1;
  2075. unsigned int PowerDeliveryRes_isUsed:1;
  2076. unsigned int ChargingStatusReq_isUsed:1;
  2077. unsigned int ChargingStatusRes_isUsed:1;
  2078. unsigned int BodyElement_isUsed:1;
  2079. unsigned int CurrentDemandReq_isUsed:1;
  2080. unsigned int PreChargeReq_isUsed:1;
  2081. unsigned int CurrentDemandRes_isUsed:1;
  2082. unsigned int PreChargeRes_isUsed:1;
  2083. unsigned int SessionStopReq_isUsed:1;
  2084. unsigned int AuthorizationReq_isUsed:1;
  2085. unsigned int SessionStopRes_isUsed:1;
  2086. unsigned int AuthorizationRes_isUsed:1;
  2087. unsigned int ChargeParameterDiscoveryReq_isUsed:1;
  2088. unsigned int ChargeParameterDiscoveryRes_isUsed:1;
  2089. unsigned int ServiceDetailReq_isUsed:1;
  2090. unsigned int ServiceDetailRes_isUsed:1;
  2091. unsigned int DC_EVSEStatus_isUsed:1;
  2092. unsigned int RelativeTimeInterval_isUsed:1;
  2093. unsigned int SalesTariffEntry_isUsed:1;
  2094. unsigned int DC_EVPowerDeliveryParameter_isUsed:1;
  2095. unsigned int SASchedules_isUsed:1;
  2096. unsigned int AC_EVChargeParameter_isUsed:1;
  2097. unsigned int SAScheduleList_isUsed:1;
  2098. unsigned int DC_EVStatus_isUsed:1;
  2099. unsigned int EVStatus_isUsed:1;
  2100. unsigned int DC_EVChargeParameter_isUsed:1;
  2101. unsigned int DC_EVSEChargeParameter_isUsed:1;
  2102. unsigned int EVSEStatus_isUsed:1;
  2103. unsigned int TimeInterval_isUsed:1;
  2104. unsigned int EVPowerDeliveryParameter_isUsed:1;
  2105. unsigned int EVSEChargeParameter_isUsed:1;
  2106. unsigned int AC_EVSEStatus_isUsed:1;
  2107. unsigned int Entry_isUsed:1;
  2108. unsigned int AC_EVSEChargeParameter_isUsed:1;
  2109. unsigned int PMaxScheduleEntry_isUsed:1;
  2110. unsigned int EVChargeParameter_isUsed:1;
  2111. unsigned int SignatureProperty_isUsed:1;
  2112. unsigned int DSAKeyValue_isUsed:1;
  2113. unsigned int SignatureProperties_isUsed:1;
  2114. unsigned int KeyValue_isUsed:1;
  2115. unsigned int Transforms_isUsed:1;
  2116. unsigned int DigestMethod_isUsed:1;
  2117. unsigned int Signature_isUsed:1;
  2118. unsigned int RetrievalMethod_isUsed:1;
  2119. unsigned int Manifest_isUsed:1;
  2120. unsigned int Reference_isUsed:1;
  2121. unsigned int CanonicalizationMethod_isUsed:1;
  2122. unsigned int RSAKeyValue_isUsed:1;
  2123. unsigned int Transform_isUsed:1;
  2124. unsigned int PGPData_isUsed:1;
  2125. unsigned int MgmtData_isUsed:1;
  2126. unsigned int SignatureMethod_isUsed:1;
  2127. unsigned int KeyInfo_isUsed:1;
  2128. unsigned int SPKIData_isUsed:1;
  2129. unsigned int X509Data_isUsed:1;
  2130. unsigned int SignatureValue_isUsed:1;
  2131. unsigned int KeyName_isUsed:1;
  2132. unsigned int DigestValue_isUsed:1;
  2133. unsigned int SignedInfo_isUsed:1;
  2134. unsigned int Object_isUsed:1;
  2135. int _warning_;
  2136. };
  2137. #if DEPLOY_ISO1_CODEC_FRAGMENT == SUPPORT_YES
  2138. struct iso1EXISchemaInformedElementFragmentGrammar {
  2139. /* Schema-informed Element Fragment Grammar for START_ELEMENT({urn:iso:15118:2:2013:MsgBody}eMAID) */
  2140. /* 4 ATTRIBUTE[STRING]({urn:iso:15118:2:2013:MsgDataTypes}Id) */
  2141. unsigned int Id_isUsed:1;
  2142. struct {
  2143. exi_string_character_t characters[iso1exiElementFrag_Id_CHARACTERS_SIZE];
  2144. uint16_t charactersLen;
  2145. } Id ;
  2146. /* 247 START_ELEMENT({urn:iso:15118:2:2013:MsgBody}eMAID) */
  2147. unsigned int CHARACTERS_GENERIC_isUsed:1;
  2148. struct {
  2149. exi_string_character_t characters[iso1exiElementFrag_CHARACTERS_GENERIC_CHARACTERS_SIZE];
  2150. uint16_t charactersLen;
  2151. } CHARACTERS_GENERIC ;
  2152. int _warning_;
  2153. };
  2154. /* Possible elements of EXI Fragment */
  2155. struct iso1EXIFragment {
  2156. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  2157. union {
  2158. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  2159. int ChargingComplete ;
  2160. struct iso1PhysicalValueType EVMaxVoltage ;
  2161. uint16_t ServiceID ;
  2162. int8_t EVRESSSOC ;
  2163. uint64_t MeterReading ;
  2164. struct iso1PhysicalValueType physicalValue ;
  2165. struct iso1IntervalType TimeInterval ;
  2166. struct iso1AC_EVSEStatusType AC_EVSEStatus ;
  2167. struct iso1PhysicalValueType EVMaxCurrent ;
  2168. uint32_t ChargingProfileEntryStart ;
  2169. struct iso1PhysicalValueType EVSEMaxCurrent ;
  2170. iso1costKindType costKind ;
  2171. struct iso1PhysicalValueType EAmount ;
  2172. iso1EnergyTransferModeType EnergyTransferMode ;
  2173. int64_t X509SerialNumber ;
  2174. uint8_t NumEPriceLevels ;
  2175. struct iso1RetrievalMethodType RetrievalMethod ;
  2176. struct iso1PhysicalValueType PMax ;
  2177. int16_t ParameterSetID ;
  2178. int8_t BulkSOC ;
  2179. struct iso1PhysicalValueType EVSEMinimumCurrentLimit ;
  2180. int EVSEPowerLimitAchieved ;
  2181. struct iso1SalesTariffEntryType SalesTariffEntry ;
  2182. struct iso1TransformsType Transforms ;
  2183. iso1EVSEProcessingType EVSEProcessing ;
  2184. iso1isolationLevelType EVSEIsolationStatus ;
  2185. int BulkChargingComplete ;
  2186. uint8_t SAScheduleTupleID ;
  2187. iso1faultCodeType FaultCode ;
  2188. struct iso1X509IssuerSerialType RootCertificateID ;
  2189. int64_t HMACOutputLength ;
  2190. struct {
  2191. uint8_t bytes[iso1EXIFragment_Exponent_BYTES_SIZE];
  2192. uint16_t bytesLen;
  2193. } Exponent ;
  2194. struct iso1X509IssuerSerialType X509IssuerSerial ;
  2195. int8_t byteValue ;
  2196. struct iso1SPKIDataType SPKIData ;
  2197. struct iso1SAScheduleListType SAScheduleList ;
  2198. struct iso1PhysicalValueType EVMaximumPowerLimit ;
  2199. struct iso1DC_EVSEStatusType DC_EVSEStatus ;
  2200. int16_t RetryCounter ;
  2201. struct iso1PhysicalValueType EVSEMaximumCurrentLimit ;
  2202. struct iso1SalesTariffType SalesTariff ;
  2203. struct {
  2204. uint8_t bytes[iso1EXIFragment_PgenCounter_BYTES_SIZE];
  2205. uint16_t bytesLen;
  2206. } PgenCounter ;
  2207. struct iso1X509DataType X509Data ;
  2208. struct iso1PhysicalValueType EVSECurrentRegulationTolerance ;
  2209. struct iso1KeyValueType KeyValue ;
  2210. struct iso1AnonType_V2G_Message V2G_Message ;
  2211. struct iso1PhysicalValueType EVSEMinimumVoltageLimit ;
  2212. iso1responseCodeType ResponseCode ;
  2213. struct iso1ProfileEntryType ProfileEntry ;
  2214. uint32_t start ;
  2215. iso1DC_EVErrorCodeType EVErrorCode ;
  2216. struct iso1EVChargeParameterType EVChargeParameter ;
  2217. struct iso1CertificateChainType ContractSignatureCertChain ;
  2218. struct iso1PhysicalValueType EVSEPresentCurrent ;
  2219. struct iso1PGPDataType PGPData ;
  2220. struct iso1PhysicalValueType EVMinCurrent ;
  2221. int8_t FullSOC ;
  2222. uint32_t amount ;
  2223. struct iso1DC_EVSEChargeParameterType DC_EVSEChargeParameter ;
  2224. struct iso1EntryType Entry ;
  2225. struct iso1SessionStopResType SessionStopRes ;
  2226. int16_t shortValue ;
  2227. struct iso1CertificateChainType SAProvisioningCertificateChain ;
  2228. struct iso1PowerDeliveryReqType PowerDeliveryReq ;
  2229. struct iso1PowerDeliveryResType PowerDeliveryRes ;
  2230. struct iso1SessionStopReqType SessionStopReq ;
  2231. struct iso1SignaturePropertyType SignatureProperty ;
  2232. struct {
  2233. uint8_t bytes[iso1EXIFragment_SessionID_BYTES_SIZE];
  2234. uint16_t bytesLen;
  2235. } SessionID ;
  2236. struct {
  2237. uint8_t bytes[iso1EXIFragment_PGPKeyPacket_BYTES_SIZE];
  2238. uint16_t bytesLen;
  2239. } PGPKeyPacket ;
  2240. struct iso1MessageHeaderType Header ;
  2241. struct {
  2242. uint8_t bytes[iso1EXIFragment_Seed_BYTES_SIZE];
  2243. uint16_t bytesLen;
  2244. } Seed ;
  2245. struct iso1RSAKeyValueType RSAKeyValue ;
  2246. int FreeService ;
  2247. struct iso1PhysicalValueType EVSENominalVoltage ;
  2248. struct {
  2249. exi_string_character_t characters[iso1EXIFragment_XPath_CHARACTERS_SIZE];
  2250. uint16_t charactersLen;
  2251. } XPath ;
  2252. struct iso1MeteringReceiptResType MeteringReceiptRes ;
  2253. struct iso1ServiceDiscoveryReqType ServiceDiscoveryReq ;
  2254. struct iso1MeteringReceiptReqType MeteringReceiptReq ;
  2255. struct iso1PreChargeResType PreChargeRes ;
  2256. struct {
  2257. uint8_t bytes[iso1EXIFragment_OEMProvisioningCert_BYTES_SIZE];
  2258. uint16_t bytesLen;
  2259. } OEMProvisioningCert ;
  2260. struct iso1PhysicalValueType EVEnergyCapacity ;
  2261. struct iso1SignatureType Signature ;
  2262. struct iso1AC_EVSEChargeParameterType AC_EVSEChargeParameter ;
  2263. struct iso1ServiceDiscoveryResType ServiceDiscoveryRes ;
  2264. struct iso1PreChargeReqType PreChargeReq ;
  2265. uint16_t NotificationMaxDelay ;
  2266. struct iso1CableCheckReqType CableCheckReq ;
  2267. struct {
  2268. exi_string_character_t characters[iso1EXIFragment_SalesTariffDescription_CHARACTERS_SIZE];
  2269. uint16_t charactersLen;
  2270. } SalesTariffDescription ;
  2271. int EVSEVoltageLimitAchieved ;
  2272. int boolValue ;
  2273. struct {
  2274. uint8_t bytes[iso1EXIFragment_EVCCID_BYTES_SIZE];
  2275. uint16_t bytesLen;
  2276. } EVCCID ;
  2277. struct iso1DC_EVChargeParameterType DC_EVChargeParameter ;
  2278. struct iso1ChargingStatusReqType ChargingStatusReq ;
  2279. struct iso1CableCheckResType CableCheckRes ;
  2280. struct {
  2281. exi_string_character_t characters[iso1EXIFragment_MgmtData_CHARACTERS_SIZE];
  2282. uint16_t charactersLen;
  2283. } MgmtData ;
  2284. struct iso1MeterInfoType MeterInfo ;
  2285. struct iso1PhysicalValueType EVSEEnergyToBeDelivered ;
  2286. struct iso1EVSEStatusType EVSEStatus ;
  2287. struct iso1ServiceType Service ;
  2288. struct iso1ManifestType Manifest ;
  2289. struct iso1PhysicalValueType EVMaximumVoltageLimit ;
  2290. struct {
  2291. uint8_t bytes[iso1EXIFragment_P_BYTES_SIZE];
  2292. uint16_t bytesLen;
  2293. } P ;
  2294. struct {
  2295. uint8_t bytes[iso1EXIFragment_Q_BYTES_SIZE];
  2296. uint16_t bytesLen;
  2297. } Q ;
  2298. struct {
  2299. exi_string_character_t characters[iso1EXIFragment_X509SubjectName_CHARACTERS_SIZE];
  2300. uint16_t charactersLen;
  2301. } X509SubjectName ;
  2302. int32_t intValue ;
  2303. struct iso1ChargingProfileType ChargingProfile ;
  2304. struct {
  2305. uint8_t bytes[iso1EXIFragment_G_BYTES_SIZE];
  2306. uint16_t bytesLen;
  2307. } G ;
  2308. struct {
  2309. uint8_t bytes[iso1EXIFragment_J_BYTES_SIZE];
  2310. uint16_t bytesLen;
  2311. } J ;
  2312. struct {
  2313. exi_string_character_t characters[iso1EXIFragment_ServiceScope_CHARACTERS_SIZE];
  2314. uint16_t charactersLen;
  2315. } ServiceScope ;
  2316. int ReceiptRequired ;
  2317. struct {
  2318. exi_string_character_t characters[iso1EXIFragment_ServiceName_CHARACTERS_SIZE];
  2319. uint16_t charactersLen;
  2320. } ServiceName ;
  2321. int16_t MeterStatus ;
  2322. struct iso1DC_EVStatusType DC_EVStatus ;
  2323. struct iso1ChargingStatusResType ChargingStatusRes ;
  2324. iso1serviceCategoryType ServiceCategory ;
  2325. struct iso1NotificationType Notification ;
  2326. struct {
  2327. uint8_t bytes[iso1EXIFragment_X509CRL_BYTES_SIZE];
  2328. uint16_t bytesLen;
  2329. } X509CRL ;
  2330. struct {
  2331. uint8_t bytes[iso1EXIFragment_Y_BYTES_SIZE];
  2332. uint16_t bytesLen;
  2333. } Y ;
  2334. struct iso1PhysicalValueType EVSEPresentVoltage ;
  2335. struct {
  2336. uint8_t bytes[iso1EXIFragment_DigestValue_BYTES_SIZE];
  2337. uint16_t bytesLen;
  2338. } DigestValue ;
  2339. struct iso1PhysicalValueType EVSEMaximumPowerLimit ;
  2340. int64_t EVSETimeStamp ;
  2341. struct iso1CostType Cost ;
  2342. struct iso1PhysicalValueType EVSEPeakCurrentRipple ;
  2343. struct iso1ConsumptionCostType ConsumptionCost ;
  2344. struct iso1DigestMethodType DigestMethod ;
  2345. struct {
  2346. uint8_t bytes[iso1EXIFragment_SPKISexp_BYTES_SIZE];
  2347. uint16_t bytesLen;
  2348. } SPKISexp ;
  2349. struct iso1SessionSetupResType SessionSetupRes ;
  2350. int EVSECurrentLimitAchieved ;
  2351. struct iso1ServiceDetailReqType ServiceDetailReq ;
  2352. struct iso1PhysicalValueType EVSEMaximumVoltageLimit ;
  2353. struct iso1ServiceDetailResType ServiceDetailRes ;
  2354. struct iso1SignaturePropertiesType SignatureProperties ;
  2355. uint8_t EPriceLevel ;
  2356. struct iso1PhysicalValueType EVTargetCurrent ;
  2357. struct iso1PhysicalValueType RemainingTimeToBulkSoC ;
  2358. struct {
  2359. exi_string_character_t characters[iso1EXIFragment_stringValue_CHARACTERS_SIZE];
  2360. uint16_t charactersLen;
  2361. } stringValue ;
  2362. struct iso1SessionSetupReqType SessionSetupReq ;
  2363. int8_t Multiplier ;
  2364. struct iso1CertificateUpdateResType CertificateUpdateRes ;
  2365. struct {
  2366. uint8_t bytes[iso1EXIFragment_PGPKeyID_BYTES_SIZE];
  2367. uint16_t bytesLen;
  2368. } PGPKeyID ;
  2369. struct iso1PhysicalValueType EVTargetVoltage ;
  2370. struct iso1DSAKeyValueType DSAKeyValue ;
  2371. struct iso1CertificateUpdateReqType CertificateUpdateReq ;
  2372. struct iso1PhysicalValueType EVMaximumCurrentLimit ;
  2373. struct iso1CanonicalizationMethodType CanonicalizationMethod ;
  2374. struct {
  2375. uint8_t bytes[iso1EXIFragment_X509Certificate_BYTES_SIZE];
  2376. uint16_t bytesLen;
  2377. } X509Certificate ;
  2378. struct iso1CertificateInstallationReqType CertificateInstallationReq ;
  2379. struct iso1CertificateInstallationResType CertificateInstallationRes ;
  2380. struct iso1EVStatusType EVStatus ;
  2381. struct iso1SupportedEnergyTransferModeType SupportedEnergyTransferMode ;
  2382. struct iso1SignedInfoType SignedInfo ;
  2383. /* Schema-informed Element Fragment Grammar for {urn:iso:15118:2:2013:MsgBody}eMAID */
  2384. struct iso1EXISchemaInformedElementFragmentGrammar eMAID ;
  2385. uint16_t MaxEntriesSAScheduleTuple ;
  2386. iso1paymentOptionType PaymentOption ;
  2387. struct iso1SubCertificatesType SubCertificates ;
  2388. struct iso1PaymentDetailsReqType PaymentDetailsReq ;
  2389. struct iso1AuthorizationReqType AuthorizationReq ;
  2390. struct iso1PaymentDetailsResType PaymentDetailsRes ;
  2391. struct iso1AuthorizationResType AuthorizationRes ;
  2392. iso1DC_EVSEStatusCodeType EVSEStatusCode ;
  2393. struct iso1PaymentOptionListType PaymentOptionList ;
  2394. struct iso1SelectedServiceListType SelectedServiceList ;
  2395. struct iso1ContractSignatureEncryptedPrivateKeyType ContractSignatureEncryptedPrivateKey ;
  2396. struct iso1WeldingDetectionReqType WeldingDetectionReq ;
  2397. struct {
  2398. exi_string_character_t characters[iso1EXIFragment_FaultMsg_CHARACTERS_SIZE];
  2399. uint16_t charactersLen;
  2400. } FaultMsg ;
  2401. struct iso1WeldingDetectionResType WeldingDetectionRes ;
  2402. iso1chargeProgressType ChargeProgress ;
  2403. iso1paymentOptionType SelectedPaymentOption ;
  2404. struct {
  2405. exi_string_character_t characters[iso1EXIFragment_EVSEID_CHARACTERS_SIZE];
  2406. uint16_t charactersLen;
  2407. } EVSEID ;
  2408. struct iso1ParameterSetType ParameterSet ;
  2409. struct iso1EVSEChargeParameterType EVSEChargeParameter ;
  2410. struct {
  2411. uint8_t bytes[iso1EXIFragment_SigMeterReading_BYTES_SIZE];
  2412. uint16_t bytesLen;
  2413. } SigMeterReading ;
  2414. struct iso1SignatureValueType SignatureValue ;
  2415. struct iso1SASchedulesType SASchedules ;
  2416. uint8_t SalesTariffID ;
  2417. struct iso1DiffieHellmanPublickeyType DHpublickey ;
  2418. struct iso1ServiceParameterListType ServiceParameterList ;
  2419. struct iso1ListOfRootCertificateIDsType ListOfRootCertificateIDs ;
  2420. struct {
  2421. exi_string_character_t characters[iso1EXIFragment_MeterID_CHARACTERS_SIZE];
  2422. uint16_t charactersLen;
  2423. } MeterID ;
  2424. struct iso1ChargeServiceType ChargeService ;
  2425. int8_t amountMultiplier ;
  2426. int RCD ;
  2427. struct iso1PhysicalValueType startValue ;
  2428. struct iso1CurrentDemandReqType CurrentDemandReq ;
  2429. struct {
  2430. exi_string_character_t characters[iso1EXIFragment_KeyName_CHARACTERS_SIZE];
  2431. uint16_t charactersLen;
  2432. } KeyName ;
  2433. struct iso1DC_EVPowerDeliveryParameterType DC_EVPowerDeliveryParameter ;
  2434. struct iso1BodyType Body ;
  2435. iso1EVSENotificationType EVSENotification ;
  2436. int16_t Value ;
  2437. struct iso1KeyInfoType KeyInfo ;
  2438. struct {
  2439. uint8_t bytes[iso1EXIFragment_GenChallenge_BYTES_SIZE];
  2440. uint16_t bytesLen;
  2441. } GenChallenge ;
  2442. struct iso1AC_EVChargeParameterType AC_EVChargeParameter ;
  2443. struct iso1PMaxScheduleEntryType PMaxScheduleEntry ;
  2444. struct iso1ParameterType Parameter ;
  2445. struct {
  2446. uint8_t bytes[iso1EXIFragment_X509SKI_BYTES_SIZE];
  2447. uint16_t bytesLen;
  2448. } X509SKI ;
  2449. struct iso1SelectedServiceType SelectedService ;
  2450. struct iso1PaymentServiceSelectionReqType PaymentServiceSelectionReq ;
  2451. struct iso1PaymentServiceSelectionResType PaymentServiceSelectionRes ;
  2452. struct {
  2453. uint8_t bytes[iso1EXIFragment_Certificate_BYTES_SIZE];
  2454. uint16_t bytesLen;
  2455. } Certificate ;
  2456. struct iso1CurrentDemandResType CurrentDemandRes ;
  2457. int EVReady ;
  2458. struct iso1SignatureMethodType SignatureMethod ;
  2459. struct iso1PMaxScheduleType PMaxSchedule ;
  2460. iso1unitSymbolType Unit ;
  2461. struct {
  2462. exi_string_character_t characters[iso1EXIFragment_X509IssuerName_CHARACTERS_SIZE];
  2463. uint16_t charactersLen;
  2464. } X509IssuerName ;
  2465. struct iso1ReferenceType Reference ;
  2466. int8_t ChargingProfileEntryMaxNumberOfPhasesInUse ;
  2467. struct iso1EVPowerDeliveryParameterType EVPowerDeliveryParameter ;
  2468. struct iso1PhysicalValueType ChargingProfileEntryMaxPower ;
  2469. struct iso1ChargeParameterDiscoveryReqType ChargeParameterDiscoveryReq ;
  2470. uint32_t duration ;
  2471. int64_t TMeter ;
  2472. struct iso1ChargeParameterDiscoveryResType ChargeParameterDiscoveryRes ;
  2473. struct iso1ServiceListType ServiceList ;
  2474. struct iso1SAScheduleTupleType SAScheduleTuple ;
  2475. struct iso1BodyBaseType BodyElement ;
  2476. struct iso1PhysicalValueType RemainingTimeToFullSoC ;
  2477. struct iso1RelativeTimeIntervalType RelativeTimeInterval ;
  2478. struct iso1TransformType Transform ;
  2479. uint32_t DepartureTime ;
  2480. struct iso1ObjectType Object ;
  2481. struct iso1PhysicalValueType EVEnergyRequest ;
  2482. struct {
  2483. uint8_t bytes[iso1EXIFragment_Modulus_BYTES_SIZE];
  2484. uint16_t bytesLen;
  2485. } Modulus ;
  2486. iso1chargingSessionType ChargingSession ;
  2487. iso1EnergyTransferModeType RequestedEnergyTransferMode ;
  2488. #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
  2489. };
  2490. #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
  2491. unsigned int ChargingComplete_isUsed:1;
  2492. unsigned int EVMaxVoltage_isUsed:1;
  2493. unsigned int ServiceID_isUsed:1;
  2494. unsigned int EVRESSSOC_isUsed:1;
  2495. unsigned int MeterReading_isUsed:1;
  2496. unsigned int physicalValue_isUsed:1;
  2497. unsigned int TimeInterval_isUsed:1;
  2498. unsigned int AC_EVSEStatus_isUsed:1;
  2499. unsigned int EVMaxCurrent_isUsed:1;
  2500. unsigned int ChargingProfileEntryStart_isUsed:1;
  2501. unsigned int EVSEMaxCurrent_isUsed:1;
  2502. unsigned int costKind_isUsed:1;
  2503. unsigned int EAmount_isUsed:1;
  2504. unsigned int EnergyTransferMode_isUsed:1;
  2505. unsigned int X509SerialNumber_isUsed:1;
  2506. unsigned int NumEPriceLevels_isUsed:1;
  2507. unsigned int RetrievalMethod_isUsed:1;
  2508. unsigned int PMax_isUsed:1;
  2509. unsigned int ParameterSetID_isUsed:1;
  2510. unsigned int BulkSOC_isUsed:1;
  2511. unsigned int EVSEMinimumCurrentLimit_isUsed:1;
  2512. unsigned int EVSEPowerLimitAchieved_isUsed:1;
  2513. unsigned int SalesTariffEntry_isUsed:1;
  2514. unsigned int Transforms_isUsed:1;
  2515. unsigned int EVSEProcessing_isUsed:1;
  2516. unsigned int EVSEIsolationStatus_isUsed:1;
  2517. unsigned int BulkChargingComplete_isUsed:1;
  2518. unsigned int SAScheduleTupleID_isUsed:1;
  2519. unsigned int FaultCode_isUsed:1;
  2520. unsigned int RootCertificateID_isUsed:1;
  2521. unsigned int HMACOutputLength_isUsed:1;
  2522. unsigned int Exponent_isUsed:1;
  2523. unsigned int X509IssuerSerial_isUsed:1;
  2524. unsigned int byteValue_isUsed:1;
  2525. unsigned int SPKIData_isUsed:1;
  2526. unsigned int SAScheduleList_isUsed:1;
  2527. unsigned int EVMaximumPowerLimit_isUsed:1;
  2528. unsigned int DC_EVSEStatus_isUsed:1;
  2529. unsigned int RetryCounter_isUsed:1;
  2530. unsigned int EVSEMaximumCurrentLimit_isUsed:1;
  2531. unsigned int SalesTariff_isUsed:1;
  2532. unsigned int PgenCounter_isUsed:1;
  2533. unsigned int X509Data_isUsed:1;
  2534. unsigned int EVSECurrentRegulationTolerance_isUsed:1;
  2535. unsigned int KeyValue_isUsed:1;
  2536. unsigned int V2G_Message_isUsed:1;
  2537. unsigned int EVSEMinimumVoltageLimit_isUsed:1;
  2538. unsigned int ResponseCode_isUsed:1;
  2539. unsigned int ProfileEntry_isUsed:1;
  2540. unsigned int start_isUsed:1;
  2541. unsigned int EVErrorCode_isUsed:1;
  2542. unsigned int EVChargeParameter_isUsed:1;
  2543. unsigned int ContractSignatureCertChain_isUsed:1;
  2544. unsigned int EVSEPresentCurrent_isUsed:1;
  2545. unsigned int PGPData_isUsed:1;
  2546. unsigned int EVMinCurrent_isUsed:1;
  2547. unsigned int FullSOC_isUsed:1;
  2548. unsigned int amount_isUsed:1;
  2549. unsigned int DC_EVSEChargeParameter_isUsed:1;
  2550. unsigned int Entry_isUsed:1;
  2551. unsigned int SessionStopRes_isUsed:1;
  2552. unsigned int shortValue_isUsed:1;
  2553. unsigned int SAProvisioningCertificateChain_isUsed:1;
  2554. unsigned int PowerDeliveryReq_isUsed:1;
  2555. unsigned int PowerDeliveryRes_isUsed:1;
  2556. unsigned int SessionStopReq_isUsed:1;
  2557. unsigned int SignatureProperty_isUsed:1;
  2558. unsigned int SessionID_isUsed:1;
  2559. unsigned int PGPKeyPacket_isUsed:1;
  2560. unsigned int Header_isUsed:1;
  2561. unsigned int Seed_isUsed:1;
  2562. unsigned int RSAKeyValue_isUsed:1;
  2563. unsigned int FreeService_isUsed:1;
  2564. unsigned int EVSENominalVoltage_isUsed:1;
  2565. unsigned int XPath_isUsed:1;
  2566. unsigned int MeteringReceiptRes_isUsed:1;
  2567. unsigned int ServiceDiscoveryReq_isUsed:1;
  2568. unsigned int MeteringReceiptReq_isUsed:1;
  2569. unsigned int PreChargeRes_isUsed:1;
  2570. unsigned int OEMProvisioningCert_isUsed:1;
  2571. unsigned int EVEnergyCapacity_isUsed:1;
  2572. unsigned int Signature_isUsed:1;
  2573. unsigned int AC_EVSEChargeParameter_isUsed:1;
  2574. unsigned int ServiceDiscoveryRes_isUsed:1;
  2575. unsigned int PreChargeReq_isUsed:1;
  2576. unsigned int NotificationMaxDelay_isUsed:1;
  2577. unsigned int CableCheckReq_isUsed:1;
  2578. unsigned int SalesTariffDescription_isUsed:1;
  2579. unsigned int EVSEVoltageLimitAchieved_isUsed:1;
  2580. unsigned int boolValue_isUsed:1;
  2581. unsigned int EVCCID_isUsed:1;
  2582. unsigned int DC_EVChargeParameter_isUsed:1;
  2583. unsigned int ChargingStatusReq_isUsed:1;
  2584. unsigned int CableCheckRes_isUsed:1;
  2585. unsigned int MgmtData_isUsed:1;
  2586. unsigned int MeterInfo_isUsed:1;
  2587. unsigned int EVSEEnergyToBeDelivered_isUsed:1;
  2588. unsigned int EVSEStatus_isUsed:1;
  2589. unsigned int Service_isUsed:1;
  2590. unsigned int Manifest_isUsed:1;
  2591. unsigned int EVMaximumVoltageLimit_isUsed:1;
  2592. unsigned int P_isUsed:1;
  2593. unsigned int Q_isUsed:1;
  2594. unsigned int X509SubjectName_isUsed:1;
  2595. unsigned int intValue_isUsed:1;
  2596. unsigned int ChargingProfile_isUsed:1;
  2597. unsigned int G_isUsed:1;
  2598. unsigned int J_isUsed:1;
  2599. unsigned int ServiceScope_isUsed:1;
  2600. unsigned int ReceiptRequired_isUsed:1;
  2601. unsigned int ServiceName_isUsed:1;
  2602. unsigned int MeterStatus_isUsed:1;
  2603. unsigned int DC_EVStatus_isUsed:1;
  2604. unsigned int ChargingStatusRes_isUsed:1;
  2605. unsigned int ServiceCategory_isUsed:1;
  2606. unsigned int Notification_isUsed:1;
  2607. unsigned int X509CRL_isUsed:1;
  2608. unsigned int Y_isUsed:1;
  2609. unsigned int EVSEPresentVoltage_isUsed:1;
  2610. unsigned int DigestValue_isUsed:1;
  2611. unsigned int EVSEMaximumPowerLimit_isUsed:1;
  2612. unsigned int EVSETimeStamp_isUsed:1;
  2613. unsigned int Cost_isUsed:1;
  2614. unsigned int EVSEPeakCurrentRipple_isUsed:1;
  2615. unsigned int ConsumptionCost_isUsed:1;
  2616. unsigned int DigestMethod_isUsed:1;
  2617. unsigned int SPKISexp_isUsed:1;
  2618. unsigned int SessionSetupRes_isUsed:1;
  2619. unsigned int EVSECurrentLimitAchieved_isUsed:1;
  2620. unsigned int ServiceDetailReq_isUsed:1;
  2621. unsigned int EVSEMaximumVoltageLimit_isUsed:1;
  2622. unsigned int ServiceDetailRes_isUsed:1;
  2623. unsigned int SignatureProperties_isUsed:1;
  2624. unsigned int EPriceLevel_isUsed:1;
  2625. unsigned int EVTargetCurrent_isUsed:1;
  2626. unsigned int RemainingTimeToBulkSoC_isUsed:1;
  2627. unsigned int stringValue_isUsed:1;
  2628. unsigned int SessionSetupReq_isUsed:1;
  2629. unsigned int Multiplier_isUsed:1;
  2630. unsigned int CertificateUpdateRes_isUsed:1;
  2631. unsigned int PGPKeyID_isUsed:1;
  2632. unsigned int EVTargetVoltage_isUsed:1;
  2633. unsigned int DSAKeyValue_isUsed:1;
  2634. unsigned int CertificateUpdateReq_isUsed:1;
  2635. unsigned int EVMaximumCurrentLimit_isUsed:1;
  2636. unsigned int CanonicalizationMethod_isUsed:1;
  2637. unsigned int X509Certificate_isUsed:1;
  2638. unsigned int CertificateInstallationReq_isUsed:1;
  2639. unsigned int CertificateInstallationRes_isUsed:1;
  2640. unsigned int EVStatus_isUsed:1;
  2641. unsigned int SupportedEnergyTransferMode_isUsed:1;
  2642. unsigned int SignedInfo_isUsed:1;
  2643. unsigned int eMAID_isUsed:1;
  2644. unsigned int MaxEntriesSAScheduleTuple_isUsed:1;
  2645. unsigned int PaymentOption_isUsed:1;
  2646. unsigned int SubCertificates_isUsed:1;
  2647. unsigned int PaymentDetailsReq_isUsed:1;
  2648. unsigned int AuthorizationReq_isUsed:1;
  2649. unsigned int PaymentDetailsRes_isUsed:1;
  2650. unsigned int AuthorizationRes_isUsed:1;
  2651. unsigned int EVSEStatusCode_isUsed:1;
  2652. unsigned int PaymentOptionList_isUsed:1;
  2653. unsigned int SelectedServiceList_isUsed:1;
  2654. unsigned int ContractSignatureEncryptedPrivateKey_isUsed:1;
  2655. unsigned int WeldingDetectionReq_isUsed:1;
  2656. unsigned int FaultMsg_isUsed:1;
  2657. unsigned int WeldingDetectionRes_isUsed:1;
  2658. unsigned int ChargeProgress_isUsed:1;
  2659. unsigned int SelectedPaymentOption_isUsed:1;
  2660. unsigned int EVSEID_isUsed:1;
  2661. unsigned int ParameterSet_isUsed:1;
  2662. unsigned int EVSEChargeParameter_isUsed:1;
  2663. unsigned int SigMeterReading_isUsed:1;
  2664. unsigned int SignatureValue_isUsed:1;
  2665. unsigned int SASchedules_isUsed:1;
  2666. unsigned int SalesTariffID_isUsed:1;
  2667. unsigned int DHpublickey_isUsed:1;
  2668. unsigned int ServiceParameterList_isUsed:1;
  2669. unsigned int ListOfRootCertificateIDs_isUsed:1;
  2670. unsigned int MeterID_isUsed:1;
  2671. unsigned int ChargeService_isUsed:1;
  2672. unsigned int amountMultiplier_isUsed:1;
  2673. unsigned int RCD_isUsed:1;
  2674. unsigned int startValue_isUsed:1;
  2675. unsigned int CurrentDemandReq_isUsed:1;
  2676. unsigned int KeyName_isUsed:1;
  2677. unsigned int DC_EVPowerDeliveryParameter_isUsed:1;
  2678. unsigned int Body_isUsed:1;
  2679. unsigned int EVSENotification_isUsed:1;
  2680. unsigned int Value_isUsed:1;
  2681. unsigned int KeyInfo_isUsed:1;
  2682. unsigned int GenChallenge_isUsed:1;
  2683. unsigned int AC_EVChargeParameter_isUsed:1;
  2684. unsigned int PMaxScheduleEntry_isUsed:1;
  2685. unsigned int Parameter_isUsed:1;
  2686. unsigned int X509SKI_isUsed:1;
  2687. unsigned int SelectedService_isUsed:1;
  2688. unsigned int PaymentServiceSelectionReq_isUsed:1;
  2689. unsigned int PaymentServiceSelectionRes_isUsed:1;
  2690. unsigned int Certificate_isUsed:1;
  2691. unsigned int CurrentDemandRes_isUsed:1;
  2692. unsigned int EVReady_isUsed:1;
  2693. unsigned int SignatureMethod_isUsed:1;
  2694. unsigned int PMaxSchedule_isUsed:1;
  2695. unsigned int Unit_isUsed:1;
  2696. unsigned int X509IssuerName_isUsed:1;
  2697. unsigned int Reference_isUsed:1;
  2698. unsigned int ChargingProfileEntryMaxNumberOfPhasesInUse_isUsed:1;
  2699. unsigned int EVPowerDeliveryParameter_isUsed:1;
  2700. unsigned int ChargingProfileEntryMaxPower_isUsed:1;
  2701. unsigned int ChargeParameterDiscoveryReq_isUsed:1;
  2702. unsigned int duration_isUsed:1;
  2703. unsigned int TMeter_isUsed:1;
  2704. unsigned int ChargeParameterDiscoveryRes_isUsed:1;
  2705. unsigned int ServiceList_isUsed:1;
  2706. unsigned int SAScheduleTuple_isUsed:1;
  2707. unsigned int BodyElement_isUsed:1;
  2708. unsigned int RemainingTimeToFullSoC_isUsed:1;
  2709. unsigned int RelativeTimeInterval_isUsed:1;
  2710. unsigned int Transform_isUsed:1;
  2711. unsigned int DepartureTime_isUsed:1;
  2712. unsigned int Object_isUsed:1;
  2713. unsigned int EVEnergyRequest_isUsed:1;
  2714. unsigned int Modulus_isUsed:1;
  2715. unsigned int ChargingSession_isUsed:1;
  2716. unsigned int RequestedEnergyTransferMode_isUsed:1;
  2717. int _warning_;
  2718. };
  2719. #endif /* DEPLOY_ISO1_CODEC_FRAGMENT */
  2720. /* Initialization methods for structs */
  2721. void init_iso1EXIDocument(struct iso1EXIDocument* exiDoc);
  2722. #if DEPLOY_ISO1_CODEC_FRAGMENT == SUPPORT_YES
  2723. void init_iso1EXIFragment(struct iso1EXIFragment* exiFrag);
  2724. void init_iso1EXISchemaInformedElementFragmentGrammar(struct iso1EXISchemaInformedElementFragmentGrammar* exiFrag);
  2725. #endif /* DEPLOY_ISO1_CODEC_FRAGMENT */
  2726. void init_iso1MessageHeaderType(struct iso1MessageHeaderType* iso1MessageHeaderType);
  2727. void init_iso1SignatureType(struct iso1SignatureType* iso1SignatureType);
  2728. void init_iso1PowerDeliveryReqType(struct iso1PowerDeliveryReqType* iso1PowerDeliveryReqType);
  2729. void init_iso1ParameterType(struct iso1ParameterType* iso1ParameterType);
  2730. void init_iso1CertificateInstallationReqType(struct iso1CertificateInstallationReqType* iso1CertificateInstallationReqType);
  2731. void init_iso1SessionSetupResType(struct iso1SessionSetupResType* iso1SessionSetupResType);
  2732. void init_iso1EVChargeParameterType(struct iso1EVChargeParameterType* iso1EVChargeParameterType);
  2733. void init_iso1DiffieHellmanPublickeyType(struct iso1DiffieHellmanPublickeyType* iso1DiffieHellmanPublickeyType);
  2734. void init_iso1ServiceDiscoveryResType(struct iso1ServiceDiscoveryResType* iso1ServiceDiscoveryResType);
  2735. void init_iso1ServiceParameterListType(struct iso1ServiceParameterListType* iso1ServiceParameterListType);
  2736. void init_iso1CertificateChainType(struct iso1CertificateChainType* iso1CertificateChainType);
  2737. void init_iso1SASchedulesType(struct iso1SASchedulesType* iso1SASchedulesType);
  2738. void init_iso1DC_EVSEStatusType(struct iso1DC_EVSEStatusType* iso1DC_EVSEStatusType);
  2739. void init_iso1PreChargeResType(struct iso1PreChargeResType* iso1PreChargeResType);
  2740. void init_iso1ParameterSetType(struct iso1ParameterSetType* iso1ParameterSetType);
  2741. void init_iso1ServiceDetailReqType(struct iso1ServiceDetailReqType* iso1ServiceDetailReqType);
  2742. void init_iso1RelativeTimeIntervalType(struct iso1RelativeTimeIntervalType* iso1RelativeTimeIntervalType);
  2743. void init_iso1SignedInfoType(struct iso1SignedInfoType* iso1SignedInfoType);
  2744. void init_iso1EMAIDType(struct iso1EMAIDType* iso1EMAIDType);
  2745. void init_iso1EVStatusType(struct iso1EVStatusType* iso1EVStatusType);
  2746. void init_iso1ServiceListType(struct iso1ServiceListType* iso1ServiceListType);
  2747. void init_iso1EVSEChargeParameterType(struct iso1EVSEChargeParameterType* iso1EVSEChargeParameterType);
  2748. void init_iso1EVPowerDeliveryParameterType(struct iso1EVPowerDeliveryParameterType* iso1EVPowerDeliveryParameterType);
  2749. void init_iso1ProfileEntryType(struct iso1ProfileEntryType* iso1ProfileEntryType);
  2750. void init_iso1AuthorizationReqType(struct iso1AuthorizationReqType* iso1AuthorizationReqType);
  2751. void init_iso1MeterInfoType(struct iso1MeterInfoType* iso1MeterInfoType);
  2752. void init_iso1ManifestType(struct iso1ManifestType* iso1ManifestType);
  2753. void init_iso1ChargeParameterDiscoveryResType(struct iso1ChargeParameterDiscoveryResType* iso1ChargeParameterDiscoveryResType);
  2754. void init_iso1PowerDeliveryResType(struct iso1PowerDeliveryResType* iso1PowerDeliveryResType);
  2755. void init_iso1DC_EVChargeParameterType(struct iso1DC_EVChargeParameterType* iso1DC_EVChargeParameterType);
  2756. void init_iso1ConsumptionCostType(struct iso1ConsumptionCostType* iso1ConsumptionCostType);
  2757. void init_iso1PMaxScheduleType(struct iso1PMaxScheduleType* iso1PMaxScheduleType);
  2758. void init_iso1PaymentOptionListType(struct iso1PaymentOptionListType* iso1PaymentOptionListType);
  2759. void init_iso1ObjectType(struct iso1ObjectType* iso1ObjectType);
  2760. void init_iso1PhysicalValueType(struct iso1PhysicalValueType* iso1PhysicalValueType);
  2761. void init_iso1RSAKeyValueType(struct iso1RSAKeyValueType* iso1RSAKeyValueType);
  2762. void init_iso1SessionStopResType(struct iso1SessionStopResType* iso1SessionStopResType);
  2763. void init_iso1CertificateUpdateReqType(struct iso1CertificateUpdateReqType* iso1CertificateUpdateReqType);
  2764. void init_iso1SignatureValueType(struct iso1SignatureValueType* iso1SignatureValueType);
  2765. void init_iso1PaymentDetailsReqType(struct iso1PaymentDetailsReqType* iso1PaymentDetailsReqType);
  2766. void init_iso1AuthorizationResType(struct iso1AuthorizationResType* iso1AuthorizationResType);
  2767. void init_iso1DC_EVSEChargeParameterType(struct iso1DC_EVSEChargeParameterType* iso1DC_EVSEChargeParameterType);
  2768. void init_iso1SubCertificatesType(struct iso1SubCertificatesType* iso1SubCertificatesType);
  2769. void init_iso1ChargingStatusResType(struct iso1ChargingStatusResType* iso1ChargingStatusResType);
  2770. void init_iso1DSAKeyValueType(struct iso1DSAKeyValueType* iso1DSAKeyValueType);
  2771. void init_iso1ListOfRootCertificateIDsType(struct iso1ListOfRootCertificateIDsType* iso1ListOfRootCertificateIDsType);
  2772. void init_iso1ChargeServiceType(struct iso1ChargeServiceType* iso1ChargeServiceType);
  2773. void init_iso1IntervalType(struct iso1IntervalType* iso1IntervalType);
  2774. void init_iso1MeteringReceiptReqType(struct iso1MeteringReceiptReqType* iso1MeteringReceiptReqType);
  2775. void init_iso1ServiceDetailResType(struct iso1ServiceDetailResType* iso1ServiceDetailResType);
  2776. void init_iso1KeyValueType(struct iso1KeyValueType* iso1KeyValueType);
  2777. void init_iso1SelectedServiceListType(struct iso1SelectedServiceListType* iso1SelectedServiceListType);
  2778. void init_iso1CableCheckResType(struct iso1CableCheckResType* iso1CableCheckResType);
  2779. void init_iso1X509IssuerSerialType(struct iso1X509IssuerSerialType* iso1X509IssuerSerialType);
  2780. void init_iso1KeyInfoType(struct iso1KeyInfoType* iso1KeyInfoType);
  2781. void init_iso1TransformsType(struct iso1TransformsType* iso1TransformsType);
  2782. void init_iso1ChargeParameterDiscoveryReqType(struct iso1ChargeParameterDiscoveryReqType* iso1ChargeParameterDiscoveryReqType);
  2783. void init_iso1PreChargeReqType(struct iso1PreChargeReqType* iso1PreChargeReqType);
  2784. void init_iso1EVSEStatusType(struct iso1EVSEStatusType* iso1EVSEStatusType);
  2785. void init_iso1SignatureMethodType(struct iso1SignatureMethodType* iso1SignatureMethodType);
  2786. void init_iso1X509DataType(struct iso1X509DataType* iso1X509DataType);
  2787. void init_iso1NotificationType(struct iso1NotificationType* iso1NotificationType);
  2788. void init_iso1SAScheduleListType(struct iso1SAScheduleListType* iso1SAScheduleListType);
  2789. void init_iso1BodyType(struct iso1BodyType* iso1BodyType);
  2790. void init_iso1ChargingProfileType(struct iso1ChargingProfileType* iso1ChargingProfileType);
  2791. void init_iso1TransformType(struct iso1TransformType* iso1TransformType);
  2792. void init_iso1SAScheduleTupleType(struct iso1SAScheduleTupleType* iso1SAScheduleTupleType);
  2793. void init_iso1AC_EVChargeParameterType(struct iso1AC_EVChargeParameterType* iso1AC_EVChargeParameterType);
  2794. void init_iso1AnonType_V2G_Message(struct iso1AnonType_V2G_Message* iso1AnonType_V2G_Message);
  2795. void init_iso1PaymentDetailsResType(struct iso1PaymentDetailsResType* iso1PaymentDetailsResType);
  2796. void init_iso1ContractSignatureEncryptedPrivateKeyType(struct iso1ContractSignatureEncryptedPrivateKeyType* iso1ContractSignatureEncryptedPrivateKeyType);
  2797. void init_iso1PMaxScheduleEntryType(struct iso1PMaxScheduleEntryType* iso1PMaxScheduleEntryType);
  2798. void init_iso1SPKIDataType(struct iso1SPKIDataType* iso1SPKIDataType);
  2799. void init_iso1MeteringReceiptResType(struct iso1MeteringReceiptResType* iso1MeteringReceiptResType);
  2800. void init_iso1SessionStopReqType(struct iso1SessionStopReqType* iso1SessionStopReqType);
  2801. void init_iso1WeldingDetectionResType(struct iso1WeldingDetectionResType* iso1WeldingDetectionResType);
  2802. void init_iso1ReferenceType(struct iso1ReferenceType* iso1ReferenceType);
  2803. void init_iso1CurrentDemandReqType(struct iso1CurrentDemandReqType* iso1CurrentDemandReqType);
  2804. void init_iso1SalesTariffEntryType(struct iso1SalesTariffEntryType* iso1SalesTariffEntryType);
  2805. void init_iso1EntryType(struct iso1EntryType* iso1EntryType);
  2806. void init_iso1SessionSetupReqType(struct iso1SessionSetupReqType* iso1SessionSetupReqType);
  2807. void init_iso1CostType(struct iso1CostType* iso1CostType);
  2808. void init_iso1DC_EVPowerDeliveryParameterType(struct iso1DC_EVPowerDeliveryParameterType* iso1DC_EVPowerDeliveryParameterType);
  2809. void init_iso1RetrievalMethodType(struct iso1RetrievalMethodType* iso1RetrievalMethodType);
  2810. void init_iso1CertificateUpdateResType(struct iso1CertificateUpdateResType* iso1CertificateUpdateResType);
  2811. void init_iso1CertificateInstallationResType(struct iso1CertificateInstallationResType* iso1CertificateInstallationResType);
  2812. void init_iso1CanonicalizationMethodType(struct iso1CanonicalizationMethodType* iso1CanonicalizationMethodType);
  2813. void init_iso1WeldingDetectionReqType(struct iso1WeldingDetectionReqType* iso1WeldingDetectionReqType);
  2814. void init_iso1DC_EVStatusType(struct iso1DC_EVStatusType* iso1DC_EVStatusType);
  2815. void init_iso1CurrentDemandResType(struct iso1CurrentDemandResType* iso1CurrentDemandResType);
  2816. void init_iso1ServiceType(struct iso1ServiceType* iso1ServiceType);
  2817. void init_iso1ServiceDiscoveryReqType(struct iso1ServiceDiscoveryReqType* iso1ServiceDiscoveryReqType);
  2818. void init_iso1AC_EVSEChargeParameterType(struct iso1AC_EVSEChargeParameterType* iso1AC_EVSEChargeParameterType);
  2819. void init_iso1CableCheckReqType(struct iso1CableCheckReqType* iso1CableCheckReqType);
  2820. void init_iso1SelectedServiceType(struct iso1SelectedServiceType* iso1SelectedServiceType);
  2821. void init_iso1AC_EVSEStatusType(struct iso1AC_EVSEStatusType* iso1AC_EVSEStatusType);
  2822. void init_iso1SalesTariffType(struct iso1SalesTariffType* iso1SalesTariffType);
  2823. void init_iso1PaymentServiceSelectionReqType(struct iso1PaymentServiceSelectionReqType* iso1PaymentServiceSelectionReqType);
  2824. void init_iso1SignaturePropertiesType(struct iso1SignaturePropertiesType* iso1SignaturePropertiesType);
  2825. void init_iso1BodyBaseType(struct iso1BodyBaseType* iso1BodyBaseType);
  2826. void init_iso1SupportedEnergyTransferModeType(struct iso1SupportedEnergyTransferModeType* iso1SupportedEnergyTransferModeType);
  2827. void init_iso1ChargingStatusReqType(struct iso1ChargingStatusReqType* iso1ChargingStatusReqType);
  2828. void init_iso1PaymentServiceSelectionResType(struct iso1PaymentServiceSelectionResType* iso1PaymentServiceSelectionResType);
  2829. void init_iso1DigestMethodType(struct iso1DigestMethodType* iso1DigestMethodType);
  2830. void init_iso1SignaturePropertyType(struct iso1SignaturePropertyType* iso1SignaturePropertyType);
  2831. void init_iso1PGPDataType(struct iso1PGPDataType* iso1PGPDataType);
  2832. #endif /* DEPLOY_ISO1_CODEC */
  2833. #ifdef __cplusplus
  2834. }
  2835. #endif
  2836. #endif