From: BlueGM <bl...@gm...> - 2009-04-21 05:17:19
|
Oren, Yes, I think using the tag: URI scheme is the sanest thing to do when naming global tags. For my own application, that's what I'm planning, but... I'm writing a general purpose YAML parser as part of the framework for that application, which I plan on releasing as open source. Which is why I spent some quality time with the RFCs (~someone~ will use a non-tag URI... bet on it). I like the way you explain that tags must be written in a canonical way. I suspect that is what current processors are doing anyways. I'm looking forward to hearing what you guys do with this. Thanks for your time and your attention, Blue G. P.S. Sorry, Oren. I hit reply instead of forwarding the message, so you've been copied twice. -----Original Message----- From: Oren Ben-Kiki [mailto:or...@be...] Sent: Monday, April 20, 2009 11:02 PM To: BlueGM Cc: yam...@li... Subject: Re: [Yaml-core] Tag URIs Hmmm. There is a reason we recommend using the tag: URI scheme, as it properly addresses all these issues directly. Comparing URIs for equality, in general, is pretty much impossible to do in a scheme-independent way... How about adding a paragraph to the equality section saying: ... Different URI schemes may define different rules for testing the equality of tags. Since a YAML processor cannot be reasonably expected to be aware of them all, it "must" resort to a simple character-by-character comparison. This also happens to be the comparison method defined by the tag: URI scheme. Tags in a YAML stream "must" therefore be written in a canonical way so that such comparison would yield the correct results. And also add a sentence at production 39: , paragraph 2: The YAML processor must not expand such escaped characters. Tag characters are preserved and compared exactly as written in the YAML stream, without any processing. cce, ingy: What do you think? BlueGM: Thanks for reviewing the spec! Oren Ben-Kiki On Mon, 2009-04-20 at 12:13 -0400, BlueGM wrote: > One other recommendation: > ... > Add a statement to section 3.2.1.2 Tags of the 1.2 specification that > states that URIs are always to be treated as case-sensitive, > regardless of the scheme used, and that this includes the scheme name > (the part before the first colon). If this can not be made a "MUST" > statement because of existing implementations, then perhaps use a > "SHOULD" statement instead. > > Thanks again, > > Blue G |