Max interfaces in the specification

I came across this in libuavcan:

/**
 * This limit is defined by the specification.
 */
enum { MaxCanIfaces = 3 };

Which I’ve seen before but I’ve forgotten what in the v0 specification governed this. Does anybody remember? @pavel.kirienko?

The only place where the limit is used in the entire specification (assuming that the standard DSDL defs are part of it) is this: