private boolean isValidAnnotation(PBRole role) { String n = role.getArgNumber(); if (n.length() != 1) return false; if (MPLib.containsOnlyDigits(n)) return true; if (role.isArgNumber("A")) return true; if (role.isArgNumber("M") && !role.isFunctionTag(STConstant.EMPTY)) return true; return false; }
public void addRole(PBRole role) { if (!isValidAnnotation(role)) { if (!s_id.endsWith(PBLib.LIGHT_VERB)) LOG.debug("Invalid argument: " + s_id + " - " + role.getArgKey() + "\n"); } else { m_roles.put(role.getArgNumber(), role); for (String vncls : role.getVNClasses()) { if (!s_vncls.contains(vncls)) System.err.printf("VerbNet class mismatch: %s - %s\n", s_id, role.getArgKey()); } } }
@Override public String toString() { StringBuilder build = new StringBuilder(); build.append(s_id); build.append(": "); build.append(s_name); for (String vncls : s_vncls) { build.append(", "); build.append(vncls); } build.append(STConstant.NEW_LINE); for (PBRole role : getRoleSortedList()) { build.append(role.toString()); build.append(STConstant.NEW_LINE); } return build.toString(); }
public String getFunctionTag(String argNumber) { PBRole role = getRole(argNumber); return (role != null) ? role.getFunctionTag() : STConstant.EMPTY; }