Place beef bones and beef shank in a large pot; add cold water, onion, peppercorns, bay leaf, and salt. Bring to a boil; cook, skimming foam from the top, for 30 minutes. Reduce heat and simmer stock for 1 hour.
Stir parsnip, turnip, leek, carrot, and celery into the stock; cook for 1 hour more. Strain stock through a fine-mesh sieve and return to the pot; season with salt and ground black pepper. Cool to room temperature and refrigerate, 8 hours to overnight. Remove the fat from the top of the stock.
Bring stock to a boil; reduce heat to low, cover pot, and simmer.
Heat milk in a small saucepan over medium heat; add butter and cook until butter is melted, about 5 minutes. Gradually stir semolina into milk mixture with a wooden spoon until mixture is smooth. Lightly beat eggs in a bowl and stir into semolina mixture until very smooth; season with salt and nutmeg. Remove from heat and let stand in a cool place for 30 minutes.
Shape semolina mixture into small dumplings using 2 spoons or wet hands. Drop dumplings into the simmering stock and cook until tender, about 15 minutes.