WDOverview.html
author Mark Watson <watsonm@netflix.com>
Wed, 23 Mar 2016 13:26:00 -0700
changeset 23 a370d491bb78
parent 18 8d7eeeaad746
permissions -rw-r--r--
Remove explicit reference to Editors draft - this is filled in by ReSpec
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     1
<!DOCTYPE html>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     2
<html lang="en" dir="ltr" typeof="bibo:Document w3p:WD" about="" property="dcterms:language" content="en">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     3
<head>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     4
    <title>WebCrypto Key Discovery</title>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     5
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     6
    <style>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     7
      table {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     8
        border-collapse: collapse;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
     9
        border-spacing: 0px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    10
        margin-top: +1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    11
        margin-bottom: +1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    12
        border-color: black;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    13
        font-family: "Courier New", Inconsolata, "Bitstream Charter";
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    14
        font-size: 90%;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    15
      }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    16
      th {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    17
        background-color:DimGray;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    18
        color:white;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    19
        font-weight: normal;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    20
      }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    21
      .sub-th {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    22
        background-color: Linen;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    23
        font-style: italic;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    24
      }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    25
      .centered {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    26
        text-align: center;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    27
      }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    28
      .first-column {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    29
        background-color: Beige;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    30
        font-weight: bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    31
      }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    32
      .excluded-first-column {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    33
        background-color: DarkGray;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    34
        text-decoration: line-through;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    35
      }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    36
    </style>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    37
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    38
    <!-- 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    39
      === NOTA BENE ===
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    40
      For the three scripts below, if your spec resides on dev.w3 you can check them
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    41
      out in the same tree and use relative links so that they'll work offline,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    42
     -->
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    43
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    44
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    45
  <style>/*****************************************************************
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    46
 * ReSpec 3 CSS
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    47
 * Robin Berjon - http://berjon.com/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    48
 *****************************************************************/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    49
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    50
/* --- INLINES --- */
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    51
em.rfc2119 { 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    52
    text-transform:     lowercase;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    53
    font-variant:       small-caps;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    54
    font-style:         normal;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    55
    color:              #900;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    56
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    57
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    58
h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    59
h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    60
    border: none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    61
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    62
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    63
dfn {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    64
    font-weight:    bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    65
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    66
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    67
a.internalDFN {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    68
    color:  inherit;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    69
    border-bottom:  1px solid #99c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    70
    text-decoration:    none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    71
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    72
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    73
a.externalDFN {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    74
    color:  inherit;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    75
    border-bottom:  1px dotted #ccc;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    76
    text-decoration:    none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    77
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    78
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    79
a.bibref {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    80
    text-decoration:    none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    81
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    82
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    83
cite .bibref {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    84
    font-style: normal;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    85
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    86
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    87
code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    88
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    89
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    90
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    91
/* --- TOC --- */
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    92
.toc a, .tof a {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    93
    text-decoration:    none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    94
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    95
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    96
a .secno, a .figno {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    97
    color:  #000;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    98
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
    99
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   100
ul.tof, ol.tof {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   101
    list-style: none outside none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   102
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   103
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   104
.caption {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   105
    margin-top: 0.5em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   106
    font-style:   italic;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   107
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   108
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   109
/* --- TABLE --- */
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   110
table.simple {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   111
    border-spacing: 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   112
    border-collapse:    collapse;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   113
    border-bottom:  3px solid #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   114
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   115
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   116
.simple th {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   117
    background: #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   118
    color:  #fff;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   119
    padding:    3px 5px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   120
    text-align: left;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   121
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   122
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   123
.simple th[scope="row"] {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   124
    background: inherit;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   125
    color:  inherit;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   126
    border-top: 1px solid #ddd;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   127
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   128
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   129
.simple td {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   130
    padding:    3px 10px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   131
    border-top: 1px solid #ddd;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   132
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   133
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   134
.simple tr:nth-child(even) {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   135
    background: #f0f6ff;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   136
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   137
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   138
/* --- DL --- */
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   139
.section dd > p:first-child {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   140
    margin-top: 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   141
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   142
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   143
.section dd > p:last-child {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   144
    margin-bottom: 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   145
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   146
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   147
.section dd {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   148
    margin-bottom:  1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   149
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   150
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   151
.section dl.attrs dd, .section dl.eldef dd {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   152
    margin-bottom:  0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   153
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   154
</style><style>/* --- ISSUES/NOTES --- */
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   155
div.issue-title, div.note-title {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   156
    padding-right:  1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   157
    min-width: 7.5em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   158
    color: #b9ab2d;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   159
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   160
div.issue-title { color: #e05252; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   161
div.note-title { color: #2b2; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   162
div.issue-title span, div.note-title span {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   163
    text-transform: uppercase;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   164
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   165
div.note, div.issue {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   166
    margin-top: 1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   167
    margin-bottom: 1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   168
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   169
.note > p:first-child, .issue > p:first-child { margin-top: 0 }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   170
.issue, .note {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   171
    padding: .5em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   172
    border-left-width: .5em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   173
    border-left-style: solid;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   174
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   175
div.issue, div.note {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   176
    padding: 1em 1.2em 0.5em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   177
    margin: 1em 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   178
    position: relative;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   179
    clear: both;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   180
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   181
span.note, span.issue { padding: .1em .5em .15em; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   182
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   183
.issue {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   184
    border-color: #e05252;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   185
    background: #fbe9e9;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   186
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   187
.note {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   188
    border-color: #52e052;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   189
    background: #e9fbe9;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   190
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   191
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   192
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   193
</style><style>/* --- WEB IDL --- */
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   194
pre.idl {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   195
    border-top: 1px solid #90b8de;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   196
    border-bottom: 1px solid #90b8de;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   197
    padding:    1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   198
    line-height:    120%;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   199
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   200
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   201
pre.idl::before {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   202
    content:    "WebIDL";
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   203
    display:    block;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   204
    width:      150px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   205
    background: #90b8de;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   206
    color:  #fff;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   207
    font-family:    initial;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   208
    padding:    3px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   209
    font-weight:    bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   210
    margin: -1em 0 1em -1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   211
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   212
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   213
.idlType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   214
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   215
    font-weight:    bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   216
    text-decoration:    none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   217
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   218
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   219
/*.idlModule*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   220
/*.idlModuleID*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   221
/*.idlInterface*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   222
.idlInterfaceID, .idlDictionaryID, .idlCallbackID, .idlEnumID {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   223
    font-weight:    bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   224
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   225
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   226
a.idlEnumItem {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   227
    color:  #000;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   228
    border-bottom:  1px dotted #ccc;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   229
    text-decoration: none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   230
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   231
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   232
.idlSuperclass {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   233
    font-style: italic;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   234
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   235
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   236
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   237
/*.idlAttribute*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   238
.idlAttrType, .idlFieldType, .idlMemberType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   239
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   240
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   241
.idlAttrName, .idlFieldName, .idlMemberName {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   242
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   243
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   244
.idlAttrName a, .idlFieldName a, .idlMemberName a {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   245
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   246
    border-bottom:  1px dotted #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   247
    text-decoration: none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   248
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   249
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   250
/*.idlMethod*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   251
.idlMethType, .idlCallbackType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   252
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   253
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   254
.idlMethName {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   255
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   256
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   257
.idlMethName a {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   258
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   259
    border-bottom:  1px dotted #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   260
    text-decoration: none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   261
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   262
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   263
/*.idlCtor*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   264
.idlCtorName {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   265
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   266
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   267
.idlCtorName a {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   268
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   269
    border-bottom:  1px dotted #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   270
    text-decoration: none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   271
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   272
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   273
/*.idlParam*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   274
.idlParamType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   275
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   276
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   277
.idlParamName, .idlDefaultValue {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   278
    font-style: italic;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   279
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   280
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   281
.extAttr {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   282
    color:  #666;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   283
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   284
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   285
/*.idlSectionComment*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   286
.idlSectionComment {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   287
    color: gray;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   288
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   289
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   290
/*.idlConst*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   291
.idlConstType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   292
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   293
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   294
.idlConstName {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   295
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   296
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   297
.idlConstName a {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   298
    color:  #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   299
    border-bottom:  1px dotted #ff4500;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   300
    text-decoration: none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   301
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   302
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   303
/*.idlException*/
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   304
.idlExceptionID {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   305
    font-weight:    bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   306
    color:  #c00;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   307
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   308
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   309
.idlTypedefID, .idlTypedefType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   310
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   311
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   312
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   313
.idlRaises, .idlRaises a.idlType, .idlRaises a.idlType code, .excName a, .excName a code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   314
    color:  #c00;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   315
    font-weight:    normal;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   316
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   317
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   318
.excName a {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   319
    font-family:    monospace;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   320
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   321
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   322
.idlRaises a.idlType, .excName a.idlType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   323
    border-bottom:  1px dotted #c00;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   324
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   325
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   326
.excGetSetTrue, .excGetSetFalse, .prmNullTrue, .prmNullFalse, .prmOptTrue, .prmOptFalse {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   327
    width:  45px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   328
    text-align: center;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   329
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   330
.excGetSetTrue, .prmNullTrue, .prmOptTrue { color:  #0c0; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   331
.excGetSetFalse, .prmNullFalse, .prmOptFalse { color:  #c00; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   332
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   333
.idlImplements a {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   334
    font-weight:    bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   335
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   336
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   337
dl.attributes, dl.methods, dl.constants, dl.constructors, dl.fields, dl.dictionary-members {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   338
    margin-left:    2em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   339
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   340
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   341
.attributes dt, .methods dt, .constants dt, .constructors dt, .fields dt, .dictionary-members dt {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   342
    font-weight:    normal;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   343
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   344
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   345
.attributes dt code, .methods dt code, .constants dt code, .constructors dt code, .fields dt code, .dictionary-members dt code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   346
    font-weight:    bold;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   347
    color:  #000;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   348
    font-family:    monospace;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   349
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   350
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   351
.attributes dt code, .fields dt code, .dictionary-members dt code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   352
    background:  #ffffd2;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   353
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   354
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   355
.attributes dt .idlAttrType code, .fields dt .idlFieldType code, .dictionary-members dt .idlMemberType code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   356
    color:  #005a9c;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   357
    background:  transparent;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   358
    font-family:    inherit;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   359
    font-weight:    normal;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   360
    font-style: italic;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   361
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   362
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   363
.methods dt code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   364
    background:  #d9e6f8;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   365
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   366
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   367
.constants dt code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   368
    background:  #ddffd2;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   369
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   370
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   371
.constructors dt code {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   372
    background:  #cfc;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   373
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   374
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   375
.attributes dd, .methods dd, .constants dd, .constructors dd, .fields dd, .dictionary-members dd {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   376
    margin-bottom:  1em;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   377
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   378
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   379
table.parameters, table.exceptions {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   380
    border-spacing: 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   381
    border-collapse:    collapse;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   382
    margin: 0.5em 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   383
    width:  100%;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   384
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   385
table.parameters { border-bottom:  1px solid #90b8de; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   386
table.exceptions { border-bottom:  1px solid #deb890; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   387
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   388
.parameters th, .exceptions th {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   389
    color:  #fff;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   390
    padding:    3px 5px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   391
    text-align: left;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   392
    font-family:    initial;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   393
    font-weight:    normal;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   394
    text-shadow:    #666 1px 1px 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   395
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   396
.parameters th { background: #90b8de; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   397
.exceptions th { background: #deb890; }
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   398
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   399
.parameters td, .exceptions td {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   400
    padding:    3px 10px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   401
    border-top: 1px solid #ddd;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   402
    vertical-align: top;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   403
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   404
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   405
.parameters tr:first-child td, .exceptions tr:first-child td {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   406
    border-top: none;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   407
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   408
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   409
.parameters td.prmName, .exceptions td.excName, .exceptions td.excCodeName {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   410
    width:  100px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   411
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   412
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   413
.parameters td.prmType {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   414
    width:  120px;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   415
}
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   416
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   417
table.exceptions table {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   418
    border-spacing: 0;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   419
    border-collapse:    collapse;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   420
    width:  100%;
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   421
}
18
8d7eeeaad746 Update publication date to 8-22
Mark Watson <watsonm@netflix.com>
parents: 16
diff changeset
   422
</style><link rel="stylesheet" href="https://www.w3.org/StyleSheets/TR/W3C-WD"><!--[if lt IE 9]><script src='https://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]--></head>
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   423
  <body class="h-entry" role="document" id="respecDocument"><div class="head" role="contentinfo" id="respecHeader">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   424
  <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   425
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   426
      <a href="http://www.w3.org/"><img width="72" height="48" src="https://www.w3.org/Icons/w3c_home" alt="W3C"></a>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   427
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   428
  </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   429
  <h1 class="title p-name" id="title" property="dcterms:title">WebCrypto Key Discovery</h1>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   430
  
18
8d7eeeaad746 Update publication date to 8-22
Mark Watson <watsonm@netflix.com>
parents: 16
diff changeset
   431
  <h2 property="dcterms:issued" datatype="xsd:dateTime" content="2013-08-22T07:00:00.000Z" id="w3c-working-draft-22-august-2013"><abbr title="World Wide Web Consortium">W3C</abbr> Working Draft <time class="dt-published" datetime="2013-08-22">22 August 2013</time></h2>
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   432
  <dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   433
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   434
      <dt>This version:</dt>
18
8d7eeeaad746 Update publication date to 8-22
Mark Watson <watsonm@netflix.com>
parents: 16
diff changeset
   435
      <dd><a class="u-url" href="http://www.w3.org/TR/2013/WD-webcrypto-key-discovery-20130822/">http://www.w3.org/TR/2013/WD-webcrypto-key-discovery-20130822/</a></dd>
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   436
      <dt>Latest published version:</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   437
      <dd><a href="http://www.w3.org/TR/webcrypto-key-discovery/">http://www.w3.org/TR/webcrypto-key-discovery/</a></dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   438
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   439
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   440
      <dt>Latest editor's draft:</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   441
      <dd><a href="http://dvcs.w3.org/hg/webcrypto-keydiscovery/raw-file/tip/Overview.html">http://dvcs.w3.org/hg/webcrypto-keydiscovery/raw-file/tip/Overview.html</a></dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   442
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   443
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   444
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   445
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   446
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   447
      <dt>Previous version:</dt>
16
950c4d2b64be Fix pubrules problems
Mark Watson <watsonm@netflix.com>
parents: 14
diff changeset
   448
      <dd><a rel="dcterms:replaces" href="http://www.w3.org/TR/2013/WD-webcrypto-key-discovery-20130108/">http://www.w3.org/TR/2013/WD-webcrypto-key-discovery-20130108/</a></dd>
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   449
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   450
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   451
    <dt>Editor:</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   452
    <dd class="p-author h-card vcard" rel="bibo:editor" inlist=""><span typeof="foaf:Person"><span property="foaf:name" class="p-name fn">Mark Watson</span>, <a rel="foaf:workplaceHomepage" class="p-org org h-org h-card" href="http://www.netflix.com/">Netflix</a>, <span class="ed_mailto"><a class="u-email email" rel="foaf:mbox" href="mailto:watsonm@netflix.com">watsonm@netflix.com</a></span></span>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   453
</dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   454
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   455
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   456
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   457
  </dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   458
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   459
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   460
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   461
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   462
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   463
      <p class="copyright">
16
950c4d2b64be Fix pubrules problems
Mark Watson <watsonm@netflix.com>
parents: 14
diff changeset
   464
        <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> ©
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   465
        2013
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   466
        
16
950c4d2b64be Fix pubrules problems
Mark Watson <watsonm@netflix.com>
parents: 14
diff changeset
   467
        <a href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a><sup>®</sup>
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   468
        (<a href="http://www.csail.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   469
        <a href="http://www.ercim.eu/"><abbr title="European Research Consortium for Informatics and Mathematics">ERCIM</abbr></a>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   470
        <a href="http://www.keio.ac.jp/">Keio</a>, <a href="http://ev.buaa.edu.cn/">Beihang</a>), All Rights Reserved.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   471
        <abbr title="World Wide Web Consortium">W3C</abbr> <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   472
        <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   473
        <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   474
      </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   475
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   476
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   477
  <hr>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   478
</div>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   479
    <section id="abstract" class="introductory" property="dcterms:abstract" datatype="" typeof="bibo:Chapter" resource="#abstract" rel="bibo:chapter"><h2 aria-level="1" role="heading" id="h2_abstract">Abstract</h2>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   480
      <p>This specification describes a JavaScript API for discovering named, origin-specific pre-provisioned
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   481
      cryptographic keys for use with the Web Cryptography API. Pre-provisioned keys are keys which have been made
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   482
      available to the UA by means other than the generation, derivation, importation functions of the
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   483
      Web Cryptography API. Origin-specific keys are keys that are available only to a specified origin. Named keys
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   484
      are identified by a name assumed to be known to the origin in question and provisioned with the key itself.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   485
      </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   486
    </section><section id="sotd" class="introductory" typeof="bibo:Chapter" resource="#sotd" rel="bibo:chapter"><h2 aria-level="1" role="heading" id="h2_sotd">Status of This Document</h2>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   487
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   488
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   489
      
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   490
        <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   491
          <em>This section describes the status of this document at the time of its publication. Other
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   492
          documents may supersede this document. A list of current <abbr title="World Wide Web Consortium">W3C</abbr> publications and the latest revision
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   493
          of this technical report can be found in the <a href="http://www.w3.org/TR/"><abbr title="World Wide Web Consortium">W3C</abbr> technical reports
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   494
          index</a> at http://www.w3.org/TR/.</em>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   495
        </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   496
        
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   497
      <p>This document is the First Public Working Draft of the WebCrypto Key Discovery recommendation. It defines an API that provides access to named origin-specific pre-provisioned keys.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   498
      Such keys were previously accessible through the KeyStorage API of the main WebCrypto API, which provided for both key storage and key
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   499
      discovery. The KeyStorage API has been removed in favour of using
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   500
      existing web storage mechanisms for key storage and this specification
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   501
      for named origin-specific
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   502
      pre-provisioned key discovery. The privacy issues associated with such keys require special attention and
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   503
      the privacy related material in this document has not yet received thorough review by the community. It is an open issue in the
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   504
      Web Cryptography Working Group whether the scope of this document may be expanded to discovery of other kinds of key.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   505
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   506
        <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   507
          This document was published by the <a href="http://www.w3.org/2012/webcrypto/">Web Cryptography WG</a> as a Working Draft.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   508
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   509
            This document is intended to become a <abbr title="World Wide Web Consortium">W3C</abbr> Recommendation.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   510
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   511
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   512
          If you wish to make comments regarding this document, please send them to 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   513
          <a href="mailto:public-webcrypto@w3.org">public-webcrypto@w3.org</a> 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   514
          (<a href="mailto:public-webcrypto-request@w3.org?subject=subscribe">subscribe</a>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   515
          <a href="http://lists.w3.org/Archives/Public/public-webcrypto/">archives</a>).
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   516
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   517
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   518
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   519
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   520
            All comments are welcome.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   521
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   522
        
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   523
          <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   524
            Publication as a Working Draft does not imply endorsement by the <abbr title="World Wide Web Consortium">W3C</abbr> Membership.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   525
            This is a draft document and may be updated, replaced or obsoleted by other documents at 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   526
            any time. It is inappropriate to cite this document as other than work in progress.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   527
          </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   528
        
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   529
        
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   530
        <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   531
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   532
            This document was produced by a group operating under the 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   533
             
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   534
                <a id="sotd_patent" about="" rel="w3p:patentRules" href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <abbr title="World Wide Web Consortium">W3C</abbr> Patent Policy</a>.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   535
            
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   536
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   537
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   538
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   539
            
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   540
              <abbr title="World Wide Web Consortium">W3C</abbr> maintains a <a href="http://www.w3.org/2004/01/pp-impl/54174/status" rel="disclosure">public list of any patent disclosures</a> 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   541
            
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   542
            made in connection with the deliverables of the group; that page also includes instructions for 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   543
            disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   544
            <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   545
            information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   546
            6 of the <abbr title="World Wide Web Consortium">W3C</abbr> Patent Policy</a>.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   547
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   548
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   549
        </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   550
        
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   551
      
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   552
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   553
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   554
</section><section id="toc"><h2 class="introductory" aria-level="1" role="heading" id="h2_toc">Table of Contents</h2><ul class="toc" role="directory" id="respecContents"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span>Introduction</a></li><li class="tocline"><a href="#use-cases" class="tocxref"><span class="secno">2. </span>Use cases</a><ul class="toc"><li class="tocline"><a href="#out-of-band-key-provisioning" class="tocxref"><span class="secno">2.1 </span>Out of band key provisioning</a></li></ul></li><li class="tocline"><a href="#conformance" class="tocxref"><span class="secno">3. </span>Conformance</a></li><li class="tocline"><a href="#scope" class="tocxref"><span class="secno">4. </span>Scope</a></li><li class="tocline"><a href="#privacy-considerations" class="tocxref"><span class="secno">5. </span>Privacy considerations</a><ul class="toc"><li class="tocline"><a href="#named-origin-specific-pre-provisioned-keys" class="tocxref"><span class="secno">5.1 </span>Named origin-specific pre-provisioned keys</a><ul class="toc"><li class="tocline"><a href="#comparison-to-cookies-and-persistent-storage" class="tocxref"><span class="secno">5.1.1 </span>Comparison to cookies and persistent storage</a></li><li class="tocline"><a href="#user-tracking" class="tocxref"><span class="secno">5.1.2 </span>User tracking</a></li><li class="tocline"><a href="#cookie-resurrection" class="tocxref"><span class="secno">5.1.3 </span>Cookie resurrection</a></li><li class="tocline"><a href="#sensitivity-of-data" class="tocxref"><span class="secno">5.1.4 </span>Sensitivity of data</a></li></ul></li></ul></li><li class="tocline"><a href="#dependencies" class="tocxref"><span class="secno">6. </span>Dependencies</a></li><li class="tocline"><a href="#api-definition" class="tocxref"><span class="secno">7. </span>API definition</a><ul class="toc"><li class="tocline"><a href="#overview" class="tocxref"><span class="secno">7.1 </span>Overview</a></li><li class="tocline"><a href="#namedkey-interface" class="tocxref"><span class="secno">7.2 </span>NamedKey interface</a><ul class="toc"><li class="tocline"><a href="#attributes" class="tocxref"><span class="secno">7.2.1 </span>Attributes</a></li><li class="tocline"><a href="#structured-clone-algorithm" class="tocxref"><span class="secno">7.2.2 </span>Structured clone algorithm</a></li><li class="tocline"><a href="#immutability-of-namedkey-objects" class="tocxref"><span class="secno">7.2.3 </span>Immutability of NamedKey objects</a></li></ul></li><li class="tocline"><a href="#cryptokeys-interface" class="tocxref"><span class="secno">7.3 </span>CryptoKeys interface</a><ul class="toc"><li class="tocline"><a href="#methods" class="tocxref"><span class="secno">7.3.1 </span>Methods</a></li></ul></li><li class="tocline"><a href="#extension-of-window-interface" class="tocxref"><span class="secno">7.4 </span>Extension of Window interface</a><ul class="toc"><li class="tocline"><a href="#attributes-1" class="tocxref"><span class="secno">7.4.1 </span>Attributes</a></li></ul></li><li class="tocline"><a href="#extension-of-workerglobalscope-interface" class="tocxref"><span class="secno">7.5 </span>Extension of WorkerGlobalScope interface</a><ul class="toc"><li class="tocline"><a href="#attributes-2" class="tocxref"><span class="secno">7.5.1 </span>Attributes</a></li></ul></li></ul></li><li class="tocline"><a href="#examples" class="tocxref"><span class="secno">8. </span>Examples</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno">A. </span>References</a><ul class="toc"><li class="tocline"><a href="#normative-references" class="tocxref"><span class="secno">A.1 </span>Normative references</a></li><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno">A.2 </span>Informative references</a></li></ul></li></ul></section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   555
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   556
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   557
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   558
    <section class="informative" id="introduction">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   559
      <!--OddPage--><h2 aria-level="1" role="heading" id="h2_introduction"><span class="secno">1. </span>Introduction</h2><p><em>This section is non-normative.</em></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   560
      <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   561
        The Web Cryptography API [<cite><a class="bibref" href="#bib-WEBCRYPTO">WEBCRYPTO</a></cite>] describes a JavaScript API for performing basic cryptographic
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   562
        operations in web applications. Cryptographic keys in are represented in this API using
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   563
        <a href="http://www.w3.org/TR/WebCryptoAPI/#key-interface"><code>Key</code></a> objects. The API provides methods to generate, derive or import cryptographic 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   564
        keying material, so creating <a href="http://www.w3.org/TR/WebCryptoAPI/#key-interface"><code>Key</code></a> objects.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   565
      </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   566
      <p>This document concerns the discovery of cryptographic keys which are made available to the UA by other means.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   567
        Specifically, this document provides an API for the discovery of cryptographic keys which have been pre-provisioned
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   568
         into a UA or device for use by a specific origin. Such keys are identified by names which are assumed to be known to 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   569
         the origin in question and thus they are referred to as <dfn title="named origin-specific pre-provisioned key" id="dfn-named-origin-specific-pre-provisioned-key">named origin-specific pre-provisioned keys</dfn>.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   570
      <p>This enables web applications to establish secure proof that the UA has access to a particular
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   571
        pre-provisioned key. Depending on the nature of the key and its associated storage - for example within
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   572
        a Hardware Security Module or available only within a Trusted Execution Environment - further properties of the
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   573
        device on which the UA is running may be inferred.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   574
      <p>The use of pre-provisioned keys requires the informed consent of the user, because such keys may be used for tracking
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   575
      and may reveal information about the users device. The privacy implications of origin-specific pre-provisioned
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   576
      keys are discussed further in <a href="#privacy-considerations">Security and Privacy Considerations</a>.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   577
      </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   578
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   579
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   580
    <section id="use-cases">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   581
        <!--OddPage--><h2 aria-level="1" role="heading" id="h2_use-cases"><span class="secno">2. </span>Use cases</h2>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   582
        <section id="out-of-band-key-provisioning">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   583
          <h3 aria-level="2" role="heading" id="h3_out-of-band-key-provisioning"><span class="secno">2.1 </span>Out of band key provisioning</h3>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   584
          <p>Web applications may wish to use keys that have been provisioned through means outside the scope of the WebCrypto API. This may include keys that are provisioned through platform-specific native APIs, stored in secure elements such as trusted platform modules (TPMs), individually bound to devices at time of manufacturing or otherwise installed via device-specific provisioning protocols.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   585
          <p>Such keys may, for example, be used to assist in identifying a device to a specific web service. User agents may choose to expose such keys to web applications after implementing appropriate security and privacy mitigations, including gaining user consent.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   586
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   587
<p>In this scenario, a web application discovers a pre-provisioned key based on its name and uses it to perform authorized cryptographic operations as part of a protocol with a server. The server may utilize knowledge obtained out-of-band regarding the key's provisioning to make access control and policy decisions, such as inferring the identity of the device and customizing its responses based on that.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   588
        </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   589
        <p></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   590
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   591
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   592
    <section id="conformance" typeof="bibo:Chapter" resource="#conformance" rel="bibo:chapter"><!--OddPage--><h2 aria-level="1" role="heading" id="h2_conformance"><span class="secno">3. </span>Conformance</h2>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   593
<p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   594
  As well as sections marked as non-normative, all authoring guidelines, diagrams, examples,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   595
  and notes in this specification are non-normative. Everything else in this specification is
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   596
  normative.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   597
</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   598
<p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   599
  The key words <em class="rfc2119" title="MUST">MUST</em>, <em class="rfc2119" title="MUST NOT">MUST NOT</em>, <em class="rfc2119" title="REQUIRED">REQUIRED</em>, <em class="rfc2119" title="SHOULD">SHOULD</em>, <em class="rfc2119" title="SHOULD NOT">SHOULD NOT</em>, <em class="rfc2119" title="RECOMMENDED">RECOMMENDED</em>, <em class="rfc2119" title="MAY">MAY</em>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   600
  and <em class="rfc2119" title="OPTIONAL">OPTIONAL</em> in this specification are to be interpreted as described in [<cite><a class="bibref" href="#bib-RFC2119">RFC2119</a></cite>].
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   601
</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   602
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   603
      
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   604
      <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   605
          The following conformance classes are defined by this specification:
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   606
        </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   607
        <dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   608
          <dt><dfn id="dfn-conforming-user-agent">conforming user agent</dfn></dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   609
          <dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   610
            <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   611
              A user agent is considered to be a conforming user agent
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   612
              if it satisfies all of the <em class="rfc2119" title="MUST">MUST</em>-, <em class="rfc2119" title="REQUIRED">REQUIRED</em>- and <em class="rfc2119" title="SHALL">SHALL</em>-level
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   613
              criteria in this specification that apply to implementation. This specification
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   614
              uses both the terms "conforming user agent" and "user agent" to refer to this
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   615
              product class.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   616
            </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   617
            <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   618
              User agents <em class="rfc2119" title="MAY">MAY</em> implement algorithms in this
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   619
              specification in any way desired, so long as the end result is indistinguishable
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   620
              from the result that would be obtained from the specification's algorithms.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   621
            </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   622
          </dd>         
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   623
        </dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   624
        <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   625
          User agents that use ECMAScript to implement the APIs defined in this specification
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   626
          <em class="rfc2119" title="MUST">MUST</em> implement them in a manner consistent with the
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   627
          ECMAScript Bindings defined in the Web IDL specification [<cite><a class="bibref" href="#bib-WEBIDL">WEBIDL</a></cite>]
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   628
          as this specification uses that specification and terminology.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   629
        </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   630
      
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   631
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   632
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   633
    <section id="scope" class="informative" typeof="bibo:Chapter" resource="#scope" rel="bibo:chapter">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   634
      <!--OddPage--><h2 aria-level="1" role="heading" id="h2_scope"><span class="secno">4. </span>Scope</h2><p><em>This section is non-normative.</em></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   635
      <p>The considerations in the Scope section of [<cite><a class="bibref" href="#bib-WEBCRYPTO">WEBCRYPTO</a></cite>] apply to this specification as well. In particular, although this specification directly addresses the discovery of <a>named origin-specific pre-provisioned keys</a>, it does not address the processes used to provision those keys or the type and properties of the hardware or software components in which they are stored.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   636
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   637
    <section class="informative" id="privacy-considerations">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   638
      <!--OddPage--><h2 aria-level="1" role="heading" id="h2_privacy-considerations"><span class="secno">5. </span>Privacy considerations</h2><p><em>This section is non-normative.</em></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   639
      <p>The Privacy considerations of [<cite><a class="bibref" href="#bib-WEBCRYPTO">WEBCRYPTO</a></cite>] apply to this specification.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   640
      <section id="named-origin-specific-pre-provisioned-keys">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   641
        <h3 aria-level="2" role="heading" id="h3_named-origin-specific-pre-provisioned-keys"><span class="secno">5.1 </span>Named origin-specific pre-provisioned keys</h3><p><em>This section is non-normative.</em></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   642
        <section id="comparison-to-cookies-and-persistent-storage"><h4 aria-level="3" role="heading" id="h4_comparison-to-cookies-and-persistent-storage"><span class="secno">5.1.1 </span>Comparison to cookies and persistent storage</h4><p><em>This section is non-normative.</em></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   643
        <p>The privacy considerations associated with origin-specific pre-provisioned keys are similar to those that apply to cookies [<cite><a class="bibref" href="#bib-COOKIES">COOKIES</a></cite>] and persistent storage, such as [<cite><a class="bibref" href="#bib-INDEXEDDB">INDEXEDDB</a></cite>]. The principle difference is that pre-provisioned keys are pre-existing, whereas cookies and persistent store are not. Thus sites can be relied upon to work (in an 'out-of-the-box' fashion) when cookies have been deleted and persistent store cleared. By contrast, sites that rely on pre-provisioned keys may not operate or may operate in a different fashion if the expected pre-provisioned keys are not available. Such sites may require users to choose whether to trade a certain amount of privacy for whatever service the site offers, or not access the service at all.</p></section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   644
        
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   645
        <section id="user-tracking">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   646
          <h4 aria-level="3" role="heading" id="h4_user-tracking"><span class="secno">5.1.2 </span>User tracking</h4>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   647
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   648
          <p>A third-party host (or any object capable of getting content distributed to multiple sites) could use a named origin-specific pre-provisioned key to track a user across multiple sessions, building a profile of the user's activities. In conjunction with a site that is aware of the user's real identity (for example an e-commerce site that requires authenticated credentials), this could allow oppressive groups to target individuals with greater accuracy than in a world with purely anonymous Web usage.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   649
          
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   650
          <p>There are a number of techniques that can be used to mitigate this risk of tracking without user consent:
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   651
            </p><dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   652
              <dt>Site-specific white-listing of access to named origin-specific pre-provisioned keys</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   653
              <dd><p>User agents should require the user to explicitly authorize access to named origin-specific pre-provisioned keys before a site can use the keys.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   654
              <p>User agents should enable users to revoke this authorization either temporarily or permanently.</p></dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   655
              <dt>Blocking access to named origin-specific pre-provisioned keys</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   656
                <dd><p>User agents may restrict access to named origin-specific pre-provisioned keys to scripts originating at the domain of the top-level document of the browsing context, for instance returning empty key search results for pages from other domains running in iframes.</p></dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   657
                
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   658
              <dt>Treating named origin-specific pre-provisioned keys as cookies</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   659
              <dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   660
                <p>User agents should present the named origin-specific pre-provisioned keys feature to the user in a way that associates it strongly with HTTP session cookies. [<cite><a class="bibref" href="#bib-COOKIES">COOKIES</a></cite>]</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   661
              
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   662
                <p>This might encourage users to view such keys with healthy suspicion.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   663
              </dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   664
              <dt>Origin-tracking of named origin-specific pre-provisioned keys</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   665
              <dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   666
                <p>User agents may record the origins of sites that contained content from third-party origins that used pre-provisioned keys.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   667
              
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   668
                <p>If this information is then used to present a view of pre-provisioned keys to the user, it would allow the user to make informed decisions about authorizing sites to make use of keys. Combined with a blacklist ("delete this key" or "prevent this domain from ever accessing this key again"), the user can restrict the use of pre-provisioned keys to sites that he trusts.</p></dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   669
              <dt>Shared blacklists</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   670
              <dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   671
                <p>User agents may allow users to share their pre-provisioned key domain blacklists.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   672
              
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   673
                <p>This would allow communities to act together to protect their privacy.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   674
              </dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   675
            </dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   676
          <p></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   677
          <p>While these suggestions prevent trivial use of this feature for user tracking, they do not block it altogether. Where a browser supports a mode of operation intended to preserve user anonymity, access to pre-provisioned keys should be disabled in this mode. Even so, within a single domain, a site can continue to track the user during a session, and can then pass all this information to the third party along with any identifying information (names, credit card numbers, addresses) obtained by the site. If a third party cooperates with multiple sites to obtain such information, a profile can still be created.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   678
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   679
          <p>However, user tracking is to some extent possible even with no cooperation from the user agent whatsoever, for instance by using session identifiers in URLs, a technique already commonly used for innocuous purposes but easily repurposed for user tracking (even retroactively). This information can then be shared with other sites, using visitors' IP addresses and other user-specific data (e.g. user-agent headers and configuration settings) to combine separate sessions into coherent user profiles.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   680
        </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   681
        <section id="cookie-resurrection">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   682
          <h4 aria-level="3" role="heading" id="h4_cookie-resurrection"><span class="secno">5.1.3 </span>Cookie resurrection</h4>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   683
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   684
          <p>If the user interface for the origin-specific pre-provisioned keys feature described in this specification presents data separately from data in HTTP session cookies or persistent storage, then users are likely to modify site authorization or delete data in one and not the others. This would allow sites to use the various features as redundant backup for each other, defeating a user's attempts to protect his privacy.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   685
        </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   686
        <section id="sensitivity-of-data">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   687
          <h4 aria-level="3" role="heading" id="h4_sensitivity-of-data"><span class="secno">5.1.4 </span>Sensitivity of data</h4>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   688
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   689
          <p>User agents should treat pre-provisioned keys and material generated using such keys as potentially sensitive; it is quite possible for the user privacy to be compromised by the release of this information.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   690
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   691
          <p>To this end, user agents should ensure that when deleting data, it is promptly deleted from the underlying storage.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   692
        </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   693
      </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   694
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   695
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   696
    <section class="section" id="dependencies" typeof="bibo:Chapter" resource="#dependencies" rel="bibo:chapter">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   697
      <!--OddPage--><h2 aria-level="1" role="heading" id="h2_dependencies"><span class="secno">6. </span>Dependencies</h2>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   698
      <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   699
        This specification relies on several other underlying specifications. 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   700
      </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   701
      <dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   702
        <dt>HTML5</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   703
        <dd>The terms and algorithms
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   704
          <dfn title="Window" id="dfn-window"><code>Window</code></dfn>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   705
          <dfn title="Function" id="dfn-function"><code>Function</code></dfn>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   706
          <dfn id="dfn-origin">origin</dfn>, <dfn id="dfn-same-origin">same origin</dfn>, <dfn id="dfn-structured-clone">structured clone</dfn>,
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   707
          <dfn id="dfn-structured-clone-algorithm">structured clone algorithm</dfn>, <dfn id="dfn-task">task</dfn>, <dfn id="dfn-task-source">task source</dfn>, 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   708
          <dfn title="queue-a-task" id="dfn-queue-a-task">queue a task</dfn>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   709
          and <dfn title="fire-a-simple-event" id="dfn-fire-a-simple-event">fire a simple event</dfn> are defined by the HTML 5 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   710
          specification [<cite><a class="bibref" href="#bib-HTML5">HTML5</a></cite>].
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   711
        </dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   712
        <dt>Web Cryptography API</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   713
        <dd><p>A <a href="#dfn-conforming-user-agent" class="internalDFN">conforming user agent</a> <em class="rfc2119" title="MUST">MUST</em> support the Web Cryptography API [<cite><a class="bibref" href="#bib-WEBCRYPTO">WEBCRYPTO</a></cite>].</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   714
          <p>The terms <dfn title="Key" id="dfn-key"><code>Key</code></dfn> and <dfn title="KeyOperation" id="dfn-keyoperation"><code>KeyOperation</code></dfn> are defined in [<cite><a class="bibref" href="#bib-WEBCRYPTO">WEBCRYPTO</a></cite>].</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   715
        </dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   716
        <dt>WebIDL</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   717
        <dd>Many of the interface definitions and all of the IDL in this spec depends on [<cite><a class="bibref" href="#bib-WEBIDL">WEBIDL</a></cite>].</dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   718
        <dt>WebWorkers</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   719
        <dd>The term <dfn title="WorkerGlobalScope" id="dfn-workerglobalscope"><a class="externalDFN"><code>WorkerGlobalScope</code></a></dfn> is defined by
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   720
        the WebWorkers specification [<cite><a class="bibref" href="#bib-WEBWORKERS">WEBWORKERS</a></cite>].</dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   721
      </dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   722
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   723
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   724
    <section id="api-definition">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   725
      <!--OddPage--><h2 aria-level="1" role="heading" id="h2_api-definition"><span class="secno">7. </span>API definition</h2>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   726
      <section class="informative" id="overview"><h3 aria-level="2" role="heading" id="h3_overview"><span class="secno">7.1 </span>Overview</h3><p><em>This section is non-normative.</em></p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   727
      <p>This specification defines a new <a><code>cryptokeys</code></a> attribute on the <a href="#idl-def-Window" class="idlType"><code>Window</code></a> and <a href="#idl-def-WorkerGlobalScope" class="idlType"><code>WorkerGlobalScope</code></a> objects. This attribute is an object supporting a method, <a><code>getKeyByName</code></a> which may be used to get an array of all keys matching a <code>DOMString</code> name specifier. Keys are returned as <a href="#idl-def-NamedKey" class="idlType"><code>NamedKey</code></a> objects which are subclasses of the <a href="#dfn-key" class="internalDFN"><code>Key</code></a> class.</p></section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   728
      
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   729
      <section id="namedkey-interface"><h3 aria-level="2" role="heading" id="h3_namedkey-interface"><span class="secno">7.2 </span>NamedKey interface</h3>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   730
        <pre class="idl"><span class="idlInterface" id="idl-def-NamedKey">interface <span class="idlInterfaceID">NamedKey</span> : <span class="idlSuperclass"><a href="#dfn-key" class="internalDFN">Key</a></span> {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   731
<span class="idlAttribute">    readonly    attribute <span class="idlAttrType"><a>DOMString</a></span>  <span class="idlAttrName"><a href="#widl-NamedKey-name">name</a></span>;</span>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   732
<span class="idlAttribute">    readonly    attribute <span class="idlAttrType"><a>DOMString</a>?</span> <span class="idlAttrName"><a href="#widl-NamedKey-id">id</a></span>;</span>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   733
};</span></pre><section id="attributes"><h4 aria-level="3" role="heading" id="h4_attributes"><span class="secno">7.2.1 </span>Attributes</h4><dl class="attributes"><dt id="widl-NamedKey-id"><code>id</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly   , nullable</dt><dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   734
            <p>A global identifier associated with the key.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   735
            <p>Origin-specific pre-provisioned keys are frequently provisioned with associated identifiers. Where an identifier exists that uniquely identifies the key amongst all keys pre-provisoned with the same <a href="#dfn-origin" class="internalDFN">origin</a> and <a><code>name</code></a> and if this identifier can be canonically expressed as a sequence of no more than 256 bytes, then this identifier <em class="rfc2119" title="SHOULD">SHOULD</em> be exposed, base64 encoded, as the <a><code>id</code></a>. If no identifier matching these conditions exists, <a><code>id</code></a> <em class="rfc2119" title="MUST">MUST</em> be <code>null</code>.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   736
            <div class="note"><div class="note-title" aria-level="4" role="heading" id="h_note_1"><span>Note</span></div><p class="">The inclusion and definition of this identifier is the subject of <a href="http://www.w3.org/2012/webcrypto/track/issues/25">ISSUE-25</a>.</p></div>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   737
          </dd><dt id="widl-NamedKey-name"><code>name</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly   </dt><dd><p>A local identifier for the key.</p></dd></dl></section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   738
        <section id="structured-clone-algorithm"><h4 aria-level="3" role="heading" id="h4_structured-clone-algorithm"><span class="secno">7.2.2 </span>Structured clone algorithm</h4>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   739
        <p>When a user agent is required to obtain a <a href="#dfn-structured-clone" class="internalDFN">structured clone</a> of a <a href="#idl-def-NamedKey" class="idlType"><code>NamedKey</code></a> object, it must run the following steps.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   740
        <ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   741
          <li>Let <var>input</var> and <var>memory</var> be the corresponding inputs defined by the <a title="structured clone algorithm" href="#dfn-structured-clone-algorithm" class="internalDFN">internal structured clone algorithm</a>, where <var>input</var> is a <a href="#idl-def-NamedKey" class="idlType"><code>NamedKey</code></a> object to be cloned.</li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   742
          <li>Let <var>output</var> be a newly constructed <a href="#idl-def-NamedKey" class="idlType"><code>NamedKey</code></a> object, where the structured clone algorithm is followed for the base <code>Key</code> object.</li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   743
          <li>Let the following attributes of <var>output</var> be equal to the value obtained by invoking the internal structured clone algorithm recursively, using  the corresponding attribute on <var>input</var> as the new "<var>input</var>" argument and <var>memory</var> as the new "<var>memory</var>" argument:
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   744
            <ul>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   745
              <li><code>name</code></li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   746
              <li><code>id</code></li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   747
            </ul></li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   748
        </ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   749
        </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   750
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   751
        <section id="immutability-of-namedkey-objects"><h4 aria-level="3" role="heading" id="h4_immutability-of-namedkey-objects"><span class="secno">7.2.3 </span>Immutability of NamedKey objects</h4>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   752
          <p>The <code>name</code> and <code>id</code> attributes of a <a href="#idl-def-NamedKey" class="idlType"><code>NamedKey</code></a> object <em class="rfc2119" title="SHALL NOT">SHALL NOT</em> change. The underlying cryptographic key <em class="rfc2119" title="SHALL NOT">SHALL NOT</em> change, except that it <em class="rfc2119" title="MAY">MAY</em> be removed altogether. In this case any attempt to use the <a href="#idl-def-NamedKey" class="idlType"><code>NamedKey</code></a> object shall return an error.</p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   753
        </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   754
      </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   755
      <section id="cryptokeys-interface"><h3 aria-level="2" role="heading" id="h3_cryptokeys-interface"><span class="secno">7.3 </span>CryptoKeys interface</h3>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   756
        <pre class="idl"><span class="idlInterface" id="idl-def-CryptoKeys">[<span class="extAttr">NoInterfaceObject</span>]
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   757
interface <span class="idlInterfaceID">CryptoKeys</span> {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   758
<span class="idlMethod">    <span class="idlMethType"><a>Promise</a></span> <span class="idlMethName"><a href="#widl-CryptoKeys-getKeyByName-Promise-DOMString-name">getKeyByName</a></span> (<span class="idlParam"><span class="idlParamType"><a>DOMString</a></span> <span class="idlParamName">name</span></span>);</span>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   759
};</span></pre><section id="methods"><h4 aria-level="3" role="heading" id="h4_methods"><span class="secno">7.3.1 </span>Methods</h4><dl class="methods"><dt id="widl-CryptoKeys-getKeyByName-Promise-DOMString-name"><code>getKeyByName</code></dt><dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   760
            <p>When invoked, this method must perform the following steps:
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   761
              </p><ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   762
                <li>Let <var>promise</var> be a new <a><code>Promise</code></a> and <var>resolver</var> its associated resolver
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   763
                </li><li>Return <var>promise</var> and continue executing the following steps asynchronously:
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   764
                  <ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   765
                    <li>Search for a key matching the name specifier provided in <code>name</code>. A name specifier matches the name of a key if they are identical when expressed as a string of unicode characters.
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   766
                      <dl class="switch">
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   767
                        <dt>If a key is found</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   768
                        <dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   769
                          <ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   770
                            <li>Let the <var>result</var> be an object of type <code>NamedKey</code> representing the key</li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   771
                            <li>Execute <var>resolver</var>'s <code>resolve(value)</code> algorithm with <var>result</var> as the <code>value</code> argument</li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   772
                          </ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   773
                        </dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   774
                        <dt>Otherwise</dt>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   775
                        <dd>Execute <var>resolver</var>'s <code>resolve(value)</code> algorithm with <code>null</code> as the <code>value</code> argument</dd>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   776
                      </dl>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   777
                    </li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   778
                  </ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   779
                </li>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   780
              </ol>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   781
            <p></p>
16
950c4d2b64be Fix pubrules problems
Mark Watson <watsonm@netflix.com>
parents: 14
diff changeset
   782
            <table class="parameters"><tr><th>Parameter</th><th>Type</th><th>Nullable</th><th>Optional</th><th>Description</th></tr><tr><td class="prmName">name</td><td class="prmType"><code><a>DOMString</a></code></td><td class="prmNullFalse">✘</td><td class="prmOptFalse">✘</td><td class="prmDesc"></td></tr></table><div><em>Return type: </em><code><a>Promise</a></code></div></dd></dl></section>
14
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   783
      </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   784
      
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   785
      <section id="extension-of-window-interface"><h3 aria-level="2" role="heading" id="h3_extension-of-window-interface"><span class="secno">7.4 </span>Extension of Window interface</h3>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   786
      <pre class="idl"><span class="idlInterface" id="idl-def-Window">partial interface <span class="idlInterfaceID">Window</span> {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   787
<span class="idlAttribute">    readonly    attribute <span class="idlAttrType"><a href="#idl-def-CryptoKeys" class="idlType"><code>CryptoKeys</code></a></span> <span class="idlAttrName"><a href="#widl-Window-cryptokeys">cryptokeys</a></span>;</span>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   788
};</span></pre><section id="attributes-1"><h4 aria-level="3" role="heading" id="h4_attributes-1"><span class="secno">7.4.1 </span>Attributes</h4><dl class="attributes"><dt id="widl-Window-cryptokeys"><code>cryptokeys</code> of type <span class="idlAttrType"><a href="#idl-def-CryptoKeys" class="idlType"><code>CryptoKeys</code></a></span>, readonly   </dt><dd>The object that exposes the key discovery methods</dd></dl></section></section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   789
      
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   790
      <section id="extension-of-workerglobalscope-interface"><h3 aria-level="2" role="heading" id="h3_extension-of-workerglobalscope-interface"><span class="secno">7.5 </span>Extension of WorkerGlobalScope interface</h3>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   791
      <pre class="idl"><span class="idlInterface" id="idl-def-WorkerGlobalScope">partial interface <span class="idlInterfaceID">WorkerGlobalScope</span> {
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   792
<span class="idlAttribute">    readonly    attribute <span class="idlAttrType"><a href="#idl-def-CryptoKeys" class="idlType"><code>CryptoKeys</code></a></span> <span class="idlAttrName"><a href="#widl-WorkerGlobalScope-cryptokeys">cryptokeys</a></span>;</span>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   793
};</span></pre><section id="attributes-2"><h4 aria-level="3" role="heading" id="h4_attributes-2"><span class="secno">7.5.1 </span>Attributes</h4><dl class="attributes"><dt id="widl-WorkerGlobalScope-cryptokeys"><code>cryptokeys</code> of type <span class="idlAttrType"><a href="#idl-def-CryptoKeys" class="idlType"><code>CryptoKeys</code></a></span>, readonly   </dt><dd>The object that exposes the key discovery methods</dd></dl></section></section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   794
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   795
    
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   796
    <section id="examples"><!--OddPage--><h2 aria-level="1" role="heading" id="h2_examples"><span class="secno">8. </span>Examples</h2></section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   797
    <!--
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   798
    <section class='appendix'>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   799
      <h2>Acknowledgements</h2>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   800
      <p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   801
        Many thanks to ...
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   802
      </p>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   803
    </section>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   804
    -->
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   805
  
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   806
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   807
<section id="references" class="appendix" typeof="bibo:Chapter" resource="#references" rel="bibo:chapter"><!--OddPage--><h2 aria-level="1" role="heading" id="h2_references"><span class="secno">A. </span>References</h2><section id="normative-references" typeof="bibo:Chapter" resource="#normative-references" rel="bibo:chapter"><h3 aria-level="2" role="heading" id="h3_normative-references"><span class="secno">A.1 </span>Normative references</h3><dl class="bibliography" about=""><dt id="bib-HTML5">[HTML5]</dt><dd rel="dcterms:requires">Robin Berjon; Steve Faulkner; Travis Leithead; Erika Doyle Navara; Edward O'Connor; Silvia Pfeiffer. <a href="http://www.w3.org/TR/html5/"><cite>HTML5</cite></a>. 6 August 2013. W3C Candidate Recommendation. URL: <a href="http://www.w3.org/TR/html5/">http://www.w3.org/TR/html5/</a>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   808
</dd><dt id="bib-RFC2119">[RFC2119]</dt><dd rel="dcterms:requires">S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> March 1997. Internet RFC 2119.  URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a> 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   809
</dd><dt id="bib-WEBCRYPTO">[WEBCRYPTO]</dt><dd rel="dcterms:requires">Ryan Sleevi, David Dahl. <a href="http://www.w3.org/TR/WebCryptoAPI/"><cite>Web Cryptography API.</cite></a> W3C Working Draft (Work in progress.) URL: <a href="http://www.w3.org/TR/WebCryptoAPI/">http://www.w3.org/TR/WebCryptoAPI/</a> 
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   810
</dd><dt id="bib-WEBIDL">[WEBIDL]</dt><dd rel="dcterms:requires">Cameron McCormack. <a href="http://www.w3.org/TR/WebIDL/"><cite>Web IDL</cite></a>. 19 April 2012. W3C Candidate Recommendation. URL: <a href="http://www.w3.org/TR/WebIDL/">http://www.w3.org/TR/WebIDL/</a>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   811
</dd><dt id="bib-WEBWORKERS">[WEBWORKERS]</dt><dd rel="dcterms:requires">Ian Hickson. <a href="http://www.w3.org/TR/workers/"><cite>Web Workers</cite></a>. 1 May 2012. W3C Candidate Recommendation. URL: <a href="http://www.w3.org/TR/workers/">http://www.w3.org/TR/workers/</a>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   812
</dd></dl></section><section id="informative-references" typeof="bibo:Chapter" resource="#informative-references" rel="bibo:chapter"><h3 aria-level="2" role="heading" id="h3_informative-references"><span class="secno">A.2 </span>Informative references</h3><dl class="bibliography" about=""><dt id="bib-COOKIES">[COOKIES]</dt><dd rel="dcterms:references">A. Barth. <a href="http://www.ietf.org/rfc/rfc6265.txt"><cite>HTTP State Management Mechanism</cite></a>. April 2011. RFC. URL: <a href="http://www.ietf.org/rfc/rfc6265.txt">http://www.ietf.org/rfc/rfc6265.txt</a>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   813
</dd><dt id="bib-INDEXEDDB">[INDEXEDDB]</dt><dd rel="dcterms:references">Nikunj Mehta; Jonas Sicking; Eliot Graff; Andrei Popescu; Jeremy Orlow; Joshua Bell. <a href="http://www.w3.org/TR/IndexedDB/"><cite>Indexed Database API</cite></a>. 4 July 2013. W3C Candidate Recommendation. URL: <a href="http://www.w3.org/TR/IndexedDB/">http://www.w3.org/TR/IndexedDB/</a>
9579d36520db Working Draft for pubrules checking
Mark Watson <watsonm@netflix.com>
parents:
diff changeset
   814
</dd></dl></section></section></body></html>