final Map<String, Multiset<Integer>> roles = getPredicateRoles(annotations); addPredicateRole(roles, "1-slash-10th.01", -1); addPredicateRole(roles, "bagger.01", 0); addPredicateRole(roles, "bearer.01", 0); addPredicateRole(roles, "being.01", 0); addPredicateRole(roles, "being.01", -1); addPredicateRole(roles, "caliber.01", 2); addPredicateRole(roles, "calling.01", -1); addPredicateRole(roles, "clogging.02", -1); addPredicateRole(roles, "counting.01", -1); addPredicateRole(roles, "crusher.01", 0); addPredicateRole(roles, "doer.01", 0); addPredicateRole(roles, "dropper.01", -1); addPredicateRole(roles, "esteem.01", -1); addPredicateRole(roles, "fidelity.01", -1); addPredicateRole(roles, "finder.01", 0); addPredicateRole(roles, "getter.01", 0); addPredicateRole(roles, "goer.01", 0); addPredicateRole(roles, "grinder.01", 0); addPredicateRole(roles, "implant.01", -1); addPredicateRole(roles, "incrimination.01", -1); addPredicateRole(roles, "interdiction.01", -1); addPredicateRole(roles, "kicker.03", 0); addPredicateRole(roles, "purification.01", -1); addPredicateRole(roles, "purity.01", -1); addPredicateRole(roles, "starter.01", 0); addPredicateRole(roles, "stocking.01", -1); addPredicateRole(roles, "tech.01", -1);
private void applySRLRemoveUnknownPredicates(final KAFDocument document) { // Scan all predicates in the SRL layer for (final Predicate predicate : Lists.newArrayList(document.getPredicates())) { // Determine whether the predicate is a verb and thus which resource to check for> final Term head = document.getTermsHead(predicate.getTerms()); final boolean isVerb = head.getPos().equalsIgnoreCase("V"); final String resource = isVerb ? "propbank" : "nombank"; // Predicate is invalid if its roleset is unknown in NomBank / PropBank for (final ExternalRef ref : NAFUtils.getRefs(predicate, resource, null)) { final String roleset = ref.getReference(); if (isVerb && PropBank.getRoleset(roleset) == null || !isVerb && NomBank.getRoleset(roleset) == null) { document.removeAnnotation(predicate); if (LOGGER.isDebugEnabled()) { LOGGER.debug("Removed " + NAFUtils.toString(predicate) + " with unknown sense '" + roleset + "' in resource " + resource); } break; } } } }
final List<NomBank.Roleset> rolesets = NomBank.getRolesetsForLemma(lemma); if (rolesets.size() == 1) { final String rolesetID = rolesets.get(0).getId();
for (final ExternalRef ref : predicate.getExternalRefs()) { if (NAFUtils.RESOURCE_NOMBANK.equals(ref.getResource())) { final NomBank.Roleset rs = NomBank.getRoleset(ref.getReference()); if (rs != null && (!rs.getPredMandatoryArgNums().isEmpty() // || !rs.getPredOptionalArgNums().isEmpty())) {
.getRoleset(rolesetID); if (roleset == null) { continue;
for (final ExternalRef ref : NAFUtils.getRefs(predicate, NAFUtils.RESOURCE_NOMBANK, null)) { final NomBank.Roleset roleset = NomBank.getRoleset(ref .getReference()); if (roleset != null
} else { final ExternalRef ref = predicate.getExternalRef(NAFUtils.RESOURCE_NOMBANK); nbRoleset = ref == null ? null : NomBank.getRoleset(ref.getReference()); final String pbSense = nbRoleset == null ? null : nbRoleset.getPBId(); pbRoleset = pbSense == null ? null : PropBank.getRoleset(pbSense);