Subject: Re: [xsl] Novice Question - matching entire text children|
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Mon, 20 Dec 2010 11:28:12 -0500
I got that, but it was worth a try .... Cant learn without pushing the envelope !
That's why I wrote "Ha Silly Me".
I tried something that 'seemed obvious' to an XSLT novice to discover it was a synatax error.
Now to answer the pressing question I guess I cant get away from answering (because multiple people keep asking).
I'm writing XSLT *dynamically* based on a schema. This is not hand-written XSLT but very obtuse XSLT generated by XQuery based on a XSD Schema, various annotations and external configuration files (with some Java thrown in for fun).
( Part of my JSON/XSLT transformation experiment/project).
I need to *paramatize* generation of different parts of an element in a given element.
For example, an element like
<ELEM a1="value1" a2="value2">Text</ELEM>
I need to paramtize and independantly generate the rules for :
A) How to generate the element "ELEM" (various ways) B) How to generate the attribute a1 (as apposed to attribute a2 which may be generated differently) C) What to do with text nodes.
I'm going to try to avoid the details as there are many and I havent written the paper yet :)
But I need to *conditionaly and parametrically* run different rules on different parts of even a signle element. These rules can be generated in different parts of the code. I'm sure there are a million ways to do this, but XSLT with its pattern matching capbility stood out as a good tool to use.
So for my *first attempt* I'm generating templates based on the element, its attributes, AND ITS TEXT as separate templates. e.g.
<template match="ELEM" .> ... <template macth="ELEM/@a1"> ... <template macth="ELEM/@a2"> ... <template macth="ELEM/text()"> ...
These templates are generated in different parts of the code all based on various configuration information and annotations in the schema. SO I never know easily which rule is going to kick out where, and I certianly don't know within the generation of matchign for "ELEM" what the coresponding templates to call are for its attributes or text ... so I just pass the buck and am trying to leverage XSLT's pattern matching for me to avoid the problem. Trying to leverage FULL push matching instead of PULL matching so I can decouple the rulebases ...
Beyond that I don't think I can explain better until I finish the code and write the paper ... Its *kinda working* right now ... but trying to improve it.
-- ====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================