powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / версия xslt процессора
16 сообщений из 16, страница 1 из 1
версия xslt процессора
    #36287740
Фотография Referee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добрый день!

как узнать версию усановленного xslt процессора??

спасибо.
...
Рейтинг: 0 / 0
версия xslt процессора
    #36289540
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Откуда узнать? Из XSL? Из места, откуда вызывается преобразование?

И вообще - зачем бы это могло понадобиться? Случайно не открываете XML в браузере?

С уважением, Vasilisk
...
Рейтинг: 0 / 0
версия xslt процессора
    #36289587
слоненок
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Referee,
Код: plaintext
select="system-property('xsl:version')"
...
Рейтинг: 0 / 0
версия xslt процессора
    #36289949
Фотография Referee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
слоненок - Cпасибо!

_Vasilisk_ - собственно меня интересовала сможет ли мой процессор поддержать xslt 2.0 и в частности дириктиву <xsl:result-document>
у менчя как то с ней не получилось или я не то делаю ( тут ) ??
...
Рейтинг: 0 / 0
версия xslt процессора
    #36289961
Фотография Referee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а само преобразование делаю с помощью delphi интерфейсом

Код: plaintext
1.
2.
3.
  IXMLDocument = interface(IInterface)
    ['{395950C3-7E5D-11D4-83DA-00C04F60B2DD}']
.....

Код: plaintext
1.
2.
3.
4.
5.
  lxmlDoc := LoadXMLDocument(xmlEdit.Text);
  try
    lxmlTemplate := LoadXMLDocument(xslEdit.Text);
    lxmlDoc.DocumentElement.TransformNode(lxmlTemplate.DocumentElement, lsResult);
.....


собственно версию процессора корый создается по интерфейсу - 395950C3-7E5D-11D4-83DA-00C04F60B2DD и хотелось узнать вот....
...
Рейтинг: 0 / 0
версия xslt процессора
    #36290967
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то мне подсказывает, что Вы Используете MSXML. А MSXML никогда не поддерживал XSLT 2.0

С уважением, Vasilisk
...
Рейтинг: 0 / 0
версия xslt процессора
    #36290971
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И если это Refereeхочится чтобы xslt процессор сохарнил результаты преобразования в файл...единственная причина, по которой используется XSLT 2.0? то вот Вам тынц на пример использования.

Пишете
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
 var 
  LStrm: IStream;
..........
LStrm := TStreamAdapter.Create(TFileStream.Create('outfile.xml', fmCreate));
xslProc.input := xslEdit.Text;
xslProc.output := LStrm;
LStrm :=  nil ;
xslProc.transform();
и получаете Ваш файл.

С уважением, Vasilisk
...
Рейтинг: 0 / 0
версия xslt процессора
    #36291496
Фотография Referee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_
так то оно так... сохранить полученный результат средставами delphi это не проблема.
у меня не получается из одного файла xml сделать несколько выходных файлов при помощи преобразования xslt...
как например их xml

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<?xml version="1.0" encoding="windows-1251"?>
<data begin="2009-10-01T00:00:00" end="2009-10-30T00:00:00">
	<object>
		<name>ЗАО СУ- 155 </name>
		<file date="2009-10-26T12:07:33.007">
			<text>текст</text>
		</file>
	</object>
	<object>
		<name>ЗАО СУ- 166 </name>
		<file date="2009-10-26T12:07:33.007">
			<text>текст  2 </text>
		</file>
	</object>
</data>

создать 2 файла ЗАО СУ-155.txt (с текстом "текст") и ЗАО СУ-166.txt (с текстом = "текст 2") ??
делая только один раз перобразование типа

Код: plaintext
xslProc.transform();
...
Рейтинг: 0 / 0
версия xslt процессора
    #36293457
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Refereeу меня не получается из одного файла xml сделать несколько выходных файлов при помощи преобразования xslt...MSXML (Вы же им пользуетесь?) этого не умеет. Либо n раз запускайте преобразование (и параметрами разрулить алгоритмы), либо меняйте парсер, на те же Saxon или Xalan. Эти товарищи умеют XSLT 2.0. Правда они написаны на Java
...
Рейтинг: 0 / 0
версия xslt процессора
    #36296946
Ivanhoe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2_Vasilisk_
С каких пор xalan поддерживает xslt 2?

2Referee
если так уж нужно это сделать в MSXML пользуйте например тэг script и на яваскрипте функцию внутри

<ms:script language="JScript" implements-prefix="x" xmlns:ms="urn:schemas-microsoft-com:xslt">
function qq(pp){
//....
}
</ms:script>


потом вызов примерно так

<xsl:if test="x:qq(string($var))"/>
...
Рейтинг: 0 / 0
версия xslt процессора
    #36297317
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanhoeС каких пор xalan поддерживает xslt 2?
Не поддерживает? Откуда-то была такая уверенность. Правда ни с Saxon ни с Xalan не работал
Ivanhoeесли так уж нужно это сделать в MSXML пользуйте например тэг script и на яваскрипте функцию внутри
Код: plaintext
1.
2.
3.
4.
  <ms:script language="JScript" implements-prefix="x" xmlns:ms="urn:schemas-microsoft-com:xslt">
        function qq(pp){
             //....
        }
  </ms:script>
потом вызов примерно так
<xsl:if test="x:qq(string($var))"/>Да. Или даже написать свое расширение на нормальном языке и через IXSLProcessor.addObject() передать его в преобразование
...
Рейтинг: 0 / 0
версия xslt процессора
    #36297899
Фотография Referee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо за участие!
буду пробовать - очень много новой информации и идей получил от вас
...
Рейтинг: 0 / 0
версия xslt процессора
    #36298802
Фотография Referee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
к сожалению так просто не получилось...

подскажиет по javascript

как сохранить данные в файл?? и возможно ли это вообще средствами javascript?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:ext="urn:extension-functions" exclude-result-prefixes="msxsl ext">
	<xsl:output method="html" encoding="windows-1251"/>
	<msxsl:script language="JavaScript" implements-prefix="ext">
		function save(txt, fileName) {
			как тут сохранить txt в fileName??
			return true
		}
	</msxsl:script>
	<xsl:template match="*">
		<xsl:if test ="ext:save()">
			<xsl:text>YES</xsl:text>
		</xsl:if>	
	</xsl:template>
</xsl:stylesheet>

Спасибо!
...
Рейтинг: 0 / 0
версия xslt процессора
    #36299993
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Refereeкак сохранить данные в файл?? и возможно ли это вообще средствами javascript?RTFM FileSystemObject. Если прав хватит.
...
Рейтинг: 0 / 0
версия xslt процессора
    #36300328
Фотография Referee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!

сделал так

Код: plaintext
1.
2.
3.
4.
5.
6.
		function save(txt, fileName) {
		var fso = new ActiveXObject("Scripting.FileSystemObject");
		var a = fso.CreateTextFile(fileName, true);
		a.WriteLine(txt);
		a.Close();
		return true;
		}
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
версия xslt процессора
    #38249965
слоненок,

xml

Код: xml
1.
2.
3.
4.
<?xml version="1.0" encoding="WINDOWS-1251"?>
<?xml-stylesheet type='text/xsl' href='xsl_version_-_XSL.xsl'?>
<test>
</test>



xsl
Код: xml
1.
2.
3.
4.
<table xsl:version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  xsl:version = 
      <xsl:value-of select="system-property('xsl:version')"/>
 </table>



Результат
xsl:version = 1

Хотя в xsl
Код: xml
1.
xsl:version="2.0"

и никаких ошибок не выводится, как если бы 2.0 было указано в xml фаиле.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / версия xslt процессора
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]