0

我正在使用一个 xml 文件来读取其中包含多个命名空间。我有我正在使用的 XSD 文件。但是有一个错误说

"Error at Data Flow Task [XML Source [1]]: There was an error setting up the mapping. 
 The '{http://www.fpml.org/2005/FpML-4-2}:header' element is not declared.
 (Microsoft Visual Studio)"

但是当我检查 xsd 文件时,它包含了它的定义。

我的文件如下。

 <?xml version="1.0" encoding="UTF-8"?>
 <xs:schema xmlns="http://link"  
            xmlns:ns1="http://link2" 
            xmlns:ns2="http://link"  
            xmlns:xs="http://www.w3.org/2001/XMLSchema"  
            targetNamespace="http://targetnamaspace">

   <xs:import namespace="http://link"  schemaLocation="XmlPositions1.xsd"/>
   <xs:import namespace="http://link2" schemaLocation="XmlPositions2.xsd"/>

我的xml文件如下

 <?xml version="1.0" encoding="utf-8"?>
 <ns0:message xmlns:ns0="http://target" version="4-2"  
              xmlns:ns1="http://link2" 
              xmlns:ns2="http://link"  
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
              xsi:type="ns0:SoaMethodsResult">
      <ns1:header>
         <ns1:messageId messageIdScheme=""></ns1:messageId>
         <ns1:sentBy partyIdScheme="http://reference">SOPHIS</ns1:sentBy>
         <ns1:creationTimestamp>2014-03-21T22:20:40+01:00</ns1:creationTimestamp>

如果您有任何问题,请告诉我。谢谢你的协助!

4

2 回答 2

0

您为命名空间导入架构文档的架构文档部分在哪里http://www.fpml.org/2005/FpML-4-2

如果有这样的部分,它就不起作用(但是因为您没有向我们展示它,所以这里没有人可以告诉您为什么它不起作用)。

如果没有这样的部分,您的问题是您没有导入该名称空间。

于 2014-03-30T16:39:39.977 回答
0

从命名空间和 sendby 部分中的文本 SOPHIS 来看,我猜这是 Sophis Risque(或 Value)fpml。Sophis 提供的 XML 模式是出了名的不完整,这可能是您拒绝的原因。我似乎记得必须稍微“调整”它们才能让它们正常工作。祝你好运

于 2015-02-19T16:27:29.540 回答