I think we need to start considering XML namespaces and TinyXML.  The
crucial fact is that XML does not tag each element and attribute name
explicitly with the namespace it lives in, but rather tags them with
prefixes which stand for the namespaces.  The prefixes are mapped to
namespaces by "xmlns" attributes, which can be nested and scoped.

In simple cases, all elements of a document are in the same namespace.
In that case, producers of documents almost always put an xmlns in the
top node that sets the default namespace for all the elements of the
document.  The result is that the element names are un-prefixed and it's
easy to use TinyXML to process the document.  But unfortunately, TinyXML
doesn't understand prefixes, so if the document uses explicit prefixes,
the prefixes show up on the element names, and the application will
likely fail to work correctly.

Extensions to existing XML schemas are usually done by creating a new
namespace, and defining the extension elements in the new namespace.
This works fine, except that the document now contains elements in
multiple namespaces.  All but one of the namespaces will (usually) have
an explicit prefix, and the prefixes can be chosen freely by the
document writer.

We've now seen our first operational case, the "pub-gruu" element of the
reg event package.  Currently, the consumer code in the RLS will work
successfully only if the extension namespace uses the prefix "gr:".

How should we move forward on this?

Dale


_______________________________________________
sipx-dev mailing list
[email protected]
List Archive: http://list.sipfoundry.org/archive/sipx-dev
Unsubscribe: http://list.sipfoundry.org/mailman/listinfo/sipx-dev

Reply via email to