Home > XSL-List Blog
The XSL-LIST BlogThe XSL-List Blog's mission is to increase the level of XSL knowledge and usage in the software development community. It's a service by Mulberry Technologies, and the list is by far the most popular XSL development forum in the world — in fact, some of the inventors of XSL hang out there and respond to questions. Got a stylesheet emergency? Want to contribute to the XSL community? visit the XSL-List blog today! Re: Running XSLT from PythonPosted 1/20/2025 4:34:40 PMThanks for the update. Until this last year I didn't really have anywhere I could have used xproc so I didn't really keep up with what was going.Sent from my Verizon, Samsung Galaxy smartphone -------- Original message --------From: "Wendell Piez wapiez@xxxxxxxxxxxxxxx" <xsl-list-servi . . . Read full entry » Re: Running XSLT from PythonPosted 1/20/2025 3:29:03 PMMartin, you're right, with apologies to Achim. I never used Morgana before the v3 version ... Thanks for the correction - Wendell On Mon, Jan 20, 2025 at 9:20b/AM Martin Honnen martin.honnen@xxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > On 20/01/2025 15:15, Wendell P . . . Read full entry » Re: Running XSLT from PythonPosted 1/20/2025 2:23:10 PMOn 20/01/2025 15:20, Martin Honnen martin.honnen@xxxxxx wrote: There was/is XML Calabash 1 https://xmlcalabash.com/archive-1.x/ and MorganaXProc 1 https://xmlcalabash.com/archive-1.x/ for XProc 1, no? The second link was supposed to be https://sourceforge.net/projects/morganaxproc/files/, sorry a . . . Read full entry » Re: Running XSLT from PythonPosted 1/20/2025 2:19:56 PMOn 20/01/2025 15:15, Wendell Piez wapiez@xxxxxxxxxxxxxxx wrote: While XProc 1 could be made to work effectively, there was only one processor (tmk) There was/is XML Calabash 1 https://xmlcalabash.com/archive-1.x/ and MorganaXProc 1 https://xmlcalabash.com/archive-1.x/ for XProc 1, no? . . . Read full entry » Re: Running XSLT from PythonPosted 1/20/2025 2:04:47 AMOn 1/19/25 12:19, Michael Kay michaelkay90@xxxxxxxxx wrote: Oh - I should qualify - *in public* - we don't know what people are doing who are not talking about it. That's a very big qualification: I think we only see the tip of the iceberg on the public internet, and most IT activity is conducted . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 10:47:20 PMOn Sun, 2025-01-19 at 22:22 +0000, Joel Kalvesmaki director@xxxxxxxxxxxxx wrote: > Just to say that I frequently use multiple modes on one template. Hmm, <xsl:mode name="sago" base="tapioca"> . . . </xsl:mode> to be the equivalent of extracting xsl:mode[@ . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 10:22:37 PMJust to say that I frequently use multiple modes on one template. Yes, I can do the conditional work through tunnel parameters, but sometimes I prefer multiple modes to handle that, since it reduces number of lines (and therefore potential clutter) in my XSLT code, and it helps me think about p . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 9:51:10 PMOn Sun, Jan 19, 2025 at 08:43:50PM -0000, Michael Kay mike@xxxxxxxxxxxx scripsit: > I would be interested in your use case for having a template rule in multiple > modes. It's something I have very rarely seen a need for. I suspect that where > you are using this, I would probably be using . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 9:11:43 PMMaybe parameters would do it by refactoring. I had a situation where I was processing content in multiple ways and I started by assigning a mode initially. For instance handling links in different ways for instance based upon the current mode.Why were multiple modes allowed on templates then? Sure . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 8:43:43 PM> Recently I've started applying multiple modes to one template. This has simplified my stylesheets where I have several modes going on. Will that be supported with this new mode element? No. I would be interested in your use case for having a template rule in multiple modes. It's something I . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 8:24:59 PMOn 19/01/2025 20:48, dvint dvint@xxxxxxxxx wrote: Recently I've started applying multiple modes to one template. This has simplified my stylesheets where I have several modes going on.B Will that be supported with this new mode element? The enclosing mode is a single mode see https://qt4cg.org/sp . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 7:48:00 PMRecently I've started applying multiple modes to one template. This has simplified my stylesheets where I have several modes going on.B Will that be supported with this new mode element?B This new element will make it easier to deal with stylesheets with an editor like oxygen where you can collaps . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 7:05:30 PMOn Sun, 2025-01-19 at 11:16 +0000, Dave Pawson dave.pawson@xxxxxxxxx wrote: > Modes: > B Now 'enclosing modes' > Am I the only one thinking xslt4 is miles away (and of less use due > complexity)B from XSLT? This change is actually a simplification. You can now write <xsl:mode na . . . Read full entry » Re: Running XSLT from PythonPosted 1/19/2025 6:22:31 PMPersonally, I tried xproc about 10yrs ago. I was successful after much stumbling. I was building in oxygen and setting it up to run within that environment. I documented the setup and tried to have a coworker run the xproc. For some reason I was never able to get it to work in their environment. I . . . Read full entry » Re: Running XSLT from PythonPosted 1/19/2025 6:19:09 PM> Oh - I should qualify - *in public* - we don't know what people are doing who are not talking about it. > That's a very big qualification: I think we only see the tip of the iceberg on the public internet, and most IT activity is conducted in private. Further, the bigger and longer-duratio . . . Read full entry » Re: Running XSLT from PythonPosted 1/19/2025 5:56:00 PMHello Dan, What you describe (devs skittish about XSLT) is a widespread problem, and a severe one. . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 12:36:57 PMHi Folks, Readability is a fascinating subject. I am reading the book titled, The Prize, the Epic Quest for Oil, Money & Power by Daniel Yergin. Here is a passage from the book (p. 91): bThe congressman had a bright idea. A presidential author might certainly be subject to flattery, especial . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 12:19:02 PMThat was an extremely cool story, Mike, thank you! 1998 - and pushing a young XSL as hard, and as creatively, as all that. "when it was written, they could safely assume that everyone would be using the same browser, a situation which rapidly changed." *head to forehead* Did it ever! . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 11:26:47 AM> This really works well, much better than generating XSLT code again and again The first XSLT application I ever came across (it was still called XSL at the time, this was 1998) was an on-line banking application. A key part of the requirement was that they should be able to create different b . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 11:15:59 AMModes: Now 'enclosing modes' Am I the only one thinking xslt4 is miles away (and of less use due complexity) from XSLT? regards On Sun, 19 Jan 2025 at 11:11, Michael Kay michaelkay90@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > in XSLT 4 as proposed, you can put . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 11:11:15 AM> in XSLT 4 as proposed, you can put all templates for a given mode inside the xsl:mode element (although i am not sure you can enforce that... Yes, it is enforced. In an "enclosing mode" all templates applicable to the mode must be children of the xsl:mode element. Except that you'r . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 7:55:47 AMOn Sat, Jan 18, 2025 at 9:22b/PM Dimitre Novatchev dnovatchev@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > As Dmitre notes, itbs easy to write things that are hard to read, so > > you do have to be careful not to overdo it. > > In my practice I have do . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 7:25:59 AMOn Sun, 2025-01-19 at 07:22 +0000, Anthony J (Tony) Bufort ajbufort@xxxxxxxxxxxxxxxx wrote: > Indeed Liam,B file:write() is one of my go-tos.B My main one, in > fact.B Ought to have mentioned that in my original message. cool. Actually maybe i am muddling up Reston & Renton, Renton mi . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 7:21:50 AMIndeed Liam, file:write() is one of my go-tos. My main one, in fact. Ought to have mentioned that in my original message. Good point re XSLT 4 and aggregating modes within the tag itself. And as regards Renton, that's very cool. :) Thanks, -Tony Anthony J. (Tony) BufortOwner, AJB Consulting Rento . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 6:42:16 AMOn Sun, 2025-01-19 at 06:05 +0000, ajbufort@xxxxxxxxxxxxxxxx wrote: > B And if you output the file as XML first, and THEN want to try to re- > ingest it and process it within the same transform, you will run > across the Saxon protective measure of prohibiting ingesting a file > you hav . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 6:05:01 AMI have great interest in, and experience with, dynamic transform creation. Ibll add to this thread that it can get tricky if a transformation starts out ingesting plain text and then transforms it to XML, and THEN expects to continue processing that result within the same transform. If it is a . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 5:33:23 AMOn Sun, 2025-01-19 at 05:22 +0000, Dimitre Novatchev dnovatchev@xxxxxxxxx wrote: > > there was no one that could understand what this was doing, but me > ... In programming, a readable but incorrect program is generally better than a correct but unreadable one. Requirements change, bugs . . . Read full entry » Re: I love programs that output programsPosted 1/19/2025 5:22:40 AM> As Dmitre notes, itbs easy to write things that are hard to read, so > you do have to be careful not to overdo it. In my practice I have done something more practical and convenient than writing an XSLT transformation ( a set of stylesheets) that generates another XSLT transformation ( . . . Read full entry » Re: Running XSLT from PythonPosted 1/19/2025 1:26:27 AMI hadn't but part of my problem is the team is not xml aligned any more. I was trying to avoid xslt by using Python when that seemed to fail me.Sent from my Verizon, Samsung Galaxy smartphone -------- Original message --------From: "Wendell Piez wapiez@xxxxxxxxxxxxxxx" <xsl-list-servic . . . Read full entry » Re: Running XSLT from PythonPosted 1/18/2025 10:44:52 PMDan, Have you considered XProc 3.0? It is able to read HTML the same as it does XML. While bad inputs are bad inputs, it is also good for detecting and/or repairing them. It can embed and use Schematron and XSLT; you might also find many of the things you need to do are achievable by XProc alone. . . . Read full entry » Re: Running XSLT from PythonPosted 1/18/2025 4:59:21 PMLet me switch the code up a bit and use Saxon as I will be comparing apples to apples then.Sent from my Verizon, Samsung Galaxy smartphone -------- Original message --------From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: 1/18/25 8:08 AM ( . . . Read full entry » Re: Running XSLT from PythonPosted 1/18/2025 4:08:21 PMOn 18/01/2025 01:33, dvint dvint@xxxxxxxxx wrote: From oxygen i get a message about the specific element that is wrong. From python I get a bit of a dump and then the name of the file where the problem is. I need to give the writers at least the element in the file with the problem. Right now, I go . . . Read full entry » Re: Running XSLT from PythonPosted 1/18/2025 11:12:50 AMOn 18/01/2025 00:29, dvint dvint@xxxxxxxxx wrote: Tidy was failing because of some bad unknown elements. There is a config file somewhere and I think it lets you add bogus element types. From oxygen i get a message about the specific element that is wrong. From python I get a bit of a dump and th . . . Read full entry » Re: I love programs that output programsPosted 1/18/2025 5:46:11 AMOn Fri, 2025-01-17 at 20:22 +0000, Roger L Costello costello@xxxxxxxxx wrote: > Hi Folks, > > Recently I was reading Brian Kernighan's new book on AWK, Awksome! I hadn't known there was one. One of the first complex text processing programs i wrote was to read a bunch of text files, iden . . . Read full entry » Re: Running XSLT from PythonPosted 1/18/2025 12:32:59 AM. . . Read full entry » Re: Running XSLT from PythonPosted 1/18/2025 12:28:40 AMTidy was failing because of some bad unknown elements. I had tried that early on. The html has to be modified though to get links to work properly. I also add the navigation file so the pdf has a toc.Sent from my Verizon, Samsung Galaxy smartphone -------- Original message --------From: "Peter . . . Read full entry » Re: Running XSLT from PythonPosted 1/17/2025 11:54:44 PMOn 17/01/2025 23:16, dvint@xxxxxxxxx wrote: First off, is anyone aware of a good way to merge a bunch of HTML techdoc pages into a single HTML so a PDF file can be generated with something like Prince or Weasyprint? If I understand you right, you want to catenate the contents of the <body> . . . Read full entry » Re: Running XSLT from PythonPosted 1/17/2025 11:23:52 PMOn 18/01/2025 00:15, dvint@xxxxxxxxx wrote: First off, is anyone aware of a good way to merge a bunch of HTML techdoc pages into a single HTML so a PDF file can be generated with something like Prince or Weasyprint? I didn't find anything so I went down this the following path. For this effort I de . . . Read full entry » Running XSLT from PythonPosted 1/17/2025 11:15:40 PMFirst off, is anyone aware of a good way to merge a bunch of HTML techdoc pages into a single HTML so a PDF file can be generated with something like Prince or Weasyprint? I didn't find anything so I went down this the following path. For this effort I decided to see what coPilot would come up . . . Read full entry » Re: I love programs that output programsPosted 1/17/2025 9:41:21 PMAnother note: People may want to generate not xslt-code, but pure XPath code (and evaluate it with xsl:evaluate in XSLT, or using fn:load-xquery module, if they don't have an xslt-capable host. https://qt4cg.org/specifications/xpath-functions-40/Overview.html#func-load-x query-module On Fri, Jan 1 . . . Read full entry » Re: I love programs that output programsPosted 1/17/2025 9:36:43 PMHi Roger, > <axsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"> > <axsl:template match="/"> > <axsl:for-each select="/passwds/passwd"> > & . . . Read full entry » Re: I love programs that output programsPosted 1/17/2025 8:43:33 PMI recently modified an XSLT the converted Word ML to LaTeX, very cool!! Also, you may want to check out the old langagues Snobol4/Spitbol. Many of the pattern matching and data types inspired AWK! fyi, Russ On Friday, January 17, 2025 at 02:22:27 PM CST, Roger L Costello costello@xxxxxxxxx < . . . Read full entry » Re: I love programs that output programsPosted 1/17/2025 8:29:28 PMOn 17/01/2025 21:22, Roger L Costello costello@xxxxxxxxx wrote: Recently I was reading Brian Kernighan's new book on AWK, and it showed a wicked cool AWK program that outputs an AWK program. Below is the AWK program, followed by the equivalent XSLT program. The task is to run some checks on a passw . . . Read full entry » I love programs that output programsPosted 1/17/2025 8:21:58 PMHi Folks, Recently I was reading Brian Kernighan's new book on AWK, and it showed a wicked cool AWK program that outputs an AWK program. Below is the AWK program, followed by the equivalent XSLT program. The task is to run some checks on a password file. Here is a sample password file: root:qyxR . . . Read full entry » Re: Get the duplicates in a listPosted 1/13/2025 4:36:15 PMAnother XPath 3.1 solution - uses fold-left and is not exactly compact: (fold-left($values, [map {}, []], function($acc as array(*), $n as xs:string) { let $map := $acc(1), $result := $acc(2), $isDupe := ($map($n)) return if (empty($isDupe)) then [ map:put($map, $n, false()), $result] else if ($is . . . Read full entry » Announcing Balisage 2025 - Mark Your CalendarsPosted 1/7/2025 4:18:53 PMBalisage 2025 will be: 4 - 8 August 2025 all virtual all live interactive solidly technical More details, including the Call for Participation are coming soon. More about Balisage 2025, programs and proceedings of previous conferences, and Balisage news at https://balisage.net/index.htmlo?< Q . . . Read full entry » Upcoming virtual courses from Delightful Computing, Q1Posted 1/6/2025 5:46:37 AMHello! Ibm running some XML and Web courses. Exact dates depend on the people taking the courses. (1) Introduction to XSLT B B B With a focus on maintaining and exploring B B B existing XSLT. Gentle. Includes perspective/context on when B B B to use Schematron, XSD, RelaxNG, DTD, XProc, and mo . . . Read full entry » Complexity, big-O notation [Was: Re: Get the duplicatePosted 1/4/2025 12:49:09 PM"In the context of big-O notation, "complexity" has a meaning very different from its everyday meaning. It basically means "scaleability" - how does the time taken by the task vary with the size of the input? It's a rather unfortunate choice of term. In particular, it has n . . . Read full entry » Re: Get the duplicates in a listPosted 1/4/2025 12:01:30 PMFirst, the question asked for a solution, not for a solution that is efficient or scaleable. I fear that the discussion may be at cross-purposes because the word "complexity" has different meanings. In the context of big-O notation, "complexity" has a meaning very different fro . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 11:14:09 PMLiam wrote: > I read it as wanted something easy to understand: human efficiency rather than computational efficiency. Correct. /Roger . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 10:24:59 PMOn Fri, 2025-01-03 at 22:13 +0000, Bauman, Syd s.bauman@xxxxxxxxxxxxxxxx wrote: > > All well and good, and thank you for that, Liam (Like some others > here, I understandwhat it means to be O(1) vs O(n) vs O(nB2), but am > not much at figuring it out.) > > > That said, isnbt t . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 10:13:04 PMAll well and good, and thank you for that, Liam (Like some others here, I understand what it means to be O(1) vs O(n) vs O(nB2), but am not much at figuring it out.) That said, isnbt this post about efficiency as opposed to complexity? Not that I think we have a very solid definition of complexit . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 10:03:31 PMOn Fri, 2025-01-03 at 12:50 +0000, Martin Honnen martin.honnen@xxxxxx wrote: > B > I would hope that the map:merge is ensured to be more efficient than > that count($fieldnames[. eq $f]) gt 1 First, Dmitrebs solution is great. On complexity - if a map is implemented as a hash table, i . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 5:11:09 PMThat's just beautiful. Nice work Dmitre. - Chris On Fri, Jan 3, 2025 at 11:47b/AM Roger L Costello costello@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Dimitre provided this gorgeous solution to getting a list of the > duplicates in $fieldnames (a sequence of str . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 4:56:42 PM"Partly because it's an expression, not an instruction" Thanks, Michael. Understood. On Fri, Jan 3, 2025 at 10:30b/AM Michael Kay michaelkay90@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > > > Off topic, but following a train of thought: Was there a . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 4:47:20 PMDimitre provided this gorgeous solution to getting a list of the duplicates in $fieldnames (a sequence of strings): $fieldnames[index-of($fieldnames,.)[2]] Well done Dimitre. /Roger . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 3:30:45 PM> Off topic, but following a train of thought: Was there a particular reason behind the design decision that XPath *if* expressions would require an *else* clause? > Partly because it's an expression, not an instruction: if you look at conditional expressions (like the dreadful ternary opera . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 3:22:49 PMOff topic, but following a train of thought: Was there a particular reason behind the design decision that XPath *if* expressions would require an *else* clause? On Jan 3, 2025, at 9:51b/AM, Bauman, Syd s.bauman@xxxxxxxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: o;? &g . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 2:51:16 PM> b& why empty-string-and-discard rather than just empty sequence? [paraphrased] Because I didnbt think of it! Thanks for the improvement p ________________________________ Are there significant advantages to your suggestions over the following? ( ( for $f in $fieldnames return if ( . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 2:33:48 PMOn 03/01/2025 10:52, Roger L Costello costello@xxxxxxxxx wrote > $fieldnames is a list of strings, e.g., > > ('TYPE', 'USAGE_CD', 'DIR', 'WGS_LAT', 'TYPE', 'WGS_LONG', 'TURN_DIR', 'DIR', 'TYPE') > > I want a list of the duplicates in $fieldnames: > > ('TYPE', 'DIR') <-- . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 2:20:49 PMOn Fri, Jan 03, 2025 at 02:01:33PM -0000, Roger L Costello costello@xxxxxxxxx scripsit: > It is interesting that such a simple problem requires such complex code. It is sometimes necessary to consider that one's construction of complex might be in need of revision. <xsl:for-each-group selec . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 2:16:56 PMHi Roger, This is a short and simple solution - just 19 characters: $f[index-of($f,.)[2]] Just try it :) Can also be found here, and was answered in 2008: https://stackoverflow.com/questions/133092/how-do-you-identify-duplicate-valu es-in-a-numerical-sequence-using-xpath-2-0/287360#287360 . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 2:01:22 PMIt is interesting that such a simple problem requires such complex code. . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 1:50:52 PMIn pure XPath 3.1 you could also try: let $s := sort($in) return distinct-values(for-each-pair($s, tail($s), function($a, $b){$a[. = $b]) ) It's pretty obscure but it's likely to be quite efficient. Michael Kay > On 3 Jan 2025, at 10:52, Roger L Costello costello@xxxxxxxxx <xsl-list-servi . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 12:50:19 PMAm 03.01.2025 um 13:38 schrieb Bauman, Syd s.bauman@xxxxxxxxxxxxxxxx: > Martin & Liam b > Are there significant advantages to your suggestions over the following? > > ( > B ( for $f in $fieldnames returnB if ( count( $fieldnames[ . eq $f ] ) > gt 1 ) then $f else '' ) > B . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 12:37:51 PMMartin & Liam b Are there significant advantages to your suggestions over the following? ( ( for $f in $fieldnames return if ( count( $fieldnames[ . eq $f ] ) gt 1 ) then $f else '' ) => distinct-values() )[. ne ''] I admit it is not simple, but strikes me as simpler. (Note that inste . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 11:23:07 AMOn Fri, 2025-01-03 at 10:52 +0000, Roger L Costello costello@xxxxxxxxx wrote: > Hi Folks, > > $fieldnames is a list of strings, e.g., > > ('TYPE', 'USAGE_CD', 'DIR', 'WGS_LAT', 'TYPE', 'WGS_LONG', > 'TURN_DIR', 'DIR', 'TYPE') > > I want a list of the duplicates in $fieldname . . . Read full entry » Re: Get the duplicates in a listPosted 1/3/2025 11:04:45 AMAm 03.01.2025 um 11:52 schrieb Roger L Costello costello@xxxxxxxxx: Hi Folks, $fieldnames is a list of strings, e.g., ('TYPE', 'USAGE_CD', 'DIR', 'WGS_LAT', 'TYPE', 'WGS_LONG', 'TURN_DIR', 'DIR', 'TYPE') I want a list of the duplicates in $fieldnames: ('TYPE', 'DIR') <-- I don't want any . . . Read full entry » Get the duplicates in a listPosted 1/3/2025 10:52:16 AMHi Folks, $fieldnames is a list of strings, e.g., ('TYPE', 'USAGE_CD', 'DIR', 'WGS_LAT', 'TYPE', 'WGS_LONG', 'TURN_DIR', 'DIR', 'TYPE') I want a list of the duplicates in $fieldnames: ('TYPE', 'DIR') <-- I don't want any duplicates in this list Is there a simple XPath expression to obt . . . Read full entry » Re: How to retrieve the element with value DIR and notPosted 1/3/2025 2:32:19 AM> Or contains(concat(',', field, ','), 'DIR') but then you are sensitive > to values like > "DIR , OTHER" > (a leading or trailing space should be removed by the XML parser, > though) Not a problem if spaces can occur only within the delimiters - just use: contains . . . Read full entry » Re: How to retrieve the element with value DIR and notPosted 1/3/2025 1:16:37 AMOn Thu, 2025-01-02 at 23:04 +0000, Martin Honnen martin.honnen@xxxxxx wrote: > > contains-token tokenizes on pure whitespace, no? With that comma in > there I don't think it helps. oh, i didn't look closely enough, you're right. No, tokenize() it is. Or contains(concat(',', field, ','), . . . Read full entry » Re: How to retrieve the element with value DIR and notPosted 1/2/2025 11:04:37 PMXPath 1.0: /*/*/field[contains(concat(',', .), ',DIR,')] On Thu, Jan 2, 2025 at 2:35b/PM Roger L Costello costello@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Hi Folks, > > I want to retrieve the <row> whose <field> has the string DIR. In the > fo . . . Read full entry » Re: How to retrieve the element with value DIR and notPosted 1/2/2025 11:04:16 PMOn 02/01/2025 23:55, Liam R. E. Quin liam@xxxxxxxxxxxxxxxx wrote: On Thu, 2025-01-02 at 22:35 +0000, Roger L Costello costello@xxxxxxxxx wrote: Hi Folks, I want to retrieve the <row> whose <field> has the string DIR. In the following example, I want the second <row> retrieved. Is . . . Read full entry » Re: How to retrieve the element with value DIR and notPosted 1/2/2025 10:55:39 PMOn Thu, 2025-01-02 at 22:35 +0000, Roger L Costello costello@xxxxxxxxx wrote: > Hi Folks, > > I want to retrieve the <row> whose <field> has the string DIR. In the > following example, I want the second <row> retrieved. Is there a > simple XPath expression to achiev . . . Read full entry » Re: How to retrieve the element with value DIR and notPosted 1/2/2025 10:41:26 PMOn 02/01/2025 23:36, Roger L Costello costello@xxxxxxxxx wrote: I want to retrieve the <row> whose <field> has the string DIR. In the following example, I want the second <row> retrieved. Is there a simple XPath expression to achieve this? <Test> <row> & . . . Read full entry » How to retrieve the element with value DIR and not thePosted 1/2/2025 10:35:45 PMHi Folks, I want to retrieve the <row> whose <field> has the string DIR. In the following example, I want the second <row> retrieved. Is there a simple XPath expression to achieve this? <Test> <row> <field>TURN_DIR, PT_TRN_DIR, NX_TRN_DIR</field& . . . Read full entry » Re: Programming languages for manipulating, transformiPosted 1/1/2025 6:53:11 PM> Want to have a great set of tools in your toolbox for manipulating, transforming, and analyzing data? > Then master XSLT, XPath, AWK, and R. What is notably missing in the proposed set of languages/tools is: Rx (ReactiveX, Reactive Extensions). https://en.wikipedia.org/wiki/ReactiveX Rx p . . . Read full entry » XSL-List GuidelinesPosted 1/1/2025 5:49:13 PMThis information is posted to the XSL-List (and the XSL-List Digest) at intervals under the subject line "XSL-List guidelines". INTRODUCTION TO XSL-LIST XSL-List hosts discussion of XSL itself, XSL applications and implementation, and XSL user questions. XSL-List is open to everyone, us . . . Read full entry » Re: Programming languages for manipulating, transformiPosted 1/1/2025 12:03:53 PMAm 01.01.2025 um 12:58 schrieb Liam R. E. Quin liam@xxxxxxxxxxxxxxxx: On Wed, 2025-01-01 at 11:40 +0000, Roger L Costello costello@xxxxxxxxx wrote: XSLT and XPath are great languages for manipulating and transforming data--provided the data is formatted as XML. For non-XML data, AWK is a great lang . . . Read full entry » Re: Programming languages for manipulating, transformiPosted 1/1/2025 11:58:17 AMOn Wed, 2025-01-01 at 11:40 +0000, Roger L Costello costello@xxxxxxxxx wrote: > Hi Folks, > > XSLT and XPath are great languages for manipulating and transforming > data--provided the data is formatted as XML. > > For non-XML data, AWK is a great language. XSLT can also be good f . . . Read full entry » Re: Programming languages for manipulating, transformiPosted 1/1/2025 11:53:26 AMAm 01.01.2025 um 12:40 schrieb Roger L Costello costello@xxxxxxxxx: XSLT and XPath are great languages for manipulating and transforming data--provided the data is formatted as XML. A bit of heresy on the XSL list perhaps, but XQuery is also great at manipulating and transforming XML data, and wit . . . Read full entry » Programming languages for manipulating, transforming,Posted 1/1/2025 11:40:05 AMHi Folks, XSLT and XPath are great languages for manipulating and transforming data--provided the data is formatted as XML. For non-XML data, AWK is a great language. Neither XSLT, XPath nor AWK are good for statistical analysis of data--the R language (I've heard) is well-suited for this. Want . . . Read full entry » Re: Aw: How to collect the content of the inline siblPosted 12/28/2024 6:13:38 AMHello Rajagopal, Well done sharing both the source XML and desired output; that makes everything easier. As usual, Martin has provided the solution. However, my own tests indicate that the mixed content involved adds additional complexity (no surprise there). So I find that additionally are requir . . . Read full entry » Re: How to collect the content of the inline siblingsPosted 12/28/2024 6:03:24 AMOn Sat, 2024-12-28 at 05:37 +0000, Liam R. E. Quin liam@xxxxxxxxxxxxxxxx wrote: > > Here's a version using a recursive function, for XSLT 1. Haha it's late an di'm tired, probably it should have an empty template to match blank text nodes between strong elements and remove them: <xsl:t . . . Read full entry » Re: How to collect the content of the inline siblingsPosted 12/28/2024 5:37:43 AMOn Sat, 2024-12-28 at 04:26 +0000, Rajagopal CV cvr3@xxxxxxxxxxxxxxxx wrote: > > I want the followingB output. I want to flatten out the <strong> > element.B It looks like you want to join adjacent strong elements, deleting spaces between them. In XSLT 2 or 3 you can probably use . . . Read full entry » Aw: How to collect the content of the inline siblingsPosted 12/28/2024 5:03:40 AMWith XSLT 2 or higher, in a template matching "*[strong]", use eg <xsl:for-each-group select="*" group-adjacent="boolean(self::strong)">, check the current-grouping-key() inside with xsl:choose/when to output a single strong element if it is true and populate by . . . Read full entry » How to collect the content of the inline siblings intoPosted 12/28/2024 4:26:18 AMKindly assist me with an XSL code needed to generate the output I have shared below. Thanks, Rajagopal *Input XML * <?xml version="1.0"?> <root> <content> <p>Some text before</p> <div> <strong>First</st . . . Read full entry » Re: ChatGPT front-end to XML?Posted 12/26/2024 10:23:02 AMYou are describing RAG here (Retrieval-Augmented Generation). The most promising approach is hybrid RAG IMO, which combines: - LLM-generated structured queries (in this case probably XQuery) that would be able to give exact answers to questions like "What airport has the longest runway?" . . . Read full entry » Re: ChatGPT front-end to XML?Posted 12/26/2024 2:51:42 AM> The one and only motivation for such lunacy is to satisfy a brainless > investor asking "what's your AI strategy?" +100 On Wed, Dec 25, 2024 at 6:26b/PM Paul Tyson phtyson@xxxxxxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > The one and only motivation fo . . . Read full entry » Re: ChatGPT front-end to XML?Posted 12/26/2024 2:26:02 AMThe one and only motivation for such lunacy is to satisfy a brainless investor asking "what's your AI strategy?" There are any number of ways a well-curated database can be made to satisfy the reasonable curiosity of its users, none of which involve "ai" or LLMs. (Unfortuna . . . Read full entry » Re: ChatGPT front-end to XML?Posted 12/26/2024 12:08:57 AMWell the OP was using data that are facts and organizing those facts. This answer while 100% correct denies the fact that outside of programming FOR you, nit has many uses that are undeniable. Taking off a programming hat and putting on something a bit wider will reveal that. Kevin Brown . . . Read full entry » Re: ChatGPT front-end to XML?Posted 12/25/2024 11:59:56 PMWhy would one trust ChatGPT? Especially for critical data in real, critical applications? The best ChatGPT can do is provide an answer, if such exists, scraped from Stack Overflow or any internet site. Even in this task ChatGPT produces mediocre results, in cases when the source data isn't similar . . . Read full entry » ChatGPT front-end to XML?Posted 12/25/2024 10:32:06 PMHi Folks, I have an XML document containing data about all the airports in the world. I want to put a ChatGPT front-end to the XML document, so that users can ask questions about its data, such as, "What airport has the longest runway?" or "Please provide a list of civilian airport . . . Read full entry » Re: Status of FOPPosted 12/25/2024 2:52:24 PMOn Mon, Dec 25, Nikolai Grigoriev wrote: Somewhat previous to that, Arved Sandstrom wrote: >> What's gotten me a little bit riled up is the use of FOP as a basis of >> comparison for commercial implementations. I think this is unfair to the user >> community. FOP is not pretendin . . . Read full entry » Status of FOPPosted 12/24/2024 4:13:58 PMHi, all, and best of the season I want to shed some light on Apache XML FOP. My perspective is biased, but I'm trying to take that into account. First, FOP is not currently the fastest, the most optimizing, or the most feature-complete XSL-FO processor. The members of this project have never sugg . . . Read full entry » [ANN] Markup UK 2025: Call for Papers & RegistrationPosted 12/23/2024 7:09:28 PMDear all, Markup UK will take place from Thursday 5th to Saturday 7th June 2025. [1] The venue will be King's College, London. [2] The Call for Papers is now open. [3] We encourage and welcome submissions from both seasoned and first-time contributors alike. [4] Registration is also now open. [5 . . . Read full entry » Re: String contains a regex and then junk ... how toPosted 12/16/2024 2:08:51 PMIsit really "junk" which seems hard to define (as more or less any list of characters is a legal fragment of regex, matching itself.) Is [a-z]+JUNK the regex [a-z]+ followed by JUNK or the regex [a-z]+JUNK ? Or do you just want to strip a trailing <KEYWORDS HERE> which is easie . . . Read full entry » Re: String contains a regex and then junk ... how toPosted 12/16/2024 1:43:04 PM> I wrote a recursive function to do this. See below. Is there is a simpler way to do it? If the regex is always in parens, and if the junk that follows never contains a b)b, then just look for the last b)b. If the regex is always in parens, but the junk might include b(b and/or b)b th . . . Read full entry » Re: String contains a regex and then junk ... how toPosted 12/16/2024 1:41:25 PMA good case for Invisible XML, though sadly we don't have it integrated into Saxon yet. The first step here is finding a matching closing paren. The second step is dealing with backslash-escaped parens. For the first step, I would use xsl:iterate iterating over the characters of the string (in 4. . . . Read full entry » String contains a regex and then junk ... how to removPosted 12/16/2024 1:24:18 PMHi Folks, I want to convert this: <REG_EXP>(([\W\w]{1,80})?) <INFO></REG_EXP> to this: <REG_EXP>(([\W\w]{1,80})?)</REG_EXP> Convert this: <REG_EXP>([A-Z]{2}[0-9A-Z ]{0,13}) <ARF ID></REG_EXP> to this: <REG_EXP>([A-Z]{2}[0 . . . Read full entry » Re: document nodes [in Saxon xsl:message].Posted 12/13/2024 9:03:54 AM> I guess we could try and be smarter about the error recovery, specifically, by putting a filter in front of the complex content constructor to modify invalid content (like attribute nodes) before they get in there and trigger the error. > In fact there already is such a filter - it attempt . . . Read full entry » Re: document nodes.Posted 12/13/2024 8:37:32 AMThe spec, unfortunately, is clear: If the xsl:message instruction contains a sequence constructor, then the sequence obtained by evaluating this sequence constructor is used to construct the content of the new document node, as described in 5.7.1 Constructing Complex Content. and 5.7.1 says that . . . Read full entry » Re: document nodes.Posted 12/13/2024 1:00:24 AMHi Andr\xE9, This is due to a change in how Saxon implements xsl:message. The change has been introduced in Saxon 10. Before, xsl:message has output (I believe) the string value or some other serialization of attributes. Now the items that xsl:message outputs are wrapped in a document node. It w . . . Read full entry » Re: document nodes.Posted 12/13/2024 12:59:58 AMYou can cast the attribute to a string: <xsl:message select="xs:string($struct/@title)"/> From: Andre Cusson akhu01@xxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Sent: Thursday, December 12, 2024 7:44 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: document nodes. . . . Read full entry » document nodes.Posted 12/13/2024 12:43:51 AMHi, There is some Saxon/Oxygen behavior that I do not seem to grasp. I made a simplified use case to present it. I have an xml document (thingtest.xml) that looks somewhat like this: <?xml version="1.0" encoding="UTF-8"?> <thing id="main" title="someth . . . Read full entry » Re: json-to-xml namespacePosted 12/12/2024 1:05:30 AMHI, Interesting considerations. There is no blame, only evlution strategy development. Just to wrap up the initial issue, removing the ns on import and putting it back on export wasn't quite ... satisfying, so I reconsidered and cut json out of the project. Its semantics were twisting mine. Now, . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 4:30:00 PMIt has been more then 40 years, but I LOVED SNOBOL! It was useful for doing what I wanted to do. Came to it after IBM assembler and fortran, and it opened my eyes. --Debbie > On Dec 11, 2024, at 11:12b/AM, Peter Flynn peter@xxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 4:12:15 PMOn 11 December 2024 15:33:25 G. Ken Holman <g.ken.holman@xxxxxxxxx> wrote: > But who has "spare" time these days? When I retired from the day job, people said "You'll be able to do so many things in all that free time." Hah. Learning SNOBOL was not on the list but m . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 4:09:42 PMI know the whole 'no time' for anything problem. As I technical writer, I almost regularly have a need to process text in some form or another.B Thx, Russ On Wednesday, December 11, 2024 at 09:33:26 AM CST, G. Ken Holman g.ken.holman@xxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> w . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 3:33:02 PMThank you, Russ. From what you say, I probably would find SNOBOL far more interesting today now that I know XSLT/XPath. But who has "spare" time these days? At 11/12/2024 15:21 +0000, russurquhart1@xxxxxxxxxxx russurquhart1@xxxxxxxxxxx wrote: Patterns, and the pieces that make up a p . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 3:20:18 PMPatterns, and the pieces that make up a pattern, do have an underlying grammar, but I can understand that putting various pieces together it may not be obviously clear what is going to happen or what the side effects will be. Also, there is a temptation to want to put EVERYTHING into one glorious . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 2:45:41 PMI did mean something else, sorry. Lexically, yes, strings need to be closed. It was a long time ago, but my recollection is that the syntax allowed any combination of tokens and that combination would mean something. I wouldn't get a syntax error that the order of tokens was wrong, or that decl . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 2:19:39 PMI love Snobol/Spitbol and have used it from my college days to the present for text processing of non-xml files. I love it and am so confortable with using it. As I learned Snobol before GREP was available, I never go into Regular expression very much. I'm not sure what you mean that there are no . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 12:48:10 PM> What I hated about SNOBOL (in 1979? 1978?) was that there was no such thing as a syntax error. Regular expressions seem to have inherited that tradition. Michael Kay Saxonica . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 12:44:47 PMWhat I hated about SNOBOL (in 1979? 1978?) was that there was no such thing as a syntax error. Everything you expressed meant *something*. I couldn't wait until the next Wednesday when we moved on to yet another programming language in the course overviewing programming languages. Yuck! At 11/ . . . Read full entry » Re: json-to-xml namespacePosted 12/11/2024 12:27:06 PM>> The XML representation of JSON that XSLT 3 and XPath 3.1 define and share puts those elements into that namespace, like most XML vocabularies use a namespace. > > Wow. That's a shockingly bad choice of namespace URL, as if namespaces > weren't confusing enough already. Let's take . . . Read full entry » Re: XSLT is a pattern-action language. So is AWK. WhatPosted 12/11/2024 12:12:49 PMFirst one I came across, back in the early 70s, was SNOBOL - but I never used it in anger. There was a system that was popular in the 70s in the UK called FILETAB - the basic idea being "decision tables", where you write a spreadsheet with conditions on one axis and actions on the other. . . . Read full entry » Re: json-to-xml namespacePosted 12/11/2024 11:42:36 AMOn 11/12/2024 12:37, Elliotte Rusty Harold elharo@xxxxxxxxxxx wrote: > On Tue, Dec 10, 2024 at 8:48b/AM Martin Honnenmartin.honnen@xxxxxx > <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: >> The XML representation of JSON that XSLT 3 and XPath 3.1 define and share puts those ele . . . Read full entry » Re: json-to-xml namespacePosted 12/11/2024 11:36:51 AMOn Tue, Dec 10, 2024 at 8:48b/AM Martin Honnen martin.honnen@xxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > The XML representation of JSON that XSLT 3 and XPath 3.1 define and share puts those elements into that namespace, like most XML vocabularies use a namespace. Wow. . . . Read full entry » Re: json-to-xml namespacePosted 12/11/2024 11:32:25 AMIs that really what it does? You might be misunderstanding how namespaces work in XML. Then again the function might be buggy. Do you have some example source code and output? On Tue, Dec 10, 2024 at 8:22b/AM Andre Cusson akhu01@xxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > . . . Read full entry » XSLT is a pattern-action language. So is AWK. What otPosted 12/11/2024 10:57:51 AMHi Folks, I love programming languages that offer this style of programming: "if the input matches this pattern, then do that action." That is, I love pattern-action languages. XSLT is a pattern-action language. So is AWK. What other languages are pattern-action? /Roger . . . Read full entry » Re: json-to-xml namespacePosted 12/10/2024 11:42:47 AMHi, These are firewall configurations and rules that get imported, processed, managed and exported back. Naturally, I would rather put the data in the proper ns than have to remove one to give it another one, on import, and then reverse everything on export. It is not a big deal, a few templates . . . Read full entry » Re: json-to-xml namespacePosted 12/10/2024 9:24:48 AMSorry, meant to write *json-to-xml()*. On Tue, Dec 10, 2024 at 10:23b/AM Alan Painter alan.painter@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Also, going back to your original question: > > > This root element has local-name() "map". xslt maps are fu . . . Read full entry » Re: json-to-xml namespacePosted 12/10/2024 9:23:17 AMAlso, going back to your original question: > This root element has local-name() "map". xslt maps are functions, but this is an element not an xslt map. There is some confusion in this question between the *"map"* type in XPath/XSLT and an XML element with a local-name of * . . . Read full entry » Re: json-to-xml namespacePosted 12/10/2024 9:09:41 AMAdding to what Martin Honnen has mentioned in his mail: The function *xml-to-json()* is defined here in the spec: https://www.w3.org/TR/xpath-functions-31/#func-xml-to-json As shown in the definition, the XML elements produced by the conversion function are in the *xpath-functions* namespace. ht . . . Read full entry » Aw: json-to-xml namespacePosted 12/10/2024 8:48:01 AMThe XML representation of JSON that XSLT 3 and XPath 3.1 define and share puts those elements into that namespace, like most XML vocabularies use a namespace. -- Gesendet mit der GMX Mail App Am 10.12.24, 09:22 schrieb "Andre Cusson akhu01@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxx . . . Read full entry » json-to-xml namespacePosted 12/10/2024 8:22:15 AMHi, I am a little puzzled as I convert some json to xml, the json-to-xml function seems to put the resulting xml in the http://www.w3.org/2005/xpath-functions namespace, as specified on its root element. This root element has local-name() "map". xslt maps are functions, but this is an el . . . Read full entry » [ANN] XSLT 3, Schematron - Upcoming virtual courses atPosted 12/10/2024 4:33:22 AMI had people interested in XSLT 3, in Schematron, in CSS, but not enough yet to run the courses. In January i plan to run an XSLT 3 course, likely on a European timezone. See https://www.delightfulcomputing.com/ Discounts are available (yes, including the barefoot discount, since people always a . . . Read full entry » XSL-List GuidelinesPosted 12/2/2024 2:06:03 AMThis information is posted to the XSL-List (and the XSL-List Digest) at intervals under the subject line "XSL-List guidelines". INTRODUCTION TO XSL-LIST XSL-List hosts discussion of XSL itself, XSL applications and implementation, and XSL user questions. XSL-List is open to everyone, us . . . Read full entry » [ANN] Version 27.0 of the Oxygen XML Suite of ProductsPosted 11/29/2024 7:45:06 AMHi everyone, We are excited to announce that Oxygen XML Developer/Editor version 27.0 is now available! Listing below some new features which may be useful for the XSL community: XSLT/XQuery ================================== * The built-in Saxon processor from Saxonica, used for XSLT and XQuer . . . Read full entry » Re: Seek your recommendation on how to report differenPosted 11/15/2024 6:35:56 PM> > Question: how do you recommend reporting differences between two <row> element sequences? Depends on how smart you want to be and on what kind of differences you want to handle. If you want to do it really well, take a look at what a product like DeltaXML does, and then try to be b . . . Read full entry » Re: Seek your recommendation on how to report differenPosted 11/15/2024 4:59:36 PM> Question: how do you recommend reporting differences between two <row> element sequences? You will have to do what deep-equal() is doing, and report the first found difference. Optionally, you may continue the comparison and report **all** found differences. Another, maybe simpler way, . . . Read full entry » Re: Seek your recommendation on how to report differenPosted 11/15/2024 3:31:40 PMOn Fri, Nov 15, 2024 at 02:14:20PM -0000, Roger L Costello costello@xxxxxxxxx scripsit: > Question: how do you recommend reporting differences between two <row> element sequences? First question - is this positional? that is, you always want to compare row in position 1 to row in position . . . Read full entry » Seek your recommendation on how to report differencesPosted 11/15/2024 2:14:11 PMHi Folks, What does it mean to compare two sequences of <row> elements, where each <row> element has (leaf) child elements? Suppose sequence #1 has this <row> element: <row> <DESC>-</DESC> </row> If there is no <row> in sequence #2 . . . Read full entry » Re: Saxon documentation references defunct expath filePosted 11/12/2024 10:32:15 AMThis is a mixed content issue caused by the css being served with a hard coded http://... See https://github.com/expkg-zone58/ex-xparse/issues/3 for another example. Now current versions of Firefox (at least on Windows) block the mixed content css load, but also force the upgrade from http: to http . . . Read full entry » Re: Saxon documentation references defunct expath filePosted 11/12/2024 9:17:19 AM> On 12 Nov 2024, at 07:56, Norm Tovey-Walsh ndw@xxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > >> This SAXON documentation page: >> https://www.saxonica.com/html/documentation12/extensions/functions/expath.htm l >> >> references this page: >> . . . Read full entry » Re: Saxon documentation references defunct expath filePosted 11/12/2024 7:55:49 AM> This SAXON documentation page: > https://www.saxonica.com/html/documentation12/extensions/functions/expath.htm l > > references this page: > > https://expath.org/spec/file > > That latter page contains garbage. In what sense, garbage? When I follow that link, I get the b . . . Read full entry » Re: Saxon documentation references defunct expath filePosted 11/11/2024 6:00:29 PMHi Roger, I suggest filing an issue on the bug-tracker site mentioned here: https://www.saxonica.com/support/support.xml Saxonica have been wonderfully responsive to documentation-related requests for me. - Chris On Mon, Nov 11, 2024 at 10:48b/AM Roger L Costello costello@xxxxxxxxx < xsl . . . Read full entry » Re: Copy XPATHPosted 11/11/2024 3:55:17 PMAs Martin Honnen noted, in XPath or XSLT ver 3+ one can use the standard path() function - https://www.w3.org/TR/xpath-functions-31/#func-path For a solution with XSLT 1.0 (or 2.0) see this Stack Overflow answer: https://stackoverflow.com/a/4747858/36305 Thanks, Dimitre On Mon, Nov 11, 2024 at 7 . . . Read full entry » Saxon documentation references defunct expath file modPosted 11/11/2024 3:48:06 PMThis SAXON documentation page: https://www.saxonica.com/html/documentation12/extensions/functions/expath.htm l references this page: https://expath.org/spec/file That latter page contains garbage. . . . Read full entry » Aw: Copy XPATHPosted 11/11/2024 3:31:56 PMXSLT/XPath 3 have a "path()" function. I am trying to copy XPATH along with attributes value in an OUTPUT xml file. XML:<bb> <as id="ENCA" major.version="6" minor.version="0"> <tl>The Title</tl> <b/> <ts id="ENCA_GC&quo . . . Read full entry » Copy XPATHPosted 11/11/2024 3:28:51 PMHi, I am trying to copy XPATH along with attributes value in an OUTPUT xml file. XML: <bb> <as id="ENCA" major.version="6" minor.version="0"> <tl>The Title</tl> <b/> <ts id="ENCA_GC"> <tl>TS Titl . . . Read full entry » Re: Xslt Logo ?Posted 11/9/2024 11:35:22 AMAnother for consideration? Stood for a while on this list. regards On Fri, 8 Nov 2024 at 09:54, Michael Kay michaelkay90@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > > > At one point when i worked at W3C i requested logos for XML, XSLT, > > XQuery etc., . . . Read full entry » Re: Can the SAXON SCM tool get the annotations in a sPosted 11/8/2024 3:30:11 PMSorry, no, the SCM format doesn't retain annotations. It's been on our TODO list for years but hasn't made it to the top. In fact, Saxon discards annotations immediately during the first phase of schema parsing. Michael Kay Saxonica > On 8 Nov 2024, at 15:19, Roger L Costello costello@xxxxxxx . . . Read full entry » Can the SAXON SCM tool get the annotations in a schemaPosted 11/8/2024 3:19:08 PMHi Folks, The SAXON Schema Component Model (SCM) tool is great. With a push of the button I get a single file describing all the elements, attributes, simpleTypes, and complexTypes in all the schema files. In my case, the schema is comprised of 20 files; it's nice to have a consolidated view of th . . . Read full entry » Re: Xslt Logo ?Posted 11/8/2024 11:06:10 AMOn Fri, 2024-11-08 at 09:55 +0000, Michael Kay michaelkay90@xxxxxxxxx wrote: > > > > At one point when i worked at W3C i requested logos for XML, XSLT, > > XQuery etc., because HTML 5 had just got one. > > > I always thought the HTML5 logo was culturally quite inappropria . . . Read full entry » Re: Xslt Logo ?Posted 11/8/2024 10:08:23 AMOn 8 November 2024 09:55:18 "Michael Kay <michaelkay90@xxxxxxxxx> wrote: [C"BB&] > Possibly even curly braces rather than angle brackets! \XSLT{C0BB'B} P . . . Read full entry » Re: Xslt Logo ?Posted 11/8/2024 9:54:51 AM> At one point when i worked at W3C i requested logos for XML, XSLT, > XQuery etc., because HTML 5 had just got one. I always thought the HTML5 logo was culturally quite inappropriate. Very American, very masculine. If I were to commission one for XSLT I would ask for softer colours, elega . . . Read full entry » Re: Xslt Logo ?Posted 11/8/2024 7:12:32 AMThank you, Chris ! Christophe Le 07/11/2024 \xE0 21:13, Chris Papademetrious christopher.papademetrious@xxxxxxxxxxxx a \xE9crit\xA0: > > Hi Christophe, > > Here you go (scroll down for the SVGs): > > https://www.oxygenxml.com/oxygen_logos.html > > * Chris > > *From . . . Read full entry » Re: Xslt Logo ?Posted 11/8/2024 7:11:49 AMThanks a lot ! Christophe Le 07/11/2024 \xE0 21:40, Peter Flynn a \xE9crit\xA0: > On 07/11/2024 08:00, Christophe Marchand cmarchand@xxxxxxxxxxxxxx wrote: >> Hello ! >> >> is there an official, semi-official, non-official XSLT logo I could >> use in a slide ? I'd prefe . . . Read full entry » Re: Xslt Logo ?Posted 11/7/2024 8:41:00 PMOn 07/11/2024 08:00, Christophe Marchand cmarchand@xxxxxxxxxxxxxx wrote: Hello ! is there an official, semi-official, non-official XSLT logo I could use in a slide ? I'd prefer a non-commercial product logo... I made one in the style of the XML logo. Feel free... https://xml.silmaril.ie/xsltl . . . Read full entry » Re: Xslt Logo ?Posted 11/7/2024 8:13:54 PMHi Christophe, Here you go (scroll down for the SVGs): https://www.oxygenxml.com/oxygen_logos.html * Chris From: Christophe Marchand cmarchand@xxxxxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Sent: Thursday, November 7, 2024 2:35 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subjec . . . Read full entry » Re: Xslt Logo ?Posted 11/7/2024 7:35:15 PMThanks to all of you for your responses ! I now have to find something else to put in my slides... Probably an oXygen icon... @oXygen guys : do you have a "correct" definition of your Xslt logo ? Best regards, Christophe Le 07/11/2024 \xE0 20:05, Liam R. E. Quin liam@xxxxxxxxxxxxxxxx . . . Read full entry » Re: Xslt Logo ?Posted 11/7/2024 7:05:10 PMOn Thu, 2024-11-07 at 07:59 +0000, Christophe Marchand cmarchand@xxxxxxxxxxxxxx wrote: > > is there an official, semi-official, non-official XSLT logo I could > use in a slide ? I'd prefer a non-commercial product logo... At one point when i worked at W3C i requested logos for XML, XSLT, . . . Read full entry » Re: Xslt Logo ?Posted 11/7/2024 9:31:11 AMOn 7 November 2024 08:00:09 Christophe Marchand <cmarchand@xxxxxxxxxxxxxx> wrote: > is there an official, semi-official, non-official XSLT logo I could use in > a slide ? I'd prefer a non-commercial product logo... Not as far as I know. The original red <?XML!> logo (as in the . . . Read full entry » Re: Xslt Logo ?Posted 11/7/2024 9:04:22 AMI think the answer is no. Michael Kay > On 7 Nov 2024, at 08:00, Christophe Marchand cmarchand@xxxxxxxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > > Hello ! > > is there an official, semi-official, non-official XSLT logo I could use in a slide ? I'd prefer a non . . . Read full entry » Xslt Logo ?Posted 11/7/2024 7:59:41 AMHello ! is there an official, semi-official, non-official XSLT logo I could use in a slide ? I'd prefer a non-commercial product logo... Thanks in advance, Christophe . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/4/2024 4:07:40 PMHello, Joel's story suggests something I have seen myself. It's not so much that XSLT is good or hard or intelligible or not, but that in general and across the board, 'teams' seem to be made up of players who do not encroach on others' positions and have no curiosity about what their co-workers d . . . Read full entry » Re: What types of programming problems is XSLT designePosted 11/4/2024 2:00:25 PMXSLT is not necessarily the ideal language when you have to parse stuff that is not XML. (And, to M. Kay\x92s point, a lot of the juicy bits of the average XSLT program are not XML, but rather XPath.) ________________________________ It's more about what the data says than the fact that it is in X . . . Read full entry » Re: What types of programming problems is XSLT designePosted 11/4/2024 1:21:51 PMIt's more about what the data says than the fact that it is in XML. In some cases reading the XML is trivial, but doing the work is not something suited to XSLT. For example when XML is used to express a program, XSLT is not the best program interpreter. If the XML was a list of email addresses a . . . Read full entry » What types of programming problems is XSLT designed foPosted 11/4/2024 1:02:00 PMYesterday Michael Kay wrote: ---------------------------------------------- XSLT has always been designed as a special-purpose programming language rather than a general-purpose language, and writing compilers is not one of those special purposes. ---------------------------------------------- I un . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 8:52:59 PMOn 03/11/2024 21:12, Joel Kalvesmaki director@xxxxxxxxxxxxx wrote: In recent conversation with a developer who was deploying some of my XSLT code in a .NET framework, I tried to help him appreciate what global parameters are, and how they need to be exposed to his C# applications. I showed him a bi . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 8:12:16 PMI've found that the reason for this resistance is a combination of the following: In recent conversation with a developer who was deploying some of my XSLT code in a .NET framework, I tried to help him appreciate what global parameters are, and how they need to be exposed to his C# applications. . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 5:25:26 PMHi Roger, > The project is in its early stages. There might be an opportunity to convince people to use XSLT > rather than Java. What argument should I make to persuade them to use XSLT? Maybe instead of arguing, organize a small programming competition on solving an XML-processing - relate . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 1:03:06 PMhttps://en.m.wikipedia.org/wiki/Technical_debt Sent from Nine<http://www.9folders.com/> ________________________________ From: "Roger L Costello costello@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Sent: Sunday, November 3, 2024 6:55 AM To: xsl-list@xxxxxxxxxxxxxxxx . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 12:03:19 PMOn 03/11/2024 10:47, Roger L Costello costello@xxxxxxxxx wrote: [...] I don't understand why anyone would not use XSLT to process XML documents. You are not alone, except that there do exist other languages which process XML, such as Omnimark, and there are libraries for all the major programming . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 11:54:41 AMHi Alan, You wrote: ... technical debt ... What is technical debt? /Roger . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 11:33:15 AMHey Roger, As a long-time XSLT evangelist, I'm often struggling with the resistance to using XSLT on XML/JSON/other structured data. I've found that the reason for this resistance is a combination of the following: a) XSLT is outside of most developers' comfort zone b) Some people are familiar w . . . Read full entry » Re: Why do some people not use XSLT to process XML-foPosted 11/3/2024 11:30:45 AM> I don't understand why anyone would not use XSLT to process XML documents. The XSLT language was explicitly designed for processing XML documents, i.e., XSLT is a domain specific language (DSL). When a DSL exists, shouldn't it always be chosen over a general-purpose language such as Java? Peo . . . Read full entry » Why do some people not use XSLT to process XML-formattPosted 11/3/2024 10:47:21 AMHi Folks, I am working on a project that has created a large XML Schema. The creators of the XSD deliberately avoided using xs:choice and several other XSD constructs (instead of xs:choice, they used xs:sequence containing optional elements). They did this because: (1) the XML documents -- which c . . . Read full entry » XSL-List GuidelinesPosted 11/1/2024 2:17:16 PMThis information is posted to the XSL-List (and the XSL-List Digest) at intervals under the subject line "XSL-List guidelines". INTRODUCTION TO XSL-LIST XSL-List hosts discussion of XSL itself, XSL applications and implementation, and XSL user questions. XSL-List is open to everyone, us . . . Read full entry » Re: I wrote an XSLT program that converts a mapping XMPosted 10/31/2024 7:28:03 AMHi Folks, Thank you for your excellent responses! To answer your questions: > Does the mapping file have a way to express things that might be context or content dependent? Yes. There were cases in which multiple legacy elements had the same name, but with different parent elements, and they . . . Read full entry » Re: I wrote an XSLT program that converts a mapping XMPosted 10/30/2024 11:05:24 PMOn Wed, 2024-10-30 at 11:45 +0000, Roger L Costello costello@xxxxxxxxx wrote: > > To implement the conversion, I used a pipeline approach.B This is a cool approach, yes. Did you write the XSLT out to a file, or did you use fn:transform() to evaluate the generated XSLT by giving it a styles . . . Read full entry » Re: I wrote an XSLT program that converts a mapping XMPosted 10/30/2024 10:30:20 PMDid you use namespace-aliasing? I found it pretty much essential when writing XSLT that wrote XSLT that wrote XSLTb& otherwise having to use xsl:element is rather tediousb& John Lumley john@xxxxxxxxxxxxxx > On 30 Oct 2024, at 11:45, Roger L Costello costello@xxxxxxxxx <xsl-list-serv . . . Read full entry » Re: I wrote an XSLT program that converts a mapping XMPosted 10/30/2024 5:03:49 PMThere are different possible variations of the "multi-step transformation" pattern. Besides generating an XSLT stylesheet in the last step - which is similar to "compiling", one could alternatively have an XSLT transformation that interprets the final produced rules-result - in . . . Read full entry » Re: I wrote an XSLT program that converts a mapping XMPosted 10/30/2024 5:01:57 PMHi Roger, This sounds like really useful generalized solution! It also shows benefits of doing up analysis and tooling work up front. Thank you for sharing! Does the mapping file have a way to express things that might be context or content dependent, such as variations in how a particular elemen . . . Read full entry » Re: I wrote an XSLT program that converts a mapping XMPosted 10/30/2024 3:54:04 PMHey Roger -- You are so right about XSLT as a transpiler and support framework for DSLs. All the files in an OSCAL release, such as https://github.com/usnistgov/OSCAL/releases/tag/v1.1.2, are produced using XSLT. (Currently. That may change!) This includes XSDs, JSON Schemas, and XSLTs. Look at s . . . Read full entry » I wrote an XSLT program that converts a mapping XML fiPosted 10/30/2024 11:45:37 AMHi Folks, I created an XML file (a "mapping file") that describes how to convert a legacy XML format into a new XML format. To implement the conversion, I used a pipeline approach. The first step is an XSLT program that converts the mappings (in the mapping file) into a bunch of templat . . . Read full entry » Declarative Amsterdam 2024 reminderPosted 10/23/2024 12:02:48 PMReminder: In two weeks, November 7 and 8, the Declarative Amsterdam 2024 conference will be held. This year's <https://declarative.amsterdam/program> program contains a variety of technical and non-technical topics, such as: Affix grammars, Answer Set Programming, banking, custom elements, . . . Read full entry » Re: XSL stylesheet issue - part 2 (newbie)Posted 10/22/2024 3:43:19 PMI've always said: XSLT requires real intelligence. On Tue, Oct 22, 2024, 10:06 Frank Dissinger frank.dissinger@xxxxxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Great! The script works fine now! Many, many, thanks!!! > > I hope I can dig deeper into this XSL matter o . . . Read full entry » XSL stylesheet issue - part 2 (newbie)Posted 10/22/2024 8:06:11 AMGreat! The script works fine now! Many, many, thanks!!! I hope I can dig deeper into this XSL matter one day. But it's difficult in a one-man techwrite department. There's just not enough time. (Everybody praises AI. But it's obviously not as smart as I thought...) -----UrsprC<ngliche Nachric . . . Read full entry » Re: XSL stylesheet issue - part 2 (newbie)Posted 10/22/2024 7:56:17 AMOn 22/10/2024 09:48, Frank Dissinger frank.dissinger@xxxxxxxxxxxx wrote: There is still one issue. The "level" variable seems to remain empty. It is supposed to be a number which indicates the nesting level of the heading and should become part of the value of the "class" attrib . . . Read full entry » XSL stylesheet issue - part 2 (newbie)Posted 10/22/2024 7:41:57 AMMany, many thanks, Martin. Now the TOC is created (almost) as expected. I understand that the logical error was to test for IDs which are not available in the input file because they were generated by the transformation. There is still one issue. The "level" variable seems to remain emp . . . Read full entry » Re: XSL stylesheet issue - part 2 (newbie)Posted 10/22/2024 7:32:00 AMOn 22/10/2024 08:41, Martin Honnen martin.honnen@xxxxxx wrote: <!-- Template to generate the TOC --> B <xsl:template mode="step2" match="div[@id='rn_toc']"> B B B <xsl:copy> B B B B B <xsl:apply-templates select="@*"/> B B B B B <xsl:appl . . . Read full entry » Re: XSL stylesheet issue - part 2 (newbie)Posted 10/22/2024 6:41:33 AMFrank, as Wendell pointed out, you seem to want two different processing steps, if you want to do that in one XSLT stylesheet (instead of chaining two) use modes <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet B xmlns:xsl="http://www.w3.org/1999/XSL/Transfo . . . Read full entry » XSL stylesheet issue - part 2 (newbie)Posted 10/22/2024 5:53:16 AMHi Wendell Thank you for your reply. I have attached the input HTML file to this message. Frank Dissinger Documentation Manager .......................................... CGS ORIS GmbH frank.dissinger@xxxxxxxxxxxx | www.cgs-oris.com Kettelerstrasse 24, 63512 Hainburg (Germany) Phone: +49 6182 962 . . . Read full entry » Re: XSL stylesheet issue - part 2 (newbie)Posted 10/21/2024 10:06:03 PMHello Frank, Your XSLT appears to assume that it can find elements marked with @id attributes, for which it produces links (list items with anchors). But I am guessing there are no such attributes in the input document, because another template in the same XSLT is adding them, and why would it do . . . Read full entry » XSL stylesheet issue - part 2 (newbie)Posted 10/21/2024 4:04:11 PMHi again, I am stuck again. The next and last step in my XSL script is to create the hyperlinked TOC entries for all elements with an ID attribute that starts with the characters btocrefb. With the help of AI, I added some XSL templates. The script is supposed to create a TOC like this: <p c . . . Read full entry » XSL stylesheet issue - part 2 (newbie)Posted 10/21/2024 1:55:16 PMHerebs the attachment. COLOR TUNER Version 3.4 Release Notes B) CGS ORIS GmbH b 10/21/2024 ===================================================================== This file describes the additions, modifications and bug fixes in COLOR TUNER Version 3.4. Licensing --------- COLOR TUNER Version 3. . . . Read full entry » XSL stylesheet issue - part 2 (newbie)Posted 10/21/2024 1:54:06 PMHi again, I am stuck again. The next and last step in my XSL script is to create the hyperlinked TOC entries for all elements with an ID attribute that starts with the characters btocrefb. With the help of AI, I added some XSL templates. The script is supposed to create a TOC like this: <p . . . Read full entry » XSL stylesheet issue (newbie)Posted 10/21/2024 11:12:18 AMHi Martin, I have added the bxpath-default-namespaceb attribute and now the script indeed produces the expected result. Thank you very much for your great help! The XSL element looks like this now: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" versi . . . Read full entry » Jats to PDF CoursePosted 10/19/2024 2:17:41 AMAre you interested in a JATS to PDF with CSS course? Are there specific ares you'd like it to cover? Ibm testing the water here... possibilities might include * basic CSS intro, how CSS actually works * the main CSS formatters compared * pdf accessibility: screen vs print * advanced topics B - . . . Read full entry » upcoming online courses at Delightful ComputingPosted 10/19/2024 2:16:59 AMUpcoming: * XSLT 2 to 3 B A course to help XSLT 2 users move to XSLT 3, which has many B new features and can boost productivity and maintainability. B (three days, depending on the people on the course and B your needs) * XSLT Booster B For people who are a little rusty on XSLT 2, B or w . . . Read full entry » XSL stylesheet issue (newbie)Posted 10/17/2024 8:16:00 PMThank you to all of you for this great feedback! I'll let you know how I get along on Monday. Freundliche GrC<Ce | Best regards Frank Dissinger Documentation Manager .......................................... CGS ORIS GmbH frank.dissinger@xxxxxxxxxxxx | www.cgs-oris.com Kettelerstrasse 24 | 63 . . . Read full entry » Re: XSL stylesheet issue (newbie)Posted 10/17/2024 7:24:18 PMOn 17 October 2024 19:07:02 "Michael Kay michaelkay90@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: >> >> I admit that I have little to no knowledge of XSLT. ChatGPT was my friend. > > Oh dear. I suppose this is the future of programming. You may b . . . Read full entry » Re: XSL stylesheet issue (newbie)Posted 10/17/2024 6:06:37 PM> I admit that I have little to no knowledge of XSLT. ChatGPT was my friend. Oh dear. I suppose this is the future of programming. Michael Kay Saxonica . . . Read full entry » Re: XSL stylesheet issue (newbie)Posted 10/17/2024 6:01:30 PMLook up the generate-id function if you want a unique id value. Perhaps prefix it with a constant if needed? HTH On Thu, 17 Oct 2024 at 18:21, Frank Dissinger frank.dissinger@xxxxxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Hello everyone, > > The stylesheet below . . . Read full entry » Re: XSL stylesheet issue (newbie)Posted 10/17/2024 5:52:07 PMOn 17/10/2024 19:41, Martin Honnen martin.honnen@xxxxxx wrote: >> The stylesheet below is supposed to add a unique 'id' attribute named 'tocref001', 'tocref002' etc. to all <h2>, <h3> and <p class="rn_heading"> elements which are descendants of an element with an ' . . . Read full entry » Re: XSL stylesheet issue (newbie)Posted 10/17/2024 5:40:57 PMOn 17/10/2024 19:22, Frank Dissinger frank.dissinger@xxxxxxxxxxxx wrote: > Hello everyone, > > The stylesheet below is supposed to add a unique 'id' attribute named 'tocref001', 'tocref002' etc. to all <h2>, <h3> and <p class="rn_heading"> elements which are des . . . Read full entry » XSL stylesheet issue (newbie)Posted 10/17/2024 5:21:40 PMHello everyone, The stylesheet below is supposed to add a unique 'id' attribute named 'tocref001', 'tocref002' etc. to all <h2>, <h3> and <p class="rn_heading"> elements which are descendants of an element with an 'id' attribute named 'rn_release_notes'. The script runs . . . Read full entry »
|
PURCHASE STYLUS STUDIO ONLINE TODAY!!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Learn XQuery in 10 Minutes!Say goodbye to 10-minute abs, and say Hello to "Learn XQuery in Ten Minutes!", the world's fastest and easiest XQuery primer, now available for free! Ask Someone You KnowDoes your company use Stylus Studio? Do your competitors? Engineers from over 100,000 leading companies use Stylus Studio, and now you can ask someone from your own organization about their experiences using Stylus Studio. |