code: def add(self):
          
          log = getLogger('ocrd.workspace_backup.add')
          mets_str = self.workspace.mets.to_xml()
          chksum = _chksum(mets_str)
          backups = self.list()
          if backups and backups[0].chksum == chksum:
              log.info('No changes since last backup: %s' % backups[0])
          else:
              timestamp = datetime.now().timestamp()
              d = join(self.backup_directory, '%s.%s' % (chksum, timestamp))
              mets_file = join(d, 'mets.xml')
              log.info("Backing up to %s" % mets_file)
              makedirs(d)
              with open(mets_file, 'wb') as f:
                  f.write(mets_str)
          return chksum
docs: Create a backup in <self.backup_directory>