SOA record serves a purpose regardless. While the
SOA record is not typically queried directly by regular clients it is returned in negative responses!
If you were to analyze your nameserver's responses rather than the incoming queries I think you would see the
SOA record a lot more.
However, some of the fields of the
SOA record are no longer relevant if the zone transfer method that is part of the DNS spec is not used.
If we take a look of the fields of the
MNAME: name of master nameserver. Used in the context of dynamic updates as well as in some cases as part of the zone transfer implementation.
RNAME: technical contact email. Not really used by the system itself but rather informational.
SERIAL: zone serial number, used for zone transfers.
REFRESH: refresh interval, used for zone transfers.
RETRY: retry interval, used for zone transfers.
EXPIRE: expire interval, used for zone transfers.
MINIMUM: used to be the minimum TTL but is nowadays used as TTL for negative responses.
So we can see that
MINIMUM are not specific to the zone transfer spec.
Out of this, I would say that the way negative responses work in DNS and the
MINIMUM field in particular is the main reason why a
SOA record is necessary regardless of how zone synchronization is implemented.
Because of this, you simply can't implement a properly working authoritative nameserver without having
SOA record in each zone.