Which way is correct? Is there any rule for such cases?
[Making this into a new answer, following comments on Jimi Oke’s.]
In summary: both forms are widely used. More authoritative sources (e.g. governments and newspapers) tend to favour the adjectival form, eg “Canadian visa”, but the web at large seems to favour the noun form, eg “Canada visa”.
Mr. Mengele […] may have sought a Canadian visa from Buenos Aires under a pseudonym in 1962. —New York Times
Very detailed background follows below, since this partially contradicts the currently accepted answer.
I haven’t managed to find any style guide or dictionary that gives a pronouncement on this question; so the best authority I can suggest is usage — especially the usage of English-speaking governments and embassies. So, I did site-specific google searches of US, Canadian and UK government sites (under the domains
gov.uk respectively), and within each of these domains, compared the hits for the phrases
"Canadian visa"; and similarly with France/French, Japan[ese], Brazil[ian], Russia[n], and Israel[i]. (I should add, I didn’t cherry-pick these examples; they’re the first ones I tried.)
The raw results have to be taken with a slight pinch of salt, for several reasons. Firstly, many hits aren’t really examples of the phrase in question: e.g. Japanese visa regulations and Travel in France: visa information are both erroneous. Secondly, in some cases a single piece of boilerplate text has been re-used across multiple pages, skewing the hits like in this example (
site:gc.ca "israeli visa").
However, the results pretty conclusively favour the adjective form. On raw hits, it wins in almost every case (the exception was
site:state.gov "france visa"); with confounding hits removed, the adjective form was more common in every case.
On the other hand, googling more generally gives gives the opposite slant. Using the same phrases/countries as before (eg
"France visa" vs.
"French visa"), the noun form was in every case more common — generally about twice as common. Of course, now there were far too many hits to comb through and discount erroneous ones, so that ‘twice’ should be taken with a pinch of salt, but it seems fair to say that in general usage, the noun form is probably more common, and is certainly acceptable.
In particular, third-party sites giving visa information for multiple countries seem to strongly favour the noun form; for instance, VisaHQ uses it consistently. (Among other reasons, I’d imagine this simplifies their searching/sorting.)
Edit: Some slightly more carefully-controlled and authoritative sources seem again to favour the adjectival form. In the Corpus of Contemporary American English,
visa give 1, 4, and 1 hits respectively, while their noun forms give 0 hits. (France, Japan and Brazil get no hits for either form.) The OED quotations for visa include one mention of Russian visa, and no other examples of either form.
To my ear, Taiwanese visa sounds correct. It could be that this is incorrect according to some rule that got written down at some point but language is determined by its users and not grammarians. The fact that this "incorrect" usage has become so widespread is probably an indication that it's correct after all.
At any rate, it makes perfect sense. Visa is a noun. I see no reason to form a compound noun instead of using an adjective to describe its point of origin. Would one say "Taiwan tea" or Taiwanese tea? Why should visa be different?
Alternative: visa for Taiwan sounds just fine to my native English-speaker ears and removes any ambiguity.