Yes ... no doubt that works.
Although the real issue is more subtle (I don't want to bother the list with
the details). But what's harder than the XSLT is the schema.
Defining a truly recursive schema with the same element names that take on
different meanings (and attributes and allowed children !) depending on
their depth is a tough one. Local elements declarations can help, but when
the XML simply wasn't designed with schema in mind its not fun.
Anyway my whole point to this sub-thread was that sometimes (IMHO) use of
recursive structures can be (ab)use and should really be thought out better.
----------------------------------------
David A. Lee
http://www.xmlsh.org
-----Original Message-----
From: David Carlisle [mailto:]
Sent: Monday, December 12, 2011 4:31 AM
To:
Cc: 'Andrew Welch';
Subject: Re: [xml-dev] Is recursive markup good? bad? supported? not
supported?
On 11/12/2011 17:12, David Lee wrote:
> match="block"
>
> match="block/block"
>
> match="block/block/block"
>
> ==============================
>
> Yes but try to that for an arbitrary deep occurrence.
match="block[count(ancestor::block)=$n]"
probably works in practice, or if you really need to check that all the
blocks are direct children of each other then
match="block[every $i in 1 to $n satisfies ancestor::*[$n]/self::block]
David
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________
_______________________________________________________________________
XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.
[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe:
subscribe:
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php