Evolution of the Web:Normative Language in Specifications

Editors Draft of 24 December 2011; see Overview for copyright, caveats, etc.

This is a parking place for more discussion of when to MUST, SHOULD, MAY and the use of algorithms in normative specifications

(Specifications of languages, protocols, and protocol elements often use normative language to define a notion of conformance. How does this interact with evolution? Right now this is in Concepts, does it need more explanation. Specifications can evolve without language evolving in order to accomodate future evolution? Future-proofing implementations hard to test..)

Normative Implementations, Roles, Conformance

(this section would talk about how a protocol has "roles": client, server, proxy, user agent; specifications describe a language used by many of the roles, and a protocol between muttiple parties, each of which has a role in a particular transaction. Discuss the relationship between strict and loose conformance requirements; specs intended for multiple roles but reviewed only by one, difference between "ease of implementation" vs. "breadth of allowable implementations". http://intertwingly.net/blog/2009/04/08/HTML-Reunification

Want to talk somewehre about the "precision" vs "flexilbility"... not a a matter of "ease of implementation" (say "use this opensource implementaiton" is easy to implement, but not flexible)