Re: [xsl] Need an XPath expression which checks that all commas are escaped

Subject: Re: [xsl] Need an XPath expression which checks that all commas are escaped
From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 3 Nov 2017 18:08:30 -0000
On 03.11.2017 19:03, Costello, Roger L. costello@xxxxxxxxx wrote:

I need an XPath 2.0 expression for this:

	Check that each comma in the <value>
  	element is escaped with a backslash.

Do you want that expression to return a boolean value of true or false?


Examples:

This is good:

<value>A\, B</value>

This is bad:

<value>A, B</value>

This is also bad, because one comma is escaped but the other is not:

<value>A\, B, C</value>

I created an XPath expression to see if the text is good:

tokenize(text(), ',')[position() lt last()][ends-with(., '\')]

I think that is correct. Is there a simpler XPath expression to solve this?

Shouldn't the check rather be
every $token in tokenize(., ',')[position() lt last()] satisfies ends-with($token, '\')
?


Current Thread