- From: Tim Berners-Lee <timbl@w3.org>
- Date: Thu, 22 Sep 2005 14:07:14 +0100
- To: Tim Berners-Lee <timbl@w3.org>
- Cc: W3C TAG <www-tag@w3.org>
A given language L1 attributes semantics S1(x) to a serialization x, where x is a member of L1. What do we mean by L2 being back-compatible with L1? We mean any serialization x written in L1 will be interpreted as though in L2 with the same meaning: L2 is superset of L1 S2(x) = S1(x) for all x in L1. It is forward compatible if a document written in L2 will be interpretable by an L1 processor and has the same meaning. L2 is subset of L1 S1(x) = S2(x) for all x in L2 This is just the same relation, but the other way around. Maybe we can make a weaker form, in which there are some semantics lost?, such as where S1(x) is a subset of S2(x)? It is "weakly forward compatible" if a document written in L2 will be interpretable by an L1 processor and has a subset of the meaning which would have been interpreted by L2. In this case, no inconsistent information is created, but some information may be lost if the serialization is interpreted by S1 instead of S2. L2 is subset of L1 S1(x) is subset of S2(x) for all x in L2. For this weakly forward compatible systems, an L2-aware agent sending a message with body x to an L1-aware agent will be held accountable for S1(x), a subset of S2(x), which is fine because the agent was prepared to be held accountable for S2(x). Weakly backwards compatible is a rather low bar to aim for so we won't discuss it but it is defined as one might expect. HTML versions have typically been weakly forward and strongly backward compatible.
Received on Thursday, 22 September 2005 13:07:45 UTC