Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / версия xslt процессора / 16 сообщений из 16, страница 1 из 1
03.11.2009, 11:30
    #36287740
Referee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
добрый день!

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

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

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

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

_Vasilisk_ - собственно меня интересовала сможет ли мой процессор поддержать xslt 2.0 и в частности дириктиву <xsl:result-document>
у менчя как то с ней не получилось или я не то делаю ( тут ) ??
...
Рейтинг: 0 / 0
04.11.2009, 11:21
    #36289961
Referee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
а само преобразование делаю с помощью 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
04.11.2009, 22:46
    #36290967
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
Что-то мне подсказывает, что Вы Используете MSXML. А MSXML никогда не поддерживал XSLT 2.0

С уважением, Vasilisk
...
Рейтинг: 0 / 0
04.11.2009, 22:54
    #36290971
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
И если это 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
05.11.2009, 11:04
    #36291496
Referee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
_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
05.11.2009, 22:50
    #36293457
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
Refereeу меня не получается из одного файла xml сделать несколько выходных файлов при помощи преобразования xslt...MSXML (Вы же им пользуетесь?) этого не умеет. Либо n раз запускайте преобразование (и параметрами разрулить алгоритмы), либо меняйте парсер, на те же Saxon или Xalan. Эти товарищи умеют XSLT 2.0. Правда они написаны на Java
...
Рейтинг: 0 / 0
08.11.2009, 02:33
    #36296946
Ivanhoe
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
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
08.11.2009, 16:30
    #36297317
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
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
09.11.2009, 09:07
    #36297899
Referee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
Всем спасибо за участие!
буду пробовать - очень много новой информации и идей получил от вас
...
Рейтинг: 0 / 0
09.11.2009, 14:29
    #36298802
Referee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
к сожалению так просто не получилось...

подскажиет по 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
09.11.2009, 22:42
    #36299993
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
Refereeкак сохранить данные в файл?? и возможно ли это вообще средствами javascript?RTFM FileSystemObject. Если прав хватит.
...
Рейтинг: 0 / 0
10.11.2009, 09:07
    #36300328
Referee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
версия xslt процессора
Спасибо!

сделал так

Код: 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
Период между сообщениями больше года.
07.05.2013, 10:57
    #38249965
версия xslt процессора
слоненок,

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


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