>In namespace section, it looks like this:
What do you mean by "namespace section"? Namespace declarations affect the element they are declared on and the children of that element. If the element or attribute which attempted to use the rs: prefix wasn't within that scope, the parser was entirely correct in complaining about an undefined prefix. Also remember that if you use a prefix in your stylesheet, you must declare the prefix in the stylesheet, following the same scoping rule. Generally, prefixes are defined on the <xsl:stylesheet> element, as the simplest way of making sure they're available throughout the stylesheet... so try <xsl:stylesheet version="1.0" xmlns:xsl ="http://www.w3.org/1999/XSL/Transform" xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882' xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882' xmlns:rs='urn:schemas-microsoft-com:rowset' xmlns:z='#RowsetSchema'> Note that http://www.w3.org/TR/xsl is *NOT* correct, and will not work. Note too that your last namespace declaration is using a relative URI reference as a namespace name. The W3C has not reached agreement on what, if anything, that should mean and has officially said that this is Not Supported. Programs may reject it completely as ill-formed, may try to interpret it as a literal string, or may attempt to interpret it in terms of a base URI. Until and unless the W3C decides otherwise, I _VERY_ strongly suggest that you stick with fully-qualified absolute URIs as your namespace names.
