Every blog post about database schema should use as its example the most obvious example, a blog. People are pretty familiar with the domain, and it even has many of the same challenges. You probably have a postid field in there somewhere, but lots of blog software also uses url as a natural key. Which is why sometimes the old title appears in the url. Can't change that. Except you can. Some software will do redirects, by creating stub records for old URLs that map to new ones. So that's not an intractable problem. Etc.