Search code examples
xmlpython-2.7rdf

Is there a xml namespace convention?


Sorry for raising another question in stack overflow.
Is there any restrictions for xml namespace?

I am using python2 rdflib to manually create a xml file. It turns out http://domain.xxx/subdirectory/ and http://domain.xxx/subdirectory/xxx# could be a namespace in xml. However, http://domain.xxx/subdirectory/xxx_ is not valid. It automatically translated to namespace: http://domain.xxx/subdirectory/

Is rdflib has restriction on handle the namespace or namespace like http://domain.xxx/subdirectory/xxx_ is not a valid one. Thanks!


Solution

  • The original XML document definition from 1999 states

    The attribute's value, a URI reference, is the namespace name identifying the namespace. The namespace name, to serve its intended purpose, should have the characteristics of uniqueness and persistence. It is not a goal that it be directly usable for retrieval of a schema (if any exists).

    It should suffice for the namespace (not the prefix) to be an unique string, but in this case you will usually get a warning like

    namespace warning : xmlns: URI ... is not absolute

    By convention, it should be a