xsl-list
[Top] [All Lists]

Re: [xsl] Spell Check Type Matching in XPath?

2022-04-21 14:01:37
I’m looking at Jeni’s code now. I’ll see what I can do with it.

The fact that this is the best there is (a MarkMail search basically brought me 
to Mike’s response below), it suggests that there’s not something more obvious 
that I simply failed to see.

However, Jeni’s comments in her post about recursion suggests there’s a way to 
improve the code in XSLT 3/XPath 3, maybe something using iterate….

Cheers,

E.

_____________________________________________
Eliot Kimber
Sr Staff Content Engineer
O: 512 554 9368
M: 512 554 9368
servicenow.com<https://www.servicenow.com>
LinkedIn<https://www.linkedin.com/company/servicenow> | 
Twitter<https://twitter.com/servicenow> | 
YouTube<https://www.youtube.com/user/servicenowinc> | 
Facebook<https://www.facebook.com/servicenow>

From: Michael Kay mike(_at_)saxonica(_dot_)com 
<xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com>
Date: Thursday, April 21, 2022 at 1:35 PM
To: xsl-list <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Subject: Re: [xsl] Spell Check Type Matching in XPath?
[External Email]

Jeni Tennison's work on computing Levenshtein distance in XSLT may be relevant:

http://www.jenitennison.com/2007/05/03/levenshtein-distance-in-xslt-2-0.html<https://urldefense.com/v3/__http:/www.jenitennison.com/2007/05/03/levenshtein-distance-in-xslt-2-0.html__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0wvUWpW4$>

(It would be interesting to see it reworked for XSLT 3.0...)

Search also for "Levenshtein distance XSLT" on Markmail.

Michael Kay
Saxonica


On 21 Apr 2022, at 18:57, Eliot Kimber 
eliot(_dot_)kimber(_at_)servicenow(_dot_)com<mailto:eliot(_dot_)kimber(_at_)servicenow(_dot_)com>
 
<xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com<mailto:xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com>>
 wrote:

I’m writing a Schematron rule that tries to identify URLs where the server 
component is close to, but not quite, 
“docs.servicenow.com<http://docs.servicenow.com/>”, i.e., “seivcenow” or 
“servcinow” or whatever. I also need to eliminate servers that are not like 
servicenow, such as 
“docs.amazon.com<https://urldefense.com/v3/__http:/docs.amazon.com/__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0QtNxuNo$>”.

Basically I want a the kind of fuzzy match on “servicenow” that you’d get with 
normal spell checking.

I’m not seeing an easy way to do this in XSLT/XPath (in the context of the XSLT 
Schematron engine in Oxygen XML).

But I feel like I’m missing some more-or-less obvious way to do this with 
regular expression or maybe a fold or something (I can use XPath 3).

What am I missing?

Thanks,

E.
_____________________________________________
Eliot Kimber
Sr Staff Content Engineer
O: 512 554 9368
M: 512 554 9368
servicenow.com<https://www.servicenow.com/>
LinkedIn<https://urldefense.com/v3/__https:/www.linkedin.com/company/servicenow__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0CQXNfd0$>
 | 
Twitter<https://urldefense.com/v3/__https:/twitter.com/servicenow__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0gwounqE$>
 | 
YouTube<https://urldefense.com/v3/__https:/www.youtube.com/user/servicenowinc__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0mBrJ7hE$>
 | 
Facebook<https://urldefense.com/v3/__https:/www.facebook.com/servicenow__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0l2glTZE$>
XSL-List info and 
archive<https://urldefense.com/v3/__http:/www.mulberrytech.com/xsl/xsl-list__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0mp6Bm1Y$>
EasyUnsubscribe<https://urldefense.com/v3/__http:/lists.mulberrytech.com/unsub/xsl-list/293509__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0lbVMiGg$>
 (by email)

XSL-List info and 
archive<https://urldefense.com/v3/__http:/www.mulberrytech.com/xsl/xsl-list__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0mp6Bm1Y$>
EasyUnsubscribe<https://urldefense.com/v3/__http:/lists.mulberrytech.com/unsub/xsl-list/3453418__;!!N4vogdjhuJM!EDEQDqZFTDkYY3FS1QNVWhtqkc3_fD5G6ZRXn4XYI6TGO3F5tGGa0y2gEpc4ZnP1-XzDm--wRzKL14FM6ewNLz7j2q2cguLDAPM0-OdkxGM$>
 (by email<>)
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--
<Prev in Thread] Current Thread [Next in Thread>