Reading the documentation at the weblink provided gives me this instruction:
CFBundleURLName
A string containing the abstract name of the URL scheme. To ensure uniqueness, it is recommended that you specify a reverse-DNS style of identifier, for example, com.acme.myscheme.
The string you specify is also used as a key in your app’s InfoPlist.strings file. The value of the key is the human-readable scheme name.
So, we are using the app identifier as the scheme so that our application is launched, rather than some other application.
Why is the link rejected in the validator?
It seems the validator and the Twitter Card app:url property needs to accept app identifier based URL schemes, as in:
Ron