- From: C. M. Sperberg-McQueen <cmsmcq@blackmesatech.com>
- Date: Fri, 08 Mar 2024 08:52:41 -0700
- To: Norm Tovey-Walsh <norm@saxonica.com>
- Cc: public-ixml@w3.org
Norm Tovey-Walsh <norm@saxonica.com> writes: > [[PGP Signed Part:Undecided]] >> This might be easily parsed by a processor or a version control system or a dependency management tool, etc: >> >> ixml version "1.0" . >> author given-name: "Norm", surname: "Tovey-Walsh", >> affiliation: "Saxonica" . >> date 2024-03-01 . > > You know, that’s not bad, if I do say so myself. After ten minutes of noodling about, I have these changes to the ixml grammar: > > -RWS: whitespace+ . > prolog: version, RWS, (metadata+ | RS). > version: -"ixml", RWS, -"version", RWS, string, s, -'.' . > -msep: whitespace*, -"," . > metadata: name, (field++msep | RWS, chardata), whitespace*, -".", RS . > field: RWS, name, whitespace*, -":", whitespace*, chardata . > -chardata: -'"', -dchar+, -'"'; > -"'", -schar+, -"'". > > ... > > I don’t think that’s awful. We’ve talked about a feature to allow > content to influence the names of serialized elements so we might get > to <author>, <given-name>, etc. Or we could assert by fiat that prolog > metadata shall be serialized that way. I will study this in more detail, but on first glance I like it. It reminds me of a feature I believe is present in Eiffel, using the keyword 'note' (or sometimes 'indexing') to introduce a section in a class file for metadata. There, too, the keys to be used are up to the user, but code management systems can use the note section to support query-based search and retrieval across a library of classes or packages. I wonder if there is a simple and good way to avoid name collisions between user-chosen names and names chosen later for standardization. Michael -- C. M. Sperberg-McQueen Black Mesa Technologies LLC http://blackmesatech.com
Received on Friday, 8 March 2024 15:58:20 UTC