A herding dog, also known as a stock dog or working dog, is a type of dog that either has been trained in herding livestock or belongs to one of the breeds that were developed for herding. A dog specifically trained to herd sheep is known as a sheep dog or shepherd dog, and one trained to herd cattle is known as a cattle dog or cow dog.