private void parseXmlEvent() throws XMLStreamException
    {
        if(xmlEvent.getEventType() == START_ELEMENT)
        {
            String tagLocalName = xmlEvent.asStartElement().getName().getLocalPart();
            
            if( tagLocalName.equals("item") )
            {
                if(atHeader) 
                {
                    atHeader = false;
                    feed = new Feed();
                }		
                tmpFeedMsg = new FeedMessage();
                xmlEvent = xmlParser.nextEvent();
            }
            else if( tagLocalName.equals("title") )
            {
                xmlEvent = xmlParser.nextEvent();
                tmpFeedMsg.setTitle( xmlEvent.asCharacters().getData() );
            }
            else if( tagLocalName.equals("description") )
            {
                xmlEvent = xmlParser.nextEvent();
                tmpFeedMsg.setDescription( xmlEvent.asCharacters().getData() );
            }
            else if( tagLocalName.equals("pubDate") )
            {
                xmlEvent = xmlParser.nextEvent();
                tmpFeedMsg.setDate( xmlEvent.asCharacters().getData() );
            }
        }
        else if(xmlEvent.getEventType() == END_ELEMENT)
        {
            String tagLocalName = xmlEvent.asEndElement().getName().getLocalPart();
            if( tagLocalName.equals("item") )
            {
                FeedMessage fm = tmpFeedMsg;
                feed.add(fm);
            }
        }
    }