Пространства имён для преобразования xml-строк 1С #781316


#0 by EugeneSemyonov
Доброго дня, всем! Подскажите, кто знает какие пространства имён XSL необходимо использовать для преобразования результатов сериализации объектов 1C? Конкретно мне нужно из сериализованного документа удалить реквизит. Шаблон для преобразования сообщений обмена 1С у меня есть, но на сериализованном объекте он не отрабатывает. Пример сериализованного объекта: <DocumentObject.Заявка xmlns="; xmlns:xs="; xmlns:xsi="; xsi:type="DocumentObject.Заявка">     <Ref>660325f5-80a7-11e6-941d-ac220bb7949b</Ref> </DocumentObject.Заявка> Шаблон преобразования сообщения обмена: <xsl:stylesheet version="1.0" xmlns:xsl="; xmlns:v8msg="; <--Здесь нужно указать правильное пространство имён -->>     <xsl:template match=" <--Здесь нужно указать правильное пространство имён --> /DocumentObject.Заявка/КонтрольнаяСумма"/> </xsl:stylesheet>
#1 by Cyberhawk
"Шаблон преобразования сообщения обмена" // Впервые слышу
#2 by Mauser
Вот интересно. Какая связь между "мне нужно удалить реквизит" и "Шаблон для преобразования сообщений обмена"? Мне холодно, у меня есть четверг, но кружка не кактус?
#3 by Fragster
написано же: xmlns=";
#4 by EugeneSemyonov
Пусть будет: "XSL с помощью которого получается преобразовывать XML-ные сообщения обмена 1С" Прикол в том что без указания правильного пространства имён строка полностью копируется без удаления ненужного мне реквизита. вставил xmlns="; вместо xmlns:v8msg=";, попробовал вместе эти пространства имен оставить - результата 0. Есть у кого матчасть? Дайте ссылку.
#5 by Mauser
#6 by Fragster
xmlns="" надо вставить наверх, во второй кусок надо вставить что-то, чтобы было типа ".//DocumentObject.Заявка/..."
#7 by Fragster
это же выражение xpath, вроде
#8 by EugeneSemyonov
Спасибо. Гуглом я пользоваться умею. 1С-ных пространств имён в буржуйских туториалах нет и не будет. От 1С есть у кого-нить рекомендации и примеры по использованию ПреобразованиеXSL?
#9 by EugeneSemyonov
"не выходит каменный цветок..."
#10 by hhhh
есть пространство имен. А есть схема. Это две разные вещи.
#11 by Fragster
автор хочет сделать так, чтобы из одного current-config преобразовать XML в другой current-config. подход интересный, в некоторых случаях может ускорить выгрузку-загрузку данных в десятки раз.
#12 by Mauser
И чем 1С-ное пространство имен отличается от не 1С-ного? Злобные 1С-ники придумали свой XML и XSLT?
#13 by hhhh
это в 1с давно всё придумали, задолго до автора.
#14 by Mauser
Это желтые их черти бермутят воду во пруду, все придумал Нуралиев в восемнадцатом году.
#15 by DrShad
да забей ты вообще на пространство имен, оно нужно для описания в схеме различных типов и для чтения практически бесполезная штука
#16 by Mauser
Практически бесполезная штука [x]
#17 by EugeneSemyonov
Подскажи, пожалуйста, тогда почему реквизит не удаляется?
#18 by EugeneSemyonov
не поверишь! именем! ;-)
#19 by hhhh
но почему оно должно удалять? Где у вас в шаблоне этом удаление?
#20 by Mauser
Перед тегом закрытия </xsl:stylesheet>
#21 by Mauser
Оно создает новый документ путем копирования всех узлов и атрибутов, за исключением указанного. Для определенного элемента происходит ничего =)
#22 by hhhh
ну а причем тут пространство имен? Может же быть 10 пространств имен в одном документе?
#23 by EugeneSemyonov
Миш, ты ничего не подскажешь?
#24 by Mauser
Да. Для срабатывания шаблона производящего ничего, ему надо попасть в квалифицированное имя узла. Оно прямо зависит от пространства имен обрабатываемого документа и немного косвенно - от пространства имен по умолчанию, в котором идет обработка шаблонов. Про это подробно написано по ссылкам в
#25 by Mauser
Но, вместо изучения матчасти, Женя ждет готового решения, потому что, дескать, пространство - особенное
#26 by EugeneSemyonov
Честно признаться, на данный момент, необходимость использования данного решения отпала, но я уверен - пригодится в будущем. Поэтому я не забросил тему, а попробовал сделать как советовал ещё Fragster . Не получилось. Прямо сейчас подробно изучать XSL в мои планы не входит. В принципе тему можно закрывать, хоть и без решения. За ссылки спасибо ;-)
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С