public static ParseResult parseXmlPart( char[] chars, int offset ) throws XMLParseException {
		int c;
		whitespaceloop: while( offset < chars.length ) {
			// Skip whitespace
			c = chars[offset];
			switch( c ) {
			case( '<' ):
				break whitespaceloop;
			case( ' ' ): case( '\t' ): case( '\r' ): case( '\n' ):
				++offset;
				break;
			default:
				ParseResult r = parseXmlText( chars, offset, '<' );
				r.value = ((String)r.value).trim();
				return r;
			}
		}
		if( offset < chars.length ) {
			return parseXmlTag( chars, offset );
		}
		return new ParseResult(null, offset);
	}