In other words, a UniformResourceName would identify a resource by a "name" tied to that resource no matter where it was located in the network space of the internet. For instance, the name "Ottawa, Ontario, Canada weather" would map to UniformResourceLocator http://www.ec.gc.ca/weather/yow.html. But, if Environment Canada changed their domain, it would map to, say, http://www.environmentcanada.ca/weather/ottawa.html. However, users who always referred to the resource as "Ottawa, Ontario, Canada weather" would notice no difference.
A URN is like the identity of a resource. A URL is where the resource happens to be. Sure, in the RealWorld, you can uniquely identify people by their physical location (thanks to the PauliExclusionPrinciple?), but people tend to change their location quite frequently. However, I'm always going to be SunirShah and you're always going to be you.
The actual syntax for a URN look something like
Which might end up as
but I doubt it. It's still up in the air.
UniformResourceNames are a subset of UniformResourceIdentifiers. Contrast UniformResourceLocator.
Note that the intersection of the set of URNs and the set of URLs is non-empty. (some URNs can be URLs and vice versa)