@SuppressWarnings("fallthrough")
    protected DCIdentifier identifier() throws ParseException {
        skipWhitespace();
        int pos = bp;

        if (isJavaIdentifierStart(ch)) {
            Name name = readJavaIdentifier();
            return m.at(pos).newIdentifierTree(name);
        }

        throw new ParseException("dc.identifier.expected");
    }
@ SuppressWarnings ( "fallthrough" ) protected DCIdentifier identifier ( ) throws ParseException { skipWhitespace ( ) ; int pos = bp ; if ( isJavaIdentifierStart ( ch ) ) { Name name = readJavaIdentifier ( ) ; return m . at ( pos ) . newIdentifierTree ( name ) ; } throw new ParseException ( "dc.identifier.expected" ) ; }
Read Java identifier
Matching pairs of { } are skipped; the text is terminated by the first
unmatched }. It is an error if the beginning of the next tag is detected.