public Schema addToSchema(Schema schema) {
    validate(schema);
    schema.addProp(LOGICAL_TYPE_PROP, name);
    schema.setLogicalType(this);
    return schema;
  }
@Test
  void uuidExtendsString() {
    Schema uuidSchema = LogicalTypes.uuid().addToSchema(Schema.create(Schema.Type.STRING));
    assertEquals(LogicalTypes.uuid(), uuidSchema.getLogicalType());

    assertThrows("UUID requires a string", IllegalArgumentException.class,
        "Uuid can only be used with an underlying string or fixed type",
        () -> LogicalTypes.uuid().addToSchema(Schema.create(Schema.Type.INT)));
  }