BACKWARDS COMPATIBILITY GUIDELINES

Note:
These guidelines have been adopted by the P3P Specification Working Group Meeting of 7 May 2003

The (draft) P3P 1.1 working group charter states "The P3P 1.1 Specification should be designed for backwards compatibility with the P3P 1.0 Specification." Here are some details of what this means and how we will apply this as the working group goes about its business. This is not intended to be a comprehensive or absolute set of requirements, but rather a set of guidelines to help the group work towards a common goal. Working group members should keep these guidelines in mind when making proposals to the working group and avoid proposals inconsistent with these guidelines.

  1. P3P 1.0 user agents should be able to process P3P 1.1 policies and policy reference files. This implies both that the P3P 1.1 policies and policy reference files are fully compliant with the P3P 1.0 XML schema, and that the semantics of these files will not be misinterpreted by a user agent that interprets them according to the P3P 1.0 specification.
  2. New vocabulary elements and syntax introduced in P3P 1.1 should be introduced as optional extensions using the P3P 1.0 extension mechanism.
  3. New or changed P3P HTTP headers that are not backwards-compatible with P3P 1.0 should use a new prefix to differentiate them from those used in P3P 1.0. They should be designed such that sites that wish to make their P3P headers accessible to both P3P 1.0 and P3P 1.1 user agents can include both the P3P 1.0 and P3P 1.1 headers.
  4. Changes to requirements or definitions introduced in P3P 1.1. should add clarity where the P3P 1.0 specification is ambiguous, but should not cause a particular P3P vocabulary element to have different meanings in P3P 1.0 and P3P 1.1.
  5. New requirements or features may be introduced in the P3P 1.1 specification if they do not impact the ability of P3P 1.0 user agents to process P3P 1.1 policies and policy reference files. For example, a feature that would enable P3P policies to be referenced from arbitrary XML documents would not impact P3P 1.0 user agents, since those user agents do not attempt to find P3P policy references in arbitrary XML documents. Of course, P3P 1.0 user agents are not expected to comply with new requirements introduced in P3P 1.1.
  6. Features, vocabulary elements, or requirements may be removed in the P3P 1.1 specification as long as they do not cause a P3P 1.0 user agent to be unable to process a P3P 1.1 policy or policy reference file.