Модераторы: diadiavova
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Несколько noNamespaceSchemaLocation в одном xml, Думаю, решения нет, но все-таки... 
:(
    Опции темы
DPaladin
Дата 3.11.2010, 13:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 3.11.2010

Репутация: нет
Всего: нет



Здраствуйте, господа...

Проблема:

Есть несколько xml-документов (каждый - xsi:noNamespaceSchemaLocation), которые "оборачиваются" в стандартный xml-"конверт" (конверт  для конкретного документа имеет свой Namespace), и все вместе - заворачиваются в транспортный контейнер (еще один Namespace).

Пример (в общих чертах):
Код

<?xml version="1.0" encoding="UTF-8"?>
<container1:Container 
    xmlns:container1="http://www.containet.com/1/Container/1"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.containet.com/1/Container/1 ../../Container/1/Schema.xsd">

    ...

    <container1:InlineXML DocId="1">
        <doc1:Document
        xmlns:doc1="http://www.doc1.com/1/Doc1/1"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.doc1.com/1/Doc1/1 ../../Schema.xsd">

            ...

            <doc1:InlineXML Id="idvalue1">
                <ROOT xsi:noNamespaceSchemaLocation="../../../../../../../../../../Components/Imported/01.xsd">

                ...

                </ROOT>
            </doc1:InlineXML>
        </doc1:Document>
    </container1:InlineXML>
    <container1:InlineXML DocId="2">
        <doc2:Document
        xmlns:doc2="http://www.doc1.com/1/Doc2/1"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.doc2.com/1/Doc2/1 ../../../../Doc2/1/Schema.xsd">

            ...

            <doc2:InlineXML Id="idvalue2">
                <ROOT xsi:noNamespaceSchemaLocation="../../../../../../../../../../Components/Imported/02.xsd">

                ...

                </ROOT>
            </doc2:InlineXML>
        </doc2:Document>
    </container1:InlineXML>

    ...

</container1:Container>


Думаю, структура понятна. Если надо уточнить - скажите, что и где надо уточнить или дообьяснить.
Что происходит: при валидации каждого из документов без Namespace (noNamespaceSchemaLocation) используется первая обьявленая схема. Тоесть документы 01, 02, 03, и т.д. валидируются первой обьявленой схемой noNamespaceSchemaLocation (в представленом варианте - 01.xsd).

Ну и вопрос - можно ли это обойти при условии, что схемы документов 01, 02 и т.д. изменять нельзя (именно там обьявлено noNamespaceSchemaLocation).

P.S. Личное мнение, что нельзя. Но хочу ошибаться =)

Это сообщение отредактировал(а) DPaladin - 3.11.2010, 13:02
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "XML/XSLT"
diadiavova

Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась.

Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение.

Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел

Желаем удачи в Вашем деле!


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | XML, XSL | Следующая тема »


 




[ Время генерации скрипта: 0.0359 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.