On 30/08/2017 11:29, Juergen Schoenwaelder wrote:
On Wed, Aug 30, 2017 at 10:16:30AM +0100, Robert Wilton wrote:
Hi Andy,

What I am suggesting makes it easier for readers, because I am a proponent
of simpler regular expressions that are easy to read and understand.

For example, I wonder how many YANG model readers would immediately
comprehend what this pattern statement means:

pattern "\p{Sc}\p{Zs}?\p{Nd}+\.\p{Nd}{2}"?

Does allowing such patterns really make it easier for model readers?
This is always difficult to judge but to be fair you have to show how
you express _the same_ (and not a subset) with some other kind of
regular expressions. (My understanding is that \p{Sc} is a currency
symbol.)
Yes, the expression would cover a currency amount, along with associated symbol (e.g. "$200.00").

If I was writing a module, I would probably use the following pattern statement instead, which I think a lot more people would likely be able to comprehend:

pattern "[A-Z]{3}\s?\d+\.\d{2}", using the 3 letter, ISO 4217, currency codes.  e.g. 
("USD 200.00")




The proposes guidelines obviously make it easier (or at least no harder) for
tool makers.

I agree that there is an minor impact to model writers, but really only in
the sense that the guidelines would be telling them not to use the esoteric
options of the XML regex syntax that they probably don't know about anyway.
What is 'esoteric' largely depends on your language environment. What
you are saying by 'do not use \p{}' is essentially 'do not use any
unicode long live ASCII'.
No, that is not my intention, i.e. I'm not suggesting banning all use of \p{}, but instead limiting it to the character classes that seem like they may plausibly be used in standardized YANG modules.

I'm not trying to change what 6020/7950 defines the pattern statement as, just give what I perceive as some pragmatic guidance as to what parts of XML RE it makes sense to use in standardized YANG modules, making it easier for readers and implementations.

I think that it is fine for companies, vendors, etc to use the full breadth of XML RE if they wish.

Thanks,
Rob

/js


_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to