code: def copy_keywords(self, shapefile_path):
          
          source_xml_path = resources_path('petabencana', 'flood-keywords.xml')
          output_xml_path = shapefile_path.replace('shp', 'xml')
          LOGGER.info('Copying xml to: %s' % output_xml_path)
  
          title_token = '[TITLE]'
          new_title = self.tr('Jakarta Floods - %s' % self.time_stamp)
  
          date_token = '[DATE]'
          new_date = self.time_stamp
          with open(source_xml_path) as source_file, \
                  open(output_xml_path, 'w') as output_file:
              for line in source_file:
                  line = line.replace(date_token, new_date)
                  line = line.replace(title_token, new_title)
                  output_file.write(line)
docs: Copy keywords from the OSM resource directory to the output path.
  
          .. versionadded: 3.3
  
          In addition to copying the template, tokens within the template will
          be replaced with new values for the date token and title token.
  
          :param shapefile_path: Path to the shapefile that will have the flooded
              field added.
          :type shapefile_path: basestring