8

I was reading the RFC 2616 regarding HTTP/1.1 when this term came up:

Therefore, the HTTP/1.1 protocol provides these important elements: [...] Protocol features that provide full semantic transparency when this is required by all parties.

[...]

The Cache-Control header allows a client or server to transmit a variety of directives in either requests or responses. These directives typically override the default caching algorithms. As a general rule, if there is any apparent conflict between header values, the most restrictive interpretation is applied (that is, the one that is most likely to preserve semantic transparency).

My questions are:

  • What is semantic transparency? What makes it full?
  • What's advantageous about having a protocol which is semantically transparent?
  • How can I tell a protocol has this property?

1 Answers1

3

A cache behaves in a “semantically transparent” manner, with respect to a particular response, when its use affects neither the requesting client nor the origin server, except to improve performance. When a cache is semantically transparent, the client receives exactly the same response that it would have received had its request been handled directly by the origin server.

Source: https://www.w3.org/Talks/9608HTTP/tsld014.htm

Ger
  • 131