0

How to traverse node in without considering "" node which is child node of it.

With bellow example code i am getting 9 loops. But i should get 3 loops.

NodeList TravellerInfo=BookingresponseEle.getElementsByTagName("TravellerInfo");

Element TravellerInfoEle=(Element)TravellerInfo.item(0);

NodeList Items=TravellerInfoEle.getElementsByTagName("Item");

XMl is below

<TravellerInfo>        
<Item>          
    <TicketNumber>5899553184513</TicketNumber>          
    <PaxType>ADT</PaxType>          
    <Title> MR</Title>          
    <FirstName>TEST</FirstName>          
    <LastName>TEST</LastName>          
    <DateOfBirth />          
    <SegmentInformation>            
    <Item>             
        <AirlinePNR>MWVGUH</AirlinePNR>              
        <TicketNo>5899553184513</TicketNo>              
        <FlightNumber>2777</FlightNumber>              
        <Origin>BLR</Origin>              
        <Destination>VTZ</Destination>              
        <DepartureDateTime>24/07/2012 06:50</DepartureDateTime>              
        <ArrivalDateTime>24/07/2012 08:55</ArrivalDateTime>              
        <AirCraftType>AT7</AirCraftType>              
        <CarrierCode>9W</CarrierCode>              
        <ClassCode>W</ClassCode>              
        <FareBasis>W2SA14JK</FareBasis>              
        <FrequentFlyerNumber />              
        <SpRequest />              
        <MealsPreference>VGML meals status : UN</MealsPreference>            
    </Item>            
    <Item>              
        <AirlinePNR>MWVGUH</AirlinePNR>              
        <TicketNo>5899553184513</TicketNo>              
        <FlightNumber>2704</FlightNumber>              
        <Origin>VTZ</Origin>              
        <Destination>MAA</Destination>              
        <DepartureDateTime>24/07/2012 19:15</DepartureDateTime>              
        <ArrivalDateTime>24/07/2012 21:00</ArrivalDateTime>              
        <AirCraftType>AT7</AirCraftType>              
        <CarrierCode>9W</CarrierCode>              
        <ClassCode>W</ClassCode>              
        <FareBasis>W2SA14JK</FareBasis>              
        <FrequentFlyerNumber />              
        <SpRequest />              
        <MealsPreference>VGML meals status : UN</MealsPreference>            
    </Item>  
    </SegmentInformation>        
 </Item>
 <Item>          
    <TicketNumber>5899553184512</TicketNumber>          
    <PaxType>CHD</PaxType>          
    <Title> MSTR</Title>          
    <FirstName>TESTC</FirstName>          
    <LastName>TESTC</LastName>          
    <DateOfBirth>15/07/2009</DateOfBirth>          
    <SegmentInformation>            
    <Item>              
        <AirlinePNR>MWVGUH</AirlinePNR>              
        <TicketNo>5899553184512</TicketNo>              
        <FlightNumber>2777</FlightNumber>              
        <Origin>BLR</Origin>              
        <Destination>VTZ</Destination>              
        <DepartureDateTime>24/07/2012 06:50</DepartureDateTime>              
        <ArrivalDateTime>24/07/2012 08:55</ArrivalDateTime>              
        <AirCraftType>AT7</AirCraftType>              
        <CarrierCode>9W</CarrierCode>              
        <ClassCode>W</ClassCode>              
        <FareBasis>W2SA14JK</FareBasis>              
        <FrequentFlyerNumber />              
        <SpRequest />              
        <MealsPreference>VGML meals status : UN</MealsPreference>            
    </Item>            
    <Item>              
        <AirlinePNR>MWVGUH</AirlinePNR>              
        <TicketNo>5899553184512</TicketNo>              
        <FlightNumber>2704</FlightNumber>              
        <Origin>VTZ</Origin>              
        <Destination>MAA</Destination>              
        <DepartureDateTime>24/07/2012 19:15</DepartureDateTime>              
        <ArrivalDateTime>24/07/2012 21:00</ArrivalDateTime>              
        <AirCraftType>AT7</AirCraftType>              
        <CarrierCode>9W</CarrierCode>              
        <ClassCode>W</ClassCode>              
        <FareBasis>W2SA14JK</FareBasis>              
        <FrequentFlyerNumber />              
        <SpRequest />              
        <MealsPreference>VGML meals status : UN</MealsPreference>            
    </Item>            
    </SegmentInformation>        
    </Item>
          <Item>          
    <TicketNumber>5899553184514</TicketNumber>          
    <PaxType>ADT</PaxType>          
    <Title> MR</Title>          
    <FirstName>TESTT</FirstName>          
    <LastName>TESTT</LastName>          
    <DateOfBirth />          
    <SegmentInformation>            
    <Item>             
        <AirlinePNR>MWVGUH</AirlinePNR>              
        <TicketNo>5899553184514</TicketNo>              
        <FlightNumber>2777</FlightNumber>              
        <Origin>BLR</Origin>              
        <Destination>VTZ</Destination>              
        <DepartureDateTime>24/07/2012 06:50</DepartureDateTime>              
        <ArrivalDateTime>24/07/2012 08:55</ArrivalDateTime>              
        <AirCraftType>AT7</AirCraftType>              
        <CarrierCode>9W</CarrierCode>              
        <ClassCode>W</ClassCode>              
        <FareBasis>W2SA14JK</FareBasis>              
        <FrequentFlyerNumber />              
        <SpRequest />              
        <MealsPreference>VGML meals status : UN</MealsPreference>            
    </Item>            
    <Item>              
        <AirlinePNR>MWVGUH</AirlinePNR>              
        <TicketNo>5899553184514</TicketNo>              
        <FlightNumber>2704</FlightNumber>              
        <Origin>VTZ</Origin>              
        <Destination>MAA</Destination>              
        <DepartureDateTime>24/07/2012 19:15</DepartureDateTime>              
        <ArrivalDateTime>24/07/2012 21:00</ArrivalDateTime>              
        <AirCraftType>AT7</AirCraftType>              
        <CarrierCode>9W</CarrierCode>              
        <ClassCode>W</ClassCode>              
        <FareBasis>W2SA14JK</FareBasis>              
        <FrequentFlyerNumber />              
        <SpRequest />              
        <MealsPreference>VGML meals status : UN</MealsPreference>            
    </Item>            
    </SegmentInformation>        
</Item>      
  </TravellerInfo>  
D S
  • 1,311
  • 2
  • 8
  • 6

1 Answers1

0

I think you should look at getChildNodes(). That will get you the immediate descendants of the node you call it on.

You should then check each node in the resultant NodeList to determine it's an <Item> (you'll most likely get the text nodes inbetween elements etc. so checking is essential - see this SO answer and its question for more info)

Community
  • 1
  • 1
Brian Agnew
  • 268,207
  • 37
  • 334
  • 440