When I originally wrote most of the XUL tutorial, I really didn't understand RDF that well. Now I do. At the time, I used URIs in my example RDF that were of the form 'urn:something:thing', since that is the form that some of resources in Mozilla used. That was actually a bad idea. Specifically, you're not supposed to make up the parts of a 'urn', except for the last part. The word between the two colons ('something' in 'urn:something:thing') is supposed to be one of a specific set of values as defined in RFC 3406.

Secondly, 'urn:animals:root' for instance, is very generic. Much too generic for a resource URI, since it should be globally unique. Better would be to include the domain of the person or entity that created the resource, which is what is usually done. I myself might use 'http://www.xulplanet.com/rdf/' as the base of all URIs. So, I have searched through the tutorial and have changed all 'urn' references to 'http://www.xulplanet.com/rdf/' including those in the animals example.

I originally wasn't going to change them, as I figured they were just examples. But, of course, after four years of questions and confused people, I realize that very few people using XUL, RDF and templates, even seem to take time to understand RDF very well.

I've noticed that many people are using 'urn' resources such as 'urn:music:item1', which are not good resource URIs. So hopefully, by changing the tutorial, I can discourage that usage.