@java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 8:
              {
                type_ = input.readEnum();
                bitField0_ |= 0x00000001;
                break;
              } // case 8
            case 18:
              {
                input.readMessage(getItemsFieldBuilder().getBuilder(), extensionRegistry);
                bitField0_ |= 0x00000040;
                break;
              } // case 18
            case 26:
              {
                com.google.protobuf.MapEntry<java.lang.String, com.google.cloud.vertexai.api.Schema>
                    properties__ =
                        input.readMessage(
                            PropertiesDefaultEntryHolder.defaultEntry.getParserForType(),
                            extensionRegistry);
                internalGetMutableProperties()
                    .ensureBuilderMap()
                    .put(properties__.getKey(), properties__.getValue());
                bitField0_ |= 0x00000400;
                break;
              } // case 26
            case 34:
              {
                input.readMessage(getExampleFieldBuilder().getBuilder(), extensionRegistry);
                bitField0_ |= 0x00100000;
                break;
              } // case 34
            case 42:
              {
                java.lang.String s = input.readStringRequireUtf8();
                ensureRequiredIsMutable();
                required_.add(s);
                break;
              } // case 42
            case 48:
              {
                nullable_ = input.readBool();
                bitField0_ |= 0x00000010;
                break;
              } // case 48
            case 58:
              {
                format_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000002;
                break;
              } // case 58
            case 66:
              {
                description_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000008;
                break;
              } // case 66
            case 74:
              {
                java.lang.String s = input.readStringRequireUtf8();
                ensureEnumIsMutable();
                enum_.add(s);
                break;
              } // case 74
            case 90:
              {
                com.google.cloud.vertexai.api.Schema m =
                    input.readMessage(
                        com.google.cloud.vertexai.api.Schema.parser(), extensionRegistry);
                if (anyOfBuilder_ == null) {
                  ensureAnyOfIsMutable();
                  anyOf_.add(m);
                } else {
                  anyOfBuilder_.addMessage(m);
                }
                break;
              } // case 90
            case 112:
              {
                minProperties_ = input.readInt64();
                bitField0_ |= 0x00002000;
                break;
              } // case 112
            case 120:
              {
                maxProperties_ = input.readInt64();
                bitField0_ |= 0x00004000;
                break;
              } // case 120
            case 129:
              {
                minimum_ = input.readDouble();
                bitField0_ |= 0x00008000;
                break;
              } // case 129
            case 137:
              {
                maximum_ = input.readDouble();
                bitField0_ |= 0x00010000;
                break;
              } // case 137
            case 144:
              {
                minLength_ = input.readInt64();
                bitField0_ |= 0x00020000;
                break;
              } // case 144
            case 152:
              {
                maxLength_ = input.readInt64();
                bitField0_ |= 0x00040000;
                break;
              } // case 152
            case 162:
              {
                pattern_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00080000;
                break;
              } // case 162
            case 168:
              {
                minItems_ = input.readInt64();
                bitField0_ |= 0x00000080;
                break;
              } // case 168
            case 176:
              {
                maxItems_ = input.readInt64();
                bitField0_ |= 0x00000100;
                break;
              } // case 176
            case 186:
              {
                input.readMessage(getDefaultFieldBuilder().getBuilder(), extensionRegistry);
                bitField0_ |= 0x00000020;
                break;
              } // case 186
            case 194:
              {
                title_ = input.readStringRequireUtf8();
                bitField0_ |= 0x00000004;
                break;
              } // case 194
            case 202:
              {
                java.lang.String s = input.readStringRequireUtf8();
                ensurePropertyOrderingIsMutable();
                propertyOrdering_.add(s);
                break;
              } // case 202
            default:
              {
                if (!super.parseUnknownField(input, extensionRegistry, tag)) {
                  done = true; // was an endgroup tag
                }
                break;
              } // default:
          } // switch (tag)
        } // while (!done)
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.unwrapIOException();
      } finally {
        onChanged();
      } // finally
      return this;
    }
<pre>
Schema is used to define the format of input/output data. Represents a select
subset of an [OpenAPI 3.0 schema
object](https://spec.openapis.org/oas/v3.0.3#schema-object). More fields may
be added in the future as needed.
</pre>

Protobuf type {@code google.cloud.vertexai.v1.Schema}
java-vertexai/proto-google-cloud-vertexai-v1/src/main/java/com/google/cloud/vertexai/api/Schema.java