|
Re: Template recursion, StackOverflowError, saxon:while a nd variable assig: msg#00107text.xml.saxon.help
On 6/17/05, Andre Cusson <ac-ncSKzJSyWVNl57MIdRCFDg@xxxxxxxxxxxxxxxx> wrote: > Hi, > > Simple? > How would you avoid getting stuck in a circular loop while processing a > general directional graph with XSLT, without using assign ? > > Thank you > Andre It happens that I already have this done :o) -- more than an year ago I implemented in XSLT some generic graph (multigraph) operations like Eulerisation and the street sweeper / NY postman algorithm. Of course, full graph traversal is NP-complete (regardless if assign is used or not), so with deep graphs one would inevitably try some euristics. Cheers, Dimitre Novatchev. > > > At 23:31 2005-06-16, you wrote: > >So how about an (simple, please) example? > > > >Maybe someone will come up with comparable efficient solution without > >using saxon:assign? > > > > > >Cheers, > >Dimitre Novatchev > > > >On 6/17/05, Andre Cusson <ac-ncSKzJSyWVNl57MIdRCFDg@xxxxxxxxxxxxxxxx> wrote: > > > Hi, > > > > > > Definitely a graph and one of the issues is dealing with circular > > > references, in a strained performance environment. > > > It has been working fine for a few years already and uses assign. > > > > > > Andre > > > > > > > > > > > > At 11:40 2005-06-16, you wrote: > > > >Hi Andre > > > > > > > >... > > > > > by a graph processing > > > >... > > > > > > > >Do you really mean graph or tree? > > > > > > > >For a tree-structured problem one can envisage a very simple transform, > > > >that declaratively takes in the entire data-base plus a change request > > > >and returns the updated database. If the change request applies > > > >to some low level branches, then multiple changes can be safely > > > >executed in parallel on multiple processors. The XSLT compiler > > > >needs to recognise the tunneling down to the branches idiom to > > > >identify that the transform has a very controlled change domain > > > >within which an assign rather than copy can be performed. > > > > > > > >It then 'just' requires the XSLT compiler to manage the on-demand > > > >re-distribution of data nodes to processors, so that you run one > > > >massively parallel XSLT session rather than one per process. > > > > > > > >If your problem is really a graph, then there must be significant > > > >issues with determining the extent of the change, and more significantly > > > >ensuring that the concurrent execution of 'assign'-optimised transforms > > > >is deterministic. I don't think that XSLT as it stands, will allow for > > > >the > > > >real life indeterminism that you currently have. You don't mind which > > > >record is updated first, just so long as the updates are consistent. > > > >But achieving this consistency probably means that you already have > > > >a policy that constrains the potential graph anarchy, and this could > > > >be exploited by XSLT to do what you do manually. > > > > > > > > Regards > > > > > > > > Ed Willink > > > > > > > > > > > >------------------------------------------------------- > > > >SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > > > >from IBM. Find simple to follow Roadmaps, straightforward articles, > > > >informative Webcasts and more! Get everything you need to get up to > > > >speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click > > > >_______________________________________________ > > > >saxon-help mailing list > > > >saxon-help-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@xxxxxxxxxxxxxxxx > > > >https://lists.sourceforge.net/lists/listinfo/saxon-help > > > > > > > > > > > > ------------------------------------------------------- > > > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > > > from IBM. Find simple to follow Roadmaps, straightforward articles, > > > informative Webcasts and more! Get everything you need to get up to > > > speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click > > > _______________________________________________ > > > saxon-help mailing list > > > saxon-help-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@xxxxxxxxxxxxxxxx > > > https://lists.sourceforge.net/lists/listinfo/saxon-help > > > > > > > > >------------------------------------------------------- > >SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > >from IBM. Find simple to follow Roadmaps, straightforward articles, > >informative Webcasts and more! Get everything you need to get up to > >speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&opÌk > >_______________________________________________ > >saxon-help mailing list > >saxon-help-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@xxxxxxxxxxxxxxxx > >https://lists.sourceforge.net/lists/listinfo/saxon-help > > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&opclick > _______________________________________________ > saxon-help mailing list > saxon-help-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@xxxxxxxxxxxxxxxx > https://lists.sourceforge.net/lists/listinfo/saxon-help > ------------------------------------------------------- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&op=click |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Template recursion, StackOverflowError, saxon:while a nd variable assignability: 00107, Andre Cusson |
|---|---|
| Next by Date: | Re: Template recursion, StackOverflowError, saxon:while a nd variable assignability: 00107, Dimitre Novatchev |
| Previous by Thread: | Re: Template recursion, StackOverflowError, saxon:while a nd variable assignabilityi: 00107, Andre Cusson |
| Next by Thread: | Re: Template recursion, StackOverflowError, saxon:while a nd variable assignability: 00107, Dimitre Novatchev |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |