idAnnotationMap.put(annotation.id, modifier);
} else if ("Strength".equals(annotation.type)) {
KnowtatorAnnotation unit = annotationSlots.remove("strength_unit");
KnowtatorAnnotation number = annotationSlots.remove("strength_number");
MedicationStrength attribute = new MedicationStrength(jCas);
if (unit != null) {
KnowtatorAnnotation.Span unitSpan = unit.getCoveringSpan();
String unitString = text.substring(unitSpan.begin, unitSpan.end);
attribute.setUnit(unitString);
}
if (number != null) {
KnowtatorAnnotation.Span numberSpan = number.getCoveringSpan();
String numberString = text.substring(numberSpan.begin, numberSpan.end);
attribute.setNumber(numberString);
}
attribute.addToIndexes();
MedicationStrengthModifier modifier = new MedicationStrengthModifier(jCas, coveringSpan.begin, coveringSpan.end);
modifier.setNormalizedForm(attribute);
modifier.addToIndexes();
idAnnotationMap.put(annotation.id, modifier);
} else if ("Strength number".equals(annotation.type)) {
// already handled in "Strength" above
} else if ("Strength unit".equals(annotation.type)) {
// already handled in "Strength" above
} else if ("device_class".equals(annotation.type)) {
String code = stringSlots.remove("associatedCode");
ProcedureDevice attribute = new ProcedureDevice(jCas);
attribute.setValue(code);
ProcedureDeviceModifier modifier = new ProcedureDeviceModifier(jCas, coveringSpan.begin, coveringSpan.end);
modifier.setNormalizedForm(attribute);
modifier.addToIndexes();
idAnnotationMap.put(annotation.id, modifier);
} else if ("method_class".equals(annotation.type)) {
String code = stringSlots.remove("associatedCode");
ProcedureMethod attribute = new ProcedureMethod(jCas);
attribute.setValue(code);
ProcedureMethodModifier modifier = new ProcedureMethodModifier(jCas, coveringSpan.begin, coveringSpan.end);
modifier.setNormalizedForm(attribute);
modifier.addToIndexes();
idAnnotationMap.put(annotation.id, modifier);
} else if ("severity_class".equals(annotation.type)) {
Severity attribute = new Severity(jCas);
attribute.setValue(stringSlots.remove("severity_normalization"));
attribute.addToIndexes();
SeverityModifier modifier = new SeverityModifier(jCas, coveringSpan.begin, coveringSpan.end);
modifier.setTypeID(CONST.MODIFIER_TYPE_ID_SEVERITY_CLASS);
modifier.setNormalizedForm(attribute);
modifier.addToIndexes();
idAnnotationMap.put(annotation.id, modifier);