Cauterize creates a structural hash of all meaningful schema information. This can be used to detect, at runtime, whether two communicating partners are running the same version of the protocol or if they have drifted from eachother. This approach does not rely on a developer remembering to update a string version.
Below are two schemas that have identical lengths, names, and fields. The only
difference is the order in which the fields x
and y
occur.