MarshalJSON returns a JSON encoding of schema containing only selected fields. A field is selected if:

* it has a non-empty value, or
  * its field name is present in forceSendFields, and
  * it is not a nil pointer or nil interface.

The JSON key for each selected field is taken from the field's json: struct tag.