Xml &引用;对命名空间前缀的未声明引用";错误

Xml &引用;对命名空间前缀的未声明引用";错误,xml,asp-classic,vbscript,Xml,Asp Classic,Vbscript,我使用xml为我的网站获取标签 从数据库文件生成的xml如下所示 <xml 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'> <s:Schema id='RowsetSchema'&g

我使用xml为我的网站获取标签

从数据库文件生成的xml如下所示

<xml 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'>
<s:Schema id='RowsetSchema'>
<s:ElementType name='row' content='eltOnly' rs:updatable='true'>
    <s:AttributeType name='LABEL_KEY' rs:number='1' rs:nullable='true'>
        <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='1000'/>
    </s:AttributeType>
    <s:AttributeType name='Label_LNG' rs:number='2' rs:writeunknown='true' rs:basecatalog='1500_GoldenFlour' rs:basetable='t_Label_SITE_PER_LNG'
         rs:basecolumn='Label_LNG'>
        <s:datatype dt:type='string' dt:maxLength='4000' rs:maybenull='false'/>
    </s:AttributeType>
    <s:AttributeType name='Label_ID' rs:number='3' rs:basecatalog='1500_GoldenFlour' rs:basetable='t_Label_SITE'
         rs:basecolumn='Label_ID' rs:keycolumn='true' rs:hidden='true' rs:autoincrement='true'>
        <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10' rs:fixedlength='true' rs:maybenull='false'/>
    </s:AttributeType>
    <s:AttributeType name='c3' rs:name='Label_ID' rs:number='4' rs:writeunknown='true' rs:basecatalog='1500_GoldenFlour'
         rs:basetable='t_Label_SITE_PER_LNG' rs:basecolumn='Label_ID' rs:keycolumn='true' rs:hidden='true'>
        <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10' rs:fixedlength='true' rs:maybenull='false'/>
    </s:AttributeType>
    <s:AttributeType name='Language_ID' rs:number='5' rs:writeunknown='true' rs:basecatalog='1500_GoldenFlour'
         rs:basetable='t_Label_SITE_PER_LNG' rs:basecolumn='Language_ID' rs:keycolumn='true' rs:hidden='true'>
        <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10' rs:fixedlength='true' rs:maybenull='false'/>
    </s:AttributeType>
    <s:extends type='rs:rowbase'/>
</s:ElementType>
</s:Schema>
<rs:data>
    <z:row LABEL_KEY='_home' Label_LNG='Home' Label_ID='1' c3='1' Language_ID='1'/>
<z:row LABEL_KEY='_members_area' Label_LNG='Members Area' Label_ID='2' c3='2' Language_ID='1'/>
<z:row LABEL_KEY='_logout_members_area' Label_LNG='Logout Members Area' Label_ID='3' c3='3' Language_ID='1'/>
<z:row LABEL_KEY='_site_map' Label_LNG='Site Map' Label_ID='4' c3='4' Language_ID='1'/>
</rs:data>
</xml>

我的职能是

公共函数获取项(临时键)
设置XMLL=Server.CreateObject(“MSXML2.DOMDocument.4.0”)
XMLL.Async=False
Load(Server.MapPath(替换(应用程序(“根”),“/”,“\”&“系统\db\dict\SITE\u xml”&临时LNG\u ID&“.xml”))
Get_Item=xmll.selectSingleNode(“xml/rs:data/z:row[@LABEL_KEY='”&lcase(Temp_L_KEY)&“']”)。属性(1)。值
如果错误号为0,则
获取项目=临时密钥
如果结束
端函数
我得到了那个错误

msxml4.dll错误“80004005”

对未声明的命名空间前缀的引用:“rs”


您尚未为MSXml声明任何名称空间

您可以在加载文档后和选择之前添加以下内容:

XMLL.setProperty("SelectionNamespaces", "xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882' xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882' xmlns:rs='urn:schemas-microsoft-com:rowset'");

有关更多详细信息,请参阅文章。

您尚未为MSXml声明任何名称空间

您可以在加载文档后和选择之前添加以下内容:

XMLL.setProperty("SelectionNamespaces", "xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882' xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882' xmlns:rs='urn:schemas-microsoft-com:rowset'");

有关更多详细信息,请参阅文章。

我不太了解MSXML,但您确定它会自动解析名称空间前缀吗?我不太了解MSXML,但您确定它会自动解析名称空间前缀吗?太好了,现在我得到Microsoft VBScript运行时错误“800a01a8”所需对象:“XMLL.selectSingleNode(…)“@eyalb-猜测Xpath查询未返回任何结果,或者您正在访问不存在的属性。很好,现在我得到Microsoft VBScript运行时错误“800a01a8”所需的对象:'XMLL.selectSingleNode(…)”@eyalb-猜测Xpath查询未返回任何结果,或者您正在访问不存在的属性。