Well.. these classes have different uses, I don't think there's really a single naming convention that would work for all of them. I called it ValueTree::invalid because you can't actually do anything with an unnamed ValueTree, so it's more for use as an error case rather than being a useful object. Likewise, Identifier::null isn't an empty string, it's actually an invalid value, so if anything it could be renamed Identifier::invalid. Calling it Identifier::empty would give the wrong sense of its purpose IMHO.
TBH there are potential problems with static initialisation of all these things - if you use any of them inside code that's called directly or indirectly from a static initialiser, then you run the risk that the compiler won't have created it yet. For that reason (as well as avoiding worrying about their names!) I no longer use them in my code, but always use ValueTree(), Identifier() etc. instead.
...and although I've not tested this, I have a hunch that if you're returning e.g. a null ValueTree from a function, then "return ValueTreee();" is probably going to be optimised better by the compiler than "return ValueTree::invalid;" would be.