When receiving a transaction the node checks the presence of value inconsistencies in the subtangle of the chosen tips.
Now, since a 0-value transaction has no value by definition, once it has been inserted in the Tangle I think it should be considered valid, it doesn't contain anything that can render it invalid or inconsistent with the Tangle.
With this in mind, if for some reason I have to read a 0-value tx in order for my application to work, I can trust this tx even if it isn't confirmed yet.
This isn't a really secure way to use 0-value txs. If you want to use them in your application you should insert some validation-checks into the payload/message fragment, and your application should check it independently from the Tangle confirmation.
What I mean is that I can write on a 0-value tx: "USA President is Jim Carrey" and the system will accept this tx. It is the application duty to check what's inside a tx message, confirmed or not.
I hope I made myself clear :)