EDI to Java conversion - Repeated segments, Segment ordering problem

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

EDI to Java conversion - Repeated segments, Segment ordering problem

calvinjose.1987
This post has NOT been accepted by the mailing list yet.
Hi,

Im new to Smooks. My requirement is to parse a EDI 834 file to XML and then to JAVA.

I have been trying that with Smooks and I could come till parsing a typical 834 content but in an ordered fashion like below.

ISA*SD*          *DFDF*          *SDFDSF*FHGFH       *44*GHGHGHG       *GHGH*GHGHGH*^*GHGHG*46345345*B*4*:~
GS*SS*2323*23232*232323*32323*1*X*FDFGDFGDF~
ST*2232*DDFGF*2232DFG~
BGN*12*FGFG*DFGDFGDFG*FGDF333*GFG***2D~
REF*DF*DFDAGF3~
REF*HDHDH*235363~
REF*FGF*637~
REF*35S*353463ZT4~
REF*DGD*W4~
REF*SD*DFDF~
REF*CFR*567646~
REF*GFH*GHG33~
REF*DFSD*4634SD~
REF*46*5465~
REF*3D*35635634647~
REF*44*4645656~
REF*F5*65XS7~
DTP*33*DGF*GFDFH~
DTP*446*FH*34H4D~
DTP*4423*FH4*34H44D~
DTP*DFG*FG*FGFHFH~
DTP*FGDFH*SDFH4*FHDF4442~
DTP*DGD*36D*DFD~
DTP*DG*3DTGDG*GDFGDFGF~
DTP*FGFG*FGFG*FGF464765~
DTP*FH4*GHG*FHG444~
DTP*GFH4*G4*H46365~
DTP*BNB*B3*53636~
DTP*GYGTUY*54*GHGJHJ~
DTP*FGDFG*DFGDFG*2056561~
DTP*45454*B4*465656~
N1*SD*JDJ TEST*FSD*DFSDF840DF~
N1*XZX*SDFSD COMPANY*DFD*232245~
N1*FGF*DFGDFGQ*FF*DFGDFH~
INS*DFGDF*DFG*33*FGH*HH***HH~
INS*CGD*DGD3*FHGDFD*AA*FHA*SJ*SJS*B~
INS*DF*D33*353*DFDF*C*SDDF*JD*MD~
INS*NE3*54*55454*GFHG*G*NV*MV*HJ~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
PER*FGHF**GG*3525246~
N3*353 FYHRY SHSD~
N4*NFHD DFHD*DFHDFH*DH262~
ICM*463*W46337~
HD*DGS4**663*GDGH*SDGT4~
HD*DGD4**GFGFG*6546*DHF~
HD*FGFG**VBVB*BN*DFH~
HD*3545**35345*454545*DFF~
DMG*DE3*FH42262*F*AQ~
DMG*HK*HGHKK*DFGFG*SDHF~
DMG*V3*F45346456*33*DS~
DMG*4DFG*4656546*FGF*DN~
SE*4F7*CY54445~
GE*YTRY*DF~
IEA*DF*DGHJGHHGG~

From that we understood that Smooks expects the ordering of segments inorder to complete the mapping successfully.

But the orginal 834 EDI content that we will be receiving will be with segments populated randomly which makes sense with the business data which it speaks. We cannot change that ordering. When tried on unordered 834 EDI content we got the following result.

==============Message In==============
ISA*SD*          *DFDF*          *SDFDSF*FHGFH       *44*GHGHGHG       *GHGH*GHGHGH*^*GHGHG*46345345*B*4*:~
GS*SS*2323*23232*232323*32323*1*X*FDFGDFGDF~
ST*2232*DDFGF*2232DFG~
BGN*12*FGFG*DFGDFGDFG*FGDF333*GFG***2D~
REF*DF*DFDAGF3~
DTP*33*DGF*GFDFH~
N1*SD*JDJ TEST*FSD*DFSDF840DF~
N1*XZX*SDFSD COMPANY*DFD*232245~
N1*FGF*DFGDFGQ*FF*DFGDFH~
INS*DFGDF*DFG*33*FGH*HH***HH~
REF*HDHDH*235363~
REF*FGF*637~
DTP*446*FH*34H4D~
DTP*4423*FH4*34H44D~
DTP*DFG*FG*FGFHFH~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
PER*FGHF**GG*3525246~
N3*353 FYHRY SHSD~
N4*NFHD DFHD*DFHDFH*DH262~
DMG*DE3*FH42262*F*AQ~
ICM*463*W46337~
HD*DGS4**663*GDGH*SDGT4~
DTP*FGDFH*SDFH4*FHDF4442~
REF*DFSD*4634SD~
INS*CGD*DGD3*FHGDFD*AA*FHA*DFH*DHJ*DH~
REF*35S*353463ZT4~
REF*DGD*W4~
DTP*DGD*36D*DFD~
DTP*DG*3DTGDG*GDFGDFGF~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
DMG*HK*HGHKK*DFGFG*DFH~
HD*DGD4**GFGFG*6546~
DTP*FGFG*FGFG*FGF464765~
REF*SD*DFDF~
INS*DF*D33*353*DFDF*C*DFH*DHJ*DH~
REF*CFR*567646~
REF*GFH*GHG33~
DTP*FH4*GHG*FHG444~
DTP*GFH4*G4*H46365~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
DMG*V3*F45346456*33*SDFHD~
HD*FGFG**VBVB*BN~
DTP*BNB*B3*53636~
REF*46*5465~
INS*NE3*54*55454*GFHG*G*DFH*DHJ*DH~
REF*3D*35635634647~
REF*44*4645656~
DTP*GYGTUY*54*GHGJHJ~
DTP*FGDFG*DFGDFG*2056561~
NM1*XF*3*XCGDFHDH*Test****FGDF*DFHDFH~
DMG*4DFG*4656546*FGF*DFHDF~
HD*3545**35345*454545~
DTP*45454*B4*465656~
REF*F5*65XS7~
SE*4F7*CY54445~
GE*YTRY*DF~
IEA*DF*DGHJGHHGG~
======================================

> The EDI input stream can be seen above.  Press 'enter' to see how this stream is transformed the Order Object graph...



****************************************************************************************
  HTML REPORT GENERATOR IN USE!!!
  Please disable in Production mode.  This feature is a major performance drain!!
****************************************************************************************

Exception in thread "main" org.milyn.SmooksException: Failed to filter source.
        at org.milyn.delivery.sax.SmooksSAXFilter.doFilter(SmooksSAXFilter.java:97)
        at org.milyn.delivery.sax.SmooksSAXFilter.doFilter(SmooksSAXFilter.java:64)
        at org.milyn.Smooks._filter(Smooks.java:526)
        at org.milyn.Smooks.filterSource(Smooks.java:482)
        at main.java.example.Main.runSmooksTransform(Main.java:71)
        at main.java.example.Main.main(Main.java:88)
Caused by: org.milyn.edisax.EDIParseException: EDI message processing failed [Benefits and Enrollments][1.0].  Reached end of mapping model but there are more EDI segments in the incoming message.  Read 11 segment(s). Current EDI segment is [REF*HDHDH*235363]
        at org.milyn.edisax.EDIParser.parse(EDIParser.java:434)
        at org.milyn.edisax.EDIParser.parse(EDIParser.java:386)
        at org.milyn.smooks.edi.EDIReader.parse(EDIReader.java:110)
        at org.milyn.delivery.sax.SAXParser.parse(SAXParser.java:76)
        at org.milyn.delivery.sax.SmooksSAXFilter.doFilter(SmooksSAXFilter.java:86)
        ... 5 more

PFB the mapping files.

EDI to XML mapping :
-------------------------
<?xml version="1.0" encoding="UTF-8"?>
<medi:edimap xmlns:medi="http://www.milyn.org/schema/edi-message-mapping-1.5.xsd">

        <medi:description name="Benefits and Enrollments" version="1.0" />

        <medi:delimiters segment="~" field="*" component=":"
                sub-component="^" />

        <medi:segments xmltag="enrollmentsListData">
                <medi:segmentGroup>
                       
                        <medi:segment segcode="ISA" xmltag="enrollment-header" minOccurs="0" maxOccurs="1" >
                                <medi:field xmltag="authorInfoQualifier" />
                                <medi:field xmltag="authorInformation" />
                                <medi:field xmltag="securityInfoQualifier" />
                                <medi:field xmltag="securityInformation" />
                                <medi:field xmltag="interchangeInfoQualifier1" />
                                <medi:field xmltag="interchangeSenderId" />
                                <medi:field xmltag="interchangeInfoQualifier2" />
                                <medi:field xmltag="interchangeReceiverId" />
                                <medi:field xmltag="interchangeDate" />
                                <medi:field xmltag="interchangeTime" />
                                <medi:field xmltag="repetitionSeperator" />
                                <medi:field xmltag="interCtrlVersionNum" />
                                <medi:field xmltag="interCtrlNum" />
                                <medi:field xmltag="acknowledgementRequested" />
                                <medi:field xmltag="usageIndicator" />
                                <medi:field xmltag="componentElementSeperator" />
                        </medi:segment>

                       
                        <medi:segment segcode="GS" xmltag="enrollment-group-header" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="functionalIdCode" />
                                <medi:field xmltag="applicationSenderCode" />
                                <medi:field xmltag="applicationReceiverCode" />
                                <medi:field xmltag="date" />
                                <medi:field xmltag="time" />
                                <medi:field xmltag="groupControlNumber" />
                                <medi:field xmltag="responsibleAgencyCode" />
                                <medi:field xmltag="verionOrReleaseIdCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="ST"
                                xmltag="enrollment-transaction-set-header" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="transactionSetIdCode" />
                                <medi:field xmltag="transactionSetControlNumber" />
                                <medi:field xmltag="implementationConventionReference" />
                        </medi:segment>

                       
                        <medi:segment segcode="BGN" xmltag="enrollment-beginning-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="transactionSetPurposeCode" />
                                <medi:field xmltag="referenceIdentification1" />
                                <medi:field xmltag="date" />
                                <medi:field xmltag="time" />
                                <medi:field xmltag="timeCode" />
                                <medi:field xmltag="referenceIdentification2" />
                                <medi:field xmltag="transactionTypeCode" />
                                <medi:field xmltag="actionCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="REF" xmltag="enrollment-policy-number-segment"
                                minOccurs="0" maxOccurs="-1">
                                <medi:field xmltag="referenceIdentificationQualifier" />
                                <medi:field xmltag="referenceIdentification" />
                        </medi:segment>

                       
                        <medi:segment segcode="DTP"
                                xmltag="enrollment-file-effective-date-segment"  minOccurs="0" maxOccurs="-1">
                                <medi:field xmltag="dataTimeQualifier" />
                                <medi:field xmltag="dateTimeFormatQualifier" />
                                <medi:field xmltag="dateTimePeriod" />
                        </medi:segment>

                       
                        <medi:segment segcode="N1" xmltag="enrollment-sponsor-name-segment"
                                minOccurs="0" maxOccurs="-1">
                                <medi:field xmltag="entityIdCode" />
                                <medi:field xmltag="name" />
                                <medi:field xmltag="idCodeQualifier" />
                                <medi:field xmltag="idCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="INS" xmltag="enrollment-member-detail-segment"
                                minOccurs="0" maxOccurs="-1">
                                <medi:field xmltag="responseCode" />
                                <medi:field xmltag="individualRelationCode" />
                                <medi:field xmltag="maintainenceTypeCode" />
                                <medi:field xmltag="maintainenceReasonCode" />
                                <medi:field xmltag="benefitStatusCode" />
                                <medi:field xmltag="medicareStatusCode" />
                                <medi:field xmltag="corbaQualificationEventCode" />
                                <medi:field xmltag="employmentStatusCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="NM1" xmltag="enrollment-member-name-segment"
                                minOccurs="0" maxOccurs="-1">
                                <medi:field xmltag="entityIdCode" />
                                <medi:field xmltag="entityTypeQualifier" />
                                <medi:field xmltag="organizationName" />
                                <medi:field xmltag="firstName" />
                                <medi:field xmltag="middleName" />
                                <medi:field xmltag="namePrefix" />
                                <medi:field xmltag="nameSuffix" />
                                <medi:field xmltag="idCodeQualifier" />
                                <medi:field xmltag="idCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="PER"
                                xmltag="enrollment-member-communication-number-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="contactFunctionCode" />
                                <medi:field xmltag="name" />
                                <medi:field xmltag="communicationNumberQualifier" />
                                <medi:field xmltag="communicationNumber" />
                        </medi:segment>

                       
                        <medi:segment segcode="N3"
                                xmltag="enrollment-member-residence-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="addressInfo" />
                        </medi:segment>

                       
                        <medi:segment segcode="N4"
                                xmltag="enrollment-member-city-state-zip-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="cityName" />
                                <medi:field xmltag="stateOrProvinceCode" />
                                <medi:field xmltag="postalCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="ICM" xmltag="enrollment-member-income-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="frequencyCode" />
                                <medi:field xmltag="monetaryAmount" />
                        </medi:segment>

                       
                        <medi:segment segcode="HD"
                                xmltag="enrollment-member-health-coverage-segment" minOccurs="0" maxOccurs="-1">
                                <medi:field xmltag="maintainenceTypeCode" />
                                <medi:field xmltag="maintainenceReasonCode" />
                                <medi:field xmltag="insuranceLineCode" />
                                <medi:field xmltag="planCoverageDescription" />
                                <medi:field xmltag="coverageLevelCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="DMG"
                                xmltag="enrollment-member-demographics-segment" minOccurs="0" maxOccurs="-1">
                                <medi:field xmltag="dateTimePeriodFormatQualifier" />
                                <medi:field xmltag="dateTimePeriod" />
                                <medi:field xmltag="genderCode" />
                                <medi:field xmltag="maritalStatusCode" />
                        </medi:segment>

                       
                        <medi:segment segcode="SE"
                                xmltag="enrollment-transactionset-trailer-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="noofIncludedSegments" />
                                <medi:field xmltag="transactionSetControlNumber" />
                        </medi:segment>

                       
                        <medi:segment segcode="GE"
                                xmltag="enrollment-functional-group-trailer-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="noofIncludedSegments" />
                                <medi:field xmltag="groupControlNumber" />
                        </medi:segment>

                       
                        <medi:segment segcode="IEA"
                                xmltag="enrollment-interchange-control-trailer-segment" minOccurs="0" maxOccurs="1">
                                <medi:field xmltag="noofIncludedFunctionalGroups" />
                                <medi:field xmltag="interchangeControlNumber" />
                        </medi:segment>
                </medi:segmentGroup>
        </medi:segments>
</medi:edimap>

XML to JAVA mapping:
-------------------------

<?xml version="1.0"?>
<smooks-resource-list
        xmlns="http://www.milyn.org/xsd/smooks-1.1.xsd"
        xmlns:edi="http://www.milyn.org/xsd/smooks/edi-1.4.xsd"
        xmlns:jb="http://www.milyn.org/xsd/smooks/javabean-1.4.xsd">

   
    <edi:reader mappingModel="main/java/example/834-edi-to-java-order-mapping.xml" ignoreNewLines="true" validate="false"/>

   
    <jb:bean beanId="enrollmentsData" class="main.java.example.model.Enrollments" createOnElement="enrollmentsListData">
        <jb:wiring property="enrollments" beanIdRef="enrollmentList" />
    </jb:bean>

       
    <jb:bean beanId="enrollmentList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentItem" />
    </jb:bean>

   
    <jb:bean beanId="enrollmentItem" class="main.java.example.model.Enrollment" createOnElement="enrollmentsListData">
         <jb:wiring property="enrollmentHeader" beanIdRef="enrollmentHeader" />
         <jb:wiring property="enrollmentGroupHeader" beanIdRef="enrollmentGroupHeader" />
         <jb:wiring property="enrollmentTransactionSetHeader" beanIdRef="enrollmentTransactionSetHeader" />
         <jb:wiring property="enrollmentBeginningSegment" beanIdRef="enrollmentBeginningSegment" />
         <jb:wiring property="enrollmentTransactionSetPolicyNumber" beanIdRef="enrollmentTransactionSetPolicyNumberList" />
         <jb:wiring property="enrollmentFileEffectiveDate" beanIdRef="enrollmentFileEffectiveDateList" />
         <jb:wiring property="enrollmentSponsorName" beanIdRef="enrollmentSponsorNameList" />
         <jb:wiring property="enrollmentMemberLevelDetail" beanIdRef="enrollmentMemberLevelDetailList" />
         <jb:wiring property="enrollmentMemberName" beanIdRef="enrollmentMemberNameList" />
         <jb:wiring property="enrollmentMemberCommunicationNumbers" beanIdRef="enrollmentMemberCommunicationNumbers" />
         <jb:wiring property="enrollmentMemberResidenceDetail" beanIdRef="enrollmentMemberResidenceDetail" />
         <jb:wiring property="enrollmentMemberCityStateZipDetail" beanIdRef="enrollmentMemberCityStateZipDetail" />
         <jb:wiring property="enrollmentMemberDemoGraphics" beanIdRef="enrollmentMemberDemoGraphicsList" />
         <jb:wiring property="enrollmentMemberIncomeDetail" beanIdRef="enrollmentMemberIncomeDetail" />
         <jb:wiring property="enrollmentMemberHealthCoverage" beanIdRef="enrollmentMemberHealthCoverageList" />
         <jb:wiring property="enrollmentTransactionSetTrailer" beanIdRef="enrollmentTransactionSetTrailer" />
         <jb:wiring property="enrollmentFunctionalGroupTrailer" beanIdRef="enrollmentFunctionalGroupTrailer" />
          <jb:wiring property="enrollmentInterchangeControlTrailer" beanIdRef="enrollmentInterchangeControlTrailer" />
    </jb:bean>

        <jb:bean beanId="enrollmentTransactionSetPolicyNumberList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentTransactionSetPolicyNumber" />
    </jb:bean>

    <jb:bean beanId="enrollmentFileEffectiveDateList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentFileEffectiveDate" />
    </jb:bean>

    <jb:bean beanId="enrollmentSponsorNameList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentSponsorName" />
    </jb:bean>

         <jb:bean beanId="enrollmentMemberLevelDetailList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentMemberLevelDetail" />
    </jb:bean>

    <jb:bean beanId="enrollmentMemberNameList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentMemberName" />
    </jb:bean>

         <jb:bean beanId="enrollmentMemberDemoGraphicsList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentMemberDemoGraphics" />
    </jb:bean>

     <jb:bean beanId="enrollmentMemberHealthCoverageList" class="java.util.ArrayList" createOnElement="enrollmentsListData">
        <jb:wiring beanIdRef="enrollmentMemberHealthCoverage" />
    </jb:bean>

       
     <jb:bean beanId="enrollmentHeader" class="main.java.example.model.EnrollmentHeader" createOnElement="enrollment-header">
        <jb:value property="authorInfoQualifier" data="#/authorInfoQualifier" />
        <jb:value property="authorInformation" data="#/authorInformation" />
        <jb:value property="securityInfoQualifier" data="#/securityInfoQualifier" />
        <jb:value property="securityInformation" data="#/securityInformation" />
        <jb:value property="interchangeInfoQualifier" data="#/interchangeInfoQualifier1" />
        <jb:value property="interchangeSenderId" data="#/interchangeSenderId" />
        <jb:value property="interchangeInfoQualifier" data="#/interchangeInfoQualifier2" />
        <jb:value property="interchangeReceiverId" data="#/interchangeReceiverId"/>
        <jb:value property="interchangeDate" data="#/interchangeDate" />
        <jb:value property="interchangeTime" data="#/interchangeTime" />
        <jb:value property="repetitionSeperator" data="#/repetitionSeperator"/>
        <jb:value property="interCtrlVersionNum" data="#/interCtrlVersionNum" />
        <jb:value property="interCtrlNum" data="#/interCtrlNum" />
        <jb:value property="acknowledgementRequested" data="#/acknowledgementRequested"/>
        <jb:value property="usageIndicator" data="#/usageIndicator" />
        <jb:value property="componentElementSeperator" data="#/componentElementSeperator"/>
  </jb:bean>

       
  <jb:bean beanId="enrollmentGroupHeader" class="main.java.example.model.GroupHeader" createOnElement="enrollment-group-header">
        <jb:value property="functionalIdCode" data="#/functionalIdCode" />
                <jb:value property="applicationSenderCode" data="#/applicationSenderCode" />
                <jb:value property="applicationReceiverCode" data="#/applicationReceiverCode" />
                <jb:value property="date" data="#/date" />
                <jb:value property="time" data="#/time" />
                <jb:value property="groupControlNumber" data="#/groupControlNumber" />
                <jb:value property="responsibleAgencyCode" data="#/responsibleAgencyCode" />
                <jb:value property="verionOrReleaseIdCode" data="#/verionOrReleaseIdCode" />
    </jb:bean>

       
  <jb:bean beanId="enrollmentTransactionSetHeader" class="main.java.example.model.TransactionSetHeader" createOnElement="enrollment-transaction-set-header">
        <jb:value property="transactionSetIdCode" data="#/transactionSetIdCode" />
                <jb:value property="transactionSetControlNumber" data="#/transactionSetControlNumber" />
                <jb:value property="implementationConventionReference" data="#/implementationConventionReference" />
    </jb:bean>

   
        <jb:bean beanId="enrollmentBeginningSegment" class="main.java.example.model.EnrollmentBeginningSegment" createOnElement="enrollment-beginning-segment">
        <jb:value property="transactionSetPurposeCode" data="#/transactionSetPurposeCode" />
                <jb:value property="referenceIdentification1" data="#/referenceIdentification1" />
                <jb:value property="date" data="#/date" />
                <jb:value property="time" data="#/time" />
                <jb:value property="timeCode" data="#/timeCode" />
                <jb:value property="referenceIdentification2" data="#/referenceIdentification2" />
                <jb:value property="transactionTypeCode" data="#/transactionTypeCode" />
                <jb:value property="actionCode" data="#/actionCode" />
    </jb:bean>

   
        <jb:bean beanId="enrollmentTransactionSetPolicyNumber" class="main.java.example.model.TransactionSetPolicyNumber" createOnElement="enrollment-policy-number-segment">
        <jb:value property="referenceIdentificationQualifier" data="#/referenceIdentificationQualifier" />
                <jb:value property="referenceIdentification" data="#/referenceIdentification" />
        </jb:bean>

         
        <jb:bean beanId="enrollmentFileEffectiveDate" class="main.java.example.model.FileEffectiveDate" createOnElement="enrollment-file-effective-date-segment">
        <jb:value property="dataTimeQualifier" data="#/dataTimeQualifier" />
                <jb:value property="dateTimeFormatQualifier" data="#/dateTimeFormatQualifier" />
                <jb:value property="dateTimePeriod" data="#/dateTimePeriod" />
        </jb:bean>

       
        <jb:bean beanId="enrollmentSponsorName" class="main.java.example.model.SponsorName" createOnElement="enrollment-sponsor-name-segment">
        <jb:value property="entityIdCode" data="#/entityIdCode" />
                <jb:value property="name" data="#/name" />
                <jb:value property="idCodeQualifier" data="#/idCodeQualifier" />
                <jb:value property="idCode" data="#/idCode" />
        </jb:bean>

       
        <jb:bean beanId="enrollmentMemberLevelDetail" class="main.java.example.model.MemberLevelDetail" createOnElement="enrollment-member-detail-segment">
        <jb:value property="responseCode" data="#/responseCode" />
                <jb:value property="individualRelationCode" data="#/individualRelationCode" />
                <jb:value property="maintainenceTypeCode" data="#/maintainenceTypeCode" />
                <jb:value property="maintainenceReasonCode" data="#/maintainenceReasonCode" />
                <jb:value property="benefitStatusCode" data="#/benefitStatusCode" />
                <jb:value property="medicareStatusCode" data="#/medicareStatusCode" />
                <jb:value property="corbaQualificationEventCode" data="#/corbaQualificationEventCode" />
                <jb:value property="employmentStatusCode" data="#/employmentStatusCode" />
        </jb:bean>

       
        <jb:bean beanId="enrollmentMemberName" class="main.java.example.model.MemberName" createOnElement="enrollment-member-name-segment">
        <jb:value property="entityIdCode" data="#/entityIdCode" />
                <jb:value property="entityTypeQualifier" data="#/entityTypeQualifier" />
                <jb:value property="organizationName" data="#/organizationName" />
                <jb:value property="firstName" data="#/firstName" />
                <jb:value property="middleName" data="#/middleName" />
                <jb:value property="namePrefix" data="#/namePrefix" />
                <jb:value property="nameSuffix" data="#/nameSuffix" />
                <jb:value property="idCodeQualifier" data="#/idCodeQualifier" />
                <jb:value property="idCode" data="#/idCode" />
        </jb:bean>

       
        <jb:bean beanId="enrollmentMemberCommunicationNumbers" class="main.java.example.model.MemberCommunicationNumbers" createOnElement="enrollment-member-communication-number-segment">
        <jb:value property="contactFunctionCode" data="#/contactFunctionCode" />
         <jb:value property="name" data="#/name" />
                <jb:value property="communicationNumberQualifier" data="#/communicationNumberQualifier" />
                <jb:value property="communicationNumber" data="#/communicationNumber" />
        </jb:bean>

       
        <jb:bean beanId="enrollmentMemberResidenceDetail" class="main.java.example.model.MemberResidenceDetail" createOnElement="enrollment-member-residence-segment">
        <jb:value property="addressInfo" data="#/addressInfo" />
    </jb:bean>

   
        <jb:bean beanId="enrollmentMemberCityStateZipDetail" class="main.java.example.model.MemberCityStateZipDetail" createOnElement="enrollment-member-city-state-zip-segment">
        <jb:value property="cityName" data="#/cityName" />
        <jb:value property="stateOrProvinceCode" data="#/stateOrProvinceCode" />
        <jb:value property="postalCode" data="#/postalCode" />
    </jb:bean>

   
        <jb:bean beanId="enrollmentMemberDemoGraphics" class="main.java.example.model.MemberDemoGraphics" createOnElement="enrollment-member-demographics-segment">
        <jb:value property="dateTimePeriodFormatQualifier" data="#/dateTimePeriodFormatQualifier" />
        <jb:value property="dateTimePeriod" data="#/dateTimePeriod" />
        <jb:value property="genderCode" data="#/genderCode" />
        <jb:value property="maritalStatusCode" data="#/maritalStatusCode" />
    </jb:bean>

   
        <jb:bean beanId="enrollmentMemberIncomeDetail" class="main.java.example.model.MemberIncomeDetail" createOnElement="enrollment-member-income-segment">
        <jb:value property="frequencyCode" data="#/frequencyCode" />
        <jb:value property="monetaryAmount" data="#/monetaryAmount" />
    </jb:bean>

   
    <jb:bean beanId="enrollmentMemberHealthCoverage" class="main.java.example.model.MemberHealthCoverage" createOnElement="enrollment-member-health-coverage-segment">
        <jb:value property="maintainenceTypeCode" data="#/maintainenceTypeCode" />
        <jb:value property="maintainenceReasonCode" data="#/maintainenceReasonCode" />
        <jb:value property="insuranceLineCode" data="#/insuranceLineCode" />
        <jb:value property="planCoverageDescription" data="#/planCoverageDescription" />
        <jb:value property="coverageLevelCode" data="#/coverageLevelCode" />
    </jb:bean>

   
        <jb:bean beanId="enrollmentTransactionSetTrailer" class="main.java.example.model.TransactionSetTrailer" createOnElement="enrollment-transactionset-trailer-segment">
        <jb:value property="noofIncludedSegments" data="#/noofIncludedSegments" />
        <jb:value property="transactionSetControlNumber" data="#/transactionSetControlNumber" />
    </jb:bean>

   
    <jb:bean beanId="enrollmentFunctionalGroupTrailer" class="main.java.example.model.FunctionalGroupTrailer" createOnElement="enrollment-functional-group-trailer-segment">
        <jb:value property="noofIncludedSegments" data="#/noofIncludedSegments" />
        <jb:value property="groupControlNumber" data="#/groupControlNumber" />
    </jb:bean>

   
     <jb:bean beanId="enrollmentInterchangeControlTrailer" class="main.java.example.model.InterchangeControlTrailer" createOnElement="enrollment-interchange-control-trailer-segment">
        <jb:value property="noofIncludedFunctionalGroups" data="#/noofIncludedFunctionalGroups" />
        <jb:value property="interchangeControlNumber" data="#/interchangeControlNumber" />
    </jb:bean>
</smooks-resource-list>

Please help with this issue.