2009-12-03 3 views
0

Я пытаюсь импортировать правильную схему (для xmlspy и кислорода) с XMLMapper в delphi, и у меня есть эта ошибкаИмпорт схемы с XMLmapper в Delphi?

«Ошибка потока, если: InfofileType unknown».

Я использую пространство имен, и этот тип определяется в другом файле.

Есть ли способ решить эту проблему?

(Я также попробовать с Delphi 2010 демо, и это все еще не работает)

<?xml version="1.0" encoding="UTF-8" ?> 
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:if="http://www.gtest.fr/Apps/InfoFile" xmlns:ca="http://www.gtest.fr/Apps/CommandAnswer" elementFormDefault="qualified" attributeFormDefault="unqualified"> 
    <xs:import namespace="http://www.gtest.fr/Apps/InfoFile" schemaLocation="InfoFile.xsd" /> 
    <xs:import namespace="http://www.gtest.fr/Apps/CommandAnswer" schemaLocation="CommandAnswer.xsd" /> 
- <xs:element name="ServerAnswer"> 
- <xs:annotation> 
    <xs:documentation>Reponse serveur socket</xs:documentation> 
    </xs:annotation> 
- <xs:complexType> 
- <xs:sequence> 
    <xs:element name="InfoFile" type="if:InfoFileType" /> 
    <xs:element name="Command" type="ca:CommandAnswerType" /> 
    </xs:sequence> 
    </xs:complexType> 
    </xs:element> 
    </xs:schema> 

сообщили в КК: http://qc.embarcadero.com/wc/qcmain.aspx?d=80124

+1

«(Я не использую Delphi 2010)« Итак, какая версия ** делает ** вы используете? –

+0

Он делает то же самое с Delphi 2010 –

+0

Ist XSD-файл InfoFile.xsd есть? - См. Http: //www.w3.org/TR/xmlschema-0/# import – mjn

ответ

1

Я бы еще попытаться захватить Delphi 2010 (испытание) и посмотреть, если он там работает.
Я знаю, что там была значительная работа в D2009 и D2010. Было известно, что плохо делать импорт и включает в себя.
Намного лучше теперь ...
Если вы не можете решить эту проблему, я бы рекомендовал вручную отредактировать схемы, чтобы удалить include/import и построить большой XSD без внешнего файла. Он должен работать лучше.
Так я сделал с довольно сложным набором схем, которые даже .Net lib задохнутся.

Обновление: Не могли бы вы попытаться заменить if: InfoFile другим символом, чтобы избежать столкновения с зарезервированным словом if; т. е. искать «n» заменить, если в схемах на _if_ или что-то еще ... Картограф XML должен заботиться об этом, но, знаете ли ...

+0

Я установлю демо версию 2010 года и надеюсь, что она сработает. –

+0

Устанавливается, и это одно и то же :( –

+0

Просьба представить отчет об ошибке в QC с прикрепленными файлами схемы. Тем временем вы можете попытаться выяснить, импортирует ли он с помощью Delphi Prism (импортер .Net) и вручную редактировать код для Delphi, или настроить схемы на 1 большой XSD. Я знаю, что это может расстраивать! Был там, сделал это :-( –

0

Эрик Торнили наконец-то дал мне возможность пойти here.

Кажется, что XML Mapper не правильно понимает пространства имен. Вы можете, однако, укрепить его в жизни на , добавив дополнительное пространство имен в импортированные файлы. Это, я уверен, не правильно.

Так, например, в вашем Insurance.xsd вы объявляете Xmlns: Utils = "http://www.gtest.fr/Apps/Utils"

Если добавить точно такое же определение в Utils.xsd, импорт Mapper XML это правильно (я думаю!)

Ther справедливый шанс, что XML Spy лишит мои модификации - конечно, Enterprise Architect игнорирует их полностью.

0

Я хотел бы видеть сообщение, которое указал вам Эрик Торнили, но его больше нет. Я мог бы найти его в архиве где-нибудь, если бы у меня был предмет сообщения. Я попробовал поиск в Google, но все, что я нашел, это дубликаты этого сообщения на разных сайтах.

Спасибо

 Смежные вопросы

  • Нет связанных вопросов^_^