A fullname is specified. If the name specified contains a dot,
then it is assumed to be a fullname, and any namespace also specified
is ignored.
It's not completely clear that this also replaces the namespace for nested types,
but that is how the Java avro-tools jar handles it, which I've used as
the reference implementation.
Obviously, it should be preferred to not set both the name field to a
fullname and also the namespace field, but we have done this in some
legacy schemas and can't change them now, since the Schema Registry
validator doens't allow changing the name.
As per the Avro spec:
It's not completely clear that this also replaces the namespace for nested types, but that is how the Java avro-tools jar handles it, which I've used as the reference implementation.
Obviously, it should be preferred to not set both the name field to a fullname and also the namespace field, but we have done this in some legacy schemas and can't change them now, since the Schema Registry validator doens't allow changing the name.