I just Queue the PID itself. Then when the controller asks I just send whatever the current value is for that PID.
In a limited device, you could use a single BIT to denote the PID. Thus with a single BYTE you could support queueing for up to 8 messages!