code: def to_match(self):
          
          self.validate()
  
          mark_name, field_name = self.fold_scope_location.get_location_name()
          validate_safe_string(mark_name)
  
          template = u'$%(mark_name)s.%(field_name)s'
          template_data = {
              'mark_name': mark_name,
          }
  
          if field_name == COUNT_META_FIELD_NAME:
              template_data['field_name'] = 'size()'
          else:
              inner_type = strip_non_null_from_type(self.field_type.of_type)
              if GraphQLDate.is_same_type(inner_type):
                  # Known OrientDB bug may cause trouble here, and incorrect data may be returned:
                  # https://github.com/orientechnologies/orientdb/issues/7289
                  template += '.format("' + STANDARD_DATE_FORMAT + '")'
              elif GraphQLDateTime.is_same_type(inner_type):
                  # Known OrientDB bug may cause trouble here, and incorrect data may be returned:
                  # https://github.com/orientechnologies/orientdb/issues/7289
                  template += '.format("' + STANDARD_DATETIME_FORMAT + '")'
  
              template_data['field_name'] = field_name
  
          return template % template_data
docs: Return a unicode object with the MATCH representation of this expression.