Program: 190027
Project: 190027
Buggy source:
private void writeAttributes(XMLStreamWriter xmlWriter,AttributeColumn[] cols,String mode,String attClass) throws Exception {
  xmlWriter.writeStartElement(ATTRIBUTES);
  xmlWriter.writeAttribute(ATTRIBUTES_CLASS,attClass);
  xmlWriter.writeAttribute(ATTRIBUTES_MODE,mode);
  for (  AttributeColumn col : cols) {
    if (!col.getOrigin().equals(AttributeOrigin.PROPERTY) || (exportDynamic && col.getOrigin().equals(AttributeOrigin.PROPERTY) && col.getIndex() == PropertiesColumn.EDGE_WEIGHT.getIndex())) {
      xmlWriter.writeStartElement(ATTRIBUTE);
      xmlWriter.writeAttribute(ATTRIBUTE_ID,col.getId());
      xmlWriter.writeAttribute(ATTRIBUTE_TITLE,col.getTitle());
      if (col.getType().equals(AttributeType.INT)) {
        xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
      }
 else       if (col.getType().isListType()) {
        if (col.getType().equals(AttributeType.LIST_INTEGER)) {
          xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
        }
 else         if (col.getType().equals(AttributeType.LIST_CHARACTER)) {
          xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
        }
 else {
          xmlWriter.writeAttribute(ATTRIBUTE_TYPE,col.getType().getTypeString().toLowerCase().replace("String_Node_Str","String_Node_Str"));
        }
      }
 else       if (col.getType().isDynamicType()) {
        AttributeType staticType=TypeConvertor.getStaticType(col.getType());
        if (staticType.equals(AttributeType.INT)) {
          xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
        }
 else {
          xmlWriter.writeAttribute(ATTRIBUTE_TYPE,staticType.getTypeString().toLowerCase());
        }
      }
 else {
        xmlWriter.writeAttribute(ATTRIBUTE_TYPE,col.getType().getTypeString().toLowerCase());
      }
      if (col.getDefaultValue() != null) {
        xmlWriter.writeStartElement(ATTRIBUTE_DEFAULT);
        xmlWriter.writeCharacters(col.getDefaultValue().toString());
        xmlWriter.writeEndElement();
      }
      xmlWriter.writeEndElement();
    }
  }
  xmlWriter.writeEndElement();
}

Fixed version (ground truth):
private void writeAttributes(XMLStreamWriter xmlWriter,AttributeColumn[] cols,String mode,String attClass) throws Exception {
  if (exportAttributes) {
    xmlWriter.writeStartElement(ATTRIBUTES);
    xmlWriter.writeAttribute(ATTRIBUTES_CLASS,attClass);
    xmlWriter.writeAttribute(ATTRIBUTES_MODE,mode);
    for (    AttributeColumn col : cols) {
      if (!col.getOrigin().equals(AttributeOrigin.PROPERTY) || (exportDynamic && col.getOrigin().equals(AttributeOrigin.PROPERTY) && col.getIndex() == PropertiesColumn.EDGE_WEIGHT.getIndex())) {
        xmlWriter.writeStartElement(ATTRIBUTE);
        xmlWriter.writeAttribute(ATTRIBUTE_ID,col.getId());
        xmlWriter.writeAttribute(ATTRIBUTE_TITLE,col.getTitle());
        if (col.getType().equals(AttributeType.INT)) {
          xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
        }
 else         if (col.getType().isListType()) {
          if (col.getType().equals(AttributeType.LIST_INTEGER)) {
            xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
          }
 else           if (col.getType().equals(AttributeType.LIST_CHARACTER)) {
            xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
          }
 else {
            xmlWriter.writeAttribute(ATTRIBUTE_TYPE,col.getType().getTypeString().toLowerCase().replace("String_Node_Str","String_Node_Str"));
          }
        }
 else         if (col.getType().isDynamicType()) {
          AttributeType staticType=TypeConvertor.getStaticType(col.getType());
          if (staticType.equals(AttributeType.INT)) {
            xmlWriter.writeAttribute(ATTRIBUTE_TYPE,"String_Node_Str");
          }
 else {
            xmlWriter.writeAttribute(ATTRIBUTE_TYPE,staticType.getTypeString().toLowerCase());
          }
        }
 else {
          xmlWriter.writeAttribute(ATTRIBUTE_TYPE,col.getType().getTypeString().toLowerCase());
        }
        if (col.getDefaultValue() != null) {
          xmlWriter.writeStartElement(ATTRIBUTE_DEFAULT);
          xmlWriter.writeCharacters(col.getDefaultValue().toString());
          xmlWriter.writeEndElement();
        }
        xmlWriter.writeEndElement();
      }
    }
    xmlWriter.writeEndElement();
  }
}