def as_json_partial(options = {})
      options ||= {}
      if options[:properties] && !all_json_properties.member?(options[:properties])
        fail ArgumentError.new("Unknown properties option: #{options[:properties]}")
      end
      # partial, unmaterialized JSON
      keys, partial_json = self.class.materialize_json({
        properties: :short, is_top_level_json: true, version: Mongoid::CachedJson.config.default_version
      }.merge(options), object: self)
      [keys, partial_json]
    end
def as_json_partial(options = {})
      options ||= {}
      if options[:properties] && !all_json_properties.member?(options[:properties])
        fail ArgumentError.new("Unknown properties option: #{options[:properties]}")
      end
      # partial, unmaterialized JSON
      keys, partial_json = self.class.materialize_json({
        properties: :short, is_top_level_json: true, version: Mongoid::CachedJson.config.default_version
      }.merge(options), object: self)
      [keys, partial_json]
    end
Return a partial JSON without resolved references and all the keys.