これらのルールは、Avroスキーマのためのものです。
この関数に渡される2つの値は、有効なAvroスキーマでなければなりません。
SchemaEqual関数はSchemaMatchよりも厳密なルール セットを適用します。スキーマが同等であると判定されるには、以下のうち1つが当てはまる必要があります。
- どちらのスキーマも、項目型が等価の配列である(プリミティブ型でない場合は再帰的に決定される)。
- どちらのスキーマも、値型が等価のマップである(プリミティブ型でない場合は再帰的に決定される)。
- どちらのスキーマも、名前またはシンボルが一致している列挙型である。
- どちらのスキーマも、サイズと名前が固定されており、それらが一致している。
- 両方のスキーマが同じ名前を持つレコードである。
両方のレコードのフィールドが同じ順序で宣言され、同じ名前と同じデータ型(プリミティブ型ではない場合は再帰的に決定される)を持つ必要があります。
- どちらのスキーマも、取りうるスキーマ型が等価のUNIONである(プリミティブ型でない場合は再帰的に決定される)。
- 両方のスキーマが同じプリミティブ型を持っている。
スキーマの"doc"フィールドは、スキーマの等価性評価の目的のために無視されます。