Yeah, that always bugged me about Holmes. He specifically restricted his fields of knowledge to things that could help him solve cases - so how did he know this in advance? He had encyclopedic knowledge of the muds of England, for example, but Watson was shocked to find he had never heard of the Copernican system of cosmology. So it's damn fortunate he was never engaged to investigate anything involving an astronomer, right?