|
Subject: Re: [xsl] Flat to Structured: Handling List Items with Subordinate Paragraphs From: Eliot Kimber <ekimber@xxxxxxxxxxxx> Date: Tue, 26 May 2009 15:51:19 -0500 |
On 5/26/09 3:38 PM, "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx> wrote:
> At 2009-05-26 15:31 -0500, Eliot Kimber wrote:
>> On 5/26/09 3:04 PM, "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx> wrote:
>>
>>>> Can anyone point me in the right direction?
>>>
>>> Consider the solution below. I'm making assumptions like a container
>>> is defined by adjacent elements with @container, and that the
>>> container type is homogenous (so I only need to look at the first),
>>> and that list items are always of type 'li'. It gives what you are
>>> asking for, but you may need to modify it based on a more precise
>>> definition of containers.
>>
>> Hmmm--took me a minute to see the boolean(@container) in this line:
>>
>> <xsl:for-each-group select="*" group-adjacent="boolean(@container)">
>>
>> So that has the effect of creating a group for each continguous sequence of
>> contained things,
>
> Indeed. In my class I have an explicit example of this because some
> students have the preconceived notion that the adjacent values are
> somehow obliged to be user data, when in fact the adjacent values can
> be any calculated value.
I don't think it's quite as easy as my sample data suggested.
Once I have a group of contained things, there's no guarantee that the
first-level containers are homogenous.
For example, I could have an ordered list followed by an unordered list,
which would give a group like:
<p type="li" container="ol" level="1">
<p type="p" container="li" level="2">
<p type="li" container="ol" level="1">
<p type="p" container="li" level="2">
<p type="li" container="ul" level="1">
<p type="p" container="li" level="2">
Where the result should be:
<ol>
<li>
<p>
</li>
<li>
<p>
<li>
</ol>
<ul>
<li>
<p>
<li>
</ul>
I don't see a way to get that result using group-starting-with on the group
members.
But I think that sibling recursion might be more tractable on the group
members since I don't have to worry about excluding elements that don't have
a container at all.
Cheers,
Eliot
----
Eliot Kimber | Senior Solutions Architect | Really Strategies, Inc.
email: ekimber@xxxxxxxxxxxx <mailto:ekimber@xxxxxxxxxxxx>
office: 610.631.6770 | cell: 512.554.9368
2570 Boulevard of the Generals | Suite 213 | Audubon, PA 19403
www.reallysi.com <http://www.reallysi.com> | http://blog.reallysi.com
<http://blog.reallysi.com> | www.rsuitecms.com <http://www.rsuitecms.com>
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] Flat to Structured: Handl, G. Ken Holman | Thread | Re: [xsl] Flat to Structured: Handl, G. Ken Holman |
| Re: [xsl] Flat to Structured: Handl, G. Ken Holman | Date | Re: [xsl] Flat to Structured: Handl, Wendell Piez |
| Month |