[xslt] как сделать такое преобразование
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="TR[TD[1] = 0]" priority="1">
</xsl:template>
<xsl:template match="/ | @* | node" priority="0">
<xsl:copy>
<xsl:apply-templates select="@* | node"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
имхо, XSLT не для таких преобразований
а что значит так тормозят?
пианиста задели за больное.
для задач с удалением обычно лучше подходит любимый язык + xpath.
будет что-то типа:
XmlDocument doc = new XmlDocument;
doc.Load("in.xml");
foreach (XmlNode node in doc.SelectNodes("//tr[td[1]='0']").Clone
{
node.Parent.Remove(node);
}
doc.Save("out.xml");
Мне это нужно делать на Джава и DOM не очень хорошо, т.к. данных может быть очень много. Данные получаю от веб сервиса через http, пока гружу в память целиком, но результат нужно грузить в одну штуку тоже через веб сервис. По идее потоками нужно делать (ко второму веб сервису даже библиотека клиентская есть под Джава, где можно данные совать в поток). С XSLT вроде нет проблем из потока в поток, но вот ручками боюсь много мороки (да и в Джава с соответствующими апи мало практики). В общем не знаю. А чем все таки XSLT плохо в данном случае?
а масон не пробовали заюзать?
нет, что это?
www.nature.ru сделано, рамблер движок CMS на масоне за 50 килобаксов торгует
это перловая хреновина, типа asp, на ней
а она тут причем?
Мне нужна Джава, причем мой код хостится другим веб сервисом.
ну раз нужна, значит нужна, а яб не парился...
Дай, пожалуйста, ссылку, где можно прочитать про масон, или хотя бы его название на английском приведи.
Спасибо, ща буду читать.
Теперь все веб программисты счастливы, давайте вернемся к XSLT, в чем там проблема?
попробуй, сделаешь выводы для конкретной задачи, на конкретной платформе
просто хотелось бы делать все правильно, но только это не просто, когда ничего не рубишь в этой теме
Он скорее неудобный, чем плохой, т.к. на xslt нельзя записать задачу удаления ненужного, можно только описать задачу копирование нужного.
Да, но что значит получить файл, который является копией исходного за исключением удаления некоторых фрагментов -- это и будет скопировать то, что нужно оставить. И xsl Шурика мне нравится, думал будет страшнее. Короче зеленый свет варианту с XSLT.
http://genphys.phys.msu.ru/~dmitriyk/perl/mason.shtml :
Я конечно подозревал, что Mason - хрень та ещё и в бытность веб-программистом использовал Template::Toolkit, но чтоб вот такие вот примеры новичкам показывать... прямой запрос в базу данных из шаблона... ужас.
Цитата с
<html>
<head><title><% $headline %></title></head>
<body>
<h2><% $headline %></h2>
By <% $author %>, <% $date %><p>
<% $body %>
</body></html>
<%init>
# Fetch article from database
my $dbh = DBI::connect ...;
my $sth = $dbh->prepare("select * from articles where id = ?");
$sth->execute($article_id);
my ($headline,$date,$author,$body) = $sth->fetchrow_array;
# Massage the fields
$headline = uc($headline);
my ($year,$month,$day) = split('-',$date);
$date = "$month/$day";
</%init>
<%args>
$article_id
</%args>
Я конечно подозревал, что Mason - хрень та ещё и в бытность веб-программистом использовал Template::Toolkit, но чтоб вот такие вот примеры новичкам показывать... прямой запрос в базу данных из шаблона... ужас.
А почему плохо из темплейта в базу лезть? И как надо?
Я с трудом себе представляю веб-проект, реализуя который можно позволить себе мешать логику с представлением.
И как это делается в пхп, логика выделяется в отдельные методы?
Да, в php есть средства отделения логики от html-я. Грамотные люди так и пишут.
имхо, оно излишне все...
ага вот вот вот, а потом когда надо просто напечатать print "hello world\n"; впадается в ступор на предмет какой объект какого класса юзается или для этой же операции используется 50000 строк кода функции print_hello_world;
print_title(тут параметры)... этиж параметры надо распарсить, для этого заюзать всякие хеши, думаю, что такое стремление к высокому уровню не только в перле.
Хорошо, ладно, в ситуации, когда надо через сокет что то послать. да, обвязка нужна, потому что облегчает жизнь, но не такое же фатальное темплейтирование.
Кроме того, то что ты привел как пример, больше похоже на рассуждение вида: "мне знакомый программист рассказывал, что в районе linux.org.ru обсуждали..."
кста о ЛОРе, там ща такое порево недецкое идет по поводу XML
Молодец, зажёг. Спасибо за доставленные положительные эмоции. Почаще заводи подобные треды!
да я тут уже часа два-три сохну просто вы меня конешно простите, поначалу серьезно спросил, но не смог уержаться
print_title(тут параметры)... этиж параметры надо распарсить, для этого заюзать всякие хеши, думаю, что такое стремление к высокому уровню не только в перле.
да не в php-жаве-перле дело, а в том наверное, что байт состоит из битов, из наслаивания протокола на протокол уже и не осталось ничего... какие-то предсавления о представлениях...Твои слова мне напоминают известную "лекцию про интернет"( полная версия ) : "В интернете существует много опасностей: хакеры, крякеры, спамы, куки и закладки..."
Уважаемый дон вообще понимает, о чем говорит?
http://www.webdocs.ru/articles/article161/ Сколько этот пм весит? 300 кил наверное, если не 500. я уж давно не юзаю сию байду...
...
Кстати, кто скока весит совершенно неважно, а вот сопровождать и отлаживать код, где смешаны логика с представлением, затруднительно..
Size doesn't matter, если ты понимаешь, о чем я
э, нет, так разговор то как раз в том числе и об этом. Это просто мания какая-то... Читать трудно? Вот именно что трудно, потому что каждый придумывает свое "представление о" структуризации, канонизации, блаблабла. А потом "xml как вавилонская башня рухнет и похоронит под собой все" (с) какойто анонимус
Ладноб доки хить писали, не былоб претензий, так ведь не пишут... Ты просто и не ибался с этим по реальному то. Ты придешь и скажешь. "О так делать не надо, предыдущий прогер был му№ак" и будешь манагерам лапшу на уши вешать. Как надо. Вот и вся работа. Ты просто не слышишь меня. А так оно и будет с большой вероятностью.
э, нет, так разговор то как раз в том числе и об этом. Это просто мания какая-то... Читать трудно? Вот именно что трудно, потому что каждый придумывает свое "представление о" структуризации, канонизации, блаблабла. А потом "xml как вавилонская башня рухнет и похоронит под собой все" (с) какойто анонимусУважаемого дона трудно понять. Вы собственно о чем говорите? Об отделении представления от логики на пхп или об хмл? Темой не ошиблись?
Ладноб доки хить писали, не былоб претензий, так ведь не пишут... Ты просто и не ибался с этим по реальному то. Ты придешь и скажешь. "О так делать не надо, предыдущий прогер был му№ак" и будешь манагерам лапшу на уши вешать. Как надо. Вот и вся работа.Да, по реальному с такими проблемами не встречался, ибо пишу на асп.нет. Там нет проблем ни с отделением кода от представления, ни с хмл
Я вовсе не давлю авторитетом...Уважаемый дон уже приблизился к уровню Фаулера или Бека, чтобы давить СВОИМ авторитетом?
... ты просто не слышишь меня.я не могу понять тот набор слов, который написан в ваших постах.
Да, кстати, ты сделал, или пока не получается?
ага, на XML, датчик сделал, вроде как, только его отлживать надо на нескольких типах камер.
Т.е. не работает пока ничего, да?
Вы собственно о чем говорите? Об отделении представления от логики на пхп или об хмл?да, наверное я тут неправильно поступил, т.к. не корректно сформулировал саму претензию...
Уважаемый дон уже приблизился к уровню Фаулера или Бека, чтобы давить СВОИМ авторитетом?Если вышеупомянутые уважаемые доны Фаулер и Бек говорят о том, что чтобы напечатать десяток строк с передачей логина и пассворда на клиентскую сторону, необходимо заюзать модуль весом в полмега, то тады я бы с ними не согласился...
К счастью, они об этом не говорят!
почемуж, работает, 95% проходит. там подгонка параметров...
Можно посмотреть (на самом деле, мне действительно интересно посмотреть на рабочую систему, о которой ты писал в том треде) ?
в личку
Оставить комментарий
bastii
Есть xml:Мне нужно получить xml, выкинув из исходного строчки (<tr> </tr> где первое поле в строчке равно 0.