@Override
	public void endElement(String uri, String localName, String qName) throws SAXException {
		if (qName.equals("rowset")) {
			if (requiredSkills) {
				requiredSkills = false;
			} else if (skillBonusCollection) {
				skillBonusCollection = false;
			} else if (skills) {
				skills = false;
				response.add(skillGroup);
				skillGroup = null;
			}
		} else if (qName.equals("description")) {
			skill.setDescription(getString());
		} else if (qName.equals("rank")) {
			skill.setRank(getInt());
		} else if (qName.equals("primaryAttribute")) {
			skill.setPrimaryAttribute(CharacterAttribute.valueOf(getString().toUpperCase()));
		} else if (qName.equals("secondaryAttribute")) {
			skill.setSecondaryAttribute(CharacterAttribute.valueOf(getString().toUpperCase()));
		} else
			super.endElement(uri, localName, qName);
	}