Ошибка при настройке сопоставления в источнике xml
Я использую 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>
Пожалуйста, дайте мне знать, если у вас есть какие-либо вопросы. Спасибо за помощь мне!
2 ответа
Где находится часть ваших документов схемы, куда вы импортируете документ схемы для пространства имен http://www.fpml.org/2005/FpML-4-2
?
Если есть такая часть, она не работает (но поскольку вы не показываете ее нам, никто здесь не может сказать вам, почему она не работает).
Если такой части нет, ваша проблема в том, что вы не импортируете это пространство имен.
Судя по пространству имен и тексту SOPHIS в разделе sentby, я бы предположил, что это - Sophis Risque (или Value) fpml. Sophis предоставляет XML-схемы, как известно, неоднозначные, и это может стать причиной вашего отказа. Кажется, я помню, что мне пришлось немного "настроить" их, чтобы они работали правильно. Удачи