Both 日本 and 料理{りょうり} are nouns but why aren't they concatenated with の? I think it should be written as 日本の料理 rather than 日本料理.
-
1You are totally right on that. I was also wondering why we say 日本人 and not 日本の人 – oldergod Aug 19 '15 at 8:46
-
3Related: japanese.stackexchange.com/a/21166/5010 – naruto Aug 19 '15 at 12:25
I think the difference is somehow similar to that between ice cream and iced cream, or popcorn and popped corn.
When you combine two nouns directly, it becomes one fixed idea. 日本料理 is the name of traditionally recognized Japanese local cuisine, in the same way French cuisine, Chinese cuisine or Turkish cuisine are. It includes sushi, soba, tempura etc.
日本の料理 is simply "cooking in/from/of/etc. Japan". It could tell similar notion to 日本料理, but also could just mean "meal you ate in Japan".
Noun+noun compound words like 日本料理 are quite common in Japanese and do not require の to concatenate.