Используя XSLT 1.0, я хочу обработать четыре набора узлов по порядку, A, B, C, D. Но я не могу указать каждый набор узлов с помощью одиночное (или, по крайней мере, не управляемое) выражение XPath.Назначить значение узлу в дереве, которое обрабатываю
Я хотел бы, прямо перед собой, пронестись и пометить все узлы, в которых я хочу быть A, все узлы, которые я хочу быть B, и т. Д., А затем вы сможете выбрать по желанию все A узлы, все узлы B и т. д.
Я также хочу добавить к списку позже.
Я не могу создать атрибуты в обрабатываемом файле. (Правильно?) Переменные выходят за рамки слишком скоро. Может быть, что-то использует ключи? Ключ для всех A, всех B? Но можно ли добавить дополнительные узлы в таблицу ключей после создания ключа?
Или есть способ сохранить XPaths?
Есть ли простой способ сделать это, или я должен просто создать скверное, ужасное, подверженное ошибкам, ужасное и поддерживающее выражение Xpath каждый раз, когда я хочу выбрать каждый из моих наборов узлов?
Кажется слишком общий характер - - Вы ожидаете узнать все XPath и XSLT как ответ на один вопрос? Если это так, лучший ответ: получить и прочитать хорошую книгу о XSLT/XPath. Вот ссылки на некоторые из лучших ресурсов: http://stackoverflow.com/questions/339930/any-good-xslt-tutorial-book-blog-site-online/341589#341589 –
Вы думаете с точки зрения процедурного решения проблемы, и вы разочаровываетесь, потому что XSLT является декларативным языком и не разрешает процедурного решения. Если вы попытаетесь объяснить нам проблему, которую вы пытаетесь решить (вместо вашего процедурного подхода к ее решению), мы можем помочь вам. –
Спасибо, Майкл. При преобразовании на стороне клиента я обрабатываю, по порядку, четыре набора узлов, каждый из которых определяется сложным выражением XPath. Мне нужно обрабатывать те же самые четыре набора несколько раз при рендеринге HTML. Как я могу избежать повторения выражений XPath в моем XSL каждый раз, когда мне нужно обработать четыре набора? – JPM