I have coded my ASP.NET MVC application in a way that allows stored entities to be retrieved via a friendly name in the URL, for example:

> 
> www.mysite.com/artists/james-brown/songs
> 
> 
> 

Where `james-brown` is a URL friendly string stored on my `Artist` entity.

Now imagine I add an artist that no one has heard of before, and no one ever navigated to that artist's songs page.

How would Google/Yahoo/Other Search Engines know that my site does indeed have songs for that unknown artist.

Do I create a sitemap and maintain it through code as I add / remove artists?