One suggestion you might consider...and this does not apply to the module you are using. But consider using the FuseBlown tag in the NEQ and as the source of the MSG instead of the Fault tag.
For the module you are using though, the suggested logic above is all you need. It works just fine. For that module the fault tag will mirror the fuse tag. Whenever a fuse is blown it turns on the specific FuseBlown tag and that in turn causes the Fault tag to turn on. That module has no other types of faults it can detect.
But there are other modules that can detect different types of faults. These are mainly with what they call "diagnostic" modules (part # ends with a "D" like a 1756-OB16D). They can detect: FuseBlown, NoLoad, OutputVerifyFault, and some can also detect the loss of field power. Each of those fault types trigger their own tags. For example, if a wire comes loose and it doesn't detect a load on output #4 when we turn it on, then the NoLoad.4 tag turns on which would also turn on the Fault.04 tag. We wouldn't want to try to reset the fuse when a NoLoad fault has occurred.
These diagnostic modules are not commonly used as they are expensive. But I have run into them a few times. In those cases, we write different logic to reset the different types of faults.
But again, for your module the logic above works as is.
OG