Gold has real-world functional use. It has practical value that can basically ensure it will never ever lose complete valuation.
However, you are right in that most of it's valuation doesn't come from its practical value, but rather from the fact that it's a shiny rock. On the other hand, Bitcoin's value is 100% due it's practical features.