@Override
	public void startElement(String uri, String localName, String qName,
			Attributes attributes) throws SAXException {

		// Set Current Book
		// Requires two elements - the first is stored and when the second is hit, 
		// the text is processed and then the key is entered into the books map.  
		// The two elements are div and title   
		// <div type="book" osisID="Gen" canonical="true">
		// <title type="main">THE FIRST BOOK OF MOSES CALLED GENESIS</title>
		if (localName.equalsIgnoreCase(ELEMENT_DIV)) {
			if ( null != attributes.getValue(ATTRIBUTE_TYPE) && attributes.getValue(ATTRIBUTE_TYPE).equalsIgnoreCase(VALUE_BOOK)) {
				currentBookID = attributes.getValue(ATTRIBUTE_OSISID);
				textState = TEXT_STATE_IDLE;
			}
		}
		else if (localName.equalsIgnoreCase(ELEMENT_TITLE)) {
			if ( null != attributes.getValue(ATTRIBUTE_TYPE) && attributes.getValue(ATTRIBUTE_TYPE).equalsIgnoreCase(VALUE_MAIN) ) {
				bookSB.setLength(0);
				textState = TEXT_STATE_READ_BOOK;
			}
		}
		else if (localName.equalsIgnoreCase(ELEMENT_NOTE)) {
			prevTextState = textState;
			textState = TEXT_STATE_IDLE;
		}

	}