boolean () { PsiBuilder.Marker marker = myBuilder.mark(); if (!parseNameClassPart()) { marker.drop(); return false; } if (currentToken() == PIPE) { do { advance(); if (!parseNameClassPart()) { error(RelaxngBundle.message("relaxng.parse.error.name-class-expected")); } } while (currentToken() == PIPE); marker.done(RncElementTypes.NAME_CLASS_CHOICE); } else { marker.drop(); } return true; }