def updateAnnotation (self, ch, annid, field, value):
    """Update a RAMON object by identifier"""

    cursor = self.getCursor()
    try:
      anno = self.getAnnotation(ch, annid)
      if anno is None:
        logger.warning("No annotation found at identifier = {}".format(annid))
        raise OCPCAError ("No annotation found at identifier = {}".format(annid))
      anno.setField(field, value)
      anno.update(ch, cursor)
    except:
      self.closeCursor(cursor) 
      raise
    self.closeCursorCommit(cursor)
dataset/ETHPy150Open neurodata/ndstore/ocpca/ocpcadb.py/OCPCADB.updateAnnotation/original