"未申报参考命名空间preFIX"错误 [英] "undeclared reference to namespace prefix " error

查看:524
本文介绍了"未申报参考命名空间preFIX"错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我用XML来获取标签为我的网站。

从数据库文件看起来像这样生成的XML

 < XML的xmlns:S ='UUID:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882
的xmlns:DT ='UUID:C2F41010-65B3-11d1-A29F-00AA00C14882
的xmlns:RS =瓮:架构 - 微软COM:行集
的xmlns:Z ='#RowsetSchema'>
< S:模式ID ='RowsetSchema'>
< S:的ElementType名='行'的内容='eltOnly'RS:可更新='真'>
    < S:属性类型名称='LABEL_KEY'RS:数='1'RS:可为空=真>
        < S:数据类型DT:类型=字符串RS:DBTYPE ='海峡'DT:最大长度='1000'/>
    < / S:属性类型>
    < S:属性类型名称='Label_LNG'RS:数='2'RS:writeunknown ='真正的'RS:basecatalog ='1500_GoldenFlour'RS:basetable ='t_Label_SITE_PER_LNG
         RS:basecolumn ='Label_LNG'>
        < S:数据类型DT:类型=字符串dt的:最大长度='4000'RS:MAYBENULL ='假'/>
    < / S:属性类型>
    < S:属性类型名称='Label_ID'RS:数='3'RS:basecatalog ='1500_GoldenFlour'RS:basetable ='t_Label_SITE
         RS:basecolumn ='Label_ID'RS:keycolumn ='真正的'RS:隐藏=真RS:自动增量='真'>
        < S:数据类型DT:类型='诠释'DT:最大长度='4'RS:precision = '10'RS:定长='真正的'RS:MAYBENULL ='假'/>
    < / S:属性类型>
    < S:属性类型名称='C3'RS:名称='Label_ID'RS:数='4'RS:writeunknown ='真正的'RS:basecatalog ='1500_GoldenFlour
         RS:basetable ='t_Label_SITE_PER_LNG'RS:basecolumn ='Label_ID'RS:keycolumn ='真正的'RS:隐藏=真>
        < S:数据类型DT:类型='诠释'DT:最大长度='4'RS:precision = '10'RS:定长='真正的'RS:MAYBENULL ='假'/>
    < / S:属性类型>
    < S:属性类型名称='LANGUAGE_ID'RS:数='5'RS:writeunknown ='真正的'RS:basecatalog ='1500_GoldenFlour
         RS:basetable ='t_Label_SITE_PER_LNG'RS:basecolumn ='LANGUAGE_ID'RS:keycolumn ='真正的'RS:隐藏=真>
        < S:数据类型DT:类型='诠释'DT:最大长度='4'RS:precision = '10'RS:定长='真正的'RS:MAYBENULL ='假'/>
    < / S:属性类型>
    < S:扩展类型= RS:rowbase/>
< / S的ElementType>
< / S架构>
< RS:数据>
    < Z:排LABEL_KEY ='_家Label_LNG ='家'Label_ID ='1'C3 ='1'LANGUAGE_ID =1/>
< Z:排LABEL_KEY ='_ members_area'Label_LNG =会员区Label_ID ='2'C3 ='2'LANGUAGE_ID =1/>
&所述; Z:行LABEL_KEY =_ logout_members_area'Label_LNG ='注销会员区'Label_ID ='3'C3 ='3'LANGUAGE_ID ='1'/>
< Z:排LABEL_KEY ='_ site_map'Label_LNG =网站地图Label_ID =4C3 =4LANGUAGE_ID =1/>
< / RS:数据>
< / XML>

我的功能

公共功能Get_Item(Temp_L_KEY)
        设置XMLL =的Server.CreateObject(MSXML2.DOMDocument.4.0)
        XMLL.Async = FALSE
        XMLL.Load(使用Server.Mappath(更换(应用程序(根),/,\\)及系统\\ DB \\字典\\ SITE_xml_&放大器; Temp_LNG_ID&安培;名为.xml))
        Get_Item = xmll.selectSingleNode。(XML / RS:数据/ Z:行[@ LABEL_KEY ='&放大器; LCASE(Temp_L_KEY)及'])的属性(1).value的
            如果Err.Number的&所述;大于0则
                Get_Item = Temp_L_KEY
            万一
    结束功能

和我得到这个错误


  

msxml4.dll的错误80004005


  
  

引用了未声明的命名空间preFIX:RS



解决方案

您还没有宣布任何命名空间的MSXML。

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

  XMLL.setProperty(SelectionNamespaces,的xmlns:S ='UUID:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'的xmlns:DT ='UUID:C2F41010-65B3-11d1 -A29F-00AA00C14882'的xmlns:RS =瓮:架构 - 微软COM:行集');

请参阅文章的更多细节。

I use xml to get label for my website.

the xml generated from database file look like this

<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>

my function is

    Public Function Get_Item(Temp_L_KEY)
        Set XMLL = Server.CreateObject("MSXML2.DOMDocument.4.0") 
        XMLL.Async = False
        XMLL.Load (Server.MapPath(Replace(application("root"),"/","\") & "system\db\dict\SITE_xml_" & Temp_LNG_ID & ".xml"))
        Get_Item=xmll.selectSingleNode("xml/rs:data/z:row[@LABEL_KEY='" & lcase(Temp_L_KEY) & "']").attributes(1).value
            if err.number <>0 then
                Get_Item=Temp_L_KEY
            end if
    End Function

and i get that error

msxml4.dll error '80004005'

Reference to undeclared namespace prefix: 'rs'.

解决方案

You have not declared any namespaces for MSXml.

You can add the following after loading the document and before selection:

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'");

See this article for more details.

这篇关于&QUOT;未申报参考命名空间preFIX&QUOT;错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆