AXI read response in error case

Hi,

In the AXI spec it is mentioned that , even in case of ERROR response, the slave needs to respond with the exact number of beats and indicate the response with each beat.

Now my question here is if the response is going to be ERROR(lets say SLVERR) why does Master or anyone care about the exact number of beats in the response.

For example in a timeout scenario,  the slave should be allowed to send 1 response with RID, RLAST and RRESP= SLVERR and that should be enough to communicate to everyone in the path that particular transaction timeout or ERRORed.

Why is the protocol not made this way? and it is complicated that everyone tracking the timeout needs to remember the exact number of beats to transfer.

regards,

Anupam Jain