- From: CVS User rfieldin <cvsmail@w3.org>
- Date: Tue, 12 Feb 2013 22:45:17 +0000
- To: public-tracking-commit@w3.org
Update of /w3ccvs/WWW/2011/tracking-protection/drafts
In directory gil:/tmp/cvs-serv11564
Modified Files:
tracking-dnt.html
Log Message:
revert last commit due to it changing all line endings to DOS
--- /w3ccvs/WWW/2011/tracking-protection/drafts/tracking-dnt.html 2013/02/12 21:04:48 1.185
+++ /w3ccvs/WWW/2011/tracking-protection/drafts/tracking-dnt.html 2013/02/12 22:45:17 1.186
@@ -1,2113 +1,2110 @@
-<!DOCTYPE html>
-<html lang="en" dir="ltr">
-<head>
- <title>Tracking Preference Expression (DNT)</title>
- <meta http-equiv='Content-Type' content='text/html;charset=utf-8'>
- <script src='http://www.w3.org/Tools/respec/respec-w3c-common' class='remove' async></script>
- <script class='remove'>
- var respecConfig = {
- specStatus: "ED",
- shortName: "tracking-dnt",
- // publishDate: "2012-03-13",
- previousPublishDate: "2012-03-13",
- previousMaturity: "WD",
- edDraftURI: "http://www.w3.org/2011/tracking-protection/drafts/tracking-dnt.html",
- editors: [
- { name: "Roy T. Fielding", url: "http://roy.gbiv.com/",
- company: "Adobe", companyURL: "http://www.adobe.com/" },
- { name: "David Singer",
- company: "Apple", companyURL: "http://www.apple.com/" }
- ],
- wg: "Tracking Protection Working Group",
- wgURI: "http://www.w3.org/2011/tracking-protection/",
- wgPublicList: "public-tracking",
- wgPatentURI: "http://www.w3.org/2004/01/pp-impl/49311/status",
- issueBase: "http://www.w3.org/2011/tracking-protection/track/issues/",
- noIDLSectionTitle: true,
- };
- </script>
- <link rel="stylesheet" href="additional.css" type="text/css" media="screen" title="custom formatting for TPWG editors">
-</head>
-<body>
- <section id='abstract'>
- <p>
- This specification defines the technical mechanisms for expressing a
- tracking preference via the <a>DNT</a> request header field in
- HTTP, via an HTML DOM property readable by embedded scripts, and via
- properties accessible to various user agent plug-in or extension APIs.
- It also defines mechanisms for sites to signal whether and how they
- honor this preference, both in the form of a machine-readable tracking
- status resource at a well-known location and via a <q>Tk</q>
- response header field, and a mechanism for allowing the user to approve
- exceptions to DNT as desired.
- </p>
- </section>
-
- <section id='sotd'>
- <p>
- This document is an editors' strawman reflecting a snapshot of live
- discussions within the
- <a href="http://www.w3.org/2011/tracking-protection/">Tracking
- Protection Working Group</a>. It does not yet capture all of our work.
- For example, we have issues that are [PENDING REVIEW] with complete
- text proposals that have not yet made it into this draft.
- Text in blue boxes presents multiple options the group is considering.
- Options included in this draft should not be read as limitations on
- the potential outcome, but rather simply as possible options that are
- currently under consideration by the working group.
- An
- <a href="http://www.w3.org/2011/tracking-protection/track/issues/">issue tracking system</a>
- is available for recording
- <a href="http://www.w3.org/2011/tracking-protection/track/issues/raised">raised</a>,
- <a href="http://www.w3.org/2011/tracking-protection/track/issues/open">open</a>,
- <a href="http://www.w3.org/2011/tracking-protection/track/issues/pendingreview">pending review</a>,
- <a href="http://www.w3.org/2011/tracking-protection/track/issues/closed">closed</a>, and
- <a href="http://www.w3.org/2011/tracking-protection/track/issues/postponed">postponed</a>
- issues regarding this document.
- </p>
- </section>
-
- <section>
- <h2>Introduction</h2>
-
- <p>
- The World Wide Web (WWW, or Web) consists of millions of sites
- interconnected through the use of hypertext. Hypertext provides a
- simple, page-oriented view of a wide variety of information that
- can be traversed by selecting links, manipulating controls, and
- supplying data via forms and search dialogs. A Web page is usually
- composed of many different information sources beyond the initial
- resource request, including embedded references to stylesheets,
- inline images, javascript, and other elements that might be
- automatically requested as part of the rendering or behavioral
- processing defined for that page.
- </p>
- <p>
- Each of the hypertext actions and each of the embedded resource
- references might refer to any site on the Web, leading to a seamless
- interaction with the user even though the pages might be composed of
- information requested from many different and possibly independent
- Web sites. From the user's perspective, they are simply visiting and
- interacting with a single brand — the <dfn>first-party</dfn> Web
- property — and all of the technical details and protocol mechanisms
- that are used to compose a page representing that brand are hidden
- behind the scenes.
- </p>
- <p>
- It has become common for Web site owners to collect data regarding
- the usage of their sites for a variety of purposes, including what
- led the user to visit their site (referrals), how effective the user
- experience is within the site (web analytics), and the nature of who
- is using their site (audience segmentation). In some cases, the data
- collected is used to dynamically adapt the content (personalization)
- or the advertising presented to the user (targeted advertising).
- Data collection can occur both at the first-party site and via
- third-party providers through the insertion of tracking
- elements on each page. A survey of these techniques and their
- privacy implications can be found in [[KnowPrivacy]].
- </p>
- <p>
- People have the right to know how data about them will be collected
- and how it will be used. Empowered with that knowledge, individuals
- can decide whether to allow their online activities to be tracked and
- data about them to be collected. Many Internet companies use data
- gathered about people's online activities to personalize content and
- target advertising based on their perceived interests. While some
- people appreciate this personalization of content and ads in certain
- contexts, others are troubled by what they perceive as an invasion of
- their privacy. For them, the benefit of personalization is not worth
- their concerns about allowing entities with whom they have no direct
- relationship to amass detailed profiles about their activities.
- </p>
- <p>
- Therefore, users need a mechanism to express their own preference
- regarding tracking that is both simple to configure and efficient
- when implemented. In turn, Web sites that are unwilling or unable to
- offer content without such targeted advertising or data collection
- need a mechanism to indicate those requirements to the user and allow
- them (or their user agent) to make an individual choice regarding
- exceptions.
- </p>
- <p>
- This specification defines the HTTP request header field <a>DNT</a> for
- expressing a tracking preference on the Web, a well-known location
- (URI) for providing a machine-readable <a>tracking status resource</a>
- that describes a service's DNT compliance, the HTTP response
- header field <a>Tk</a> for resources to communicate their compliance
- or non-compliance with the user's expressed preference, and
- JavaScript APIs for determining DNT status and requesting a
- user-granted exception.
- </p>
- <p>
- A companion document, [[!TRACKING-COMPLIANCE]], more precisely defines
- the terminology of tracking preferences, the scope of its
- applicability, and the requirements on compliant first-party and
- third-party participants when an indication of tracking preference
- is received.
- </p>
- <p class="issue" data-number="136" title="Resolve dependencies of the TPE on the compliance specification">
- The WG has not come to consensus regarding the definition of tracking
- and the scope of DNT. As such, a site cannot actually say with any
- confidence whether or not it is tracking, let alone describe the finer
- details in a tracking status resource. This issue will be resolved by
- progress on the TCS document, though its resolution is a
- necessary prerequisite to understanding and correctly implementing
- the protocol defined by this document.
- </p>
- </section>
-
- <section id='notational'>
- <h3>Notational Conventions</h3>
-
- <section id='requirements'>
- <h4>Requirements</h4>
- <p>The key words <em title="must" class="rfc2119">must</em>,
- <em title="must not" class="rfc2119">must not</em>,
- <em title="required" class="rfc2119">required</em>,
- <em title="should" class="rfc2119">should</em>,
- <em title="should not" class="rfc2119">should not</em>,
- <em title="recommended" class="rfc2119">recommended</em>,
- <em title="may" class="rfc2119">may</em>, and
- <em title="optional" class="rfc2119">optional</em> in this
- specification are to be interpreted as described in
- [[!RFC2119]].</p>
- </section>
-
- <section id='notation'>
- <h4>Formal Syntax</h4>
- <p>
- This specification uses Augmented Backus-Naur Form [[!ABNF]]
- to define network protocol syntax and WebIDL [[!WEBIDL]] for
- defining scripting APIs.
- </p>
- </section>
-
- <section id='terminology'>
- <h4>Terminology</h4>
- <p>
- This specification uses the term <dfn>user agent</dfn> to refer to
- any of the various client programs capable of initiating HTTP
- requests, including, but not limited to, browsers, spiders
- (web-based robots), command-line tools, native applications, and
- mobile apps [[!HTTP11]].
- </p>
- <p>
- The term <dfn>permitted use</dfn> is used to indicate a restricted
- set of conditions under which tracking is allowed in spite of the
- user's DNT preference.
- </p>
- <p>
- The term <dfn>user-granted exception</dfn> is used when the user has
- permitted tracking by a given third party.
- </p>
- <p>
- A companion document, [[!TRACKING-COMPLIANCE]], defines many of the
- terms used here, notably 'party', 'first party', and 'third party'.
- </p>
- </section>
- </section>
-
- <section id='determining'>
- <h2>Determining User Preference</h2>
-
- <p>
- The goal of this protocol is to allow a user to express their
- personal preference regarding tracking to each server and
- web application that they communicate with via HTTP, thereby allowing
- each service to either adjust their behavior to meet the user's
- expectations or reach a separate agreement with the user to satisfy
- all parties.
- </p>
- <p>
- Key to that notion of expression is that the signal sent MUST reflect the user's
- preference, not the choice of some vendor, institution, site, or any
- network-imposed mechanism outside the user's control; this applies
- equally to both the general preference and exceptions. The basic
- principle is that a tracking preference expression is only
- transmitted when it reflects a deliberate choice by the user.
- In the absence of user choice, there is no tracking preference
- expressed.
- </p>
- <p>
- A user agent MUST offer users a minimum of two alternative choices
- for a <q>Do Not Track</q> preference: <code>unset</code> or
- <code>DNT:1</code>.
- A user agent MAY offer a third alternative choice: <code>DNT:0</code>.
- </p>
- <p>
- If the user's choice is <code>DNT:1</code> or <code>DNT:0</code>, the
- tracking preference is <dfn>enabled</dfn>; otherwise, the
- tracking preference is <dfn>not enabled</dfn>.
- </p>
- <p>
- A user agent MUST have a default tracking preference of
- <code>unset</code> (not enabled) unless a specific tracking preference
- is implied by the decision to use that agent. For example, use of a
- general-purpose browser would not imply a tracking preference when
- invoked normally as <q>SuperFred</q>, but might imply a preference if
- invoked as <q>SuperDoNotTrack</q> or <q>UltraPrivacyFred</q>.
- Likewise, a user agent extension or add-on MUST NOT alter the tracking
- preference unless the act of installing and enabling that extension or
- add-on is an explicit choice by the user for that tracking preference.
- </p>
- <p>
- We do not specify how tracking preference choices are offered to the
- user or how the preference is enabled: each implementation is
- responsible for determining the user experience by which a tracking
- preference is <a>enabled</a>.
- For example, a user might select a check-box in their user agent's
- configuration, install an extension or add-on that is specifically
- designed to add a tracking preference expression,
- or make a choice for privacy that then implicitly includes a
- tracking preference (e.g., <q>Privacy settings: high</q>).
- The user-agent might ask the user for their preference during startup,
- perhaps on first use or after an update adds the tracking protection
- feature. Likewise, a user might install or configure a proxy to add
- the expression to their own outgoing requests.
- </p>
- <p>
- Although some controlled network environments, such as public access
- terminals or managed corporate intranets, might impose restrictions
- on the use or configuration of installed user agents, such that a
- user might only have access to user agents with a predetermined
- preference enabled, the user is at least able to choose whether to
- make use of those user agents. In contrast, if a user brings their
- own Web-enabled device to a library or cafe with wireless Internet
- access, the expectation will be that their chosen user agent and
- personal preferences regarding Web site behavior will not be
- altered by the network environment, aside from blanket limitations
- on what resources can or cannot be accessed through that network.
- Implementations of HTTP that are not under control of the user
- MUST NOT generate or modify a tracking preference.
- </p>
- </section>
-
- <section id='expressing'>
- <h2>Expressing a Tracking Preference</h2>
-
- <section id='expression-format'>
- <h3>Expression Format</h3>
- <p>
- When a user has <a>enabled</a> a tracking preference, that
- preference needs to be expressed to all mechanisms that might perform
- or initiate tracking by third parties, including sites that the user
- agent communicates with via HTTP, scripts that can extend behavior on
- pages, and plug-ins or extensions that might be installed and
- activated for various media types.
- </p>
- <p>
- When <a>enabled</a>, a tracking preference is expressed as either:
- <table class="simple">
- <tr><th>DNT</th>
- <th>meaning</th>
- </tr>
- <tr><td>1</td>
- <td>This user prefers not to be tracked on the target site.</td>
- </tr>
- <tr><td>0</td>
- <td>This user prefers to allow tracking on the target site.</td>
- </tr>
- </table>
- </p>
- <p>
- A user agent MUST NOT send a tracking preference expression if
- a tracking preference is <a>not enabled</a>. This means that no
- expression is sent for each of the following cases:
- <ul>
- <li>the user agent does not implement this protocol;</li>
- <li>the user has not yet made a choice for a specific preference;
- or,</li>
- <li>the user has chosen not to transmit a preference.</li>
- </ul>
- </p>
- <p>
- In the absence of regulatory, legal, or other requirements,
- servers MAY interpret the lack of an expressed tracking preference
- as they find most appropriate for the given user, particularly when
- considered in light of the user's privacy expectations and cultural
- circumstances. Likewise, servers might make use of other preference
- information outside the scope of this protocol, such as site-specific
- user preferences or third-party registration services, to inform or
- adjust their behavior when no explicit preference is expressed via
- this protocol.
- </p>
- </section>
-
- <section id='dnt-header-field'>
- <h3>DNT Header Field for HTTP Requests</h3>
-
- <p>
- The <dfn>DNT</dfn> header field is hereby defined as the means for
- expressing a user's tracking preference via HTTP [[!HTTP11]].
- </p>
- <pre class="abnf">
-<dfn>DNT-field-name</dfn> = "DNT" ; case-insensitive
-<dfn>DNT-field-value</dfn> = ( "0" / "1" ) *DNT-extension ; case-sensitive
-<dfn>DNT-extension</dfn> = %x21 / %x23-2B / %x2D-5B / %x5D-7E
- ; excludes CTL, SP, DQUOTE, comma, backslash
- </pre>
- <p>
- A user agent MUST send the <dfn>DNT</dfn> header field on all HTTP
- requests if (and only if) a tracking preference is
- <a>enabled</a>.
- A user agent MUST NOT send the <a>DNT</a> header field if a
- tracking preference is <a>not enabled</a>.
- </p>
- <p>
- The DNT field-value sent by a user agent MUST begin with the
- numeric character "1" (%x31) if a tracking preference is
- <a>enabled</a>, the preference is for no tracking, and
- there is not an exception for the origin server
- targeted by this request.
- </p>
- <p>
- The DNT field-value sent by a user agent MUST begin with the
- numeric character "0" (%x30) if a tracking preference is
- <a>enabled</a> and the preference is to allow tracking in general
- or by specific exception for the origin server targeted by this
- request.
- </p>
- <pre class="example">
-GET /something/here HTTP/1.1
-Host: example.com
-DNT: 1
-
- </pre>
- <p>
- An HTTP intermediary MUST NOT add, delete, or modify the DNT header
- field in requests forwarded through that intermediary unless that
- intermediary has been specifically installed or configured to do so
- by the user making the requests. For example, an Internet Service
- Provider MUST NOT inject <q>DNT: 1</q> on behalf of all of their
- users who have not expressed a preference.
- </p>
- <p>
- The remainder of the DNT field-value after the initial character is
- reserved for future extensions. User agents that do not implement
- such extensions MUST NOT send DNT-extension characters in the DNT
- field-value. Servers that do not implement such extensions SHOULD
- ignore anything beyond the first character.
- </p>
- <p>
- DNT extensions are to be interpreted as modifiers to the
- main preference expressed by the first digit, such that the main
- preference will be obeyed if the recipient does not understand the
- extension. Hence, a DNT-field-value of "1xyz" can be thought of
- as <q>do not track, but if you understand the
- refinements defined by x, y, or z, then adjust my preferences
[3826 lines skipped]
Received on Tuesday, 12 February 2013 22:45:19 UTC