When a discriminator is evaluated, that evaluation occurs in a special mode so that you can write this sort of thing:
Outside the context of a discriminator, if ../foo/bar doesn't exist that's a runtime SDE. Fatal.
Inside the context of a discriminator, if that doesn't exist, it's a PE, and the disriminator simply is false. But it's not fatal.
The bug is that Daffodil is always issuing a runtime SDE for this. We need this behavior for discriinators.