@markuplint/html-spec 3.0.0-alpha.66 → 3.0.0-dev.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +8 -3
  2. package/index.json +817 -667
  3. package/package.json +8 -8
  4. package/src/spec-common.attributes.json +2 -2
  5. package/src/spec-common.contents.json +80 -1
  6. package/src/spec.a.json +2 -3
  7. package/src/spec.abbr.json +1 -1
  8. package/src/spec.address.json +1 -2
  9. package/src/spec.article.json +1 -1
  10. package/src/spec.aside.json +1 -1
  11. package/src/spec.audio.json +2 -4
  12. package/src/spec.b.json +1 -1
  13. package/src/spec.bdi.json +1 -1
  14. package/src/spec.bdo.json +1 -1
  15. package/src/spec.blockquote.json +1 -1
  16. package/src/spec.body.json +1 -1
  17. package/src/spec.br.json +1 -1
  18. package/src/spec.button.json +1 -2
  19. package/src/spec.canvas.json +1 -2
  20. package/src/spec.caption.json +1 -1
  21. package/src/spec.cite.json +1 -1
  22. package/src/spec.code.json +1 -1
  23. package/src/spec.data.json +1 -1
  24. package/src/spec.datalist.json +2 -2
  25. package/src/spec.dd.json +1 -1
  26. package/src/spec.del.json +1 -1
  27. package/src/spec.details.json +1 -1
  28. package/src/spec.dfn.json +1 -2
  29. package/src/spec.dialog.json +1 -1
  30. package/src/spec.div.json +4 -4
  31. package/src/spec.dl.json +10 -4
  32. package/src/spec.dt.json +1 -2
  33. package/src/spec.em.json +1 -1
  34. package/src/spec.fieldset.json +1 -1
  35. package/src/spec.figcaption.json +1 -1
  36. package/src/spec.figure.json +14 -3
  37. package/src/spec.footer.json +1 -2
  38. package/src/spec.form.json +1 -2
  39. package/src/spec.h1.json +1 -1
  40. package/src/spec.h2.json +1 -1
  41. package/src/spec.h3.json +1 -1
  42. package/src/spec.h4.json +1 -1
  43. package/src/spec.h5.json +1 -1
  44. package/src/spec.h6.json +1 -1
  45. package/src/spec.head.json +2 -4
  46. package/src/spec.header.json +1 -2
  47. package/src/spec.hgroup.json +19 -11
  48. package/src/spec.i.json +1 -1
  49. package/src/spec.iframe.json +1 -5
  50. package/src/spec.input.json +10 -10
  51. package/src/spec.ins.json +1 -1
  52. package/src/spec.kbd.json +1 -1
  53. package/src/spec.label.json +1 -2
  54. package/src/spec.legend.json +1 -1
  55. package/src/spec.li.json +1 -1
  56. package/src/spec.main.json +1 -1
  57. package/src/spec.map.json +1 -1
  58. package/src/spec.mark.json +1 -1
  59. package/src/spec.menu.json +1 -1
  60. package/src/spec.meter.json +2 -3
  61. package/src/spec.nav.json +1 -1
  62. package/src/spec.noscript.json +1 -1
  63. package/src/spec.object.json +1 -1
  64. package/src/spec.ol.json +1 -1
  65. package/src/spec.option.json +1 -1
  66. package/src/spec.output.json +1 -1
  67. package/src/spec.p.json +1 -1
  68. package/src/spec.picture.json +3 -3
  69. package/src/spec.portal.json +1 -1
  70. package/src/spec.pre.json +1 -1
  71. package/src/spec.progress.json +2 -3
  72. package/src/spec.q.json +1 -2
  73. package/src/spec.rp.json +1 -2
  74. package/src/spec.rt.json +1 -1
  75. package/src/spec.ruby.json +1 -2
  76. package/src/spec.s.json +1 -1
  77. package/src/spec.samp.json +1 -1
  78. package/src/spec.script.json +1 -1
  79. package/src/spec.section.json +1 -1
  80. package/src/spec.select.json +2 -2
  81. package/src/spec.slot.json +1 -1
  82. package/src/spec.small.json +1 -1
  83. package/src/spec.span.json +1 -1
  84. package/src/spec.strong.json +1 -1
  85. package/src/spec.sub.json +1 -1
  86. package/src/spec.summary.json +2 -2
  87. package/src/spec.sup.json +1 -1
  88. package/src/spec.svg_a.json +3 -4
  89. package/src/spec.svg_animate.json +1 -1
  90. package/src/spec.svg_animateMotion.json +3 -3
  91. package/src/spec.svg_animateTransform.json +1 -1
  92. package/src/spec.svg_circle.json +3 -3
  93. package/src/spec.svg_clipPath.json +8 -1
  94. package/src/spec.svg_defs.json +5 -5
  95. package/src/spec.svg_desc.json +1 -1
  96. package/src/spec.svg_discard.json +1 -1
  97. package/src/spec.svg_ellipse.json +3 -3
  98. package/src/spec.svg_feBlend.json +1 -1
  99. package/src/spec.svg_feColorMatrix.json +1 -1
  100. package/src/spec.svg_feComponentTransfer.json +1 -1
  101. package/src/spec.svg_feComposite.json +1 -1
  102. package/src/spec.svg_feConvolveMatrix.json +1 -1
  103. package/src/spec.svg_feDiffuseLighting.json +5 -5
  104. package/src/spec.svg_feDisplacementMap.json +1 -1
  105. package/src/spec.svg_feDistantLight.json +1 -1
  106. package/src/spec.svg_feDropShadow.json +1 -1
  107. package/src/spec.svg_feFlood.json +1 -1
  108. package/src/spec.svg_feFuncA.json +1 -1
  109. package/src/spec.svg_feFuncB.json +1 -1
  110. package/src/spec.svg_feFuncG.json +1 -1
  111. package/src/spec.svg_feFuncR.json +1 -1
  112. package/src/spec.svg_feGaussianBlur.json +1 -1
  113. package/src/spec.svg_feImage.json +1 -1
  114. package/src/spec.svg_feMerge.json +1 -1
  115. package/src/spec.svg_feMergeNode.json +1 -1
  116. package/src/spec.svg_feMorphology.json +1 -1
  117. package/src/spec.svg_feOffset.json +1 -1
  118. package/src/spec.svg_fePointLight.json +1 -1
  119. package/src/spec.svg_feSpecularLighting.json +5 -5
  120. package/src/spec.svg_feSpotLight.json +1 -1
  121. package/src/spec.svg_feTile.json +1 -1
  122. package/src/spec.svg_feTurbulence.json +3 -2
  123. package/src/spec.svg_filter.json +1 -1
  124. package/src/spec.svg_g.json +5 -5
  125. package/src/spec.svg_image.json +2 -2
  126. package/src/spec.svg_line.json +3 -3
  127. package/src/spec.svg_linearGradient.json +1 -1
  128. package/src/spec.svg_marker.json +5 -5
  129. package/src/spec.svg_mask.json +5 -5
  130. package/src/spec.svg_metadata.json +1 -1
  131. package/src/spec.svg_mpath.json +1 -1
  132. package/src/spec.svg_path.json +3 -3
  133. package/src/spec.svg_pattern.json +5 -5
  134. package/src/spec.svg_polygon.json +3 -3
  135. package/src/spec.svg_polyline.json +3 -3
  136. package/src/spec.svg_radialGradient.json +1 -1
  137. package/src/spec.svg_rect.json +3 -3
  138. package/src/spec.svg_script.json +1 -1
  139. package/src/spec.svg_set.json +1 -1
  140. package/src/spec.svg_svg.json +5 -5
  141. package/src/spec.svg_switch.json +2 -2
  142. package/src/spec.svg_symbol.json +5 -5
  143. package/src/spec.svg_text.json +4 -4
  144. package/src/spec.svg_textPath.json +2 -2
  145. package/src/spec.svg_title.json +1 -1
  146. package/src/spec.svg_tspan.json +2 -2
  147. package/src/spec.svg_use.json +2 -2
  148. package/src/spec.svg_view.json +1 -1
  149. package/src/spec.table.json +6 -6
  150. package/src/spec.td.json +4 -4
  151. package/src/spec.template.json +1 -5
  152. package/src/spec.th.json +7 -8
  153. package/src/spec.time.json +1 -1
  154. package/src/spec.tr.json +1 -1
  155. package/src/spec.u.json +1 -1
  156. package/src/spec.ul.json +1 -1
  157. package/src/spec.var.json +1 -1
  158. package/src/spec.video.json +2 -4
package/index.json CHANGED
@@ -363,7 +363,7 @@
363
363
  }
364
364
  },
365
365
  "class": {
366
- "type": "<class-list>"
366
+ "type": "Any"
367
367
  },
368
368
  "id": {
369
369
  "type": "DOMID"
@@ -1027,7 +1027,7 @@
1027
1027
  "type": "BCP47"
1028
1028
  },
1029
1029
  "class": {
1030
- "type": "<class-list>"
1030
+ "type": "Any"
1031
1031
  },
1032
1032
  "style": {
1033
1033
  "type": "<css-declaration-list>"
@@ -22184,7 +22184,7 @@
22184
22184
  "#text"
22185
22185
  ],
22186
22186
  "#sectioning": ["article", "aside", "nav", "section"],
22187
- "#heading": ["h1", "h2", "h3", "h4", "h5", "h6", "hgroup"],
22187
+ "#heading": ["h1", "h2", "h3", "h4", "h5", "h6", "hgroup:has(h1,h2,h3,h4,h5,h6)"],
22188
22188
  "#phrasing": [
22189
22189
  "a",
22190
22190
  "abbr",
@@ -22268,6 +22268,83 @@
22268
22268
  "textarea",
22269
22269
  "video[controls]"
22270
22270
  ],
22271
+ "#palpable": [
22272
+ "a",
22273
+ "abbr",
22274
+ "address",
22275
+ "article",
22276
+ "aside",
22277
+ "audio[controls]",
22278
+ "b",
22279
+ "bdi",
22280
+ "bdo",
22281
+ "blockquote",
22282
+ "button",
22283
+ "canvas",
22284
+ "cite",
22285
+ "code",
22286
+ "data",
22287
+ "details",
22288
+ "dfn",
22289
+ "div",
22290
+ "dl:has(>:is(dt+dd))",
22291
+ "em",
22292
+ "embed",
22293
+ "fieldset",
22294
+ "figure",
22295
+ "footer",
22296
+ "form",
22297
+ "h1",
22298
+ "h2",
22299
+ "h3",
22300
+ "h4",
22301
+ "h5",
22302
+ "h6",
22303
+ "header",
22304
+ "hgroup",
22305
+ "i",
22306
+ "iframe",
22307
+ "img",
22308
+ "input:not([type='hidden' i])",
22309
+ "ins",
22310
+ "kbd",
22311
+ "label",
22312
+ "main",
22313
+ "map",
22314
+ "mark",
22315
+ "math",
22316
+ "menu:has(>li)",
22317
+ "meter",
22318
+ "nav",
22319
+ "object",
22320
+ "ol:has(>li)",
22321
+ "output",
22322
+ "p",
22323
+ "pre",
22324
+ "progress",
22325
+ "q",
22326
+ "ruby",
22327
+ "s",
22328
+ "samp",
22329
+ "section",
22330
+ "select",
22331
+ "small",
22332
+ "span",
22333
+ "strong",
22334
+ "sub",
22335
+ "sup ",
22336
+ "svg",
22337
+ "table",
22338
+ "text",
22339
+ "area",
22340
+ "time",
22341
+ "u",
22342
+ "ul:has(>li)",
22343
+ "var",
22344
+ "video",
22345
+ "#custom",
22346
+ "#text"
22347
+ ],
22271
22348
  "#script-supporting": ["script", "template"],
22272
22349
  "#SVGAnimation": [
22273
22350
  "svg|animate",
@@ -22411,8 +22488,7 @@
22411
22488
  "contentModel": {
22412
22489
  "contents": [
22413
22490
  {
22414
- "zeroOrMore": "#transparent",
22415
- "notAllowedDescendants": ["#interactive"]
22491
+ "transparent": ":not(:model(interactive), a, [tabindex], :has(:model(interactive), a, [tabindex]))"
22416
22492
  }
22417
22493
  ]
22418
22494
  },
@@ -22433,7 +22509,7 @@
22433
22509
  "properties": {
22434
22510
  "global": true,
22435
22511
  "role": true,
22436
- "whithout": [
22512
+ "without": [
22437
22513
  {
22438
22514
  "type": "not-recommended",
22439
22515
  "name": "aria-disabled",
@@ -22453,7 +22529,7 @@
22453
22529
  }
22454
22530
  }
22455
22531
  },
22456
- "omittion": false,
22532
+ "omission": false,
22457
22533
  "globalAttrs": {
22458
22534
  "#ARIAAttrs": true,
22459
22535
  "#DocumentElementEventAttrs": true,
@@ -22480,10 +22556,10 @@
22480
22556
  "deprecated": true
22481
22557
  },
22482
22558
  "download": {
22483
- "description": "Causes the browser to treat the linked URL as a download. Can be used with or without a value: Without a value, the browser will suggest a filename/extension, generated from various sources: The Content-Disposition HTTP header The final segment in the URL path The media type (from the Content-Type header, the start of a data: URL, or Blob.type for a blob: URL) Defining a value suggests it as the filename. / and \\ characters are converted to underscores (_). Filesystems may forbid other characters in filenames, so browsers will adjust the suggested name if necessary. Note: download only works for same-origin URLs, or the blob: and data: schemes. How browsers treat downloads varies by browser, user settings, and other factors. The user may be prompted before a download starts, or the file may be saved automatically, or it may open automatically, either in an external application or in the browser itself. If the Content-Disposition header has different information from the download attribute, resulting behavior may differ: If the header specifies a filename, it takes priority over a filename specified in the download attribute. If the header specifies a disposition of inline, Chrome and Firefox prioritize the attribute and treat it as a download. Old Firefox versions (before 82) prioritize the header and will display the content inline."
22559
+ "description": "Causes the browser to treat the linked URL as a download. Can be used with or without a filename value: Without a value, the browser will suggest a filename/extension, generated from various sources: The Content-Disposition HTTP header The final segment in the URL path The media type (from the Content-Type header, the start of a data: URL, or Blob.type for a blob: URL) filename: defining a value suggests it as the filename. / and \\ characters are converted to underscores (_). Filesystems may forbid other characters in filenames, so browsers will adjust the suggested name if necessary. Note: download only works for same-origin URLs, or the blob: and data: schemes. How browsers treat downloads varies by browser, user settings, and other factors. The user may be prompted before a download starts, or the file may be saved automatically, or it may open automatically, either in an external application or in the browser itself. If the Content-Disposition header has different information from the download attribute, resulting behavior may differ: If the header specifies a filename, it takes priority over a filename specified in the download attribute. If the header specifies a disposition of inline, Chrome and Firefox prioritize the attribute and treat it as a download. Old Firefox versions (before 82) prioritize the header and will display the content inline."
22484
22560
  },
22485
22561
  "href": {
22486
- "description": "The URL that the hyperlink points to. Links are not restricted to HTTP-based URLs — they can use any URL scheme supported by browsers: Sections of a page with fragment URLs Pieces of media files with media fragments Telephone numbers with tel: URLs Email addresses with mailto: URLs While web browsers may not support other URL schemes, web sites can with registerProtocolHandler()"
22562
+ "description": "The URL that the hyperlink points to. Links are not restricted to HTTP-based URLs — they can use any URL scheme supported by browsers: Sections of a page with fragment URLs Pieces of media files with media fragments Telephone numbers with tel: URLs Email addresses with mailto: URLs While web browsers may not support other URL schemes, websites can with registerProtocolHandler()"
22487
22563
  },
22488
22564
  "hreflang": {
22489
22565
  "description": "Hints at the human language of the linked URL. No built-in functionality. Allowed values are the same as the global lang attribute."
@@ -22510,7 +22586,7 @@
22510
22586
  "deprecated": true
22511
22587
  },
22512
22588
  "target": {
22513
- "description": "Where to display the linked URL, as the name for a browsing context (a tab, window, or <iframe>). The following keywords have special meanings for where to load the URL: _self: the current browsing context. (Default) _blank: usually a new tab, but users can configure browsers to open a new window instead. _parent: the parent browsing context of the current one. If no parent, behaves as _self. _top: the topmost browsing context (the \"highest\" context that's an ancestor of the current one). If no ancestors, behaves as _self. Note: Setting target=\"_blank\" on <a> elements implicitly provides the same rel behavior as setting rel=\"noopener\" which does not set window.opener. See browser compatibility for support status."
22589
+ "description": "Where to display the linked URL, as the name for a browsing context (a tab, window, or <iframe>). The following keywords have special meanings for where to load the URL: _self: the current browsing context. (Default) _blank: usually a new tab, but users can configure browsers to open a new window instead. _parent: the parent browsing context of the current one. If no parent, behaves as _self. _top: the topmost browsing context (the \"highest\" context that's an ancestor of the current one). If no ancestors, behaves as _self. Note: Setting target=\"_blank\" on <a> elements implicitly provides the same rel behavior as setting rel=\"noopener\" which does not set window.opener."
22514
22590
  },
22515
22591
  "type": {
22516
22592
  "description": "Hints at the linked URL's format with a MIME type. No built-in functionality."
@@ -22520,12 +22596,12 @@
22520
22596
  {
22521
22597
  "name": "abbr",
22522
22598
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/abbr",
22523
- "description": "The <abbr> HTML element represents an abbreviation or acronym; the optional title attribute can provide an expansion or description for the abbreviation. If present, title must contain this full description and nothing else.",
22599
+ "description": "The <abbr> HTML element represents an abbreviation or acronym.",
22524
22600
  "categories": ["#flow", "#phrasing", "#palpable"],
22525
22601
  "contentModel": {
22526
22602
  "contents": [
22527
22603
  {
22528
- "zeroOrMore": "#phrasing"
22604
+ "oneOrMore": ":model(phrasing)"
22529
22605
  }
22530
22606
  ]
22531
22607
  },
@@ -22534,7 +22610,7 @@
22534
22610
  "permittedRoles": true,
22535
22611
  "namingProhibited": true
22536
22612
  },
22537
- "omittion": false,
22613
+ "omission": false,
22538
22614
  "globalAttrs": {
22539
22615
  "#ARIAAttrs": true,
22540
22616
  "#DocumentElementEventAttrs": true,
@@ -22555,7 +22631,7 @@
22555
22631
  "permittedRoles": true,
22556
22632
  "implicitRole": false
22557
22633
  },
22558
- "omittion": false,
22634
+ "omission": false,
22559
22635
  "obsolete": true,
22560
22636
  "globalAttrs": {},
22561
22637
  "attributes": {}
@@ -22568,8 +22644,7 @@
22568
22644
  "contentModel": {
22569
22645
  "contents": [
22570
22646
  {
22571
- "zeroOrMore": "#flow",
22572
- "notAllowedDescendants": ["address", "#heading", "#sectioning", "header", "footer"]
22647
+ "oneOrMore": ":model(flow):not(address, :model(heading), :model(sectioning), header, foooter, :has(address, :model(heading), :model(sectioning), header, foooter))"
22573
22648
  }
22574
22649
  ]
22575
22650
  },
@@ -22578,7 +22653,7 @@
22578
22653
  "permittedRoles": true,
22579
22654
  "namingProhibited": true
22580
22655
  },
22581
- "omittion": false,
22656
+ "omission": false,
22582
22657
  "globalAttrs": {
22583
22658
  "#ARIAAttrs": true,
22584
22659
  "#DocumentElementEventAttrs": true,
@@ -22599,61 +22674,76 @@
22599
22674
  "permittedRoles": true,
22600
22675
  "implicitRole": false
22601
22676
  },
22602
- "omittion": false,
22677
+ "omission": false,
22603
22678
  "obsolete": true,
22604
22679
  "globalAttrs": {},
22605
22680
  "attributes": {
22606
22681
  "align": {
22607
- "description": "This attribute is used to position the applet on the page relative to content that might flow around it. The HTML 4.01 specification defines values of bottom, left, middle, right, and top, whereas Microsoft and Netscape also might support absbottom, absmiddle, baseline, center, and texttop."
22682
+ "description": "This attribute is used to position the applet on the page relative to content that might flow around it. The HTML 4.01 specification defines values of bottom, left, middle, right, and top, whereas Microsoft and Netscape also might support absbottom, absmiddle, baseline, center, and texttop.",
22683
+ "deprecated": true
22608
22684
  },
22609
22685
  "alt": {
22610
- "description": "This attribute causes a descriptive text alternate to be displayed on browsers that do not support Java. Page designers should also remember that content enclosed within the <applet> element may also be rendered as alternative text."
22686
+ "description": "This attribute causes a descriptive text alternate to be displayed on browsers that do not support Java. Page designers should also remember that content enclosed within the <applet> element may also be rendered as alternative text.",
22687
+ "deprecated": true
22611
22688
  },
22612
22689
  "archive": {
22613
- "description": "This attribute refers to an archived or compressed version of the applet and its associated class files, which might help reduce download time."
22690
+ "description": "This attribute refers to an archived or compressed version of the applet and its associated class files, which might help reduce download time.",
22691
+ "deprecated": true
22614
22692
  },
22615
22693
  "code": {
22616
- "description": "This attribute specifies the URL of the applet's class file to be loaded and executed. Applet filenames are identified by a .class filename extension. The URL specified by code might be relative to the codebase attribute."
22694
+ "description": "This attribute specifies the URL of the applet's class file to be loaded and executed. Applet filenames are identified by a .class filename extension. The URL specified by code might be relative to the codebase attribute.",
22695
+ "deprecated": true
22617
22696
  },
22618
22697
  "codebase": {
22619
- "description": "This attribute gives the absolute or relative URL of the directory where applets' .class files referenced by the code attribute are stored."
22698
+ "description": "This attribute gives the absolute or relative URL of the directory where applets' .class files referenced by the code attribute are stored.",
22699
+ "deprecated": true
22620
22700
  },
22621
22701
  "datafld": {
22622
- "description": "This attribute, supported by Internet Explorer 4 and higher, specifies the column name from the data source object that supplies the bound data. This attribute might be used to specify the various <param> elements passed to the Java applet."
22702
+ "description": "This attribute, supported by Internet Explorer 4 and higher, specifies the column name from the data source object that supplies the bound data. This attribute might be used to specify the various <param> elements passed to the Java applet.",
22703
+ "deprecated": true
22623
22704
  },
22624
22705
  "datasrc": {
22625
- "description": "Like datafld, this attribute is used for data binding under Internet Explorer 4. It indicates the id of the data source object that supplies the data that is bound to the <param> elements associated with the applet."
22706
+ "description": "Like datafld, this attribute is used for data binding under Internet Explorer 4. It indicates the id of the data source object that supplies the data that is bound to the <param> elements associated with the applet.",
22707
+ "deprecated": true
22626
22708
  },
22627
22709
  "height": {
22628
- "description": "This attribute specifies the height, in pixels, that the applet needs."
22710
+ "description": "This attribute specifies the height, in pixels, that the applet needs.",
22711
+ "deprecated": true
22629
22712
  },
22630
22713
  "hspace": {
22631
- "description": "This attribute specifies additional horizontal space, in pixels, to be reserved on either side of the applet."
22714
+ "description": "This attribute specifies additional horizontal space, in pixels, to be reserved on either side of the applet.",
22715
+ "deprecated": true
22632
22716
  },
22633
22717
  "mayscript": {
22634
- "description": "In the Netscape implementation, this attribute allows access to an applet by programs in a scripting language embedded in the document."
22718
+ "description": "In the Netscape implementation, this attribute allows access to an applet by programs in a scripting language embedded in the document.",
22719
+ "deprecated": true
22635
22720
  },
22636
22721
  "name": {
22637
- "description": "This attribute assigns a name to the applet so that it can be identified by other resources; particularly scripts."
22722
+ "description": "This attribute assigns a name to the applet so that it can be identified by other resources; particularly scripts.",
22723
+ "deprecated": true
22638
22724
  },
22639
22725
  "object": {
22640
- "description": "This attribute specifies the URL of a serialized representation of an applet."
22726
+ "description": "This attribute specifies the URL of a serialized representation of an applet.",
22727
+ "deprecated": true
22641
22728
  },
22642
22729
  "src": {
22643
- "description": "As defined for Internet Explorer 4 and higher, this attribute specifies a URL for an associated file for the applet. The meaning and use is unclear and not part of the HTML standard."
22730
+ "description": "As defined for Internet Explorer 4 and higher, this attribute specifies a URL for an associated file for the applet. The meaning and use is unclear and not part of the HTML standard.",
22731
+ "deprecated": true
22644
22732
  },
22645
22733
  "vspace": {
22646
- "description": "This attribute specifies additional vertical space, in pixels, to be reserved above and below the applet."
22734
+ "description": "This attribute specifies additional vertical space, in pixels, to be reserved above and below the applet.",
22735
+ "deprecated": true
22647
22736
  },
22648
22737
  "width": {
22649
- "description": "This attribute specifies in pixels the width that the applet needs."
22738
+ "description": "This attribute specifies in pixels the width that the applet needs.",
22739
+ "deprecated": true
22650
22740
  }
22651
22741
  }
22652
22742
  },
22653
22743
  {
22654
22744
  "name": "area",
22655
22745
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/area",
22656
- "description": "The <area> HTML element defines an area inside an image map that has predefined clickable areas. An image map allows geometric areas on an image to be associated with hypertext link.",
22746
+ "description": "The <area> HTML element defines an area inside an image map that has predefined clickable areas. An image map allows geometric areas on an image to be associated with hypertext links.",
22657
22747
  "categories": ["#flow", "#phrasing"],
22658
22748
  "contentModel": {
22659
22749
  "contents": false,
@@ -22682,7 +22772,7 @@
22682
22772
  }
22683
22773
  }
22684
22774
  },
22685
- "omittion": false,
22775
+ "omission": false,
22686
22776
  "globalAttrs": {
22687
22777
  "#ARIAAttrs": true,
22688
22778
  "#DocumentElementEventAttrs": true,
@@ -22719,14 +22809,15 @@
22719
22809
  "description": "The hyperlink target for the area. Its value is a valid URL. This attribute may be omitted; if so, the <area> element does not represent a hyperlink."
22720
22810
  },
22721
22811
  "hreflang": {
22722
- "description": "Indicates the language of the linked resource. Allowed values are defined by RFC 5646: Tags for Identifying Languages (also known as BCP 47). Use this attribute only if the href attribute is present."
22812
+ "description": "Indicates the language of the linked resource. Allowed values are defined by RFC 5646: Tags for Identifying Languages (also known as BCP 47). Use this attribute only if the href attribute is present.",
22813
+ "deprecated": true
22723
22814
  },
22724
22815
  "name": {
22725
22816
  "description": "Define a names for the clickable area so that it can be scripted by older browsers.",
22726
22817
  "deprecated": true
22727
22818
  },
22728
22819
  "nohref": {
22729
- "description": "Indicates that no hyperlink exists for the associated area. Note: Since HTML5, omitting the href attribute is sufficient.",
22820
+ "description": "Indicates that no hyperlink exists for the associated area. Note: The nohref attribute is not necessary, as omitting the href attribute is sufficient.",
22730
22821
  "deprecated": true
22731
22822
  },
22732
22823
  "ping": {
@@ -22762,7 +22853,7 @@
22762
22853
  "contentModel": {
22763
22854
  "contents": [
22764
22855
  {
22765
- "zeroOrMore": "#flow"
22856
+ "oneOrMore": ":model(flow)"
22766
22857
  }
22767
22858
  ]
22768
22859
  },
@@ -22770,7 +22861,7 @@
22770
22861
  "implicitRole": "article",
22771
22862
  "permittedRoles": ["application", "document", "feed", "main", "none", "presentation", "region"]
22772
22863
  },
22773
- "omittion": false,
22864
+ "omission": false,
22774
22865
  "globalAttrs": {
22775
22866
  "#ARIAAttrs": true,
22776
22867
  "#DocumentElementEventAttrs": true,
@@ -22787,7 +22878,7 @@
22787
22878
  "contentModel": {
22788
22879
  "contents": [
22789
22880
  {
22790
- "zeroOrMore": "#flow"
22881
+ "oneOrMore": ":model(flow)"
22791
22882
  }
22792
22883
  ]
22793
22884
  },
@@ -22795,7 +22886,7 @@
22795
22886
  "implicitRole": "complementary",
22796
22887
  "permittedRoles": ["feed", "none", "note", "presentation", "region", "search"]
22797
22888
  },
22798
- "omittion": false,
22889
+ "omission": false,
22799
22890
  "globalAttrs": {
22800
22891
  "#ARIAAttrs": true,
22801
22892
  "#DocumentElementEventAttrs": true,
@@ -22818,8 +22909,7 @@
22818
22909
  "zeroOrMore": "track"
22819
22910
  },
22820
22911
  {
22821
- "zeroOrMore": "#transparent",
22822
- "notAllowedDescendants": ["audio", "video"]
22912
+ "transparent": ":not(audio, video, :has(audio, video))"
22823
22913
  }
22824
22914
  ],
22825
22915
  "conditional": [
@@ -22830,8 +22920,7 @@
22830
22920
  "zeroOrMore": "track"
22831
22921
  },
22832
22922
  {
22833
- "zeroOrMore": "#transparent",
22834
- "notAllowedDescendants": ["audio", "video"]
22923
+ "transparent": ":not(audio, video, :has(audio, video))"
22835
22924
  }
22836
22925
  ]
22837
22926
  }
@@ -22845,7 +22934,7 @@
22845
22934
  "role": "application"
22846
22935
  }
22847
22936
  },
22848
- "omittion": false,
22937
+ "omission": false,
22849
22938
  "globalAttrs": {
22850
22939
  "#ARIAAttrs": true,
22851
22940
  "#DocumentElementEventAttrs": true,
@@ -22861,11 +22950,16 @@
22861
22950
  "controls": {
22862
22951
  "description": "If this attribute is present, the browser will offer controls to allow the user to control audio playback, including volume, seeking, and pause/resume playback."
22863
22952
  },
22953
+ "controlslist": {
22954
+ "description": "The controlslist attribute, when specified, helps the browser select what controls to show for the audio element whenever the browser shows its own set of controls (that is, when the controls attribute is specified). The allowed values are nodownload, nofullscreen and noremoteplayback.",
22955
+ "experimental": true,
22956
+ "nonStandard": true
22957
+ },
22864
22958
  "crossorigin": {
22865
- "description": "This enumerated attribute indicates whether to use CORS to fetch the related audio file. CORS-enabled resources can be reused in the <canvas> element without being tainted. The allowed values are: anonymous Sends a cross-origin request without a credential. In other words, it sends the Origin: HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the Access-Control-Allow-Origin: HTTP header), the image will be tainted, and its usage restricted. use-credentials Sends a cross-origin request with a credential. In other words, it sends the Origin: HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through Access-Control-Allow-Credentials: HTTP header), the image will be tainted and its usage restricted. When not present, the resource is fetched without a CORS request (i.e. without sending the Origin: HTTP header), preventing its non-tainted used in <canvas> elements. If invalid, it is handled as if the enumerated keyword anonymous was used. See CORS settings attributes for additional information."
22959
+ "description": "This enumerated attribute indicates whether to use CORS to fetch the related audio file. CORS-enabled resources can be reused in the <canvas> element without being tainted. The allowed values are: anonymous Sends a cross-origin request without a credential. In other words, it sends the Origin: HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the Access-Control-Allow-Origin: HTTP header), the resource will be tainted, and its usage restricted. use-credentials Sends a cross-origin request with a credential. In other words, it sends the Origin: HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through Access-Control-Allow-Credentials: HTTP header), the resource will be tainted and its usage restricted. When not present, the resource is fetched without a CORS request (i.e. without sending the Origin: HTTP header), preventing its non-tainted use in <canvas> elements. If invalid, it is handled as if the enumerated keyword anonymous was used. See CORS settings attributes for additional information."
22866
22960
  },
22867
22961
  "disableremoteplayback": {
22868
- "description": "A Boolean attribute used to disable the capability of remote playback in devices that are attached using wired (HDMI, DVI, etc.) and wireless technologies (Miracast, Chromecast, DLNA, AirPlay, etc). See this proposed specification for more information. Note: In Safari, you can use x-webkit-airplay=\"deny\" as a fallback.",
22962
+ "description": "A Boolean attribute used to disable the capability of remote playback in devices that are attached using wired (HDMI, DVI, etc.) and wireless technologies (Miracast, Chromecast, DLNA, AirPlay, etc.). See this proposed specification for more information. Note: In Safari, you can use x-webkit-airplay=\"deny\" as a fallback.",
22869
22963
  "experimental": true
22870
22964
  },
22871
22965
  "loop": {
@@ -22890,7 +22984,7 @@
22890
22984
  "contentModel": {
22891
22985
  "contents": [
22892
22986
  {
22893
- "zeroOrMore": "#phrasing"
22987
+ "oneOrMore": ":model(phrasing)"
22894
22988
  }
22895
22989
  ]
22896
22990
  },
@@ -22899,7 +22993,7 @@
22899
22993
  "permittedRoles": true,
22900
22994
  "namingProhibited": true
22901
22995
  },
22902
- "omittion": false,
22996
+ "omission": false,
22903
22997
  "globalAttrs": {
22904
22998
  "#ARIAAttrs": true,
22905
22999
  "#DocumentElementEventAttrs": true,
@@ -22921,7 +23015,7 @@
22921
23015
  "permittedRoles": false,
22922
23016
  "properties": false
22923
23017
  },
22924
- "omittion": false,
23018
+ "omission": false,
22925
23019
  "globalAttrs": {
22926
23020
  "#ARIAAttrs": true,
22927
23021
  "#DocumentElementEventAttrs": true,
@@ -22941,7 +23035,7 @@
22941
23035
  {
22942
23036
  "name": "basefont",
22943
23037
  "cite": "https://html.spec.whatwg.org/multipage/obsolete.html#non-conforming-features",
22944
- "description": "The <basefont> HTML element is deprecated. It sets a default font face, size, and color for the other elements which are descended from its parent element. With this set, the font's size can then be varied relative to the base size using the <font> element.",
23038
+ "description": "CSS Fonts is a module of CSS that defines font-related properties and how font resources are loaded. It lets you define the style of a font, such as its family, size and weight, line height, and the glyph variants to use when multiple are available for a single character.",
22945
23039
  "categories": [],
22946
23040
  "contentModel": {
22947
23041
  "contents": true
@@ -22950,20 +23044,10 @@
22950
23044
  "permittedRoles": true,
22951
23045
  "implicitRole": false
22952
23046
  },
22953
- "omittion": false,
23047
+ "omission": false,
22954
23048
  "obsolete": true,
22955
23049
  "globalAttrs": {},
22956
- "attributes": {
22957
- "color": {
22958
- "description": "This attribute sets the text color using either a named color or a color specified in the hexadecimal #RRGGBB format."
22959
- },
22960
- "face": {
22961
- "description": "This attribute contains a list of one or more font names. The document text in the default style is rendered in the first font face that the client's browser supports. If no font listed is installed on the local system, the browser typically defaults to the proportional or fixed-width font for that system."
22962
- },
22963
- "size": {
22964
- "description": "This attribute specifies the font size as either a numeric or relative value. Numeric values range from 1 to 7 with 1 being the smallest and 3 the default."
22965
- }
22966
- }
23050
+ "attributes": {}
22967
23051
  },
22968
23052
  {
22969
23053
  "name": "bdi",
@@ -22973,7 +23057,7 @@
22973
23057
  "contentModel": {
22974
23058
  "contents": [
22975
23059
  {
22976
- "zeroOrMore": "#phrasing"
23060
+ "oneOrMore": ":model(phrasing)"
22977
23061
  }
22978
23062
  ]
22979
23063
  },
@@ -22982,7 +23066,7 @@
22982
23066
  "permittedRoles": true,
22983
23067
  "namingProhibited": true
22984
23068
  },
22985
- "omittion": false,
23069
+ "omission": false,
22986
23070
  "globalAttrs": {
22987
23071
  "#ARIAAttrs": true,
22988
23072
  "#DocumentElementEventAttrs": true,
@@ -22999,7 +23083,7 @@
22999
23083
  "contentModel": {
23000
23084
  "contents": [
23001
23085
  {
23002
- "zeroOrMore": "#phrasing"
23086
+ "oneOrMore": ":model(phrasing)"
23003
23087
  }
23004
23088
  ]
23005
23089
  },
@@ -23008,7 +23092,7 @@
23008
23092
  "permittedRoles": true,
23009
23093
  "namingProhibited": true
23010
23094
  },
23011
- "omittion": false,
23095
+ "omission": false,
23012
23096
  "globalAttrs": {
23013
23097
  "#ARIAAttrs": true,
23014
23098
  "#DocumentElementEventAttrs": true,
@@ -23033,7 +23117,7 @@
23033
23117
  "permittedRoles": true,
23034
23118
  "implicitRole": false
23035
23119
  },
23036
- "omittion": false,
23120
+ "omission": false,
23037
23121
  "obsolete": true,
23038
23122
  "globalAttrs": {},
23039
23123
  "attributes": {
@@ -23063,7 +23147,7 @@
23063
23147
  "permittedRoles": true,
23064
23148
  "implicitRole": false
23065
23149
  },
23066
- "omittion": false,
23150
+ "omission": false,
23067
23151
  "obsolete": true,
23068
23152
  "globalAttrs": {},
23069
23153
  "attributes": {}
@@ -23080,7 +23164,7 @@
23080
23164
  "permittedRoles": true,
23081
23165
  "implicitRole": false
23082
23166
  },
23083
- "omittion": false,
23167
+ "omission": false,
23084
23168
  "obsolete": true,
23085
23169
  "globalAttrs": {},
23086
23170
  "attributes": {}
@@ -23093,7 +23177,7 @@
23093
23177
  "contentModel": {
23094
23178
  "contents": [
23095
23179
  {
23096
- "zeroOrMore": "#flow"
23180
+ "oneOrMore": ":model(flow)"
23097
23181
  }
23098
23182
  ]
23099
23183
  },
@@ -23104,7 +23188,7 @@
23104
23188
  "implicitRole": false
23105
23189
  }
23106
23190
  },
23107
- "omittion": false,
23191
+ "omission": false,
23108
23192
  "globalAttrs": {
23109
23193
  "#ARIAAttrs": true,
23110
23194
  "#DocumentElementEventAttrs": true,
@@ -23125,7 +23209,7 @@
23125
23209
  "contentModel": {
23126
23210
  "contents": [
23127
23211
  {
23128
- "zeroOrMore": "#flow"
23212
+ "oneOrMore": ":model(flow)"
23129
23213
  }
23130
23214
  ]
23131
23215
  },
@@ -23145,7 +23229,7 @@
23145
23229
  }
23146
23230
  }
23147
23231
  },
23148
- "omittion": false,
23232
+ "omission": false,
23149
23233
  "globalAttrs": {
23150
23234
  "#ARIAAttrs": true,
23151
23235
  "#DocumentElementEventAttrs": true,
@@ -23158,7 +23242,7 @@
23158
23242
  "deprecated": true
23159
23243
  },
23160
23244
  "background": {
23161
- "description": "URI of a image to use as a background. Do not use this attribute! Use the CSS background property on the element instead.",
23245
+ "description": "URI of an image to use as a background. Do not use this attribute! Use the CSS background property on the element instead.",
23162
23246
  "deprecated": true
23163
23247
  },
23164
23248
  "bgcolor": {
@@ -23272,7 +23356,7 @@
23272
23356
  "contentModel": {
23273
23357
  "contents": [
23274
23358
  {
23275
- "zeroOrMore": "#flow"
23359
+ "oneOrMore": ":model(flow)"
23276
23360
  }
23277
23361
  ]
23278
23362
  },
@@ -23289,7 +23373,7 @@
23289
23373
  }
23290
23374
  }
23291
23375
  },
23292
- "omittion": false,
23376
+ "omission": false,
23293
23377
  "globalAttrs": {
23294
23378
  "#ARIAAttrs": true,
23295
23379
  "#DocumentElementEventAttrs": true,
@@ -23306,13 +23390,12 @@
23306
23390
  {
23307
23391
  "name": "button",
23308
23392
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button",
23309
- "description": "The <button> HTML element is an interactive element activated by a user with a mouse, keyboard, finger, voice command, or other assistive technology. Once activated, it then performs a programmable action, such as submitting a form or opening a dialog.",
23393
+ "description": "The <button> HTML element is an interactive element activated by a user with a mouse, keyboard, finger, voice command, or other assistive technology. Once activated, it then performs an action, such as submitting a form or opening a dialog.",
23310
23394
  "categories": ["#flow", "#phrasing", "#interactive", "#palpable"],
23311
23395
  "contentModel": {
23312
23396
  "contents": [
23313
23397
  {
23314
- "zeroOrMore": "#phrasing",
23315
- "notAllowedDescendants": ["#interactive"]
23398
+ "oneOrMore": ":model(phrasing):not(:model(interactive), :has(:model(interactive)))"
23316
23399
  }
23317
23400
  ]
23318
23401
  },
@@ -23344,7 +23427,7 @@
23344
23427
  ]
23345
23428
  }
23346
23429
  },
23347
- "omittion": false,
23430
+ "omission": false,
23348
23431
  "globalAttrs": {
23349
23432
  "#ARIAAttrs": true,
23350
23433
  "#DocumentElementEventAttrs": true,
@@ -23379,7 +23462,7 @@
23379
23462
  "description": "The URL that processes the information submitted by the button. Overrides the action attribute of the button's form owner. Does nothing if there is no form owner."
23380
23463
  },
23381
23464
  "formenctype": {
23382
- "description": "If the button is a submit button (it's inside/associated with a <form> and doesn't have type=\"button\"), specifies how to encode the form data that is submitted. Possible values: application/x-www-form-urlencoded: The default if the attribute is not used. multipart/form-data: Use to submit <input> elements with their type attributes set to file. text/plain: Specified as a debugging aid; shouldn't be used for real form submission. If this attribute is specified, it overrides the enctype attribute of the button's form owner."
23465
+ "description": "If the button is a submit button (it's inside/associated with a <form> and doesn't have type=\"button\"), specifies how to encode the form data that is submitted. Possible values: application/x-www-form-urlencoded: The default if the attribute is not used. multipart/form-data: Used to submit <input> elements with their type attributes set to file. text/plain: Specified as a debugging aid; shouldn't be used for real form submission. If this attribute is specified, it overrides the enctype attribute of the button's form owner."
23383
23466
  },
23384
23467
  "formmethod": {
23385
23468
  "description": "If the button is a submit button (it's inside/associated with a <form> and doesn't have type=\"button\"), this attribute specifies the HTTP method used to submit the form. Possible values: post: The data from the form are included in the body of the HTTP request when sent to the server. Use when the form contains information that shouldn't be public, like login credentials. get: The form data are appended to the form's action URL, with a ? as a separator, and the resulting URL is sent to the server. Use this method when the form has no side effects, like search forms. If specified, this attribute overrides the method attribute of the button's form owner."
@@ -23413,8 +23496,7 @@
23413
23496
  "contentModel": {
23414
23497
  "contents": [
23415
23498
  {
23416
- "zeroOrMore": "#phrasing",
23417
- "notAllowedDescendants": ["#interactive"]
23499
+ "transparent": ":not(:model(interactive), :has(:model(interactive)))"
23418
23500
  }
23419
23501
  ]
23420
23502
  },
@@ -23422,7 +23504,7 @@
23422
23504
  "implicitRole": false,
23423
23505
  "permittedRoles": true
23424
23506
  },
23425
- "omittion": false,
23507
+ "omission": false,
23426
23508
  "globalAttrs": {
23427
23509
  "#ARIAAttrs": true,
23428
23510
  "#DocumentElementEventAttrs": true,
@@ -23435,7 +23517,7 @@
23435
23517
  "defaultValue": "150"
23436
23518
  },
23437
23519
  "moz-opaque": {
23438
- "description": "Lets the canvas know whether or not translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized. This is only supported by Mozilla-based browsers; use the standardized canvas.getContext('2d', { alpha: false }) instead.",
23520
+ "description": "Lets the canvas know whether translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized. This is only supported by Mozilla-based browsers; use the standardized canvas.getContext('2d', { alpha: false }) instead.",
23439
23521
  "deprecated": true,
23440
23522
  "nonStandard": true
23441
23523
  },
@@ -23452,7 +23534,7 @@
23452
23534
  "contentModel": {
23453
23535
  "contents": [
23454
23536
  {
23455
- "zeroOrMore": "#flow"
23537
+ "oneOrMore": ":model(flow)"
23456
23538
  }
23457
23539
  ]
23458
23540
  },
@@ -23467,7 +23549,7 @@
23467
23549
  "implicitRole": false
23468
23550
  }
23469
23551
  },
23470
- "omittion": false,
23552
+ "omission": false,
23471
23553
  "globalAttrs": {
23472
23554
  "#ARIAAttrs": true,
23473
23555
  "#DocumentElementEventAttrs": true,
@@ -23493,7 +23575,7 @@
23493
23575
  "permittedRoles": true,
23494
23576
  "implicitRole": false
23495
23577
  },
23496
- "omittion": false,
23578
+ "omission": false,
23497
23579
  "obsolete": true,
23498
23580
  "globalAttrs": {},
23499
23581
  "attributes": {}
@@ -23506,7 +23588,7 @@
23506
23588
  "contentModel": {
23507
23589
  "contents": [
23508
23590
  {
23509
- "zeroOrMore": "#phrasing"
23591
+ "oneOrMore": ":model(phrasing)"
23510
23592
  }
23511
23593
  ]
23512
23594
  },
@@ -23515,7 +23597,7 @@
23515
23597
  "permittedRoles": true,
23516
23598
  "namingProhibited": true
23517
23599
  },
23518
- "omittion": false,
23600
+ "omission": false,
23519
23601
  "globalAttrs": {
23520
23602
  "#ARIAAttrs": true,
23521
23603
  "#DocumentElementEventAttrs": true,
@@ -23532,7 +23614,7 @@
23532
23614
  "contentModel": {
23533
23615
  "contents": [
23534
23616
  {
23535
- "zeroOrMore": "#phrasing"
23617
+ "oneOrMore": ":model(phrasing)"
23536
23618
  }
23537
23619
  ]
23538
23620
  },
@@ -23544,7 +23626,7 @@
23544
23626
  "implicitRole": false
23545
23627
  }
23546
23628
  },
23547
- "omittion": false,
23629
+ "omission": false,
23548
23630
  "globalAttrs": {
23549
23631
  "#ARIAAttrs": true,
23550
23632
  "#DocumentElementEventAttrs": true,
@@ -23566,7 +23648,7 @@
23566
23648
  "permittedRoles": false,
23567
23649
  "properties": false
23568
23650
  },
23569
- "omittion": false,
23651
+ "omission": false,
23570
23652
  "globalAttrs": {
23571
23653
  "#ARIAAttrs": true,
23572
23654
  "#DocumentElementEventAttrs": true,
@@ -23600,7 +23682,7 @@
23600
23682
  "defaultValue": "1"
23601
23683
  },
23602
23684
  "valign": {
23603
- "description": "This attribute specifies the vertical alignment of the text within each cell of the column. Possible values for this attribute are: baseline, which will put the text as close to the bottom of the cell as it is possible, but align it on the baseline of the characters instead of the bottom of them. If characters are all of the size, this has the same effect as bottom. bottom, which will put the text as close to the bottom of the cell as it is possible; middle, which will center the text in the cell; and top, which will put the text as close to the top of the cell as it is possible. Note: Do not try to set the vertical-align property on a selector giving a <col> element. Because <td> elements are not descendant of the <col> element, they won't inherit it. If the table doesn't use a colspan attribute, use the td:nth-child(an+b) CSS selector where a is the total number of the columns in the table and b is the ordinal position of the column in the table. Only after this selector the vertical-align property can be used. If the table does use a colspan attribute, the effect can be achieved by combining adequate CSS attribute selectors like [colspan=n], though this is not trivial.",
23685
+ "description": "This attribute specifies the vertical alignment of the text within each cell of the column. Possible values for this attribute are: baseline, which will put the text as close to the bottom of the cell as it is possible, but align it on the baseline of the characters instead of the bottom of them. If characters are all of the size, this has the same effect as bottom. bottom, which will put the text as close to the bottom of the cell as it is possible; middle, which will center the text in the cell; and top, which will put the text as close to the top of the cell as it is possible. Note: Do not try to set the vertical-align property on a selector giving a <col> element. Because <td> elements are not descendant of the <col> element, they won't inherit it. If the table doesn't use a colspan attribute, use the td:nth-child(an+b) CSS selector where 'a' is the total number of the columns in the table and 'b' is the ordinal position of the column in the table. Only after this selector the vertical-align property can be used. If the table does use a colspan attribute, the effect can be achieved by combining adequate CSS attribute selectors like [colspan=n], though this is not trivial.",
23604
23686
  "deprecated": true
23605
23687
  },
23606
23688
  "width": {
@@ -23632,7 +23714,7 @@
23632
23714
  "permittedRoles": false,
23633
23715
  "properties": false
23634
23716
  },
23635
- "omittion": false,
23717
+ "omission": false,
23636
23718
  "globalAttrs": {
23637
23719
  "#ARIAAttrs": true,
23638
23720
  "#DocumentElementEventAttrs": true,
@@ -23641,7 +23723,7 @@
23641
23723
  },
23642
23724
  "attributes": {
23643
23725
  "align": {
23644
- "description": "This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are: left, aligning the content to the left of the cell center, centering the content in the cell right, aligning the content to the right of the cell justify, inserting spaces into the textual content so that the content is justified in the cell char, aligning the textual content on a special character with a minimal offset, defined by the char and charoff attributes. If this attribute is not set, the left value is assumed. The descendant <col> elements may override this value using their own align attribute. Note: Do not try to set the text-align property on a selector giving a <colgroup> element. Because <td> elements are not descendant of the <colgroup> element, they won't inherit it. If the table doesn't use a colspan attribute, use one td:nth-child(an+b) CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of this column in the table. Only after this selector the text-align property can be used. If the table does use a colspan attribute, the effect can be achieved by combining adequate CSS attribute selectors like [colspan=n], though this is not trivial.",
23726
+ "description": "This enumerated attribute specifies how horizontal alignment of each column cell content will be handled. Possible values are: left, aligning the content to the left of the cell center, centering the content in the cell right, aligning the content to the right of the cell justify, inserting spaces into the textual content so that the content is justified in the cell char, aligning the textual content on a special character with a minimal offset, defined by the char and charoff attributes. If this attribute is not set, the left value is assumed. The descendant <col> elements may override this value using their own align attribute. Note: Do not try to set the text-align property on a selector giving a <colgroup> element. Because <td> elements are not descendant of the <colgroup> element, they won't inherit it. If the table doesn't use a colspan attribute, use one td:nth-child(an+b) CSS selector per column, where 'a' is the total number of the columns in the table and 'b' is the ordinal position of this column in the table. Only after this selector the text-align property can be used. If the table does use a colspan attribute, the effect can be achieved by combining adequate CSS attribute selectors like [colspan=n], though this is not trivial.",
23645
23727
  "deprecated": true
23646
23728
  },
23647
23729
  "bgcolor": {
@@ -23666,7 +23748,7 @@
23666
23748
  "defaultValue": "1"
23667
23749
  },
23668
23750
  "valign": {
23669
- "description": "This attribute specifies the vertical alignment of the text within each cell of the column. Possible values for this attribute are: baseline, which will put the text as close to the bottom of the cell as it is possible, but align it on the baseline of the characters instead of the bottom of them. If characters are all of the size, this has the same effect as bottom. bottom, which will put the text as close to the bottom of the cell as it is possible; middle, which will center the text in the cell; and top, which will put the text as close to the top of the cell as it is possible. Note: Do not try to set the vertical-align property on a selector giving a <colgroup> element. Because <td> elements are not descendant of the <colgroup> element, they won't inherit it. If the table doesn't use a colspan attribute, use the td:nth-child(an+b) CSS selector per column, where a is the total number of the columns in the table and b is the ordinal position of the column in the table. Only after this selector the vertical-align property can be used. If the table does use a colspan attribute, the effect can be achieved by combining adequate CSS attribute selectors like [colspan=n], though this is not trivial.",
23751
+ "description": "This attribute specifies the vertical alignment of the text within each cell of the column. Possible values for this attribute are: baseline, which will put the text as close to the bottom of the cell as it is possible, but align it on the baseline of the characters instead of the bottom of them. If characters are all of the size, this has the same effect as bottom. bottom, which will put the text as close to the bottom of the cell as it is possible; middle, which will center the text in the cell; and top, which will put the text as close to the top of the cell as it is possible. Note: Do not try to set the vertical-align property on a selector giving a <colgroup> element. Because <td> elements are not descendant of the <colgroup> element, they won't inherit it. If the table doesn't use a colspan attribute, use the td:nth-child(an+b) CSS selector per column, where 'a' is the total number of the columns in the table and 'b' is the ordinal position of the column in the table. Only after this selector the vertical-align property can be used. If the table does use a colspan attribute, the effect can be achieved by combining adequate CSS attribute selectors like [colspan=n], though this is not trivial.",
23670
23752
  "deprecated": true
23671
23753
  }
23672
23754
  }
@@ -23679,7 +23761,7 @@
23679
23761
  "contentModel": {
23680
23762
  "contents": [
23681
23763
  {
23682
- "zeroOrMore": "#phrasing"
23764
+ "oneOrMore": ":model(phrasing)"
23683
23765
  }
23684
23766
  ]
23685
23767
  },
@@ -23688,7 +23770,7 @@
23688
23770
  "permittedRoles": true,
23689
23771
  "namingProhibited": true
23690
23772
  },
23691
- "omittion": false,
23773
+ "omission": false,
23692
23774
  "globalAttrs": {
23693
23775
  "#ARIAAttrs": true,
23694
23776
  "#DocumentElementEventAttrs": true,
@@ -23712,12 +23794,12 @@
23712
23794
  "choice": [
23713
23795
  [
23714
23796
  {
23715
- "zeroOrMore": "#phrasing"
23797
+ "oneOrMore": ":model(phrasing)"
23716
23798
  }
23717
23799
  ],
23718
23800
  [
23719
23801
  {
23720
- "zeroOrMore": ["option", "#script-supporting"]
23802
+ "zeroOrMore": ["option", ":model(script-supporting)"]
23721
23803
  }
23722
23804
  ]
23723
23805
  ]
@@ -23732,7 +23814,7 @@
23732
23814
  "role": "listbox"
23733
23815
  }
23734
23816
  },
23735
- "omittion": false,
23817
+ "omission": false,
23736
23818
  "globalAttrs": {
23737
23819
  "#ARIAAttrs": true,
23738
23820
  "#DocumentElementEventAttrs": true,
@@ -23749,7 +23831,7 @@
23749
23831
  "contentModel": {
23750
23832
  "contents": [
23751
23833
  {
23752
- "zeroOrMore": "#flow"
23834
+ "oneOrMore": ":model(flow)"
23753
23835
  }
23754
23836
  ]
23755
23837
  },
@@ -23764,7 +23846,7 @@
23764
23846
  "implicitRole": "definition"
23765
23847
  }
23766
23848
  },
23767
- "omittion": false,
23849
+ "omission": false,
23768
23850
  "globalAttrs": {
23769
23851
  "#ARIAAttrs": true,
23770
23852
  "#DocumentElementEventAttrs": true,
@@ -23774,6 +23856,7 @@
23774
23856
  "attributes": {
23775
23857
  "nowrap": {
23776
23858
  "description": "If the value of this attribute is set to yes, the definition text will not wrap. The default value is no.",
23859
+ "deprecated": true,
23777
23860
  "nonStandard": true
23778
23861
  }
23779
23862
  }
@@ -23786,7 +23869,7 @@
23786
23869
  "contentModel": {
23787
23870
  "contents": [
23788
23871
  {
23789
- "zeroOrMore": "#transparent"
23872
+ "transparent": "*"
23790
23873
  }
23791
23874
  ]
23792
23875
  },
@@ -23798,7 +23881,7 @@
23798
23881
  "implicitRole": false
23799
23882
  }
23800
23883
  },
23801
- "omittion": false,
23884
+ "omission": false,
23802
23885
  "globalAttrs": {
23803
23886
  "#ARIAAttrs": true,
23804
23887
  "#DocumentElementEventAttrs": true,
@@ -23825,7 +23908,7 @@
23825
23908
  "require": "summary"
23826
23909
  },
23827
23910
  {
23828
- "zeroOrMore": "#flow"
23911
+ "oneOrMore": ":model(flow)"
23829
23912
  }
23830
23913
  ]
23831
23914
  },
@@ -23837,7 +23920,7 @@
23837
23920
  "role": "group"
23838
23921
  }
23839
23922
  },
23840
- "omittion": false,
23923
+ "omission": false,
23841
23924
  "globalAttrs": {
23842
23925
  "#ARIAAttrs": true,
23843
23926
  "#DocumentElementEventAttrs": true,
@@ -23858,8 +23941,7 @@
23858
23941
  "contentModel": {
23859
23942
  "contents": [
23860
23943
  {
23861
- "zeroOrMore": "#phrasing",
23862
- "notAllowedDescendants": ["dfn"]
23944
+ "oneOrMore": ":model(phrasing):not(dfn, :has(dfn))"
23863
23945
  }
23864
23946
  ]
23865
23947
  },
@@ -23867,7 +23949,7 @@
23867
23949
  "implicitRole": "term",
23868
23950
  "permittedRoles": true
23869
23951
  },
23870
- "omittion": false,
23952
+ "omission": false,
23871
23953
  "globalAttrs": {
23872
23954
  "#ARIAAttrs": true,
23873
23955
  "#DocumentElementEventAttrs": true,
@@ -23884,7 +23966,7 @@
23884
23966
  "contentModel": {
23885
23967
  "contents": [
23886
23968
  {
23887
- "zeroOrMore": "#flow"
23969
+ "oneOrMore": ":model(flow)"
23888
23970
  }
23889
23971
  ]
23890
23972
  },
@@ -23896,7 +23978,7 @@
23896
23978
  "role": "dialog"
23897
23979
  }
23898
23980
  },
23899
- "omittion": false,
23981
+ "omission": false,
23900
23982
  "globalAttrs": {
23901
23983
  "#ARIAAttrs": true,
23902
23984
  "#DocumentElementEventAttrs": true,
@@ -23924,12 +24006,13 @@
23924
24006
  "permittedRoles": true,
23925
24007
  "implicitRole": false
23926
24008
  },
23927
- "omittion": false,
24009
+ "omission": false,
23928
24010
  "obsolete": true,
23929
24011
  "globalAttrs": {},
23930
24012
  "attributes": {
23931
24013
  "compact": {
23932
- "description": "This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn't work in all browsers."
24014
+ "description": "This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn't work in all browsers.",
24015
+ "deprecated": true
23933
24016
  }
23934
24017
  }
23935
24018
  },
@@ -23941,7 +24024,7 @@
23941
24024
  "contentModel": {
23942
24025
  "contents": [
23943
24026
  {
23944
- "zeroOrMore": "#flow"
24027
+ "oneOrMore": ":model(flow)"
23945
24028
  }
23946
24029
  ],
23947
24030
  "conditional": [
@@ -23949,19 +24032,19 @@
23949
24032
  "condition": "dl > div",
23950
24033
  "contents": [
23951
24034
  {
23952
- "zeroOrMore": "#script-supporting"
24035
+ "zeroOrMore": ":model(script-supporting)"
23953
24036
  },
23954
24037
  {
23955
24038
  "oneOrMore": "dt"
23956
24039
  },
23957
24040
  {
23958
- "zeroOrMore": "#script-supporting"
24041
+ "zeroOrMore": ":model(script-supporting)"
23959
24042
  },
23960
24043
  {
23961
24044
  "oneOrMore": "dd"
23962
24045
  },
23963
24046
  {
23964
- "zeroOrMore": "#script-supporting"
24047
+ "zeroOrMore": ":model(script-supporting)"
23965
24048
  }
23966
24049
  ]
23967
24050
  }
@@ -23981,7 +24064,7 @@
23981
24064
  "permittedRoles": true
23982
24065
  }
23983
24066
  },
23984
- "omittion": false,
24067
+ "omission": false,
23985
24068
  "globalAttrs": {
23986
24069
  "#ARIAAttrs": true,
23987
24070
  "#DocumentElementEventAttrs": true,
@@ -24003,26 +24086,32 @@
24003
24086
  {
24004
24087
  "oneOrMore": [
24005
24088
  {
24006
- "zeroOrMore": "#script-supporting"
24089
+ "zeroOrMore": ":model(script-supporting)"
24007
24090
  },
24008
24091
  {
24009
24092
  "oneOrMore": "dt"
24010
24093
  },
24011
24094
  {
24012
- "zeroOrMore": "#script-supporting"
24095
+ "zeroOrMore": ":model(script-supporting)"
24013
24096
  },
24014
24097
  {
24015
24098
  "oneOrMore": "dd"
24016
24099
  },
24017
24100
  {
24018
- "zeroOrMore": "#script-supporting"
24101
+ "zeroOrMore": ":model(script-supporting)"
24019
24102
  }
24020
24103
  ]
24021
24104
  }
24022
24105
  ],
24023
24106
  [
24024
24107
  {
24025
- "oneOrMore": ["div", "#script-supporting"]
24108
+ "zeroOrMore": ":model(script-supporting)"
24109
+ },
24110
+ {
24111
+ "oneOrMore": "div"
24112
+ },
24113
+ {
24114
+ "zeroOrMore": ":model(script-supporting)"
24026
24115
  }
24027
24116
  ]
24028
24117
  ]
@@ -24033,7 +24122,7 @@
24033
24122
  "implicitRole": false,
24034
24123
  "permittedRoles": ["group", "list", "none", "presentation"]
24035
24124
  },
24036
- "omittion": false,
24125
+ "omission": false,
24037
24126
  "globalAttrs": {
24038
24127
  "#ARIAAttrs": true,
24039
24128
  "#DocumentElementEventAttrs": true,
@@ -24050,8 +24139,7 @@
24050
24139
  "contentModel": {
24051
24140
  "contents": [
24052
24141
  {
24053
- "zeroOrMore": "#flow",
24054
- "notAllowedDescendants": ["header", "footer", "#sectioning", "#heading"]
24142
+ "oneOrMore": ":model(flow):not(header, footer, :model(sectioning), :model(heading), :has(header, footer, :model(sectioning), :model(heading)))"
24055
24143
  }
24056
24144
  ]
24057
24145
  },
@@ -24062,7 +24150,7 @@
24062
24150
  "implicitRole": "term"
24063
24151
  }
24064
24152
  },
24065
- "omittion": false,
24153
+ "omission": false,
24066
24154
  "globalAttrs": {
24067
24155
  "#ARIAAttrs": true,
24068
24156
  "#DocumentElementEventAttrs": true,
@@ -24079,7 +24167,7 @@
24079
24167
  "contentModel": {
24080
24168
  "contents": [
24081
24169
  {
24082
- "zeroOrMore": "#phrasing"
24170
+ "oneOrMore": ":model(phrasing)"
24083
24171
  }
24084
24172
  ]
24085
24173
  },
@@ -24091,7 +24179,7 @@
24091
24179
  "implicitRole": false
24092
24180
  }
24093
24181
  },
24094
- "omittion": false,
24182
+ "omission": false,
24095
24183
  "globalAttrs": {
24096
24184
  "#ARIAAttrs": true,
24097
24185
  "#DocumentElementEventAttrs": true,
@@ -24112,7 +24200,7 @@
24112
24200
  "implicitRole": false,
24113
24201
  "permittedRoles": ["application", "document", "img", "none", "presentation"]
24114
24202
  },
24115
- "omittion": false,
24203
+ "omission": false,
24116
24204
  "globalAttrs": {
24117
24205
  "#ARIAAttrs": true,
24118
24206
  "#DocumentElementEventAttrs": true,
@@ -24147,7 +24235,7 @@
24147
24235
  "optional": "legend"
24148
24236
  },
24149
24237
  {
24150
- "zeroOrMore": "#flow"
24238
+ "oneOrMore": ":model(flow)"
24151
24239
  }
24152
24240
  ]
24153
24241
  },
@@ -24155,7 +24243,7 @@
24155
24243
  "implicitRole": "group",
24156
24244
  "permittedRoles": ["radiogroup", "presentation", "none"]
24157
24245
  },
24158
- "omittion": false,
24246
+ "omission": false,
24159
24247
  "globalAttrs": {
24160
24248
  "#ARIAAttrs": true,
24161
24249
  "#DocumentElementEventAttrs": true,
@@ -24183,7 +24271,7 @@
24183
24271
  "contentModel": {
24184
24272
  "contents": [
24185
24273
  {
24186
- "zeroOrMore": "#flow"
24274
+ "oneOrMore": ":model(flow)"
24187
24275
  }
24188
24276
  ]
24189
24277
  },
@@ -24192,7 +24280,7 @@
24192
24280
  "permittedRoles": ["group", "none", "presentation"],
24193
24281
  "namingProhibited": true
24194
24282
  },
24195
- "omittion": false,
24283
+ "omission": false,
24196
24284
  "globalAttrs": {
24197
24285
  "#ARIAAttrs": true,
24198
24286
  "#DocumentElementEventAttrs": true,
@@ -24209,15 +24297,26 @@
24209
24297
  "contentModel": {
24210
24298
  "contents": [
24211
24299
  {
24212
- "interleave": [
24300
+ "choice": [
24213
24301
  [
24214
24302
  {
24215
- "optional": "figcaption"
24303
+ "require": "figcaption"
24304
+ },
24305
+ {
24306
+ "oneOrMore": ":model(flow)"
24216
24307
  }
24217
24308
  ],
24218
24309
  [
24219
24310
  {
24220
- "zeroOrMore": "#flow"
24311
+ "oneOrMore": ":model(flow)"
24312
+ },
24313
+ {
24314
+ "require": "figcaption"
24315
+ }
24316
+ ],
24317
+ [
24318
+ {
24319
+ "oneOrMore": ":model(flow)"
24221
24320
  }
24222
24321
  ]
24223
24322
  ]
@@ -24233,7 +24332,7 @@
24233
24332
  }
24234
24333
  }
24235
24334
  },
24236
- "omittion": false,
24335
+ "omission": false,
24237
24336
  "globalAttrs": {
24238
24337
  "#ARIAAttrs": true,
24239
24338
  "#DocumentElementEventAttrs": true,
@@ -24254,18 +24353,21 @@
24254
24353
  "permittedRoles": true,
24255
24354
  "implicitRole": false
24256
24355
  },
24257
- "omittion": false,
24356
+ "omission": false,
24258
24357
  "obsolete": true,
24259
24358
  "globalAttrs": {},
24260
24359
  "attributes": {
24261
24360
  "color": {
24262
- "description": "This attribute sets the text color using either a named color or a color specified in the hexadecimal #RRGGBB format."
24361
+ "description": "This attribute sets the text color using either a named color or a color specified in the hexadecimal #RRGGBB format.",
24362
+ "deprecated": true
24263
24363
  },
24264
24364
  "face": {
24265
- "description": "This attribute contains a comma-separated list of one or more font names. The document text in the default style is rendered in the first font face that the client's browser supports. If no font listed is installed on the local system, the browser typically defaults to the proportional or fixed-width font for that system."
24365
+ "description": "This attribute contains a comma-separated list of one or more font names. The document text in the default style is rendered in the first font face that the client's browser supports. If no font listed is installed on the local system, the browser typically defaults to the proportional or fixed-width font for that system.",
24366
+ "deprecated": true
24266
24367
  },
24267
24368
  "size": {
24268
- "description": "This attribute specifies the font size as either a numeric or relative value. Numeric values range from 1 to 7 with 1 being the smallest and 3 the default. It can be defined using a relative value, like +2 or -3, which set it relative to the value of the size attribute of the <basefont> element, or relative to 3, the default value, if none does exist."
24369
+ "description": "This attribute specifies the font size as either a numeric or relative value. Numeric values range from 1 to 7 with 1 being the smallest and 3 the default. It can be defined using a relative value, like +2 or -3, which sets it relative to 3, the default value.",
24370
+ "deprecated": true
24269
24371
  }
24270
24372
  }
24271
24373
  },
@@ -24277,8 +24379,7 @@
24277
24379
  "contentModel": {
24278
24380
  "contents": [
24279
24381
  {
24280
- "zeroOrMore": "#flow",
24281
- "notAllowedDescendants": ["header", "footer"]
24382
+ "oneOrMore": ":model(flow):not(header, footer, :has(header, footer))"
24282
24383
  }
24283
24384
  ]
24284
24385
  },
@@ -24300,7 +24401,7 @@
24300
24401
  }
24301
24402
  }
24302
24403
  },
24303
- "omittion": false,
24404
+ "omission": false,
24304
24405
  "globalAttrs": {
24305
24406
  "#ARIAAttrs": true,
24306
24407
  "#DocumentElementEventAttrs": true,
@@ -24317,8 +24418,7 @@
24317
24418
  "contentModel": {
24318
24419
  "contents": [
24319
24420
  {
24320
- "zeroOrMore": "#flow",
24321
- "notAllowedDescendants": ["form"]
24421
+ "oneOrMore": ":model(flow):not(form, :has(form))"
24322
24422
  }
24323
24423
  ]
24324
24424
  },
@@ -24334,7 +24434,7 @@
24334
24434
  }
24335
24435
  }
24336
24436
  },
24337
- "omittion": false,
24437
+ "omission": false,
24338
24438
  "globalAttrs": {
24339
24439
  "#ARIAAttrs": true,
24340
24440
  "#DocumentElementEventAttrs": true,
@@ -24343,7 +24443,7 @@
24343
24443
  },
24344
24444
  "attributes": {
24345
24445
  "accept": {
24346
- "description": "Comma-separated content types the server accepts. Note: This attribute was removed in HTML5 and should not be used. Instead, use the accept attribute on <input type=file> elements.",
24446
+ "description": "Comma-separated content types the server accepts. Note: This attribute has been deprecated and should not be used. Instead, use the accept attribute on <input type=file> elements.",
24347
24447
  "deprecated": true
24348
24448
  },
24349
24449
  "accept-charset": {
@@ -24423,30 +24523,37 @@
24423
24523
  "permittedRoles": true,
24424
24524
  "implicitRole": false
24425
24525
  },
24426
- "omittion": false,
24526
+ "omission": false,
24427
24527
  "obsolete": true,
24428
24528
  "globalAttrs": {},
24429
24529
  "attributes": {
24430
24530
  "frameborder": {
24431
- "description": "This attribute allows you to specify a frame's border."
24531
+ "description": "This attribute allows you to specify a frame's border.",
24532
+ "deprecated": true
24432
24533
  },
24433
24534
  "marginheight": {
24434
- "description": "This attribute defines the height of the margin between frames."
24535
+ "description": "This attribute defines the height of the margin between frames.",
24536
+ "deprecated": true
24435
24537
  },
24436
24538
  "marginwidth": {
24437
- "description": "This attribute defines the width of the margin between frames."
24539
+ "description": "This attribute defines the width of the margin between frames.",
24540
+ "deprecated": true
24438
24541
  },
24439
24542
  "name": {
24440
- "description": "This attribute is used for labeling frames. Without labeling, every link will open in the frame that it's in – the closest parent frame. See the target attribute for more information."
24543
+ "description": "This attribute is used for labeling frames. Without labeling, every link will open in the frame that it's in – the closest parent frame. See the target attribute for more information.",
24544
+ "deprecated": true
24441
24545
  },
24442
24546
  "noresize": {
24443
- "description": "This attribute prevents resizing of frames by users."
24547
+ "description": "This attribute prevents resizing of frames by users.",
24548
+ "deprecated": true
24444
24549
  },
24445
24550
  "scrolling": {
24446
- "description": "This attribute defines the existence of a scrollbar. If this attribute is not used, the browser adds a scrollbar when necessary. There are two choices: \"yes\" for forcing a scrollbar even when it is not necessary and \"no\" for forcing no scrollbar even when it is necessary."
24551
+ "description": "This attribute defines the existence of a scrollbar. If this attribute is not used, the browser adds a scrollbar when necessary. There are two choices: \"yes\" for forcing a scrollbar even when it is not necessary and \"no\" for forcing no scrollbar even when it is necessary.",
24552
+ "deprecated": true
24447
24553
  },
24448
24554
  "src": {
24449
- "description": "This attribute specifies the document that will be displayed by the frame."
24555
+ "description": "This attribute specifies the document that will be displayed by the frame.",
24556
+ "deprecated": true
24450
24557
  }
24451
24558
  }
24452
24559
  },
@@ -24462,15 +24569,17 @@
24462
24569
  "permittedRoles": true,
24463
24570
  "implicitRole": false
24464
24571
  },
24465
- "omittion": false,
24572
+ "omission": false,
24466
24573
  "obsolete": true,
24467
24574
  "globalAttrs": {},
24468
24575
  "attributes": {
24469
24576
  "cols": {
24470
- "description": "This attribute specifies the number and size of horizontal spaces in a frameset."
24577
+ "description": "This attribute specifies the number and size of horizontal spaces in a frameset.",
24578
+ "deprecated": true
24471
24579
  },
24472
24580
  "rows": {
24473
- "description": "This attribute specifies the number and size of vertical spaces in a frameset."
24581
+ "description": "This attribute specifies the number and size of vertical spaces in a frameset.",
24582
+ "deprecated": true
24474
24583
  }
24475
24584
  }
24476
24585
  },
@@ -24482,7 +24591,7 @@
24482
24591
  "contentModel": {
24483
24592
  "contents": [
24484
24593
  {
24485
- "zeroOrMore": "#phrasing"
24594
+ "oneOrMore": ":model(phrasing)"
24486
24595
  }
24487
24596
  ]
24488
24597
  },
@@ -24493,7 +24602,7 @@
24493
24602
  },
24494
24603
  "permittedRoles": ["tab", "presentation", "none"]
24495
24604
  },
24496
- "omittion": false,
24605
+ "omission": false,
24497
24606
  "globalAttrs": {
24498
24607
  "#ARIAAttrs": true,
24499
24608
  "#DocumentElementEventAttrs": true,
@@ -24510,7 +24619,7 @@
24510
24619
  "contentModel": {
24511
24620
  "contents": [
24512
24621
  {
24513
- "zeroOrMore": "#phrasing"
24622
+ "oneOrMore": ":model(phrasing)"
24514
24623
  }
24515
24624
  ]
24516
24625
  },
@@ -24521,7 +24630,7 @@
24521
24630
  },
24522
24631
  "permittedRoles": ["tab", "presentation", "none"]
24523
24632
  },
24524
- "omittion": false,
24633
+ "omission": false,
24525
24634
  "globalAttrs": {
24526
24635
  "#ARIAAttrs": true,
24527
24636
  "#DocumentElementEventAttrs": true,
@@ -24538,7 +24647,7 @@
24538
24647
  "contentModel": {
24539
24648
  "contents": [
24540
24649
  {
24541
- "zeroOrMore": "#phrasing"
24650
+ "oneOrMore": ":model(phrasing)"
24542
24651
  }
24543
24652
  ]
24544
24653
  },
@@ -24549,7 +24658,7 @@
24549
24658
  },
24550
24659
  "permittedRoles": ["tab", "presentation", "none"]
24551
24660
  },
24552
- "omittion": false,
24661
+ "omission": false,
24553
24662
  "globalAttrs": {
24554
24663
  "#ARIAAttrs": true,
24555
24664
  "#DocumentElementEventAttrs": true,
@@ -24566,7 +24675,7 @@
24566
24675
  "contentModel": {
24567
24676
  "contents": [
24568
24677
  {
24569
- "zeroOrMore": "#phrasing"
24678
+ "oneOrMore": ":model(phrasing)"
24570
24679
  }
24571
24680
  ]
24572
24681
  },
@@ -24577,7 +24686,7 @@
24577
24686
  },
24578
24687
  "permittedRoles": ["tab", "presentation", "none"]
24579
24688
  },
24580
- "omittion": false,
24689
+ "omission": false,
24581
24690
  "globalAttrs": {
24582
24691
  "#ARIAAttrs": true,
24583
24692
  "#DocumentElementEventAttrs": true,
@@ -24594,7 +24703,7 @@
24594
24703
  "contentModel": {
24595
24704
  "contents": [
24596
24705
  {
24597
- "zeroOrMore": "#phrasing"
24706
+ "oneOrMore": ":model(phrasing)"
24598
24707
  }
24599
24708
  ]
24600
24709
  },
@@ -24605,7 +24714,7 @@
24605
24714
  },
24606
24715
  "permittedRoles": ["tab", "presentation", "none"]
24607
24716
  },
24608
- "omittion": false,
24717
+ "omission": false,
24609
24718
  "globalAttrs": {
24610
24719
  "#ARIAAttrs": true,
24611
24720
  "#DocumentElementEventAttrs": true,
@@ -24622,7 +24731,7 @@
24622
24731
  "contentModel": {
24623
24732
  "contents": [
24624
24733
  {
24625
- "zeroOrMore": "#phrasing"
24734
+ "oneOrMore": ":model(phrasing)"
24626
24735
  }
24627
24736
  ]
24628
24737
  },
@@ -24633,7 +24742,7 @@
24633
24742
  },
24634
24743
  "permittedRoles": ["tab", "presentation", "none"]
24635
24744
  },
24636
- "omittion": false,
24745
+ "omission": false,
24637
24746
  "globalAttrs": {
24638
24747
  "#ARIAAttrs": true,
24639
24748
  "#DocumentElementEventAttrs": true,
@@ -24650,15 +24759,13 @@
24650
24759
  "contentModel": {
24651
24760
  "contents": [
24652
24761
  {
24653
- "zeroOrMore": "#metadata",
24654
- "ignore": "title"
24762
+ "zeroOrMore": ":model(metadata):not(title)"
24655
24763
  },
24656
24764
  {
24657
24765
  "require": "title"
24658
24766
  },
24659
24767
  {
24660
- "zeroOrMore": "#metadata",
24661
- "ignore": "title"
24768
+ "zeroOrMore": ":model(metadata):not(title)"
24662
24769
  }
24663
24770
  ]
24664
24771
  },
@@ -24667,7 +24774,7 @@
24667
24774
  "permittedRoles": false,
24668
24775
  "properties": false
24669
24776
  },
24670
- "omittion": false,
24777
+ "omission": false,
24671
24778
  "globalAttrs": {
24672
24779
  "#ARIAAttrs": true,
24673
24780
  "#DocumentElementEventAttrs": true,
@@ -24677,7 +24784,8 @@
24677
24784
  "attributes": {
24678
24785
  "profile": {
24679
24786
  "description": "The URIs of one or more metadata profiles, separated by white space.",
24680
- "deprecated": true
24787
+ "deprecated": true,
24788
+ "nonStandard": true
24681
24789
  }
24682
24790
  }
24683
24791
  },
@@ -24689,8 +24797,7 @@
24689
24797
  "contentModel": {
24690
24798
  "contents": [
24691
24799
  {
24692
- "zeroOrMore": "#flow",
24693
- "notAllowedDescendants": ["header", "footer"]
24800
+ "oneOrMore": ":model(flow):not(header, footer, :has(header, footer))"
24694
24801
  }
24695
24802
  ]
24696
24803
  },
@@ -24712,7 +24819,7 @@
24712
24819
  }
24713
24820
  }
24714
24821
  },
24715
- "omittion": false,
24822
+ "omission": false,
24716
24823
  "globalAttrs": {
24717
24824
  "#ARIAAttrs": true,
24718
24825
  "#DocumentElementEventAttrs": true,
@@ -24724,22 +24831,30 @@
24724
24831
  {
24725
24832
  "name": "hgroup",
24726
24833
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/hgroup",
24727
- "description": "The <hgroup> HTML element represents a multi-level heading for a section of a document. It groups a set of <h1>–<h6> elements.",
24834
+ "description": "The <hgroup> HTML element represents a heading and related content. It groups a single <h1>–<h6> element with one or more <p>.",
24728
24835
  "categories": ["#flow", "#heading", "#palpable"],
24729
24836
  "contentModel": {
24730
24837
  "contents": [
24731
24838
  {
24732
- "oneOrMore": [
24733
- {
24734
- "zeroOrMore": "#script-supporting"
24735
- },
24736
- {
24737
- "oneOrMore": ["h1", "h2", "h3", "h4", "h5", "h6"]
24738
- },
24739
- {
24740
- "zeroOrMore": "#script-supporting"
24741
- }
24742
- ]
24839
+ "zeroOrMore": ":model(script-supporting)"
24840
+ },
24841
+ {
24842
+ "zeroOrMore": "p"
24843
+ },
24844
+ {
24845
+ "zeroOrMore": ":model(script-supporting)"
24846
+ },
24847
+ {
24848
+ "require": ["h1", "h2", "h3", "h4", "h5", "h6"]
24849
+ },
24850
+ {
24851
+ "zeroOrMore": ":model(script-supporting)"
24852
+ },
24853
+ {
24854
+ "zeroOrMore": "p"
24855
+ },
24856
+ {
24857
+ "zeroOrMore": ":model(script-supporting)"
24743
24858
  }
24744
24859
  ]
24745
24860
  },
@@ -24751,7 +24866,7 @@
24751
24866
  "implicitRole": false
24752
24867
  }
24753
24868
  },
24754
- "omittion": false,
24869
+ "omission": false,
24755
24870
  "globalAttrs": {
24756
24871
  "#ARIAAttrs": true,
24757
24872
  "#DocumentElementEventAttrs": true,
@@ -24776,7 +24891,7 @@
24776
24891
  "role": "separator"
24777
24892
  }
24778
24893
  },
24779
- "omittion": false,
24894
+ "omission": false,
24780
24895
  "globalAttrs": {
24781
24896
  "#ARIAAttrs": true,
24782
24897
  "#DocumentElementEventAttrs": true,
@@ -24786,23 +24901,28 @@
24786
24901
  "attributes": {
24787
24902
  "align": {
24788
24903
  "description": "Sets the alignment of the rule on the page. If no value is specified, the default value is left.",
24789
- "deprecated": true
24904
+ "deprecated": true,
24905
+ "nonStandard": true
24790
24906
  },
24791
24907
  "color": {
24792
24908
  "description": "Sets the color of the rule through color name or hexadecimal value.",
24909
+ "deprecated": true,
24793
24910
  "nonStandard": true
24794
24911
  },
24795
24912
  "noshade": {
24796
24913
  "description": "Sets the rule to have no shading.",
24797
- "deprecated": true
24914
+ "deprecated": true,
24915
+ "nonStandard": true
24798
24916
  },
24799
24917
  "size": {
24800
24918
  "description": "Sets the height, in pixels, of the rule.",
24801
- "deprecated": true
24919
+ "deprecated": true,
24920
+ "nonStandard": true
24802
24921
  },
24803
24922
  "width": {
24804
24923
  "description": "Sets the length of the rule on the page through a pixel or percentage value.",
24805
- "deprecated": true
24924
+ "deprecated": true,
24925
+ "nonStandard": true
24806
24926
  }
24807
24927
  }
24808
24928
  },
@@ -24826,7 +24946,7 @@
24826
24946
  "permittedRoles": false,
24827
24947
  "properties": false
24828
24948
  },
24829
- "omittion": false,
24949
+ "omission": false,
24830
24950
  "globalAttrs": {
24831
24951
  "#ARIAAttrs": true,
24832
24952
  "#DocumentElementEventAttrs": true,
@@ -24836,7 +24956,8 @@
24836
24956
  "attributes": {
24837
24957
  "manifest": {
24838
24958
  "description": "Specifies the URI of a resource manifest indicating resources that should be cached locally.",
24839
- "deprecated": true
24959
+ "deprecated": true,
24960
+ "nonStandard": true
24840
24961
  },
24841
24962
  "version": {
24842
24963
  "description": "Specifies the version of the HTML Document Type Definition that governs the current document. This attribute is not needed, because it is redundant with the version information in the document type declaration.",
@@ -24855,7 +24976,7 @@
24855
24976
  "contentModel": {
24856
24977
  "contents": [
24857
24978
  {
24858
- "zeroOrMore": "#phrasing"
24979
+ "oneOrMore": ":model(phrasing)"
24859
24980
  }
24860
24981
  ]
24861
24982
  },
@@ -24864,7 +24985,7 @@
24864
24985
  "permittedRoles": true,
24865
24986
  "namingProhibited": true
24866
24987
  },
24867
- "omittion": false,
24988
+ "omission": false,
24868
24989
  "globalAttrs": {
24869
24990
  "#ARIAAttrs": true,
24870
24991
  "#DocumentElementEventAttrs": true,
@@ -24879,17 +25000,13 @@
24879
25000
  "description": "The <iframe> HTML element represents a nested browsing context, embedding another HTML page into the current one.",
24880
25001
  "categories": ["#flow", "#phrasing", "#embedded", "#interactive", "#palpable"],
24881
25002
  "contentModel": {
24882
- "contents": [
24883
- {
24884
- "zeroOrMore": "#transparent"
24885
- }
24886
- ]
25003
+ "contents": false
24887
25004
  },
24888
25005
  "aria": {
24889
25006
  "implicitRole": false,
24890
25007
  "permittedRoles": ["application", "document", "img", "none", "presentation"]
24891
25008
  },
24892
- "omittion": false,
25009
+ "omission": false,
24893
25010
  "globalAttrs": {
24894
25011
  "#ARIAAttrs": true,
24895
25012
  "#DocumentElementEventAttrs": true,
@@ -24910,14 +25027,16 @@
24910
25027
  "type": "Boolean"
24911
25028
  },
24912
25029
  "allowpaymentrequest": {
24913
- "description": "Set to true if a cross-origin <iframe> should be allowed to invoke the Payment Request API. Note: This attribute is considered a legacy attribute and redefined as allow=\"payment\"."
25030
+ "description": "Set to true if a cross-origin <iframe> should be allowed to invoke the Payment Request API. Note: This attribute is considered a legacy attribute and redefined as allow=\"payment\".",
25031
+ "experimental": true
24914
25032
  },
24915
25033
  "csp": {
24916
25034
  "description": "A Content Security Policy enforced for the embedded resource. See HTMLIFrameElement.csp for details.",
24917
25035
  "experimental": true
24918
25036
  },
24919
25037
  "fetchpriority": {
24920
- "description": "Provides a hint of the relative priority to use when fetching the iframe document. Allowed values: high Signals a high-priority fetch relative to other iframe documents. low Signals a low-priority fetch relative to other iframe documents. auto Default: Signals automatic determination of fetch priority relative to other iframe documents."
25038
+ "description": "Provides a hint of the relative priority to use when fetching the iframe document. Allowed values: high Signals a high-priority fetch relative to other iframe documents. low Signals a low-priority fetch relative to other iframe documents. auto Default: Signals automatic determination of fetch priority relative to other iframe documents.",
25039
+ "experimental": true
24921
25040
  },
24922
25041
  "frameborder": {
24923
25042
  "description": "The value 1 (the default) draws a border around this frame. The value 0 removes the border around this frame, but you should instead use the CSS property border to control <iframe> borders.",
@@ -25061,7 +25180,7 @@
25061
25180
  ]
25062
25181
  }
25063
25182
  },
25064
- "omittion": false,
25183
+ "omission": false,
25065
25184
  "globalAttrs": {
25066
25185
  "#ARIAAttrs": true,
25067
25186
  "#DocumentElementEventAttrs": true,
@@ -25097,7 +25216,7 @@
25097
25216
  "experimental": true
25098
25217
  },
25099
25218
  "height": {
25100
- "description": "The intrinsic height of the image, in pixels. Must be an integer without a unit."
25219
+ "description": "The intrinsic height of the image, in pixels. Must be an integer without a unit. Note: Including height and width enables the aspect ratio of the image to be calculated by the browser prior to the image being loaded. This aspect ratio is used to reserve the space needed to display the image, reducing or even preventing a layout shift when the image is downloaded and painted to the screen. Reducing layout shift is a major component of good user experience and web performance."
25101
25220
  },
25102
25221
  "hspace": {
25103
25222
  "description": "The number of pixels of white space on the left and right of the image. Use the margin CSS property instead.",
@@ -25108,7 +25227,7 @@
25108
25227
  "condition": "a[href] img"
25109
25228
  },
25110
25229
  "loading": {
25111
- "description": "Indicates how the browser should load the image: eager: Loads the image immediately, regardless of whether or not the image is currently within the visible viewport (this is the default value). lazy: Defers loading the image until it reaches a calculated distance from the viewport, as defined by the browser. The intent is to avoid the network and storage bandwidth needed to handle the image until it's reasonably certain that it will be needed. This generally improves the performance of the content in most typical use cases. Note: Loading is only deferred when JavaScript is enabled. This is an anti-tracking measure, because if a user agent supported lazy loading when scripting is disabled, it would still be possible for a site to track a user's approximate scroll position throughout a session, by strategically placing images in a page's markup such that a server can track how many images are requested and when."
25230
+ "description": "Indicates how the browser should load the image: eager Loads the image immediately, regardless of whether or not the image is currently within the visible viewport (this is the default value). lazy Defers loading the image until it reaches a calculated distance from the viewport, as defined by the browser. The intent is to avoid the network and storage bandwidth needed to handle the image until it's reasonably certain that it will be needed. This generally improves the performance of the content in most typical use cases. Note: Loading is only deferred when JavaScript is enabled. This is an anti-tracking measure, because if a user agent supported lazy loading when scripting is disabled, it would still be possible for a site to track a user's approximate scroll position throughout a session, by strategically placing images in a page's markup such that a server can track how many images are requested and when."
25112
25231
  },
25113
25232
  "longdesc": {
25114
25233
  "description": "A link to a more detailed description of the image. Possible values are a URL or an element id. Note: This attribute is mentioned in the latest W3C version, HTML 5.2, but has been removed from the WHATWG's HTML Living Standard. It has an uncertain future; authors should use a WAI-ARIA alternative such as aria-describedby or aria-details.",
@@ -25129,7 +25248,7 @@
25129
25248
  "required": true
25130
25249
  },
25131
25250
  "srcset": {
25132
- "description": "One or more strings separated by commas, indicating possible image sources for the user agent to use. Each string is composed of: A URL to an image Optionally, whitespace followed by one of: A width descriptor (a positive integer directly followed by w). The width descriptor is divided by the source size given in the sizes attribute to calculate the effective pixel density. A pixel density descriptor (a positive floating point number directly followed by x). If no descriptor is specified, the source is assigned the default descriptor of 1x. It is incorrect to mix width descriptors and pixel density descriptors in the same srcset attribute. Duplicate descriptors (for instance, two sources in the same srcset which are both described with 2x) are also invalid. The user agent selects any of the available sources at its discretion. This provides them with significant leeway to tailor their selection based on things like user preferences or bandwidth conditions. See our Responsive images tutorial for an example."
25251
+ "description": "One or more strings separated by commas, indicating possible image sources for the user agent to use. Each string is composed of: A URL to an image Optionally, whitespace followed by one of: A width descriptor (a positive integer directly followed by w). The width descriptor is divided by the source size given in the sizes attribute to calculate the effective pixel density. A pixel density descriptor (a positive floating point number directly followed by x). If no descriptor is specified, the source is assigned the default descriptor of 1x. It is incorrect to mix width descriptors and pixel density descriptors in the same srcset attribute. Duplicate descriptors (for instance, two sources in the same srcset which are both described with 2x) are also invalid. If the srcset attribute uses width descriptors, the sizes attribute must also be present, or the srcset itself will be ignored. The user agent selects any of the available sources at its discretion. This provides them with significant leeway to tailor their selection based on things like user preferences or bandwidth conditions. See our Responsive images tutorial for an example."
25133
25252
  },
25134
25253
  "usemap": {
25135
25254
  "type": "HashName",
@@ -25177,7 +25296,7 @@
25177
25296
  "properties": {
25178
25297
  "global": true,
25179
25298
  "role": true,
25180
- "whithout": [
25299
+ "without": [
25181
25300
  {
25182
25301
  "type": "must-not",
25183
25302
  "name": "aria-checked",
@@ -25195,7 +25314,7 @@
25195
25314
  "properties": {
25196
25315
  "global": true,
25197
25316
  "role": true,
25198
- "whithout": [
25317
+ "without": [
25199
25318
  {
25200
25319
  "type": "must-not",
25201
25320
  "name": "aria-checked",
@@ -25283,7 +25402,7 @@
25283
25402
  "properties": {
25284
25403
  "global": true,
25285
25404
  "role": true,
25286
- "whithout": [
25405
+ "without": [
25287
25406
  {
25288
25407
  "type": "must-not",
25289
25408
  "name": "aria-checked",
@@ -25301,7 +25420,7 @@
25301
25420
  "properties": {
25302
25421
  "global": true,
25303
25422
  "role": "slider",
25304
- "whithout": [
25423
+ "without": [
25305
25424
  {
25306
25425
  "type": "should-not",
25307
25426
  "name": "aria-valuemax"
@@ -25351,7 +25470,7 @@
25351
25470
  "properties": {
25352
25471
  "global": true,
25353
25472
  "role": "combobox",
25354
- "whithout": [
25473
+ "without": [
25355
25474
  {
25356
25475
  "type": "should-not",
25357
25476
  "name": "aria-haspopup"
@@ -25407,7 +25526,7 @@
25407
25526
  "properties": {
25408
25527
  "global": true,
25409
25528
  "role": true,
25410
- "whithout": [
25529
+ "without": [
25411
25530
  {
25412
25531
  "type": "should-not",
25413
25532
  "name": "aria-checked",
@@ -25425,7 +25544,7 @@
25425
25544
  "properties": {
25426
25545
  "global": true,
25427
25546
  "role": true,
25428
- "whithout": [
25547
+ "without": [
25429
25548
  {
25430
25549
  "type": "should-not",
25431
25550
  "name": "aria-hecked"
@@ -25516,7 +25635,7 @@
25516
25635
  "properties": {
25517
25636
  "global": true,
25518
25637
  "role": true,
25519
- "whithout": [
25638
+ "without": [
25520
25639
  {
25521
25640
  "type": "should-not",
25522
25641
  "name": "aria-checked",
@@ -25534,7 +25653,7 @@
25534
25653
  "properties": {
25535
25654
  "global": true,
25536
25655
  "role": "slider",
25537
- "whithout": [
25656
+ "without": [
25538
25657
  {
25539
25658
  "type": "should-not",
25540
25659
  "name": "aria-valuemax"
@@ -25584,7 +25703,7 @@
25584
25703
  "properties": {
25585
25704
  "global": true,
25586
25705
  "role": "combobox",
25587
- "whithout": [
25706
+ "without": [
25588
25707
  {
25589
25708
  "type": "should-not",
25590
25709
  "name": "aria-haspopup"
@@ -25619,7 +25738,7 @@
25619
25738
  }
25620
25739
  }
25621
25740
  },
25622
- "omittion": false,
25741
+ "omission": false,
25623
25742
  "globalAttrs": {
25624
25743
  "#ARIAAttrs": true,
25625
25744
  "#DocumentElementEventAttrs": true,
@@ -25678,7 +25797,7 @@
25678
25797
  ]
25679
25798
  },
25680
25799
  "autocorrect": {
25681
- "description": "(Safari only). A string which indicates whether or not to activate automatic correction while the user is editing this field. Permitted values are: on Enable automatic correction of typos, as well as processing of text substitutions if any are configured. off Disable automatic correction and text substitutions.",
25800
+ "description": "(Safari only). A string which indicates whether to activate automatic correction while the user is editing this field. Permitted values are: on Enable automatic correction of typos, as well as processing of text substitutions if any are configured. off Disable automatic correction and text substitutions.",
25682
25801
  "nonStandard": true
25683
25802
  },
25684
25803
  "autofocus": {
@@ -25964,7 +26083,7 @@
25964
26083
  "contentModel": {
25965
26084
  "contents": [
25966
26085
  {
25967
- "zeroOrMore": "#transparent"
26086
+ "transparent": "*"
25968
26087
  }
25969
26088
  ]
25970
26089
  },
@@ -25976,7 +26095,7 @@
25976
26095
  "implicitRole": false
25977
26096
  }
25978
26097
  },
25979
- "omittion": false,
26098
+ "omission": false,
25980
26099
  "globalAttrs": {
25981
26100
  "#ARIAAttrs": true,
25982
26101
  "#DocumentElementEventAttrs": true,
@@ -26004,7 +26123,7 @@
26004
26123
  "permittedRoles": true,
26005
26124
  "implicitRole": false
26006
26125
  },
26007
- "omittion": false,
26126
+ "omission": false,
26008
26127
  "obsolete": true,
26009
26128
  "globalAttrs": {},
26010
26129
  "attributes": {}
@@ -26017,7 +26136,7 @@
26017
26136
  "contentModel": {
26018
26137
  "contents": [
26019
26138
  {
26020
- "zeroOrMore": "#phrasing"
26139
+ "oneOrMore": ":model(phrasing)"
26021
26140
  }
26022
26141
  ]
26023
26142
  },
@@ -26026,7 +26145,7 @@
26026
26145
  "permittedRoles": true,
26027
26146
  "namingProhibited": true
26028
26147
  },
26029
- "omittion": false,
26148
+ "omission": false,
26030
26149
  "globalAttrs": {
26031
26150
  "#ARIAAttrs": true,
26032
26151
  "#DocumentElementEventAttrs": true,
@@ -26047,7 +26166,7 @@
26047
26166
  "permittedRoles": true,
26048
26167
  "implicitRole": false
26049
26168
  },
26050
- "omittion": false,
26169
+ "omission": false,
26051
26170
  "obsolete": true,
26052
26171
  "globalAttrs": {},
26053
26172
  "attributes": {
@@ -26079,8 +26198,7 @@
26079
26198
  "contentModel": {
26080
26199
  "contents": [
26081
26200
  {
26082
- "zeroOrMore": "#phrasing",
26083
- "notAllowedDescendants": ["label"]
26201
+ "oneOrMore": ":model(phrasing):not(label, :has(label))"
26084
26202
  }
26085
26203
  ]
26086
26204
  },
@@ -26089,7 +26207,7 @@
26089
26207
  "permittedRoles": false,
26090
26208
  "namingProhibited": true
26091
26209
  },
26092
- "omittion": false,
26210
+ "omission": false,
26093
26211
  "globalAttrs": {
26094
26212
  "#ARIAAttrs": true,
26095
26213
  "#DocumentElementEventAttrs": true,
@@ -26110,7 +26228,7 @@
26110
26228
  "contentModel": {
26111
26229
  "contents": [
26112
26230
  {
26113
- "zeroOrMore": ["#phrasing", "#heading"]
26231
+ "zeroOrMore": [":model(phrasing)", ":model(heading)"]
26114
26232
  }
26115
26233
  ]
26116
26234
  },
@@ -26119,7 +26237,7 @@
26119
26237
  "permittedRoles": false,
26120
26238
  "namingProhibited": true
26121
26239
  },
26122
- "omittion": false,
26240
+ "omission": false,
26123
26241
  "globalAttrs": {
26124
26242
  "#ARIAAttrs": true,
26125
26243
  "#DocumentElementEventAttrs": true,
@@ -26136,7 +26254,7 @@
26136
26254
  "contentModel": {
26137
26255
  "contents": [
26138
26256
  {
26139
- "zeroOrMore": "#flow"
26257
+ "oneOrMore": ":model(flow)"
26140
26258
  }
26141
26259
  ]
26142
26260
  },
@@ -26155,7 +26273,7 @@
26155
26273
  "treeitem"
26156
26274
  ]
26157
26275
  },
26158
- "omittion": false,
26276
+ "omission": false,
26159
26277
  "globalAttrs": {
26160
26278
  "#ARIAAttrs": true,
26161
26279
  "#DocumentElementEventAttrs": true,
@@ -26165,7 +26283,8 @@
26165
26283
  "attributes": {
26166
26284
  "type": {
26167
26285
  "description": "This character attribute indicates the numbering type: a: lowercase letters A: uppercase letters i: lowercase Roman numerals I: uppercase Roman numerals 1: numbers This type overrides the one used by its parent <ol> element, if any. Note: This attribute has been deprecated; use the CSS list-style-type property instead.",
26168
- "deprecated": true
26286
+ "deprecated": true,
26287
+ "nonStandard": true
26169
26288
  },
26170
26289
  "value": {
26171
26290
  "type": "Int",
@@ -26186,7 +26305,7 @@
26186
26305
  "permittedRoles": false,
26187
26306
  "properties": false
26188
26307
  },
26189
- "omittion": false,
26308
+ "omission": false,
26190
26309
  "globalAttrs": {
26191
26310
  "#ARIAAttrs": true,
26192
26311
  "#DocumentElementEventAttrs": true,
@@ -26253,7 +26372,8 @@
26253
26372
  "type": "Boolean"
26254
26373
  },
26255
26374
  "fetchpriority": {
26256
- "description": "Provides a hint of the relative priority to use when fetching a preloaded resource. Allowed values: high Signals a high-priority fetch relative to other resources of the same type. low Signals a low-priority fetch relative to other resources of the same type. auto Default: Signals automatic determination of fetch priority relative to other resources of the same type."
26375
+ "description": "Provides a hint of the relative priority to use when fetching a preloaded resource. Allowed values: high Signals a high-priority fetch relative to other resources of the same type. low Signals a low-priority fetch relative to other resources of the same type. auto Default: Signals automatic determination of fetch priority relative to other resources of the same type.",
26376
+ "experimental": true
26257
26377
  },
26258
26378
  "href": {
26259
26379
  "description": "This attribute specifies the URL of the linked resource. A URL can be absolute or relative."
@@ -26278,10 +26398,11 @@
26278
26398
  "requiredEither": ["rel"]
26279
26399
  },
26280
26400
  "media": {
26281
- "description": "This attribute specifies the media that the linked resource applies to. Its value must be a media type / media query. This attribute is mainly useful when linking to external stylesheets — it allows the user agent to pick the best adapted one for the device it runs on. Note: In HTML 4, this can only be a simple white-space-separated list of media description literals, i.e., media types and groups, where defined and allowed as values for this attribute, such as print, screen, aural, braille. HTML5 extended this to any kind of media queries, which are a superset of the allowed values of HTML 4. Browsers not supporting CSS3 Media Queries won't necessarily recognize the adequate link; do not forget to set fallback links, the restricted set of media queries defined in HTML 4."
26401
+ "description": "This attribute specifies the media that the linked resource applies to. Its value must be a media type / media query. This attribute is mainly useful when linking to external stylesheets — it allows the user agent to pick the best adapted one for the device it runs on. Note: In HTML 4, this can only be a simple white-space-separated list of media description literals, i.e., media types and groups, where defined and allowed as values for this attribute, such as print, screen, aural, braille. HTML5 extended this to any kind of media queries, which are a superset of the allowed values of HTML 4. Browsers not supporting CSS Media Queries won't necessarily recognize the adequate link; do not forget to set fallback links, the restricted set of media queries defined in HTML 4."
26282
26402
  },
26283
26403
  "methods": {
26284
26404
  "description": "The value of this attribute provides information about the functions that might be performed on an object. The values generally are given by the HTTP protocol when it is used, but it might (for similar reasons as for the title attribute) be useful to include advisory information in advance in the link. For example, the browser might choose a different rendering of a link as a function of the methods specified; something that is searchable might get a different icon, or an outside link might render with an indication of leaving the current site. This attribute is not well understood nor supported, even by the defining browser, Internet Explorer 4.",
26405
+ "deprecated": true,
26285
26406
  "nonStandard": true
26286
26407
  },
26287
26408
  "prefetch": {
@@ -26289,8 +26410,7 @@
26289
26410
  "experimental": true
26290
26411
  },
26291
26412
  "referrerpolicy": {
26292
- "description": "A string indicating which referrer to use when fetching the resource: no-referrer means that the Referer header will not be sent. no-referrer-when-downgrade means that no Referer header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent's default behavior, if no policy is otherwise specified. origin means that the referrer will be the origin of the page, which is roughly the scheme, the host, and the port. origin-when-cross-origin means that navigating to other origins will be limited to the scheme, the host, and the port, while navigating on the same origin will include the referrer's path. unsafe-url means that the referrer will include the origin and the path (but not the fragment, password, or username). This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins.",
26293
- "experimental": true
26413
+ "description": "A string indicating which referrer to use when fetching the resource: no-referrer means that the Referer header will not be sent. no-referrer-when-downgrade means that no Referer header will be sent when navigating to an origin without TLS (HTTPS). This is a user agent's default behavior, if no policy is otherwise specified. origin means that the referrer will be the origin of the page, which is roughly the scheme, the host, and the port. origin-when-cross-origin means that navigating to other origins will be limited to the scheme, the host, and the port, while navigating on the same origin will include the referrer's path. unsafe-url means that the referrer will include the origin and the path (but not the fragment, password, or username). This case is unsafe because it can leak origins and paths from TLS-protected resources to insecure origins."
26294
26414
  },
26295
26415
  "rel": {
26296
26416
  "type": [
@@ -26325,7 +26445,7 @@
26325
26445
  "requiredEither": ["itemprop"]
26326
26446
  },
26327
26447
  "rev": {
26328
- "description": "The value of this attribute shows the relationship of the current document to the linked document, as defined by the href attribute. The attribute thus defines the reverse relationship compared to the value of the rel attribute. Link type values for the attribute are similar to the possible values for rel. Note: Instead of rev, you should use the rel attribute with the opposite link type value. For example, to establish the reverse link for made, specify author. Also this attribute doesn't stand for \"revision\" and must not be used with a version number, even though many sites misuse it in this way.",
26448
+ "description": "The value of this attribute shows the relationship of the current document to the linked document, as defined by the href attribute. The attribute thus defines the reverse relationship compared to the value of the rel attribute. Link type values for the attribute are similar to the possible values for rel. Note: Instead of rev, you should use the rel attribute with the opposite link type value. For example, to establish the reverse link for made, specify author. Also, this attribute doesn't stand for \"revision\" and must not be used with a version number, even though many sites misuse it in this way.",
26329
26449
  "obsolete": true,
26330
26450
  "deprecated": true
26331
26451
  },
@@ -26341,7 +26461,7 @@
26341
26461
  },
26342
26462
  "target": {
26343
26463
  "description": "Defines the frame or window name that has the defined linking relationship or that will show the rendering of any linked resource.",
26344
- "nonStandard": true
26464
+ "deprecated": true
26345
26465
  },
26346
26466
  "title": {
26347
26467
  "description": "The title attribute has special semantics on the <link> element. When used on a <link rel=\"stylesheet\"> it defines a default or an alternate stylesheet."
@@ -26363,7 +26483,7 @@
26363
26483
  "permittedRoles": true,
26364
26484
  "implicitRole": false
26365
26485
  },
26366
- "omittion": false,
26486
+ "omission": false,
26367
26487
  "obsolete": true,
26368
26488
  "globalAttrs": {},
26369
26489
  "attributes": {}
@@ -26376,7 +26496,7 @@
26376
26496
  "contentModel": {
26377
26497
  "contents": [
26378
26498
  {
26379
- "zeroOrMore": "#flow"
26499
+ "oneOrMore": ":model(flow)"
26380
26500
  }
26381
26501
  ]
26382
26502
  },
@@ -26388,7 +26508,7 @@
26388
26508
  "role": "main"
26389
26509
  }
26390
26510
  },
26391
- "omittion": false,
26511
+ "omission": false,
26392
26512
  "globalAttrs": {
26393
26513
  "#ARIAAttrs": true,
26394
26514
  "#DocumentElementEventAttrs": true,
@@ -26405,7 +26525,7 @@
26405
26525
  "contentModel": {
26406
26526
  "contents": [
26407
26527
  {
26408
- "zeroOrMore": "#transparent"
26528
+ "transparent": "*"
26409
26529
  }
26410
26530
  ]
26411
26531
  },
@@ -26414,7 +26534,7 @@
26414
26534
  "permittedRoles": false,
26415
26535
  "properties": false
26416
26536
  },
26417
- "omittion": false,
26537
+ "omission": false,
26418
26538
  "globalAttrs": {
26419
26539
  "#ARIAAttrs": true,
26420
26540
  "#DocumentElementEventAttrs": true,
@@ -26430,12 +26550,12 @@
26430
26550
  {
26431
26551
  "name": "mark",
26432
26552
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/mark",
26433
- "description": "The <mark> HTML element represents text which is marked or highlighted for reference or notation purposes, due to the marked passage's relevance or importance in the enclosing context.",
26553
+ "description": "The <mark> HTML element represents text which is marked or highlighted for reference or notation purposes due to the marked passage's relevance in the enclosing context.",
26434
26554
  "categories": ["#flow", "#phrasing", "#palpable"],
26435
26555
  "contentModel": {
26436
26556
  "contents": [
26437
26557
  {
26438
- "zeroOrMore": "#phrasing"
26558
+ "oneOrMore": ":model(phrasing)"
26439
26559
  }
26440
26560
  ]
26441
26561
  },
@@ -26444,7 +26564,7 @@
26444
26564
  "permittedRoles": true,
26445
26565
  "namingProhibited": true
26446
26566
  },
26447
- "omittion": false,
26567
+ "omission": false,
26448
26568
  "globalAttrs": {
26449
26569
  "#ARIAAttrs": true,
26450
26570
  "#DocumentElementEventAttrs": true,
@@ -26465,49 +26585,60 @@
26465
26585
  "permittedRoles": true,
26466
26586
  "implicitRole": false
26467
26587
  },
26468
- "omittion": false,
26588
+ "omission": false,
26469
26589
  "obsolete": true,
26470
26590
  "globalAttrs": {},
26471
26591
  "attributes": {
26472
26592
  "behavior": {
26473
- "description": "Sets how the text is scrolled within the marquee. Possible values are scroll, slide and alternate. If no value is specified, the default value is scroll."
26593
+ "description": "Sets how the text is scrolled within the marquee. Possible values are scroll, slide and alternate. If no value is specified, the default value is scroll.",
26594
+ "deprecated": true
26474
26595
  },
26475
26596
  "bgcolor": {
26476
- "description": "Sets the background color through color name or hexadecimal value."
26597
+ "description": "Sets the background color through color name or hexadecimal value.",
26598
+ "deprecated": true
26477
26599
  },
26478
26600
  "direction": {
26479
- "description": "Sets the direction of the scrolling within the marquee. Possible values are left, right, up and down. If no value is specified, the default value is left."
26601
+ "description": "Sets the direction of the scrolling within the marquee. Possible values are left, right, up and down. If no value is specified, the default value is left.",
26602
+ "deprecated": true
26480
26603
  },
26481
26604
  "height": {
26482
- "description": "Sets the height in pixels or percentage value."
26605
+ "description": "Sets the height in pixels or percentage value.",
26606
+ "deprecated": true
26483
26607
  },
26484
26608
  "hspace": {
26485
- "description": "Sets the horizontal margin"
26609
+ "description": "Sets the horizontal margin",
26610
+ "deprecated": true
26486
26611
  },
26487
26612
  "loop": {
26488
- "description": "Sets the number of times the marquee will scroll. If no value is specified, the default value is −1, which means the marquee will scroll continuously."
26613
+ "description": "Sets the number of times the marquee will scroll. If no value is specified, the default value is −1, which means the marquee will scroll continuously.",
26614
+ "deprecated": true
26489
26615
  },
26490
26616
  "scrollamount": {
26491
- "description": "Sets the amount of scrolling at each interval in pixels. The default value is 6."
26617
+ "description": "Sets the amount of scrolling at each interval in pixels. The default value is 6.",
26618
+ "deprecated": true
26492
26619
  },
26493
26620
  "scrolldelay": {
26494
- "description": "Sets the interval between each scroll movement in milliseconds. The default value is 85. Note that any value smaller than 60 is ignored and the value 60 is used instead, unlesstruespeedis specified."
26621
+ "description": "Sets the interval between each scroll movement in milliseconds. The default value is 85. Note that any value smaller than 60 is ignored and the value 60 is used instead unless truespeed is specified.",
26622
+ "deprecated": true
26495
26623
  },
26496
26624
  "truespeed": {
26497
- "description": "By default,scrolldelayvalues lower than 60 are ignored. Iftruespeedis present, those values are not ignored."
26625
+ "description": "By default, scrolldelay values lower than 60 are ignored. If truespeed is present, those values are not ignored.",
26626
+ "deprecated": true
26498
26627
  },
26499
26628
  "vspace": {
26500
- "description": "Sets the vertical margin in pixels or percentage value."
26629
+ "description": "Sets the vertical margin in pixels or percentage value.",
26630
+ "deprecated": true
26501
26631
  },
26502
26632
  "width": {
26503
- "description": "Sets the width in pixels or percentage value."
26633
+ "description": "Sets the width in pixels or percentage value.",
26634
+ "deprecated": true
26504
26635
  }
26505
26636
  }
26506
26637
  },
26507
26638
  {
26508
26639
  "name": "math",
26509
26640
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/math",
26510
- "description": "The top-level element in MathML is <math>. Every valid MathML instance must be wrapped in <math> tags. In addition you must not nest a second <math> element in another, but you can have an arbitrary number of other child elements in it.",
26641
+ "description": "The <math> MathML element is the top-level MathML element, used to write a single mathematical formula. It can be placed in HTML content where flow content is permitted.",
26511
26642
  "categories": [],
26512
26643
  "contentModel": {
26513
26644
  "contents": true
@@ -26520,21 +26651,25 @@
26520
26651
  "role": "math"
26521
26652
  }
26522
26653
  },
26523
- "omittion": false,
26654
+ "omission": false,
26524
26655
  "globalAttrs": {
26525
26656
  "#ARIAAttrs": true
26526
26657
  },
26527
- "attributes": {}
26658
+ "attributes": {
26659
+ "display": {
26660
+ "description": "This enumerated attribute specifies how the enclosed MathML markup should be rendered. It can have one of the following values: block, which means that this element will be displayed in its own block outside the current span of text and with math-style set to normal. inline, which means that this element will be displayed inside the current span of text and with math-style set to compact. If not present, its default value is inline."
26661
+ }
26662
+ }
26528
26663
  },
26529
26664
  {
26530
26665
  "name": "menu",
26531
26666
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu",
26532
- "description": "The <menu> HTML element is a semantic alternative to <ul>. It represents an unordered list of items (represented by <li> elements), each of which represents a link or other command that the user can activate.",
26667
+ "description": "The <menu> HTML element is described in the HTML specification as a semantic alternative to <ul>, but treated by browsers (and exposed through the accessibility tree) as no different than <ul>. It represents an unordered list of items (which are represented by <li> elements).",
26533
26668
  "categories": ["#flow", "#palpable"],
26534
26669
  "contentModel": {
26535
26670
  "contents": [
26536
26671
  {
26537
- "zeroOrMore": ["li", "#script-supporting"]
26672
+ "zeroOrMore": ["li", ":model(script-supporting)"]
26538
26673
  }
26539
26674
  ]
26540
26675
  },
@@ -26572,7 +26707,7 @@
26572
26707
  ]
26573
26708
  }
26574
26709
  },
26575
- "omittion": false,
26710
+ "omission": false,
26576
26711
  "globalAttrs": {
26577
26712
  "#ARIAAttrs": true,
26578
26713
  "#DocumentElementEventAttrs": true,
@@ -26593,33 +26728,47 @@
26593
26728
  "permittedRoles": true,
26594
26729
  "implicitRole": false
26595
26730
  },
26596
- "omittion": false,
26731
+ "omission": false,
26597
26732
  "obsolete": true,
26598
26733
  "globalAttrs": {},
26599
26734
  "attributes": {
26600
26735
  "checked": {
26601
- "description": "Boolean attribute which indicates whether the command is selected. May only be used when the type attribute is checkbox or radio."
26736
+ "description": "Boolean attribute which indicates whether the command is selected. May only be used when the type attribute is checkbox or radio.",
26737
+ "deprecated": true,
26738
+ "nonStandard": true
26602
26739
  },
26603
26740
  "command": {
26604
- "description": "Specifies the ID of a separate element, indicating a command to be invoked indirectly. May not be used within a menu item that also includes the attributes checked, disabled, icon, label, radiogroup or type."
26741
+ "description": "Specifies the ID of a separate element, indicating a command to be invoked indirectly. May not be used within a menu item that also includes the attributes checked, disabled, icon, label, radiogroup or type.",
26742
+ "deprecated": true,
26743
+ "nonStandard": true
26605
26744
  },
26606
26745
  "default": {
26607
- "description": "This Boolean attribute indicates use of the same command as the menu's subject element (such as a button or input)."
26746
+ "description": "This Boolean attribute indicates use of the same command as the menu's subject element (such as a button or input).",
26747
+ "deprecated": true,
26748
+ "nonStandard": true
26608
26749
  },
26609
26750
  "disabled": {
26610
- "description": "Boolean attribute which indicates that the command is not available in the current state. Note that disabled is distinct from hidden; the disabled attribute is appropriate in any context where a change in circumstances might render the command relevant."
26751
+ "description": "Boolean attribute which indicates that the command is not available in the current state. Note that disabled is distinct from hidden; the disabled attribute is appropriate in any context where a change in circumstances might render the command relevant.",
26752
+ "deprecated": true,
26753
+ "nonStandard": true
26611
26754
  },
26612
26755
  "icon": {
26613
- "description": "Image URL, used to provide a picture to represent the command."
26756
+ "description": "Image URL, used to provide a picture to represent the command.",
26757
+ "deprecated": true,
26758
+ "nonStandard": true
26614
26759
  },
26615
26760
  "label": {
26616
26761
  "description": "The name of the command as shown to the user. Required when a command attribute is not present."
26617
26762
  },
26618
26763
  "radiogroup": {
26619
- "description": "This attribute specifies the name of a group of commands to be toggled as radio buttons when selected. May only be used where the type attribute is radio."
26764
+ "description": "This attribute specifies the name of a group of commands to be toggled as radio buttons when selected. May only be used where the type attribute is radio.",
26765
+ "deprecated": true,
26766
+ "nonStandard": true
26620
26767
  },
26621
26768
  "type": {
26622
- "description": "This attribute indicates the kind of command, and can be one of three values. command: A regular command with an associated action. This is the missing value default. checkbox: Represents a command that can be toggled between two different states. radio: Represent one selection from a group of commands that can be toggled as radio buttons."
26769
+ "description": "This attribute indicates the kind of command, and can be one of three values. command: A regular command with an associated action. This is the missing value default. checkbox: Represents a command that can be toggled between two different states. radio: Represent one selection from a group of commands that can be toggled as radio buttons.",
26770
+ "deprecated": true,
26771
+ "nonStandard": true
26623
26772
  }
26624
26773
  }
26625
26774
  },
@@ -26636,7 +26785,7 @@
26636
26785
  "permittedRoles": false,
26637
26786
  "properties": false
26638
26787
  },
26639
- "omittion": false,
26788
+ "omission": false,
26640
26789
  "globalAttrs": {
26641
26790
  "#ARIAAttrs": true,
26642
26791
  "#DocumentElementEventAttrs": true,
@@ -26692,8 +26841,7 @@
26692
26841
  "contentModel": {
26693
26842
  "contents": [
26694
26843
  {
26695
- "zeroOrMore": "#phrasing",
26696
- "notAllowedDescendants": ["meter"]
26844
+ "oneOrMore": ":model(phrasing):not(meter, :has(meter))"
26697
26845
  }
26698
26846
  ]
26699
26847
  },
@@ -26702,7 +26850,7 @@
26702
26850
  "permittedRoles": false,
26703
26851
  "properties": {
26704
26852
  "global": true,
26705
- "whithout": [
26853
+ "without": [
26706
26854
  {
26707
26855
  "type": "should-not",
26708
26856
  "name": "aria-valuemax"
@@ -26714,7 +26862,7 @@
26714
26862
  ]
26715
26863
  }
26716
26864
  },
26717
- "omittion": false,
26865
+ "omission": false,
26718
26866
  "globalAttrs": {
26719
26867
  "#ARIAAttrs": true,
26720
26868
  "#DocumentElementEventAttrs": true,
@@ -26754,7 +26902,7 @@
26754
26902
  "permittedRoles": true,
26755
26903
  "implicitRole": false
26756
26904
  },
26757
- "omittion": false,
26905
+ "omission": false,
26758
26906
  "obsolete": true,
26759
26907
  "globalAttrs": {},
26760
26908
  "attributes": {}
@@ -26767,7 +26915,7 @@
26767
26915
  "contentModel": {
26768
26916
  "contents": [
26769
26917
  {
26770
- "zeroOrMore": "#flow"
26918
+ "oneOrMore": ":model(flow)"
26771
26919
  }
26772
26920
  ]
26773
26921
  },
@@ -26778,7 +26926,7 @@
26778
26926
  "permittedRoles": ["menu", "menubar", "tablist"]
26779
26927
  }
26780
26928
  },
26781
- "omittion": false,
26929
+ "omission": false,
26782
26930
  "globalAttrs": {
26783
26931
  "#ARIAAttrs": true,
26784
26932
  "#DocumentElementEventAttrs": true,
@@ -26799,7 +26947,7 @@
26799
26947
  "permittedRoles": true,
26800
26948
  "implicitRole": false
26801
26949
  },
26802
- "omittion": false,
26950
+ "omission": false,
26803
26951
  "obsolete": true,
26804
26952
  "globalAttrs": {},
26805
26953
  "attributes": {}
@@ -26816,7 +26964,7 @@
26816
26964
  "permittedRoles": true,
26817
26965
  "implicitRole": false
26818
26966
  },
26819
- "omittion": false,
26967
+ "omission": false,
26820
26968
  "obsolete": true,
26821
26969
  "globalAttrs": {},
26822
26970
  "attributes": {}
@@ -26833,7 +26981,7 @@
26833
26981
  "permittedRoles": true,
26834
26982
  "implicitRole": false
26835
26983
  },
26836
- "omittion": false,
26984
+ "omission": false,
26837
26985
  "obsolete": true,
26838
26986
  "globalAttrs": {},
26839
26987
  "attributes": {}
@@ -26850,7 +26998,7 @@
26850
26998
  "permittedRoles": true,
26851
26999
  "implicitRole": false
26852
27000
  },
26853
- "omittion": false,
27001
+ "omission": false,
26854
27002
  "obsolete": true,
26855
27003
  "globalAttrs": {},
26856
27004
  "attributes": {}
@@ -26863,7 +27011,7 @@
26863
27011
  "contentModel": {
26864
27012
  "contents": [
26865
27013
  {
26866
- "zeroOrMore": "#flow"
27014
+ "transparent": ":not(noscript)"
26867
27015
  }
26868
27016
  ]
26869
27017
  },
@@ -26872,7 +27020,7 @@
26872
27020
  "permittedRoles": false,
26873
27021
  "properties": false
26874
27022
  },
26875
- "omittion": false,
27023
+ "omission": false,
26876
27024
  "globalAttrs": {
26877
27025
  "#ARIAAttrs": true,
26878
27026
  "#DocumentElementEventAttrs": true,
@@ -26889,7 +27037,7 @@
26889
27037
  "contentModel": {
26890
27038
  "contents": [
26891
27039
  {
26892
- "zeroOrMore": "#flow"
27040
+ "oneOrMore": ":model(flow)"
26893
27041
  }
26894
27042
  ]
26895
27043
  },
@@ -26897,7 +27045,7 @@
26897
27045
  "implicitRole": false,
26898
27046
  "permittedRoles": ["application", "document", "img"]
26899
27047
  },
26900
- "omittion": false,
27048
+ "omission": false,
26901
27049
  "globalAttrs": {
26902
27050
  "#ARIAAttrs": true,
26903
27051
  "#DocumentElementEventAttrs": true,
@@ -26932,14 +27080,14 @@
26932
27080
  "requiredEither": ["type"]
26933
27081
  },
26934
27082
  "declare": {
26935
- "description": "The presence of this Boolean attribute makes this element a declaration only. The object must be instantiated by a subsequent <object> element. In HTML5, repeat the <object> element completely each time that the resource is reused.",
27083
+ "description": "The presence of this Boolean attribute makes this element a declaration only. The object must be instantiated by a subsequent <object> element. Repeat the <object> element completely each time the resource is reused.",
26936
27084
  "deprecated": true
26937
27085
  },
26938
27086
  "form": {
26939
27087
  "description": "The form element, if any, that the object element is associated with (its form owner). The value of the attribute must be an ID of a <form> element in the same document."
26940
27088
  },
26941
27089
  "height": {
26942
- "description": "The height of the displayed resource, in CSS pixels. -- (Absolute values only. NO percentages)"
27090
+ "description": "The height of the displayed resource, in CSS pixels. (Absolute values only. NO percentages)"
26943
27091
  },
26944
27092
  "name": {
26945
27093
  "type": "BrowsingContextName"
@@ -26956,7 +27104,7 @@
26956
27104
  "description": "A hash-name reference to a <map> element; that is a '#' followed by the value of a name of a map element."
26957
27105
  },
26958
27106
  "width": {
26959
- "description": "The width of the display resource, in CSS pixels. -- (Absolute values only. NO percentages)"
27107
+ "description": "The width of the display resource, in CSS pixels. (Absolute values only. NO percentages)"
26960
27108
  }
26961
27109
  }
26962
27110
  },
@@ -26968,7 +27116,7 @@
26968
27116
  "contentModel": {
26969
27117
  "contents": [
26970
27118
  {
26971
- "zeroOrMore": ["li", "#script-supporting"]
27119
+ "zeroOrMore": ["li", ":model(script-supporting)"]
26972
27120
  }
26973
27121
  ]
26974
27122
  },
@@ -27006,7 +27154,7 @@
27006
27154
  ]
27007
27155
  }
27008
27156
  },
27009
- "omittion": false,
27157
+ "omission": false,
27010
27158
  "globalAttrs": {
27011
27159
  "#ARIAAttrs": true,
27012
27160
  "#DocumentElementEventAttrs": true,
@@ -27050,7 +27198,7 @@
27050
27198
  "role": "group"
27051
27199
  }
27052
27200
  },
27053
- "omittion": false,
27201
+ "omission": false,
27054
27202
  "globalAttrs": {
27055
27203
  "#ARIAAttrs": true,
27056
27204
  "#DocumentElementEventAttrs": true,
@@ -27108,7 +27256,7 @@
27108
27256
  "properties": {
27109
27257
  "global": true,
27110
27258
  "role": "option",
27111
- "whithout": [
27259
+ "without": [
27112
27260
  {
27113
27261
  "type": "should-not",
27114
27262
  "name": "aria-selected"
@@ -27116,7 +27264,7 @@
27116
27264
  ]
27117
27265
  }
27118
27266
  },
27119
- "omittion": false,
27267
+ "omission": false,
27120
27268
  "globalAttrs": {
27121
27269
  "#ARIAAttrs": true,
27122
27270
  "#DocumentElementEventAttrs": true,
@@ -27147,7 +27295,7 @@
27147
27295
  "contentModel": {
27148
27296
  "contents": [
27149
27297
  {
27150
- "zeroOrMore": "#phrasing"
27298
+ "oneOrMore": ":model(phrasing)"
27151
27299
  }
27152
27300
  ]
27153
27301
  },
@@ -27155,7 +27303,7 @@
27155
27303
  "implicitRole": "status",
27156
27304
  "permittedRoles": false
27157
27305
  },
27158
- "omittion": false,
27306
+ "omission": false,
27159
27307
  "globalAttrs": {
27160
27308
  "#ARIAAttrs": true,
27161
27309
  "#DocumentElementEventAttrs": true,
@@ -27183,7 +27331,7 @@
27183
27331
  "contentModel": {
27184
27332
  "contents": [
27185
27333
  {
27186
- "zeroOrMore": "#phrasing"
27334
+ "oneOrMore": ":model(phrasing)"
27187
27335
  }
27188
27336
  ]
27189
27337
  },
@@ -27195,7 +27343,7 @@
27195
27343
  "implicitRole": false
27196
27344
  }
27197
27345
  },
27198
- "omittion": false,
27346
+ "omission": false,
27199
27347
  "globalAttrs": {
27200
27348
  "#ARIAAttrs": true,
27201
27349
  "#DocumentElementEventAttrs": true,
@@ -27216,7 +27364,7 @@
27216
27364
  "permittedRoles": true,
27217
27365
  "implicitRole": false
27218
27366
  },
27219
- "omittion": false,
27367
+ "omission": false,
27220
27368
  "obsolete": true,
27221
27369
  "globalAttrs": {},
27222
27370
  "attributes": {
@@ -27246,19 +27394,19 @@
27246
27394
  "contentModel": {
27247
27395
  "contents": [
27248
27396
  {
27249
- "zeroOrMore": "#script-supporting"
27397
+ "zeroOrMore": ":model(script-supporting)"
27250
27398
  },
27251
27399
  {
27252
27400
  "zeroOrMore": "source"
27253
27401
  },
27254
27402
  {
27255
- "zeroOrMore": "#script-supporting"
27403
+ "zeroOrMore": ":model(script-supporting)"
27256
27404
  },
27257
27405
  {
27258
27406
  "require": "img"
27259
27407
  },
27260
27408
  {
27261
- "zeroOrMore": "#script-supporting"
27409
+ "zeroOrMore": ":model(script-supporting)"
27262
27410
  }
27263
27411
  ]
27264
27412
  },
@@ -27277,7 +27425,7 @@
27277
27425
  "properties": false
27278
27426
  }
27279
27427
  },
27280
- "omittion": false,
27428
+ "omission": false,
27281
27429
  "globalAttrs": {
27282
27430
  "#ARIAAttrs": true,
27283
27431
  "#DocumentElementEventAttrs": true,
@@ -27298,7 +27446,7 @@
27298
27446
  "permittedRoles": true,
27299
27447
  "implicitRole": false
27300
27448
  },
27301
- "omittion": false,
27449
+ "omission": false,
27302
27450
  "obsolete": true,
27303
27451
  "globalAttrs": {},
27304
27452
  "attributes": {}
@@ -27311,7 +27459,7 @@
27311
27459
  "contentModel": {
27312
27460
  "contents": [
27313
27461
  {
27314
- "zeroOrMore": "#transparent"
27462
+ "transparent": "*"
27315
27463
  }
27316
27464
  ]
27317
27465
  },
@@ -27319,7 +27467,7 @@
27319
27467
  "implicitRole": false,
27320
27468
  "permittedRoles": true
27321
27469
  },
27322
- "omittion": false,
27470
+ "omission": false,
27323
27471
  "globalAttrs": {
27324
27472
  "#ARIAAttrs": true,
27325
27473
  "#DocumentElementEventAttrs": true,
@@ -27345,7 +27493,7 @@
27345
27493
  "contentModel": {
27346
27494
  "contents": [
27347
27495
  {
27348
- "zeroOrMore": "#phrasing"
27496
+ "oneOrMore": ":model(phrasing)"
27349
27497
  }
27350
27498
  ]
27351
27499
  },
@@ -27354,7 +27502,7 @@
27354
27502
  "permittedRoles": true,
27355
27503
  "namingProhibited": true
27356
27504
  },
27357
- "omittion": false,
27505
+ "omission": false,
27358
27506
  "globalAttrs": {
27359
27507
  "#ARIAAttrs": true,
27360
27508
  "#DocumentElementEventAttrs": true,
@@ -27369,10 +27517,12 @@
27369
27517
  },
27370
27518
  "width": {
27371
27519
  "description": "Contains the preferred count of characters that a line should have. Though technically still implemented, this attribute has no visual effect; to achieve such an effect, use CSS width instead.",
27372
- "deprecated": true
27520
+ "deprecated": true,
27521
+ "nonStandard": true
27373
27522
  },
27374
27523
  "wrap": {
27375
27524
  "description": "Is a hint indicating how the overflow must happen. In modern browser this hint is ignored and no visual effect results in its present; to achieve such an effect, use CSS white-space instead.",
27525
+ "deprecated": true,
27376
27526
  "nonStandard": true
27377
27527
  }
27378
27528
  }
@@ -27385,8 +27535,7 @@
27385
27535
  "contentModel": {
27386
27536
  "contents": [
27387
27537
  {
27388
- "zeroOrMore": "#phrasing",
27389
- "notAllowedDescendants": ["progress"]
27538
+ "oneOrMore": ":model(phrasing):not(progress, :has(progress))"
27390
27539
  }
27391
27540
  ]
27392
27541
  },
@@ -27396,7 +27545,7 @@
27396
27545
  "properties": {
27397
27546
  "global": true,
27398
27547
  "role": "progressbar",
27399
- "whithout": [
27548
+ "without": [
27400
27549
  {
27401
27550
  "type": "should-not",
27402
27551
  "name": "aria-valuemax"
@@ -27404,7 +27553,7 @@
27404
27553
  ]
27405
27554
  }
27406
27555
  },
27407
- "omittion": false,
27556
+ "omission": false,
27408
27557
  "globalAttrs": {
27409
27558
  "#ARIAAttrs": true,
27410
27559
  "#DocumentElementEventAttrs": true,
@@ -27428,8 +27577,7 @@
27428
27577
  "contentModel": {
27429
27578
  "contents": [
27430
27579
  {
27431
- "zeroOrMore": "#phrasing",
27432
- "notAllowedDescendants": ["progress"]
27580
+ "oneOrMore": ":model(phrasing)"
27433
27581
  }
27434
27582
  ]
27435
27583
  },
@@ -27438,7 +27586,7 @@
27438
27586
  "permittedRoles": true,
27439
27587
  "namingProhibited": true
27440
27588
  },
27441
- "omittion": false,
27589
+ "omission": false,
27442
27590
  "globalAttrs": {
27443
27591
  "#ARIAAttrs": true,
27444
27592
  "#DocumentElementEventAttrs": true,
@@ -27463,7 +27611,7 @@
27463
27611
  "permittedRoles": true,
27464
27612
  "implicitRole": false
27465
27613
  },
27466
- "omittion": false,
27614
+ "omission": false,
27467
27615
  "obsolete": true,
27468
27616
  "globalAttrs": {},
27469
27617
  "attributes": {}
@@ -27476,8 +27624,7 @@
27476
27624
  "contentModel": {
27477
27625
  "contents": [
27478
27626
  {
27479
- "zeroOrMore": "#phrasing",
27480
- "notAllowedDescendants": ["progress"]
27627
+ "oneOrMore": "#text"
27481
27628
  }
27482
27629
  ]
27483
27630
  },
@@ -27485,7 +27632,7 @@
27485
27632
  "implicitRole": false,
27486
27633
  "permittedRoles": true
27487
27634
  },
27488
- "omittion": false,
27635
+ "omission": false,
27489
27636
  "globalAttrs": {
27490
27637
  "#ARIAAttrs": true,
27491
27638
  "#DocumentElementEventAttrs": true,
@@ -27502,7 +27649,7 @@
27502
27649
  "contentModel": {
27503
27650
  "contents": [
27504
27651
  {
27505
- "zeroOrMore": "#phrasing"
27652
+ "oneOrMore": ":model(phrasing)"
27506
27653
  }
27507
27654
  ]
27508
27655
  },
@@ -27511,7 +27658,7 @@
27511
27658
  "permittedRoles": true,
27512
27659
  "namingProhibited": true
27513
27660
  },
27514
- "omittion": false,
27661
+ "omission": false,
27515
27662
  "globalAttrs": {
27516
27663
  "#ARIAAttrs": true,
27517
27664
  "#DocumentElementEventAttrs": true,
@@ -27532,7 +27679,7 @@
27532
27679
  "permittedRoles": true,
27533
27680
  "implicitRole": false
27534
27681
  },
27535
- "omittion": false,
27682
+ "omission": false,
27536
27683
  "obsolete": true,
27537
27684
  "globalAttrs": {},
27538
27685
  "attributes": {}
@@ -27547,8 +27694,7 @@
27547
27694
  {
27548
27695
  "oneOrMore": [
27549
27696
  {
27550
- "require": "#phrasing",
27551
- "notAllowedDescendants": ["ruby"]
27697
+ "require": ":model(phrasing):not(ruby, :has(ruby))"
27552
27698
  },
27553
27699
  {
27554
27700
  "choice": [
@@ -27586,7 +27732,7 @@
27586
27732
  "implicitRole": false,
27587
27733
  "permittedRoles": true
27588
27734
  },
27589
- "omittion": false,
27735
+ "omission": false,
27590
27736
  "globalAttrs": {
27591
27737
  "#ARIAAttrs": true,
27592
27738
  "#DocumentElementEventAttrs": true,
@@ -27603,7 +27749,7 @@
27603
27749
  "contentModel": {
27604
27750
  "contents": [
27605
27751
  {
27606
- "zeroOrMore": "#phrasing"
27752
+ "oneOrMore": ":model(phrasing)"
27607
27753
  }
27608
27754
  ]
27609
27755
  },
@@ -27612,7 +27758,7 @@
27612
27758
  "permittedRoles": true,
27613
27759
  "namingProhibited": true
27614
27760
  },
27615
- "omittion": false,
27761
+ "omission": false,
27616
27762
  "globalAttrs": {
27617
27763
  "#ARIAAttrs": true,
27618
27764
  "#DocumentElementEventAttrs": true,
@@ -27629,7 +27775,7 @@
27629
27775
  "contentModel": {
27630
27776
  "contents": [
27631
27777
  {
27632
- "zeroOrMore": "#phrasing"
27778
+ "oneOrMore": ":model(phrasing)"
27633
27779
  }
27634
27780
  ]
27635
27781
  },
@@ -27638,7 +27784,7 @@
27638
27784
  "permittedRoles": true,
27639
27785
  "namingProhibited": true
27640
27786
  },
27641
- "omittion": false,
27787
+ "omission": false,
27642
27788
  "globalAttrs": {
27643
27789
  "#ARIAAttrs": true,
27644
27790
  "#DocumentElementEventAttrs": true,
@@ -27664,7 +27810,7 @@
27664
27810
  "permittedRoles": false,
27665
27811
  "properties": false
27666
27812
  },
27667
- "omittion": false,
27813
+ "omission": false,
27668
27814
  "globalAttrs": {
27669
27815
  "#ARIAAttrs": true,
27670
27816
  "#DocumentElementEventAttrs": true,
@@ -27696,14 +27842,16 @@
27696
27842
  "ineffective": ["[type='module' i]", ":not([src])", "[async]"]
27697
27843
  },
27698
27844
  "fetchpriority": {
27699
- "description": "Provides a hint of the relative priority to use when fetching an external script. Allowed values: high Signals a high-priority fetch relative to other external scripts. low Signals a low-priority fetch relative to other external scripts. auto Default: Signals automatic determination of fetch priority relative to other external scripts."
27845
+ "description": "Provides a hint of the relative priority to use when fetching an external script. Allowed values: high Signals a high-priority fetch relative to other external scripts. low Signals a low-priority fetch relative to other external scripts. auto Default: Signals automatic determination of fetch priority relative to other external scripts.",
27846
+ "experimental": true
27700
27847
  },
27701
27848
  "integrity": {
27702
27849
  "condition": "[src]"
27703
27850
  },
27704
27851
  "language": {
27705
27852
  "description": "Like the type attribute, this attribute identifies the scripting language in use. Unlike the type attribute, however, this attribute's possible values were never standardized. The type attribute should be used instead.",
27706
- "deprecated": true
27853
+ "deprecated": true,
27854
+ "nonStandard": true
27707
27855
  },
27708
27856
  "nomodule": {
27709
27857
  "type": "Boolean",
@@ -27722,7 +27870,7 @@
27722
27870
  "type": [
27723
27871
  "MIMEType",
27724
27872
  {
27725
- "enum": ["module"],
27873
+ "enum": ["module", "importmap"],
27726
27874
  "caseInsensitive": true
27727
27875
  }
27728
27876
  ]
@@ -27737,7 +27885,7 @@
27737
27885
  "contentModel": {
27738
27886
  "contents": [
27739
27887
  {
27740
- "zeroOrMore": "#flow"
27888
+ "oneOrMore": ":model(flow)"
27741
27889
  }
27742
27890
  ]
27743
27891
  },
@@ -27794,7 +27942,7 @@
27794
27942
  ]
27795
27943
  }
27796
27944
  },
27797
- "omittion": false,
27945
+ "omission": false,
27798
27946
  "globalAttrs": {
27799
27947
  "#ARIAAttrs": true,
27800
27948
  "#DocumentElementEventAttrs": true,
@@ -27821,7 +27969,7 @@
27821
27969
  "properties": {
27822
27970
  "global": true,
27823
27971
  "role": ["combobox", "menu"],
27824
- "whithout": [
27972
+ "without": [
27825
27973
  {
27826
27974
  "type": "should-not",
27827
27975
  "name": "aria-multiselectable"
@@ -27835,7 +27983,7 @@
27835
27983
  "properties": {
27836
27984
  "global": true,
27837
27985
  "role": "listbox",
27838
- "whithout": [
27986
+ "without": [
27839
27987
  {
27840
27988
  "type": "should-not",
27841
27989
  "name": "aria-multiselectable"
@@ -27845,7 +27993,7 @@
27845
27993
  }
27846
27994
  }
27847
27995
  },
27848
- "omittion": false,
27996
+ "omission": false,
27849
27997
  "globalAttrs": {
27850
27998
  "#ARIAAttrs": true,
27851
27999
  "#DocumentElementEventAttrs": true,
@@ -27891,7 +28039,7 @@
27891
28039
  "contentModel": {
27892
28040
  "contents": [
27893
28041
  {
27894
- "zeroOrMore": "#transparent"
28042
+ "transparent": "*"
27895
28043
  }
27896
28044
  ]
27897
28045
  },
@@ -27900,7 +28048,7 @@
27900
28048
  "permittedRoles": false,
27901
28049
  "properties": false
27902
28050
  },
27903
- "omittion": false,
28051
+ "omission": false,
27904
28052
  "globalAttrs": {
27905
28053
  "#ARIAAttrs": true,
27906
28054
  "#DocumentElementEventAttrs": true,
@@ -27921,7 +28069,7 @@
27921
28069
  "contentModel": {
27922
28070
  "contents": [
27923
28071
  {
27924
- "zeroOrMore": "#phrasing"
28072
+ "oneOrMore": ":model(phrasing)"
27925
28073
  }
27926
28074
  ]
27927
28075
  },
@@ -27930,7 +28078,7 @@
27930
28078
  "permittedRoles": true,
27931
28079
  "namingProhibited": true
27932
28080
  },
27933
- "omittion": false,
28081
+ "omission": false,
27934
28082
  "globalAttrs": {
27935
28083
  "#ARIAAttrs": true,
27936
28084
  "#DocumentElementEventAttrs": true,
@@ -27942,7 +28090,7 @@
27942
28090
  {
27943
28091
  "name": "source",
27944
28092
  "cite": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source",
27945
- "description": "The <source> HTML element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element. It is an empty element, meaning that it has no content and does not have a closing tag. It is commonly used to offer the same media content in multiple file formats in order to provide compatibility with a broad range of browsers given their differing support for image file formats and media file formats.",
28093
+ "description": "The <source> HTML element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element. It is a void element, meaning that it has no content and does not have a closing tag. It is commonly used to offer the same media content in multiple file formats in order to provide compatibility with a broad range of browsers given their differing support for image file formats and media file formats.",
27946
28094
  "categories": [],
27947
28095
  "contentModel": {
27948
28096
  "contents": false
@@ -27952,7 +28100,7 @@
27952
28100
  "permittedRoles": false,
27953
28101
  "properties": false
27954
28102
  },
27955
- "omittion": false,
28103
+ "omission": false,
27956
28104
  "globalAttrs": {
27957
28105
  "#ARIAAttrs": true,
27958
28106
  "#DocumentElementEventAttrs": true,
@@ -27989,7 +28137,7 @@
27989
28137
  {
27990
28138
  "name": "spacer",
27991
28139
  "cite": "https://html.spec.whatwg.org/multipage/obsolete.html#non-conforming-features",
27992
- "description": "The <spacer> HTML element is an obsolete HTML element which allowed insertion of empty spaces on pages. It was devised by Netscape to accomplish the same effect as a single-pixel layout image, which was something web designers used to use to add white spaces to web pages without actually using an image. However, <spacer> no longer supported by any major browser and the same effects can now be achieved using simple CSS.",
28140
+ "description": "The <spacer> HTML element is an obsolete HTML element which allowed insertion of empty spaces on pages. It was devised by Netscape to accomplish the same effect as a single-pixel layout image, which was something web designers used to use to add white spaces to web pages without actually using an image. However, <spacer> is no longer supported by any major browser and the same effects can now be achieved using simple CSS.",
27993
28141
  "categories": [],
27994
28142
  "contentModel": {
27995
28143
  "contents": true
@@ -27998,7 +28146,7 @@
27998
28146
  "permittedRoles": true,
27999
28147
  "implicitRole": false
28000
28148
  },
28001
- "omittion": false,
28149
+ "omission": false,
28002
28150
  "obsolete": true,
28003
28151
  "globalAttrs": {},
28004
28152
  "attributes": {
@@ -28027,7 +28175,7 @@
28027
28175
  "contentModel": {
28028
28176
  "contents": [
28029
28177
  {
28030
- "zeroOrMore": "#phrasing"
28178
+ "oneOrMore": ":model(phrasing)"
28031
28179
  }
28032
28180
  ]
28033
28181
  },
@@ -28036,7 +28184,7 @@
28036
28184
  "permittedRoles": true,
28037
28185
  "namingProhibited": true
28038
28186
  },
28039
- "omittion": false,
28187
+ "omission": false,
28040
28188
  "globalAttrs": {
28041
28189
  "#ARIAAttrs": true,
28042
28190
  "#DocumentElementEventAttrs": true,
@@ -28057,7 +28205,7 @@
28057
28205
  "permittedRoles": true,
28058
28206
  "implicitRole": false
28059
28207
  },
28060
- "omittion": false,
28208
+ "omission": false,
28061
28209
  "obsolete": true,
28062
28210
  "globalAttrs": {},
28063
28211
  "attributes": {}
@@ -28070,7 +28218,7 @@
28070
28218
  "contentModel": {
28071
28219
  "contents": [
28072
28220
  {
28073
- "zeroOrMore": "#flow"
28221
+ "oneOrMore": ":model(flow)"
28074
28222
  }
28075
28223
  ]
28076
28224
  },
@@ -28082,7 +28230,7 @@
28082
28230
  "implicitRole": false
28083
28231
  }
28084
28232
  },
28085
- "omittion": false,
28233
+ "omission": false,
28086
28234
  "globalAttrs": {
28087
28235
  "#ARIAAttrs": true,
28088
28236
  "#DocumentElementEventAttrs": true,
@@ -28108,7 +28256,7 @@
28108
28256
  "permittedRoles": false,
28109
28257
  "properties": false
28110
28258
  },
28111
- "omittion": false,
28259
+ "omission": false,
28112
28260
  "globalAttrs": {
28113
28261
  "#ARIAAttrs": true,
28114
28262
  "#DocumentElementEventAttrs": true,
@@ -28144,7 +28292,7 @@
28144
28292
  "contentModel": {
28145
28293
  "contents": [
28146
28294
  {
28147
- "zeroOrMore": "#phrasing"
28295
+ "oneOrMore": ":model(phrasing)"
28148
28296
  }
28149
28297
  ]
28150
28298
  },
@@ -28156,7 +28304,7 @@
28156
28304
  "implicitRole": false
28157
28305
  }
28158
28306
  },
28159
- "omittion": false,
28307
+ "omission": false,
28160
28308
  "globalAttrs": {
28161
28309
  "#ARIAAttrs": true,
28162
28310
  "#DocumentElementEventAttrs": true,
@@ -28176,12 +28324,12 @@
28176
28324
  "choice": [
28177
28325
  [
28178
28326
  {
28179
- "zeroOrMore": "#phrasing"
28327
+ "oneOrMore": ":model(phrasing)"
28180
28328
  }
28181
28329
  ],
28182
28330
  [
28183
28331
  {
28184
- "require": "#heading"
28332
+ "require": ":model(heading)"
28185
28333
  }
28186
28334
  ]
28187
28335
  ]
@@ -28196,7 +28344,7 @@
28196
28344
  "role": "button"
28197
28345
  }
28198
28346
  },
28199
- "omittion": false,
28347
+ "omission": false,
28200
28348
  "globalAttrs": {
28201
28349
  "#ARIAAttrs": true,
28202
28350
  "#DocumentElementEventAttrs": true,
@@ -28213,7 +28361,7 @@
28213
28361
  "contentModel": {
28214
28362
  "contents": [
28215
28363
  {
28216
- "zeroOrMore": "#phrasing"
28364
+ "oneOrMore": ":model(phrasing)"
28217
28365
  }
28218
28366
  ]
28219
28367
  },
@@ -28225,7 +28373,7 @@
28225
28373
  "implicitRole": false
28226
28374
  }
28227
28375
  },
28228
- "omittion": false,
28376
+ "omission": false,
28229
28377
  "globalAttrs": {
28230
28378
  "#ARIAAttrs": true,
28231
28379
  "#DocumentElementEventAttrs": true,
@@ -28242,25 +28390,25 @@
28242
28390
  "contentModel": {
28243
28391
  "contents": [
28244
28392
  {
28245
- "zeroOrMore": "#script-supporting"
28393
+ "zeroOrMore": ":model(script-supporting)"
28246
28394
  },
28247
28395
  {
28248
28396
  "optional": "caption"
28249
28397
  },
28250
28398
  {
28251
- "zeroOrMore": "#script-supporting"
28399
+ "zeroOrMore": ":model(script-supporting)"
28252
28400
  },
28253
28401
  {
28254
28402
  "zeroOrMore": "colgroup"
28255
28403
  },
28256
28404
  {
28257
- "zeroOrMore": "#script-supporting"
28405
+ "zeroOrMore": ":model(script-supporting)"
28258
28406
  },
28259
28407
  {
28260
28408
  "optional": "thead"
28261
28409
  },
28262
28410
  {
28263
- "zeroOrMore": "#script-supporting"
28411
+ "zeroOrMore": ":model(script-supporting)"
28264
28412
  },
28265
28413
  {
28266
28414
  "choice": [
@@ -28277,13 +28425,13 @@
28277
28425
  ]
28278
28426
  },
28279
28427
  {
28280
- "zeroOrMore": "#script-supporting"
28428
+ "zeroOrMore": ":model(script-supporting)"
28281
28429
  },
28282
28430
  {
28283
28431
  "optional": "tfoot"
28284
28432
  },
28285
28433
  {
28286
- "zeroOrMore": "#script-supporting"
28434
+ "zeroOrMore": ":model(script-supporting)"
28287
28435
  }
28288
28436
  ]
28289
28437
  },
@@ -28291,7 +28439,7 @@
28291
28439
  "implicitRole": "table",
28292
28440
  "permittedRoles": true
28293
28441
  },
28294
- "omittion": false,
28442
+ "omission": false,
28295
28443
  "globalAttrs": {
28296
28444
  "#ARIAAttrs": true,
28297
28445
  "#DocumentElementEventAttrs": true,
@@ -28353,7 +28501,7 @@
28353
28501
  "implicitRole": "rowgroup",
28354
28502
  "permittedRoles": true
28355
28503
  },
28356
- "omittion": false,
28504
+ "omission": false,
28357
28505
  "globalAttrs": {
28358
28506
  "#ARIAAttrs": true,
28359
28507
  "#DocumentElementEventAttrs": true,
@@ -28391,7 +28539,7 @@
28391
28539
  "contentModel": {
28392
28540
  "contents": [
28393
28541
  {
28394
- "zeroOrMore": "#flow"
28542
+ "oneOrMore": ":model(flow)"
28395
28543
  }
28396
28544
  ]
28397
28545
  },
@@ -28399,18 +28547,18 @@
28399
28547
  "implicitRole": false,
28400
28548
  "permittedRoles": true,
28401
28549
  "conditions": {
28402
- "table:is(:not([role]), [role=table]) > :is(thead, tfoot, tbody) > tr > td": {
28550
+ "table:is(:not([role]), [role=table]) > :is(thead, tfoot, tbody) > tr > td, table:is(:not([role]), [role=table]) > tr > td": {
28403
28551
  "implicitRole": "cell"
28404
28552
  },
28405
- "table:is([role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > td": {
28553
+ "table:is([role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > td, table:is([role=grid], [role=treegrid]) > tr > td": {
28406
28554
  "implicitRole": "gridcell"
28407
28555
  },
28408
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > td": {
28556
+ "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > td, table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > td": {
28409
28557
  "permittedRoles": false
28410
28558
  }
28411
28559
  }
28412
28560
  },
28413
- "omittion": false,
28561
+ "omission": false,
28414
28562
  "globalAttrs": {
28415
28563
  "#ARIAAttrs": true,
28416
28564
  "#DocumentElementEventAttrs": true,
@@ -28424,7 +28572,7 @@
28424
28572
  "deprecated": true
28425
28573
  },
28426
28574
  "align": {
28427
- "description": "This enumerated attribute specifies how the cell content's horizontal alignment will be handled. Possible values are: left: The content is aligned to the left of the cell. center: The content is centered in the cell. right: The content is aligned to the right of the cell. justify (with text only): The content is stretched out inside the cell so that it covers its entire width. char (with text only): The content is aligned to a character inside the <th> element with minimal offset. This character is defined by the char and charoff attributes Unimplemented (see bug 2212). The default value when this attribute is not specified is left. Note: To achieve the same effect as the left, center, right or justify values, apply the CSS text-align property to the element. To achieve the same effect as the char value, give the text-align property the same value you would use for the char. Unimplemented in CSS3.",
28575
+ "description": "This enumerated attribute specifies how the cell content's horizontal alignment will be handled. Possible values are: left: The content is aligned to the left of the cell. center: The content is centered in the cell. right: The content is aligned to the right of the cell. justify (with text only): The content is stretched out inside the cell so that it covers its entire width. char (with text only): The content is aligned to a character inside the <th> element with minimal offset. This character is defined by the char and charoff attributes Unimplemented (see bug 2212). The default value when this attribute is not specified is left. Note: To achieve the same effect as the left, center, right or justify values, apply the CSS text-align property to the element. To achieve the same effect as the char value, give the text-align property the same value you would use for the char. Unimplemented in CSS.",
28428
28576
  "deprecated": true
28429
28577
  },
28430
28578
  "axis": {
@@ -28476,18 +28624,14 @@
28476
28624
  "description": "The <template> HTML element is a mechanism for holding HTML that is not to be rendered immediately when a page is loaded but may be instantiated subsequently during runtime using JavaScript.",
28477
28625
  "categories": ["#metadata", "#flow", "#phrasing", "#script-supporting"],
28478
28626
  "contentModel": {
28479
- "contents": [
28480
- {
28481
- "zeroOrMore": "#transparent"
28482
- }
28483
- ]
28627
+ "contents": true
28484
28628
  },
28485
28629
  "aria": {
28486
28630
  "implicitRole": false,
28487
28631
  "permittedRoles": false,
28488
28632
  "properties": false
28489
28633
  },
28490
- "omittion": false,
28634
+ "omission": false,
28491
28635
  "globalAttrs": {
28492
28636
  "#ARIAAttrs": true,
28493
28637
  "#DocumentElementEventAttrs": true,
@@ -28516,7 +28660,7 @@
28516
28660
  "role": "textbox"
28517
28661
  }
28518
28662
  },
28519
- "omittion": false,
28663
+ "omission": false,
28520
28664
  "globalAttrs": {
28521
28665
  "#ARIAAttrs": true,
28522
28666
  "#DocumentElementEventAttrs": true,
@@ -28539,7 +28683,7 @@
28539
28683
  "description": "This attribute indicates whether the value of the control can be automatically completed by the browser. Possible values are: off: The user must explicitly enter a value into this field for every use, or the document provides its own auto-completion method; the browser does not automatically complete the entry. on: The browser can automatically complete the value based on values that the user has entered during previous uses. If the autocomplete attribute is not specified on a <textarea> element, then the browser uses the autocomplete attribute value of the <textarea> element's form owner. The form owner is either the <form> element that this <textarea> element is a descendant of or the form element whose id is specified by the form attribute of the input element. For more information, see the autocomplete attribute in <form>."
28540
28684
  },
28541
28685
  "autocorrect": {
28542
- "description": "A string which indicates whether or not to activate automatic spelling correction and processing of text substitutions (if any are configured) while the user is editing this textarea. Permitted values are: on Enable automatic spelling correction and text substitutions. off Disable automatic spelling correction and text substitutions.",
28686
+ "description": "A string which indicates whether to activate automatic spelling correction and processing of text substitutions (if any are configured) while the user is editing this textarea. Permitted values are: on Enable automatic spelling correction and text substitutions. off Disable automatic spelling correction and text substitutions.",
28543
28687
  "nonStandard": true
28544
28688
  },
28545
28689
  "autofocus": {
@@ -28611,7 +28755,7 @@
28611
28755
  "implicitRole": "rowgroup",
28612
28756
  "permittedRoles": true
28613
28757
  },
28614
- "omittion": false,
28758
+ "omission": false,
28615
28759
  "globalAttrs": {
28616
28760
  "#ARIAAttrs": true,
28617
28761
  "#DocumentElementEventAttrs": true,
@@ -28620,7 +28764,7 @@
28620
28764
  },
28621
28765
  "attributes": {
28622
28766
  "align": {
28623
- "description": "This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are: left, aligning the content to the left of the cell center, centering the content in the cell right, aligning the content to the right of the cell justify, inserting spaces into the textual content so that the content is justified in the cell char, aligning the textual content on a special character with a minimal offset, defined by the char and charoff attributes. If this attribute is not set, the left value is assumed. Note: To achieve the same effect as the left, center, right or justify values, use the CSS text-align property on it. To achieve the same effect as the char value, in CSS3, you can use the value of the char as the value of the text-align property Unimplemented.",
28767
+ "description": "This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are: left, aligning the content to the left of the cell center, centering the content in the cell right, aligning the content to the right of the cell justify, inserting spaces into the textual content so that the content is justified in the cell char, aligning the textual content on a special character with a minimal offset, defined by the char and charoff attributes. If this attribute is not set, the left value is assumed. Note: To achieve the same effect as the left, center, right or justify values, use the CSS text-align property on it. To achieve the same effect as the char value, in CSS, you can use the value of the char as the value of the text-align property Unimplemented.",
28624
28768
  "deprecated": true
28625
28769
  },
28626
28770
  "bgcolor": {
@@ -28649,8 +28793,7 @@
28649
28793
  "contentModel": {
28650
28794
  "contents": [
28651
28795
  {
28652
- "zeroOrMore": "#flow",
28653
- "notAllowedDescendants": ["header", "footer", "#sectioning", "#heading"]
28796
+ "oneOrMore": ":model(flow):not(header, footer, :model(sectioning), :model(heading), :has(header, footer, :model(sectioning), :model(heading)))"
28654
28797
  }
28655
28798
  ]
28656
28799
  },
@@ -28658,30 +28801,30 @@
28658
28801
  "implicitRole": false,
28659
28802
  "permittedRoles": true,
28660
28803
  "conditions": {
28661
- "table:is(:not([role]), [role=table]) > :is(thead, tfoot, tbody) > tr > th": {
28804
+ "table:is(:not([role]), [role=table]) > :is(thead, tfoot, tbody) > tr > th, table:is(:not([role]), [role=table]) > tr > th": {
28662
28805
  "implicitRole": "cell"
28663
28806
  },
28664
- "table:is([role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th": {
28807
+ "table:is([role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th, table:is([role=grid], [role=treegrid]) > tr > th": {
28665
28808
  "implicitRole": "gridcell"
28666
28809
  },
28667
28810
  "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > thead > tr > th:not([scope])": {
28668
28811
  "implicitRole": "columnheader"
28669
28812
  },
28670
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(tfoot, tbody) > tr > th:not([scope])": {
28813
+ "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(tfoot, tbody) > tr > th:not([scope]), table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th:not([scope])": {
28671
28814
  "implicitRole": "rowheader"
28672
28815
  },
28673
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th[scope=col]": {
28816
+ "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th[scope=col], table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th[scope=col]": {
28674
28817
  "implicitRole": "columnheader"
28675
28818
  },
28676
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th[scope=row]": {
28819
+ "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th[scope=row], table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th[scope=row]": {
28677
28820
  "implicitRole": "rowheader"
28678
28821
  },
28679
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th": {
28822
+ "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th, table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th": {
28680
28823
  "permittedRoles": false
28681
28824
  }
28682
28825
  }
28683
28826
  },
28684
- "omittion": false,
28827
+ "omission": false,
28685
28828
  "globalAttrs": {
28686
28829
  "#ARIAAttrs": true,
28687
28830
  "#DocumentElementEventAttrs": true,
@@ -28702,9 +28845,8 @@
28702
28845
  "deprecated": true
28703
28846
  },
28704
28847
  "bgcolor": {
28705
- "description": "This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in sRGB and is prefixed by '#'. This attribute may be used with one of sixteen predefined color strings: black = \"#000000\" green = \"#008000\" silver = \"#C0C0C0\" lime = \"#00FF00\" gray = \"#808080\" olive = \"#808000\" white = \"#FFFFFF\" yellow = \"#FFFF00\" maroon = \"#800000\" navy = \"#000080\" red = \"#FF0000\" blue = \"#0000FF\" purple = \"#800080\" teal = \"#008080\" fuchsia = \"#FF00FF\" aqua = \"#00FFFF\" Note: Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: The <th> element should be styled using CSS. To create a similar effect use the background-color property in CSS instead.",
28706
- "deprecated": true,
28707
- "nonStandard": true
28848
+ "description": "This attribute defines the background color of each cell in a column. It consists of a 6-digit hexadecimal code as defined in sRGB and is prefixed by '#'.",
28849
+ "deprecated": true
28708
28850
  },
28709
28851
  "char": {
28710
28852
  "description": "The content in the cell element is aligned to a character. Typical values include a period (.) to align numbers or monetary values. If align is not set to char, this attribute is ignored. Note: Do not use this attribute as it is obsolete in the latest standard. To achieve the same effect, you can specify the character as the first value of the text-align property.",
@@ -28760,7 +28902,7 @@
28760
28902
  "implicitRole": "rowgroup",
28761
28903
  "permittedRoles": true
28762
28904
  },
28763
- "omittion": false,
28905
+ "omission": false,
28764
28906
  "globalAttrs": {
28765
28907
  "#ARIAAttrs": true,
28766
28908
  "#DocumentElementEventAttrs": true,
@@ -28769,16 +28911,15 @@
28769
28911
  },
28770
28912
  "attributes": {
28771
28913
  "align": {
28772
- "description": "This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are: left, aligning the content to the left of the cell center, centering the content in the cell right, aligning the content to the right of the cell justify, inserting spaces into the textual content so that the content is justified in the cell char, aligning the textual content on a special character with a minimal offset, defined by the char and charoff attributes. If this attribute is not set, the left value is assumed. Warning: Do not use this attribute as it is obsolete (not supported) in the latest standard. To achieve the same effect as the left, center, right or justify values, use the CSS text-align property on it. To achieve the same effect as the char value, in CSS3, you can use the value of the char as the value of the text-align property.",
28914
+ "description": "This enumerated attribute specifies how horizontal alignment of each cell content will be handled. Possible values are: left, aligning the content to the left of the cell center, centering the content in the cell right, aligning the content to the right of the cell justify, inserting spaces into the textual content so that the content is justified in the cell char, aligning the textual content on a special character with a minimal offset, defined by the char and charoff attributes. If this attribute is not set, the left value is assumed. Warning: Do not use this attribute as it is obsolete (not supported) in the latest standard. To align values, use the CSS text-align property instead.",
28773
28915
  "deprecated": true
28774
28916
  },
28775
28917
  "bgcolor": {
28776
- "description": "This attribute defines the background color of each cell of the column. It is one of the 6-digit hexadecimal code as defined in sRGB, prefixed by a '#'. One of the sixteen predefined color strings may be used: black = \"#000000\" green = \"#008000\" silver = \"#C0C0C0\" lime = \"#00FF00\" gray = \"#808080\" olive = \"#808000\" white = \"#FFFFFF\" yellow = \"#FFFF00\" maroon = \"#800000\" navy = \"#000080\" red = \"#FF0000\" blue = \"#0000FF\" purple = \"#800080\" teal = \"#008080\" fuchsia = \"#FF00FF\" aqua = \"#00FFFF\" Note: Do not use this attribute, as it is non-standard and only implemented in some versions of Microsoft Internet Explorer: the <thead> element should be styled using CSS. To give a similar effect to the bgcolor attribute, use the CSS property background-color, on the relevant <td> or <th> elements.",
28777
- "deprecated": true,
28778
- "nonStandard": true
28918
+ "description": "This attribute defines the background color of each column cell. It accepts a 6-digit hexadecimal color or a named color. Alpha transparency is not supported. Note: Do not use this attribute, as it is non-standard. The thead element should be styled using the CSS background-color property, which can be applied to any element, including the thead, <tr>, <td> and <th> elements.",
28919
+ "deprecated": true
28779
28920
  },
28780
28921
  "char": {
28781
- "description": "This attribute is used to set the character to align the cells in a column on. Typical values for this include a period (.) when attempting to align numbers or monetary values. If align is not set to char, this attribute is ignored. Note: Do not use this attribute as it is obsolete (and not supported) in the latest standard. To achieve the same effect as the char, in CSS3, you can use the character set using the char attribute as the value of the text-align property.",
28922
+ "description": "This attribute is used to set the character to align the cells in a column on. Typical values for this include a period (.) when attempting to align numbers or monetary values. If align is not set to char, this attribute is ignored. Note: Do not use this attribute as it is obsolete (and not supported) in the latest standard.",
28782
28923
  "deprecated": true
28783
28924
  },
28784
28925
  "charoff": {
@@ -28799,7 +28940,7 @@
28799
28940
  "contentModel": {
28800
28941
  "contents": [
28801
28942
  {
28802
- "zeroOrMore": "#phrasing"
28943
+ "oneOrMore": ":model(phrasing)"
28803
28944
  }
28804
28945
  ]
28805
28946
  },
@@ -28811,7 +28952,7 @@
28811
28952
  "implicitRole": false
28812
28953
  }
28813
28954
  },
28814
- "omittion": false,
28955
+ "omission": false,
28815
28956
  "globalAttrs": {
28816
28957
  "#ARIAAttrs": true,
28817
28958
  "#DocumentElementEventAttrs": true,
@@ -28841,7 +28982,7 @@
28841
28982
  "permittedRoles": false,
28842
28983
  "properties": false
28843
28984
  },
28844
- "omittion": false,
28985
+ "omission": false,
28845
28986
  "globalAttrs": {
28846
28987
  "#ARIAAttrs": true,
28847
28988
  "#DocumentElementEventAttrs": true,
@@ -28858,7 +28999,7 @@
28858
28999
  "contentModel": {
28859
29000
  "contents": [
28860
29001
  {
28861
- "zeroOrMore": ["th", "td", "#script-supporting"]
29002
+ "zeroOrMore": ["th", "td", ":model(script-supporting)"]
28862
29003
  }
28863
29004
  ]
28864
29005
  },
@@ -28871,7 +29012,7 @@
28871
29012
  }
28872
29013
  }
28873
29014
  },
28874
- "omittion": false,
29015
+ "omission": false,
28875
29016
  "globalAttrs": {
28876
29017
  "#ARIAAttrs": true,
28877
29018
  "#DocumentElementEventAttrs": true,
@@ -28884,11 +29025,11 @@
28884
29025
  "deprecated": true
28885
29026
  },
28886
29027
  "bgcolor": {
28887
- "description": "A string specifying a color to apply to the backgrounds of each of the row's cells. This can be either an hexadecimal #RRGGBB or #RGB value or a color keyword. Omitting the attribute or setting it to null in JavaScript causes the row's cells to inherit the row's parent element's background color. Note: The <tr> element should be styled using CSS. To give a similar effect as the bgcolor attribute, use the CSS property background-color.",
29028
+ "description": "A string specifying a color to apply to the backgrounds of each of the row's cells. This can be either a hexadecimal #RRGGBB or #RGB value or a color keyword. Omitting the attribute or setting it to null in JavaScript causes the row's cells to inherit the row's parent element's background color. Note: The <tr> element should be styled using CSS. To give a similar effect as the bgcolor attribute, use the CSS property background-color.",
28888
29029
  "deprecated": true
28889
29030
  },
28890
29031
  "char": {
28891
- "description": "A string which sets the character to align the cells in each of the row's columns on (each row's centering that uses the same character gets aligned with others using the same character . Typical values for this include a period (\".\") or comma (\",\") when attempting to align numbers or monetary values. If align is not set to char, this attribute is ignored. Note: This attribute is not only obsolete, but was rarely implemented anyway. To achieve the same effect as the char attribute, set the CSS text-align property to the same string you would specify for the char property, such as text-align: \".\".",
29032
+ "description": "A string which sets the character to align the cells in each of the row's columns on (each row's centering that uses the same character gets aligned with others using the same character. Typical values for this include a period (\".\") or comma (\",\") when attempting to align numbers or monetary values. If align is not set to char, this attribute is ignored. Note: This attribute is not only obsolete, but was rarely implemented anyway. To achieve the same effect as the char attribute, set the CSS text-align property to the same string you would specify for the char property, such as text-align: \".\".",
28892
29033
  "deprecated": true
28893
29034
  },
28894
29035
  "charoff": {
@@ -28896,7 +29037,7 @@
28896
29037
  "deprecated": true
28897
29038
  },
28898
29039
  "valign": {
28899
- "description": "A string specifying the vertical alignment of the text within each cell in the row. Possible values for this attribute are: baseline Aligns each cell's content text as closely as possible to the bottom of the cell, handling alignment of different fonts and font sizes by aligning the characters along the baseline of the font(s) used in the row. If all of the characters in the row are the same size, the effect is the same as bottom. bottom, Draws the text in each of the row's cells as closely as possible to the bottom edge of those cells. middle Each cell's text is vertically centered. top Each cell's text is drawn as closely as possible to the top edge of the containing cell. Note: Don't use the obsolete valign attribute. Instead, add the CSS vertical-align property to the row.",
29040
+ "description": "A string specifying the vertical alignment of the text within each cell in the row. Possible values for this attribute are: baseline Aligns each cell's content text as closely as possible to the bottom of the cell, handling alignment of different fonts and font sizes by aligning the characters along the baseline of the font(s) used in the row. If all the characters in the row are the same size, the effect is the same as bottom. bottom, Draws the text in each of the row's cells as closely as possible to the bottom edge of those cells. middle Each cell's text is vertically centered. top Each cell's text is drawn as closely as possible to the top edge of the containing cell. Note: Don't use the obsolete valign attribute. Instead, add the CSS vertical-align property to the row.",
28900
29041
  "deprecated": true
28901
29042
  }
28902
29043
  }
@@ -28914,7 +29055,7 @@
28914
29055
  "permittedRoles": false,
28915
29056
  "properties": false
28916
29057
  },
28917
- "omittion": false,
29058
+ "omission": false,
28918
29059
  "globalAttrs": {
28919
29060
  "#ARIAAttrs": true,
28920
29061
  "#DocumentElementEventAttrs": true,
@@ -28956,7 +29097,7 @@
28956
29097
  "permittedRoles": true,
28957
29098
  "implicitRole": false
28958
29099
  },
28959
- "omittion": false,
29100
+ "omission": false,
28960
29101
  "obsolete": true,
28961
29102
  "globalAttrs": {},
28962
29103
  "attributes": {}
@@ -28969,7 +29110,7 @@
28969
29110
  "contentModel": {
28970
29111
  "contents": [
28971
29112
  {
28972
- "zeroOrMore": "#phrasing"
29113
+ "oneOrMore": ":model(phrasing)"
28973
29114
  }
28974
29115
  ]
28975
29116
  },
@@ -28978,7 +29119,7 @@
28978
29119
  "permittedRoles": true,
28979
29120
  "namingProhibited": true
28980
29121
  },
28981
- "omittion": false,
29122
+ "omission": false,
28982
29123
  "globalAttrs": {
28983
29124
  "#ARIAAttrs": true,
28984
29125
  "#DocumentElementEventAttrs": true,
@@ -28995,7 +29136,7 @@
28995
29136
  "contentModel": {
28996
29137
  "contents": [
28997
29138
  {
28998
- "zeroOrMore": ["li", "#script-supporting"]
29139
+ "zeroOrMore": ["li", ":model(script-supporting)"]
28999
29140
  }
29000
29141
  ]
29001
29142
  },
@@ -29033,7 +29174,7 @@
29033
29174
  ]
29034
29175
  }
29035
29176
  },
29036
- "omittion": false,
29177
+ "omission": false,
29037
29178
  "globalAttrs": {
29038
29179
  "#ARIAAttrs": true,
29039
29180
  "#DocumentElementEventAttrs": true,
@@ -29043,11 +29184,13 @@
29043
29184
  "attributes": {
29044
29185
  "compact": {
29045
29186
  "description": "This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent, and it doesn't work in all browsers. Warning: Do not use this attribute, as it has been deprecated: use CSS instead. To give a similar effect as the compact attribute, the CSS property line-height can be used with a value of 80%.",
29046
- "deprecated": true
29187
+ "deprecated": true,
29188
+ "nonStandard": true
29047
29189
  },
29048
29190
  "type": {
29049
29191
  "description": "This attribute sets the bullet style for the list. The values defined under HTML3.2 and the transitional version of HTML 4.0/4.01 are: circle disc square A fourth bullet type has been defined in the WebTV interface, but not all browsers support it: triangle. If not present and if no CSS list-style-type property applies to the element, the user agent selects a bullet type depending on the nesting level of the list. Warning: Do not use this attribute, as it has been deprecated; use the CSS list-style-type property instead.",
29050
- "deprecated": true
29192
+ "deprecated": true,
29193
+ "nonStandard": true
29051
29194
  }
29052
29195
  }
29053
29196
  },
@@ -29059,7 +29202,7 @@
29059
29202
  "contentModel": {
29060
29203
  "contents": [
29061
29204
  {
29062
- "zeroOrMore": "#phrasing"
29205
+ "oneOrMore": ":model(phrasing)"
29063
29206
  }
29064
29207
  ]
29065
29208
  },
@@ -29068,7 +29211,7 @@
29068
29211
  "permittedRoles": true,
29069
29212
  "namingProhibited": true
29070
29213
  },
29071
- "omittion": false,
29214
+ "omission": false,
29072
29215
  "globalAttrs": {
29073
29216
  "#ARIAAttrs": true,
29074
29217
  "#DocumentElementEventAttrs": true,
@@ -29091,8 +29234,7 @@
29091
29234
  "zeroOrMore": "track"
29092
29235
  },
29093
29236
  {
29094
- "zeroOrMore": "#transparent",
29095
- "notAllowedDescendants": ["audio", "video"]
29237
+ "transparent": ":not(audio, video, :has(audio, video))"
29096
29238
  }
29097
29239
  ],
29098
29240
  "conditional": [
@@ -29103,8 +29245,7 @@
29103
29245
  "zeroOrMore": "track"
29104
29246
  },
29105
29247
  {
29106
- "zeroOrMore": "#transparent",
29107
- "notAllowedDescendants": ["audio", "video"]
29248
+ "transparent": ":not(audio, video, :has(audio, video))"
29108
29249
  }
29109
29250
  ]
29110
29251
  }
@@ -29118,7 +29259,7 @@
29118
29259
  "role": "application"
29119
29260
  }
29120
29261
  },
29121
- "omittion": false,
29262
+ "omission": false,
29122
29263
  "globalAttrs": {
29123
29264
  "#ARIAAttrs": true,
29124
29265
  "#DocumentElementEventAttrs": true,
@@ -29159,14 +29300,14 @@
29159
29300
  }
29160
29301
  },
29161
29302
  "crossorigin": {
29162
- "description": "This enumerated attribute indicates whether to use CORS to fetch the related video. CORS-enabled resources can be reused in the <canvas> element without being tainted. The allowed values are: anonymous Sends a cross-origin request without a credential. In other words, it sends the Origin: HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the Access-Control-Allow-Origin: HTTP header), the image will be tainted, and its usage restricted. use-credentials Sends a cross-origin request with a credential. In other words, it sends the Origin: HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through Access-Control-Allow-Credentials: HTTP header), the image will be tainted and its usage restricted. When not present, the resource is fetched without a CORS request (i.e. without sending the Origin: HTTP header), preventing its non-tainted used in <canvas> elements. If invalid, it is handled as if the enumerated keyword anonymous was used. See CORS settings attributes for additional information."
29303
+ "description": "This enumerated attribute indicates whether to use CORS to fetch the related video. CORS-enabled resources can be reused in the <canvas> element without being tainted. The allowed values are: anonymous Sends a cross-origin request without a credential. In other words, it sends the Origin: HTTP header without a cookie, X.509 certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (by not setting the Access-Control-Allow-Origin: HTTP header), the resource will be tainted, and its usage restricted. use-credentials Sends a cross-origin request with a credential. In other words, it sends the Origin: HTTP header with a cookie, a certificate, or performing HTTP Basic authentication. If the server does not give credentials to the origin site (through Access-Control-Allow-Credentials: HTTP header), the resource will be tainted and its usage restricted. When not present, the resource is fetched without a CORS request (i.e. without sending the Origin: HTTP header), preventing its non-tainted use in <canvas> elements. If invalid, it is handled as if the enumerated keyword anonymous was used. See CORS settings attributes for additional information."
29163
29304
  },
29164
29305
  "disablepictureinpicture": {
29165
29306
  "description": "Prevents the browser from suggesting a Picture-in-Picture context menu or to request Picture-in-Picture automatically in some cases.",
29166
29307
  "experimental": true
29167
29308
  },
29168
29309
  "disableremoteplayback": {
29169
- "description": "A Boolean attribute used to disable the capability of remote playback in devices that are attached using wired (HDMI, DVI, etc.) and wireless technologies (Miracast, Chromecast, DLNA, AirPlay, etc). In Safari, you can use x-webkit-airplay=\"deny\" as a fallback.",
29310
+ "description": "A Boolean attribute used to disable the capability of remote playback in devices that are attached using wired (HDMI, DVI, etc.) and wireless technologies (Miracast, Chromecast, DLNA, AirPlay, etc.). In Safari, you can use x-webkit-airplay=\"deny\" as a fallback.",
29170
29311
  "experimental": true
29171
29312
  },
29172
29313
  "height": {
@@ -29185,7 +29326,7 @@
29185
29326
  "type": "URL"
29186
29327
  },
29187
29328
  "preload": {
29188
- "description": "This enumerated attribute is intended to provide a hint to the browser about what the author thinks will lead to the best user experience with regards to what content is loaded before the video is played. It may have one of the following values: none: Indicates that the video should not be preloaded. metadata: Indicates that only video metadata (e.g. length) is fetched. auto: Indicates that the whole video file can be downloaded, even if the user is not expected to use it. empty string: Synonym of the auto value. The default value is different for each browser. The spec advises it to be set to metadata. Note: The autoplay attribute has precedence over preload. If autoplay is specified, the browser would obviously need to start downloading the video for playback. The specification does not force the browser to follow the value of this attribute; it is a mere hint."
29329
+ "description": "This enumerated attribute is intended to provide a hint to the browser about what the author thinks will lead to the best user experience regarding what content is loaded before the video is played. It may have one of the following values: none: Indicates that the video should not be preloaded. metadata: Indicates that only video metadata (e.g. length) is fetched. auto: Indicates that the whole video file can be downloaded, even if the user is not expected to use it. empty string: Synonym of the auto value. The default value is different for each browser. The spec advises it to be set to metadata. Note: The autoplay attribute has precedence over preload. If autoplay is specified, the browser would obviously need to start downloading the video for playback. The specification does not force the browser to follow the value of this attribute; it is a mere hint."
29189
29330
  },
29190
29331
  "src": {
29191
29332
  "description": "The URL of the video to embed. This is optional; you may instead use the <source> element within the video block to specify the video to embed."
@@ -29213,7 +29354,7 @@
29213
29354
  "permittedRoles": true
29214
29355
  }
29215
29356
  },
29216
- "omittion": false,
29357
+ "omission": false,
29217
29358
  "globalAttrs": {
29218
29359
  "#ARIAAttrs": true,
29219
29360
  "#DocumentElementEventAttrs": true,
@@ -29234,7 +29375,7 @@
29234
29375
  "permittedRoles": true,
29235
29376
  "implicitRole": false
29236
29377
  },
29237
- "omittion": false,
29378
+ "omission": false,
29238
29379
  "obsolete": true,
29239
29380
  "globalAttrs": {},
29240
29381
  "attributes": {}
@@ -29251,15 +29392,14 @@
29251
29392
  "condition": "svg|switch > svg|a",
29252
29393
  "contents": [
29253
29394
  {
29254
- "zeroOrMore": "#transparent"
29395
+ "transparent": "*"
29255
29396
  }
29256
29397
  ]
29257
29398
  }
29258
29399
  ],
29259
29400
  "contents": [
29260
29401
  {
29261
- "zeroOrMore": ["#SVGDescriptive", "#transparent"],
29262
- "ignore": "svg|a"
29402
+ "transparent": "*, :model(SVGDescriptive):not(svg|a, :has(svg|a))"
29263
29403
  }
29264
29404
  ]
29265
29405
  },
@@ -29270,12 +29410,12 @@
29270
29410
  "graphics-aam": true
29271
29411
  },
29272
29412
  "conditions": {
29273
- "[href], [xlink:href]": {
29413
+ "[href], [xlink|href]": {
29274
29414
  "implicitRole": "link"
29275
29415
  }
29276
29416
  }
29277
29417
  },
29278
- "omittion": false,
29418
+ "omission": false,
29279
29419
  "globalAttrs": {
29280
29420
  "#ARIAAttrs": true,
29281
29421
  "#DocumentElementEventAttrs": true,
@@ -29367,8 +29507,7 @@
29367
29507
  },
29368
29508
  "attributes": {
29369
29509
  "download": {
29370
- "description": "Instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. Value type: <string> ; Default value: none; Animatable: no",
29371
- "experimental": true
29510
+ "description": "Instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. Value type: <string> ; Default value: none; Animatable: no"
29372
29511
  },
29373
29512
  "href": {
29374
29513
  "description": "The URL or URL fragment the hyperlink points to. Value type: <URL> ; Default value: none; Animatable: yes"
@@ -29381,12 +29520,10 @@
29381
29520
  "experimental": true
29382
29521
  },
29383
29522
  "referrerpolicy": {
29384
- "description": "Which referrer to send when fetching the URL. Value type: no-referrer|no-referrer-when-downgrade|same-origin|origin|strict-origin|origin-when-cross-origin|strict-origin-when-cross-origin|unsafe-url ; Default value: none; Animatable: no",
29385
- "experimental": true
29523
+ "description": "Which referrer to send when fetching the URL. Value type: no-referrer|no-referrer-when-downgrade|same-origin|origin|strict-origin|origin-when-cross-origin|strict-origin-when-cross-origin|unsafe-url ; Default value: none; Animatable: no"
29386
29524
  },
29387
29525
  "rel": {
29388
- "description": "The relationship of the target object to the link object. Value type: <list-of-Link-Types> ; Default value: none; Animatable: yes",
29389
- "experimental": true
29526
+ "description": "The relationship of the target object to the link object. Value type: <list-of-Link-Types> ; Default value: none; Animatable: yes"
29390
29527
  },
29391
29528
  "target": {
29392
29529
  "description": "Where to display the linked URL. Value type: _self|_parent|_top|_blank|<name> ; Default value: _self; Animatable: yes"
@@ -29413,33 +29550,40 @@
29413
29550
  "permittedRoles": true,
29414
29551
  "implicitRole": false
29415
29552
  },
29416
- "omittion": false,
29553
+ "omission": false,
29417
29554
  "obsolete": true,
29418
29555
  "globalAttrs": {},
29419
29556
  "attributes": {
29420
29557
  "dx": {
29421
- "description": "This attribute indicates a shift along the x-axis on the position of the element. Value type: <list-of-coordinates> ; Default value: Relative x-coordinate of ancestor <text> or <tspan>; Animatable: yes"
29558
+ "description": "This attribute indicates a shift along the x-axis on the position of the element. Value type: <list-of-coordinates> ; Default value: Relative x-coordinate of ancestor <text> or <tspan>; Animatable: yes",
29559
+ "deprecated": true
29422
29560
  },
29423
29561
  "dy": {
29424
- "description": "This attribute indicates a shift along the x-axis on the position of the element. Value type: <list-of-coordinates> ; Default value: Relative y-coordinate of ancestor <text> or <tspan>; Animatable: yes"
29562
+ "description": "This attribute indicates a shift along the x-axis on the position of the element. Value type: <list-of-coordinates> ; Default value: Relative y-coordinate of ancestor <text> or <tspan>; Animatable: yes",
29563
+ "deprecated": true
29425
29564
  },
29426
29565
  "format": {
29427
- "description": "The format of the given font. Value type: <string> ; Default value: none; Animatable: no"
29566
+ "description": "The format of the given font. Value type: <string> ; Default value: none; Animatable: no",
29567
+ "deprecated": true
29428
29568
  },
29429
29569
  "glyphRef": {
29430
- "description": "The glyph identifier, the format of which is dependent on the format defined by the format attribute of the given font. Value type: <string> ; Default value: none; Animatable: no"
29570
+ "description": "The glyph identifier, the format of which is dependent on the format defined by the format attribute of the given font. Value type: <string> ; Default value: none; Animatable: no",
29571
+ "deprecated": true
29431
29572
  },
29432
29573
  "rotate": {
29433
- "description": "This attribute defines the supplemental rotation that will be applied to the element. Value type: <list-of-numbers> ; Default value: none; Animatable: yes (non-additive)"
29574
+ "description": "This attribute defines the supplemental rotation that will be applied to the element. Value type: <list-of-numbers> ; Default value: none; Animatable: yes (non-additive)",
29575
+ "deprecated": true
29434
29576
  },
29435
29577
  "x": {
29436
- "description": "This attribute defines the corresponding absolute x-coordinates for rendering the element. Value type: <list-of-coordinates> ; Default value: Absolute x-coordinate of ancestor <text> or <tspan>; Animatable: yes"
29578
+ "description": "This attribute defines the corresponding absolute x-coordinates for rendering the element. Value type: <list-of-coordinates> ; Default value: Absolute x-coordinate of ancestor <text> or <tspan>; Animatable: yes",
29579
+ "deprecated": true
29437
29580
  },
29438
29581
  "xlink:href": {
29439
29582
  "description": "An <iri> reference either to a <glyph> element in an SVG document or to an <altGlyphDef> element. If the reference is to a <glyph> element and that glyph is available, then that glyph is rendered instead of the character(s) that are inside of the <altGlyph> element. If the reference is to an <altGlyphDef> element, then if an appropriate set of alternate glyphs is located from processing the <altGlyphDef> element, then those alternate glyphs are rendered instead of the character(s) that are inside of the <altGlyph> element. Value type: <iri> ; Default value: none; Animatable: no"
29440
29583
  },
29441
29584
  "y": {
29442
- "description": "This attribute defines the corresponding absolute y-coordinates for rendering the element. Value type: <list-of-coordinates> ; Default value: Absolute y-coordinate of ancestor <text> or <tspan>; Animatable: yes"
29585
+ "description": "This attribute defines the corresponding absolute y-coordinates for rendering the element. Value type: <list-of-coordinates> ; Default value: Absolute y-coordinate of ancestor <text> or <tspan>; Animatable: yes",
29586
+ "deprecated": true
29443
29587
  }
29444
29588
  }
29445
29589
  },
@@ -29456,7 +29600,7 @@
29456
29600
  "permittedRoles": true,
29457
29601
  "implicitRole": false
29458
29602
  },
29459
- "omittion": false,
29603
+ "omission": false,
29460
29604
  "obsolete": true,
29461
29605
  "globalAttrs": {},
29462
29606
  "attributes": {}
@@ -29474,7 +29618,7 @@
29474
29618
  "permittedRoles": true,
29475
29619
  "implicitRole": false
29476
29620
  },
29477
- "omittion": false,
29621
+ "omission": false,
29478
29622
  "obsolete": true,
29479
29623
  "globalAttrs": {},
29480
29624
  "attributes": {}
@@ -29488,7 +29632,7 @@
29488
29632
  "contentModel": {
29489
29633
  "contents": [
29490
29634
  {
29491
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
29635
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
29492
29636
  }
29493
29637
  ]
29494
29638
  },
@@ -29497,7 +29641,7 @@
29497
29641
  "permittedRoles": false,
29498
29642
  "properties": false
29499
29643
  },
29500
- "omittion": false,
29644
+ "omission": false,
29501
29645
  "globalAttrs": {
29502
29646
  "#DocumentElementEventAttrs": true,
29503
29647
  "#GlobalEventAttrs": true,
@@ -29605,7 +29749,7 @@
29605
29749
  "permittedRoles": true,
29606
29750
  "implicitRole": false
29607
29751
  },
29608
- "omittion": false,
29752
+ "omission": false,
29609
29753
  "obsolete": true,
29610
29754
  "globalAttrs": {},
29611
29755
  "attributes": {}
@@ -29619,10 +29763,10 @@
29619
29763
  "contentModel": {
29620
29764
  "contents": [
29621
29765
  {
29622
- "interleave": [
29766
+ "choice": [
29623
29767
  [
29624
29768
  {
29625
- "oneOrMore": ["#SVGDescriptive", "svg|script"]
29769
+ "oneOrMore": [":model(SVGDescriptive)", "svg|script"]
29626
29770
  },
29627
29771
  {
29628
29772
  "optional": "svg|mpath"
@@ -29633,7 +29777,7 @@
29633
29777
  "optional": "svg|mpath"
29634
29778
  },
29635
29779
  {
29636
- "oneOrMore": ["#SVGDescriptive", "svg|script"]
29780
+ "oneOrMore": [":model(SVGDescriptive)", "svg|script"]
29637
29781
  }
29638
29782
  ]
29639
29783
  ]
@@ -29645,7 +29789,7 @@
29645
29789
  "permittedRoles": false,
29646
29790
  "properties": false
29647
29791
  },
29648
- "omittion": false,
29792
+ "omission": false,
29649
29793
  "globalAttrs": {
29650
29794
  "#DocumentElementEventAttrs": true,
29651
29795
  "#GlobalEventAttrs": true,
@@ -29692,7 +29836,7 @@
29692
29836
  "contentModel": {
29693
29837
  "contents": [
29694
29838
  {
29695
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
29839
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
29696
29840
  }
29697
29841
  ]
29698
29842
  },
@@ -29701,7 +29845,7 @@
29701
29845
  "permittedRoles": false,
29702
29846
  "properties": false
29703
29847
  },
29704
- "omittion": false,
29848
+ "omission": false,
29705
29849
  "globalAttrs": {
29706
29850
  "#DocumentElementEventAttrs": true,
29707
29851
  "#GlobalEventAttrs": true,
@@ -29743,9 +29887,9 @@
29743
29887
  "contents": [
29744
29888
  {
29745
29889
  "zeroOrMore": [
29746
- "#SVGAnimation",
29747
- "#SVGDescriptive",
29748
- "#SVGPaintServer",
29890
+ ":model(SVGAnimation)",
29891
+ ":model(SVGDescriptive)",
29892
+ ":model(SVGPaintServer)",
29749
29893
  "svg|clipPath",
29750
29894
  "svg|marker",
29751
29895
  "svg|mask",
@@ -29760,7 +29904,7 @@
29760
29904
  "permittedRoles": false,
29761
29905
  "properties": false
29762
29906
  },
29763
- "omittion": false,
29907
+ "omission": false,
29764
29908
  "globalAttrs": {
29765
29909
  "#ARIAAttrs": true,
29766
29910
  "#DocumentElementEventAttrs": true,
@@ -29868,9 +30012,9 @@
29868
30012
  "contents": [
29869
30013
  {
29870
30014
  "zeroOrMore": [
29871
- "#SVGAnimation",
29872
- "#SVGDescriptive",
29873
- "#SVGShape",
30015
+ ":model(SVGAnimation)",
30016
+ ":model(SVGDescriptive)",
30017
+ ":model(SVGShape)",
29874
30018
  "svg|text",
29875
30019
  "svg|use",
29876
30020
  "svg|script"
@@ -29882,7 +30026,7 @@
29882
30026
  "implicitRole": false,
29883
30027
  "permittedRoles": false
29884
30028
  },
29885
- "omittion": false,
30029
+ "omission": false,
29886
30030
  "globalAttrs": {
29887
30031
  "#SVGConditionalProcessingAttrs": ["requiredFeatures", "requiredExtensions", "systemLanguage"],
29888
30032
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
@@ -29981,7 +30125,7 @@
29981
30125
  "permittedRoles": true,
29982
30126
  "implicitRole": false
29983
30127
  },
29984
- "omittion": false,
30128
+ "omission": false,
29985
30129
  "obsolete": true,
29986
30130
  "globalAttrs": {},
29987
30131
  "attributes": {}
@@ -29996,11 +30140,11 @@
29996
30140
  "contents": [
29997
30141
  {
29998
30142
  "zeroOrMore": [
29999
- "#SVGAnimation",
30000
- "#SVGDescriptive",
30001
- "#SVGPaintServer",
30002
- "#SVGShape",
30003
- "#SVGStructural",
30143
+ ":model(SVGAnimation)",
30144
+ ":model(SVGDescriptive)",
30145
+ ":model(SVGPaintServer)",
30146
+ ":model(SVGShape)",
30147
+ ":model(SVGStructural)",
30004
30148
  "svg|a",
30005
30149
  "svg|clipPath",
30006
30150
  "svg|filter",
@@ -30021,7 +30165,7 @@
30021
30165
  "implicitRole": false,
30022
30166
  "permittedRoles": false
30023
30167
  },
30024
- "omittion": false,
30168
+ "omission": false,
30025
30169
  "globalAttrs": {
30026
30170
  "#DocumentElementEventAttrs": true,
30027
30171
  "#GlobalEventAttrs": true,
@@ -30108,7 +30252,7 @@
30108
30252
  "contentModel": {
30109
30253
  "contents": [
30110
30254
  {
30111
- "require": ["#SVGOtherXMLNamespace", "#text"]
30255
+ "require": [":model(SVGDescriptive)", ":model(SVGNeverRendered)", "#text"]
30112
30256
  }
30113
30257
  ]
30114
30258
  },
@@ -30116,7 +30260,7 @@
30116
30260
  "implicitRole": false,
30117
30261
  "permittedRoles": false
30118
30262
  },
30119
- "omittion": false,
30263
+ "omission": false,
30120
30264
  "globalAttrs": {
30121
30265
  "#DocumentElementEventAttrs": true,
30122
30266
  "#GlobalEventAttrs": true,
@@ -30133,7 +30277,7 @@
30133
30277
  "contentModel": {
30134
30278
  "contents": [
30135
30279
  {
30136
- "require": ["#SVGDescriptive", "svg|script"]
30280
+ "require": [":model(SVGDescriptive)", "svg|script"]
30137
30281
  }
30138
30282
  ]
30139
30283
  },
@@ -30141,7 +30285,7 @@
30141
30285
  "implicitRole": false,
30142
30286
  "permittedRoles": false
30143
30287
  },
30144
- "omittion": false,
30288
+ "omission": false,
30145
30289
  "globalAttrs": {
30146
30290
  "#ARIAAttrs": true,
30147
30291
  "#SVGConditionalProcessingAttrs": ["requiredExtensions", "systemLanguage"],
@@ -30167,9 +30311,9 @@
30167
30311
  "contents": [
30168
30312
  {
30169
30313
  "zeroOrMore": [
30170
- "#SVGAnimation",
30171
- "#SVGDescriptive",
30172
- "#SVGPaintServer",
30314
+ ":model(SVGAnimation)",
30315
+ ":model(SVGDescriptive)",
30316
+ ":model(SVGPaintServer)",
30173
30317
  "svg|clipPath",
30174
30318
  "svg|marker",
30175
30319
  "svg|mask",
@@ -30186,7 +30330,7 @@
30186
30330
  "graphics-aam": true
30187
30331
  }
30188
30332
  },
30189
- "omittion": false,
30333
+ "omission": false,
30190
30334
  "globalAttrs": {
30191
30335
  "#ARIAAttrs": true,
30192
30336
  "#DocumentElementEventAttrs": true,
@@ -30297,7 +30441,7 @@
30297
30441
  "contentModel": {
30298
30442
  "contents": [
30299
30443
  {
30300
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
30444
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
30301
30445
  }
30302
30446
  ]
30303
30447
  },
@@ -30305,7 +30449,7 @@
30305
30449
  "implicitRole": false,
30306
30450
  "permittedRoles": false
30307
30451
  },
30308
- "omittion": false,
30452
+ "omission": false,
30309
30453
  "globalAttrs": {
30310
30454
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
30311
30455
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -30414,7 +30558,7 @@
30414
30558
  "contentModel": {
30415
30559
  "contents": [
30416
30560
  {
30417
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
30561
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
30418
30562
  }
30419
30563
  ]
30420
30564
  },
@@ -30422,7 +30566,7 @@
30422
30566
  "implicitRole": false,
30423
30567
  "permittedRoles": false
30424
30568
  },
30425
- "omittion": false,
30569
+ "omission": false,
30426
30570
  "globalAttrs": {
30427
30571
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
30428
30572
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -30521,7 +30665,7 @@
30521
30665
  "contents": [
30522
30666
  {
30523
30667
  "zeroOrMore": [
30524
- "#SVGDescriptive",
30668
+ ":model(SVGDescriptive)",
30525
30669
  "svg|feFuncA",
30526
30670
  "svg|feFuncR",
30527
30671
  "svg|feFuncB",
@@ -30535,7 +30679,7 @@
30535
30679
  "implicitRole": false,
30536
30680
  "permittedRoles": false
30537
30681
  },
30538
- "omittion": false,
30682
+ "omission": false,
30539
30683
  "globalAttrs": {
30540
30684
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
30541
30685
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -30621,7 +30765,7 @@
30621
30765
  "contentModel": {
30622
30766
  "contents": [
30623
30767
  {
30624
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
30768
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
30625
30769
  }
30626
30770
  ]
30627
30771
  },
@@ -30629,7 +30773,7 @@
30629
30773
  "implicitRole": false,
30630
30774
  "permittedRoles": false
30631
30775
  },
30632
- "omittion": false,
30776
+ "omission": false,
30633
30777
  "globalAttrs": {
30634
30778
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
30635
30779
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -30765,7 +30909,7 @@
30765
30909
  "contentModel": {
30766
30910
  "contents": [
30767
30911
  {
30768
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
30912
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
30769
30913
  }
30770
30914
  ]
30771
30915
  },
@@ -30773,7 +30917,7 @@
30773
30917
  "implicitRole": false,
30774
30918
  "permittedRoles": false
30775
30919
  },
30776
- "omittion": false,
30920
+ "omission": false,
30777
30921
  "globalAttrs": {
30778
30922
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
30779
30923
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -30907,21 +31051,21 @@
30907
31051
  "contentModel": {
30908
31052
  "contents": [
30909
31053
  {
30910
- "interleave": [
31054
+ "choice": [
30911
31055
  [
30912
31056
  {
30913
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
31057
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
30914
31058
  },
30915
31059
  {
30916
- "require": "#SVGLightSource"
31060
+ "require": ":model(SVGLightSource)"
30917
31061
  }
30918
31062
  ],
30919
31063
  [
30920
31064
  {
30921
- "require": "#SVGLightSource"
31065
+ "require": ":model(SVGLightSource)"
30922
31066
  },
30923
31067
  {
30924
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
31068
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
30925
31069
  }
30926
31070
  ]
30927
31071
  ]
@@ -30932,7 +31076,7 @@
30932
31076
  "implicitRole": false,
30933
31077
  "permittedRoles": false
30934
31078
  },
30935
- "omittion": false,
31079
+ "omission": false,
30936
31080
  "globalAttrs": {
30937
31081
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
30938
31082
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -31034,7 +31178,7 @@
31034
31178
  "contentModel": {
31035
31179
  "contents": [
31036
31180
  {
31037
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31181
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31038
31182
  }
31039
31183
  ]
31040
31184
  },
@@ -31042,7 +31186,7 @@
31042
31186
  "implicitRole": false,
31043
31187
  "permittedRoles": false
31044
31188
  },
31045
- "omittion": false,
31189
+ "omission": false,
31046
31190
  "globalAttrs": {
31047
31191
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
31048
31192
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result"],
@@ -31167,7 +31311,7 @@
31167
31311
  "contentModel": {
31168
31312
  "contents": [
31169
31313
  {
31170
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31314
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31171
31315
  }
31172
31316
  ]
31173
31317
  },
@@ -31175,7 +31319,7 @@
31175
31319
  "implicitRole": false,
31176
31320
  "permittedRoles": false
31177
31321
  },
31178
- "omittion": false,
31322
+ "omission": false,
31179
31323
  "globalAttrs": {
31180
31324
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"]
31181
31325
  },
@@ -31201,7 +31345,7 @@
31201
31345
  "contentModel": {
31202
31346
  "contents": [
31203
31347
  {
31204
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31348
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31205
31349
  }
31206
31350
  ]
31207
31351
  },
@@ -31209,7 +31353,7 @@
31209
31353
  "implicitRole": false,
31210
31354
  "permittedRoles": false
31211
31355
  },
31212
- "omittion": false,
31356
+ "omission": false,
31213
31357
  "globalAttrs": {
31214
31358
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
31215
31359
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -31311,7 +31455,7 @@
31311
31455
  "contentModel": {
31312
31456
  "contents": [
31313
31457
  {
31314
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31458
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31315
31459
  }
31316
31460
  ]
31317
31461
  },
@@ -31319,7 +31463,7 @@
31319
31463
  "implicitRole": false,
31320
31464
  "permittedRoles": false
31321
31465
  },
31322
- "omittion": false,
31466
+ "omission": false,
31323
31467
  "globalAttrs": {
31324
31468
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
31325
31469
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result"],
@@ -31414,7 +31558,7 @@
31414
31558
  "contentModel": {
31415
31559
  "contents": [
31416
31560
  {
31417
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31561
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31418
31562
  }
31419
31563
  ]
31420
31564
  },
@@ -31422,7 +31566,7 @@
31422
31566
  "implicitRole": false,
31423
31567
  "permittedRoles": false
31424
31568
  },
31425
- "omittion": false,
31569
+ "omission": false,
31426
31570
  "globalAttrs": {
31427
31571
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"],
31428
31572
  "#SVGTransferFunctionAttrs": [
@@ -31446,7 +31590,7 @@
31446
31590
  "contentModel": {
31447
31591
  "contents": [
31448
31592
  {
31449
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31593
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31450
31594
  }
31451
31595
  ]
31452
31596
  },
@@ -31454,7 +31598,7 @@
31454
31598
  "implicitRole": false,
31455
31599
  "permittedRoles": false
31456
31600
  },
31457
- "omittion": false,
31601
+ "omission": false,
31458
31602
  "globalAttrs": {
31459
31603
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"],
31460
31604
  "#SVGTransferFunctionAttrs": [
@@ -31478,7 +31622,7 @@
31478
31622
  "contentModel": {
31479
31623
  "contents": [
31480
31624
  {
31481
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31625
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31482
31626
  }
31483
31627
  ]
31484
31628
  },
@@ -31486,7 +31630,7 @@
31486
31630
  "implicitRole": false,
31487
31631
  "permittedRoles": false
31488
31632
  },
31489
- "omittion": false,
31633
+ "omission": false,
31490
31634
  "globalAttrs": {
31491
31635
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"],
31492
31636
  "#SVGTransferFunctionAttrs": [
@@ -31510,7 +31654,7 @@
31510
31654
  "contentModel": {
31511
31655
  "contents": [
31512
31656
  {
31513
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31657
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31514
31658
  }
31515
31659
  ]
31516
31660
  },
@@ -31518,7 +31662,7 @@
31518
31662
  "implicitRole": false,
31519
31663
  "permittedRoles": false
31520
31664
  },
31521
- "omittion": false,
31665
+ "omission": false,
31522
31666
  "globalAttrs": {
31523
31667
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"],
31524
31668
  "#SVGTransferFunctionAttrs": [
@@ -31542,7 +31686,7 @@
31542
31686
  "contentModel": {
31543
31687
  "contents": [
31544
31688
  {
31545
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
31689
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31546
31690
  }
31547
31691
  ]
31548
31692
  },
@@ -31550,7 +31694,7 @@
31550
31694
  "implicitRole": false,
31551
31695
  "permittedRoles": false
31552
31696
  },
31553
- "omittion": false,
31697
+ "omission": false,
31554
31698
  "globalAttrs": {
31555
31699
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
31556
31700
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -31650,7 +31794,7 @@
31650
31794
  "contents": [
31651
31795
  {
31652
31796
  "zeroOrMore": [
31653
- "#SVGDescriptive",
31797
+ ":model(SVGDescriptive)",
31654
31798
  "svg|animate",
31655
31799
  "svg|animateTransform",
31656
31800
  "svg|script",
@@ -31663,7 +31807,7 @@
31663
31807
  "implicitRole": false,
31664
31808
  "permittedRoles": false
31665
31809
  },
31666
- "omittion": false,
31810
+ "omission": false,
31667
31811
  "globalAttrs": {
31668
31812
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
31669
31813
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result"],
@@ -31777,7 +31921,7 @@
31777
31921
  "contentModel": {
31778
31922
  "contents": [
31779
31923
  {
31780
- "zeroOrMore": ["#SVGDescriptive", "svg|feMergeNode", "svg|script"]
31924
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|feMergeNode", "svg|script"]
31781
31925
  }
31782
31926
  ]
31783
31927
  },
@@ -31785,7 +31929,7 @@
31785
31929
  "implicitRole": false,
31786
31930
  "permittedRoles": false
31787
31931
  },
31788
- "omittion": false,
31932
+ "omission": false,
31789
31933
  "globalAttrs": {
31790
31934
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
31791
31935
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result"],
@@ -31871,7 +32015,7 @@
31871
32015
  "contentModel": {
31872
32016
  "contents": [
31873
32017
  {
31874
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
32018
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31875
32019
  }
31876
32020
  ]
31877
32021
  },
@@ -31879,7 +32023,7 @@
31879
32023
  "implicitRole": false,
31880
32024
  "permittedRoles": false
31881
32025
  },
31882
- "omittion": false,
32026
+ "omission": false,
31883
32027
  "globalAttrs": {
31884
32028
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"],
31885
32029
  "#SVGFilterPrimitiveAttrs": ["in"]
@@ -31895,7 +32039,7 @@
31895
32039
  "contentModel": {
31896
32040
  "contents": [
31897
32041
  {
31898
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
32042
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
31899
32043
  }
31900
32044
  ]
31901
32045
  },
@@ -31903,7 +32047,7 @@
31903
32047
  "implicitRole": false,
31904
32048
  "permittedRoles": false
31905
32049
  },
31906
- "omittion": false,
32050
+ "omission": false,
31907
32051
  "globalAttrs": {
31908
32052
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
31909
32053
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -32003,7 +32147,7 @@
32003
32147
  "contentModel": {
32004
32148
  "contents": [
32005
32149
  {
32006
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
32150
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
32007
32151
  }
32008
32152
  ]
32009
32153
  },
@@ -32011,7 +32155,7 @@
32011
32155
  "implicitRole": false,
32012
32156
  "permittedRoles": false
32013
32157
  },
32014
- "omittion": false,
32158
+ "omission": false,
32015
32159
  "globalAttrs": {
32016
32160
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
32017
32161
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -32108,7 +32252,7 @@
32108
32252
  "contentModel": {
32109
32253
  "contents": [
32110
32254
  {
32111
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
32255
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
32112
32256
  }
32113
32257
  ]
32114
32258
  },
@@ -32116,7 +32260,7 @@
32116
32260
  "implicitRole": false,
32117
32261
  "permittedRoles": false
32118
32262
  },
32119
- "omittion": false,
32263
+ "omission": false,
32120
32264
  "globalAttrs": {
32121
32265
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"]
32122
32266
  },
@@ -32147,21 +32291,21 @@
32147
32291
  "contentModel": {
32148
32292
  "contents": [
32149
32293
  {
32150
- "interleave": [
32294
+ "choice": [
32151
32295
  [
32152
32296
  {
32153
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
32297
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
32154
32298
  },
32155
32299
  {
32156
- "require": "#SVGLightSource"
32300
+ "require": ":model(SVGLightSource)"
32157
32301
  }
32158
32302
  ],
32159
32303
  [
32160
32304
  {
32161
- "require": "#SVGLightSource"
32305
+ "require": ":model(SVGLightSource)"
32162
32306
  },
32163
32307
  {
32164
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
32308
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
32165
32309
  }
32166
32310
  ]
32167
32311
  ]
@@ -32172,7 +32316,7 @@
32172
32316
  "implicitRole": false,
32173
32317
  "permittedRoles": false
32174
32318
  },
32175
- "omittion": false,
32319
+ "omission": false,
32176
32320
  "globalAttrs": {
32177
32321
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
32178
32322
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -32278,7 +32422,7 @@
32278
32422
  "contentModel": {
32279
32423
  "contents": [
32280
32424
  {
32281
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
32425
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
32282
32426
  }
32283
32427
  ]
32284
32428
  },
@@ -32286,7 +32430,7 @@
32286
32430
  "implicitRole": false,
32287
32431
  "permittedRoles": false
32288
32432
  },
32289
- "omittion": false,
32433
+ "omission": false,
32290
32434
  "globalAttrs": {
32291
32435
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space"]
32292
32436
  },
@@ -32341,7 +32485,7 @@
32341
32485
  "contentModel": {
32342
32486
  "contents": [
32343
32487
  {
32344
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
32488
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
32345
32489
  }
32346
32490
  ]
32347
32491
  },
@@ -32349,7 +32493,7 @@
32349
32493
  "implicitRole": false,
32350
32494
  "permittedRoles": false
32351
32495
  },
32352
- "omittion": false,
32496
+ "omission": false,
32353
32497
  "globalAttrs": {
32354
32498
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
32355
32499
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"],
@@ -32435,7 +32579,7 @@
32435
32579
  "contentModel": {
32436
32580
  "contents": [
32437
32581
  {
32438
- "zeroOrMore": ["#SVGDescriptive", "svg|animate", "svg|script", "svg|set"]
32582
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|animate", "svg|script", "svg|set"]
32439
32583
  }
32440
32584
  ]
32441
32585
  },
@@ -32443,7 +32587,7 @@
32443
32587
  "implicitRole": false,
32444
32588
  "permittedRoles": false
32445
32589
  },
32446
- "omittion": false,
32590
+ "omission": false,
32447
32591
  "globalAttrs": {
32448
32592
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
32449
32593
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result"],
@@ -32525,7 +32669,7 @@
32525
32669
  "animatable": true
32526
32670
  },
32527
32671
  "numOctaves": {
32528
- "type": "<positive-integer>",
32672
+ "type": "<integer>",
32529
32673
  "defaultValue": "1",
32530
32674
  "animatable": true
32531
32675
  },
@@ -32559,7 +32703,13 @@
32559
32703
  "contentModel": {
32560
32704
  "contents": [
32561
32705
  {
32562
- "zeroOrMore": ["#SVGDescriptive", "#SVGFilterPrimitive", "svg|animate", "svg|script", "svg|set"]
32706
+ "zeroOrMore": [
32707
+ ":model(SVGDescriptive)",
32708
+ "#SVGFilterPrimitive",
32709
+ "svg|animate",
32710
+ "svg|script",
32711
+ "svg|set"
32712
+ ]
32563
32713
  }
32564
32714
  ]
32565
32715
  },
@@ -32567,7 +32717,7 @@
32567
32717
  "implicitRole": false,
32568
32718
  "permittedRoles": false
32569
32719
  },
32570
- "omittion": false,
32720
+ "omission": false,
32571
32721
  "globalAttrs": {
32572
32722
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
32573
32723
  "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height"],
@@ -32697,7 +32847,7 @@
32697
32847
  "permittedRoles": true,
32698
32848
  "implicitRole": false
32699
32849
  },
32700
- "omittion": false,
32850
+ "omission": false,
32701
32851
  "obsolete": true,
32702
32852
  "globalAttrs": {},
32703
32853
  "attributes": {}
@@ -32715,7 +32865,7 @@
32715
32865
  "permittedRoles": true,
32716
32866
  "implicitRole": false
32717
32867
  },
32718
- "omittion": false,
32868
+ "omission": false,
32719
32869
  "obsolete": true,
32720
32870
  "globalAttrs": {},
32721
32871
  "attributes": {}
@@ -32733,7 +32883,7 @@
32733
32883
  "permittedRoles": true,
32734
32884
  "implicitRole": false
32735
32885
  },
32736
- "omittion": false,
32886
+ "omission": false,
32737
32887
  "obsolete": true,
32738
32888
  "globalAttrs": {},
32739
32889
  "attributes": {}
@@ -32751,7 +32901,7 @@
32751
32901
  "permittedRoles": true,
32752
32902
  "implicitRole": false
32753
32903
  },
32754
- "omittion": false,
32904
+ "omission": false,
32755
32905
  "obsolete": true,
32756
32906
  "globalAttrs": {},
32757
32907
  "attributes": {}
@@ -32769,7 +32919,7 @@
32769
32919
  "permittedRoles": true,
32770
32920
  "implicitRole": false
32771
32921
  },
32772
- "omittion": false,
32922
+ "omission": false,
32773
32923
  "obsolete": true,
32774
32924
  "globalAttrs": {},
32775
32925
  "attributes": {}
@@ -32787,7 +32937,7 @@
32787
32937
  "permittedRoles": true,
32788
32938
  "implicitRole": false
32789
32939
  },
32790
- "omittion": false,
32940
+ "omission": false,
32791
32941
  "obsolete": true,
32792
32942
  "globalAttrs": {},
32793
32943
  "attributes": {}
@@ -32808,7 +32958,7 @@
32808
32958
  "graphics-aam": true
32809
32959
  }
32810
32960
  },
32811
- "omittion": false,
32961
+ "omission": false,
32812
32962
  "globalAttrs": {
32813
32963
  "#ARIAAttrs": true,
32814
32964
  "#DocumentElementEventAttrs": true,
@@ -32916,11 +33066,11 @@
32916
33066
  "contents": [
32917
33067
  {
32918
33068
  "zeroOrMore": [
32919
- "#SVGAnimation",
32920
- "#SVGDescriptive",
32921
- "#SVGPaintServer",
32922
- "#SVGShape",
32923
- "#SVGStructural",
33069
+ ":model(SVGAnimation)",
33070
+ ":model(SVGDescriptive)",
33071
+ ":model(SVGPaintServer)",
33072
+ ":model(SVGShape)",
33073
+ ":model(SVGStructural)",
32924
33074
  "svg|a",
32925
33075
  "svg|clipPath",
32926
33076
  "svg|filter",
@@ -32944,7 +33094,7 @@
32944
33094
  "graphics-aam": true
32945
33095
  }
32946
33096
  },
32947
- "omittion": false,
33097
+ "omission": false,
32948
33098
  "globalAttrs": {
32949
33099
  "#ARIAAttrs": true,
32950
33100
  "#DocumentElementEventAttrs": true,
@@ -33038,7 +33188,7 @@
33038
33188
  "permittedRoles": true,
33039
33189
  "implicitRole": false
33040
33190
  },
33041
- "omittion": false,
33191
+ "omission": false,
33042
33192
  "obsolete": true,
33043
33193
  "globalAttrs": {},
33044
33194
  "attributes": {}
@@ -33056,7 +33206,7 @@
33056
33206
  "permittedRoles": true,
33057
33207
  "implicitRole": false
33058
33208
  },
33059
- "omittion": false,
33209
+ "omission": false,
33060
33210
  "obsolete": true,
33061
33211
  "globalAttrs": {},
33062
33212
  "attributes": {}
@@ -33074,7 +33224,7 @@
33074
33224
  "permittedRoles": true,
33075
33225
  "implicitRole": false
33076
33226
  },
33077
- "omittion": false,
33227
+ "omission": false,
33078
33228
  "obsolete": true,
33079
33229
  "globalAttrs": {},
33080
33230
  "attributes": {}
@@ -33089,8 +33239,8 @@
33089
33239
  "contents": [
33090
33240
  {
33091
33241
  "zeroOrMore": [
33092
- "#SVGAnimation",
33093
- "#SVGDescriptive",
33242
+ ":model(SVGAnimation)",
33243
+ ":model(SVGDescriptive)",
33094
33244
  "svg|clipPath",
33095
33245
  "svg|mask",
33096
33246
  "svg|script",
@@ -33106,7 +33256,7 @@
33106
33256
  "graphics-aam": true
33107
33257
  }
33108
33258
  },
33109
- "omittion": false,
33259
+ "omission": false,
33110
33260
  "globalAttrs": {
33111
33261
  "#ARIAAttrs": true,
33112
33262
  "#DocumentElementEventAttrs": true,
@@ -33218,9 +33368,9 @@
33218
33368
  "contents": [
33219
33369
  {
33220
33370
  "zeroOrMore": [
33221
- "#SVGAnimation",
33222
- "#SVGDescriptive",
33223
- "#SVGPaintServer",
33371
+ ":model(SVGAnimation)",
33372
+ ":model(SVGDescriptive)",
33373
+ ":model(SVGPaintServer)",
33224
33374
  "svg|clipPath",
33225
33375
  "svg|marker",
33226
33376
  "svg|mask",
@@ -33237,7 +33387,7 @@
33237
33387
  "graphics-aam": true
33238
33388
  }
33239
33389
  },
33240
- "omittion": false,
33390
+ "omission": false,
33241
33391
  "globalAttrs": {
33242
33392
  "#ARIAAttrs": true,
33243
33393
  "#DocumentElementEventAttrs": true,
@@ -33353,7 +33503,7 @@
33353
33503
  "contents": [
33354
33504
  {
33355
33505
  "zeroOrMore": [
33356
- "#SVGDescriptive",
33506
+ ":model(SVGDescriptive)",
33357
33507
  "svg|animate",
33358
33508
  "svg|animateTransform",
33359
33509
  "svg|script",
@@ -33368,7 +33518,7 @@
33368
33518
  "implicitRole": false,
33369
33519
  "permittedRoles": false
33370
33520
  },
33371
- "omittion": false,
33521
+ "omission": false,
33372
33522
  "globalAttrs": {
33373
33523
  "#DocumentElementEventAttrs": true,
33374
33524
  "#GlobalEventAttrs": true,
@@ -33504,11 +33654,11 @@
33504
33654
  "contents": [
33505
33655
  {
33506
33656
  "zeroOrMore": [
33507
- "#SVGAnimation",
33508
- "#SVGDescriptive",
33509
- "#SVGPaintServer",
33510
- "#SVGShape",
33511
- "#SVGStructural",
33657
+ ":model(SVGAnimation)",
33658
+ ":model(SVGDescriptive)",
33659
+ ":model(SVGPaintServer)",
33660
+ ":model(SVGShape)",
33661
+ ":model(SVGStructural)",
33512
33662
  "svg|a",
33513
33663
  "svg|clipPath",
33514
33664
  "svg|filter",
@@ -33529,7 +33679,7 @@
33529
33679
  "implicitRole": false,
33530
33680
  "permittedRoles": false
33531
33681
  },
33532
- "omittion": false,
33682
+ "omission": false,
33533
33683
  "globalAttrs": {
33534
33684
  "#DocumentElementEventAttrs": true,
33535
33685
  "#GlobalEventAttrs": true,
@@ -33680,11 +33830,11 @@
33680
33830
  "contents": [
33681
33831
  {
33682
33832
  "zeroOrMore": [
33683
- "#SVGAnimation",
33684
- "#SVGDescriptive",
33685
- "#SVGShape",
33686
- "#SVGStructural",
33687
- "#SVGGradient",
33833
+ ":model(SVGAnimation)",
33834
+ ":model(SVGDescriptive)",
33835
+ ":model(SVGShape)",
33836
+ ":model(SVGStructural)",
33837
+ ":model(SVGGradient)",
33688
33838
  "svg|a",
33689
33839
  "svg|altGlyphDef",
33690
33840
  "svg|clipPath",
@@ -33711,7 +33861,7 @@
33711
33861
  "implicitRole": false,
33712
33862
  "permittedRoles": false
33713
33863
  },
33714
- "omittion": false,
33864
+ "omission": false,
33715
33865
  "globalAttrs": {
33716
33866
  "#SVGConditionalProcessingAttrs": ["requiredFeatures", "requiredExtensions", "systemLanguage"],
33717
33867
  "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
@@ -33819,7 +33969,7 @@
33819
33969
  "contentModel": {
33820
33970
  "contents": [
33821
33971
  {
33822
- "zeroOrMore": ["#SVGOtherXMLNamespace", "#text"]
33972
+ "zeroOrMore": [":model(SVGDescriptive)", ":model(SVGNeverRendered)", "#text"]
33823
33973
  }
33824
33974
  ]
33825
33975
  },
@@ -33827,7 +33977,7 @@
33827
33977
  "implicitRole": false,
33828
33978
  "permittedRoles": false
33829
33979
  },
33830
- "omittion": false,
33980
+ "omission": false,
33831
33981
  "globalAttrs": {
33832
33982
  "#DocumentElementEventAttrs": true,
33833
33983
  "#GlobalEventAttrs": true,
@@ -33848,7 +33998,7 @@
33848
33998
  "permittedRoles": true,
33849
33999
  "implicitRole": false
33850
34000
  },
33851
- "omittion": false,
34001
+ "omission": false,
33852
34002
  "obsolete": true,
33853
34003
  "globalAttrs": {},
33854
34004
  "attributes": {}
@@ -33862,7 +34012,7 @@
33862
34012
  "contentModel": {
33863
34013
  "contents": [
33864
34014
  {
33865
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
34015
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
33866
34016
  }
33867
34017
  ]
33868
34018
  },
@@ -33870,7 +34020,7 @@
33870
34020
  "implicitRole": false,
33871
34021
  "permittedRoles": false
33872
34022
  },
33873
- "omittion": false,
34023
+ "omission": false,
33874
34024
  "globalAttrs": {
33875
34025
  "#DocumentElementEventAttrs": true,
33876
34026
  "#GlobalEventAttrs": true,
@@ -33892,9 +34042,9 @@
33892
34042
  "contents": [
33893
34043
  {
33894
34044
  "zeroOrMore": [
33895
- "#SVGAnimation",
33896
- "#SVGDescriptive",
33897
- "#SVGPaintServer",
34045
+ ":model(SVGAnimation)",
34046
+ ":model(SVGDescriptive)",
34047
+ ":model(SVGPaintServer)",
33898
34048
  "svg|clipPath",
33899
34049
  "svg|marker",
33900
34050
  "svg|mask",
@@ -33911,7 +34061,7 @@
33911
34061
  "graphics-aam": true
33912
34062
  }
33913
34063
  },
33914
- "omittion": false,
34064
+ "omission": false,
33915
34065
  "globalAttrs": {
33916
34066
  "#ARIAAttrs": true,
33917
34067
  "#DocumentElementEventAttrs": true,
@@ -34012,11 +34162,11 @@
34012
34162
  "contents": [
34013
34163
  {
34014
34164
  "zeroOrMore": [
34015
- "#SVGAnimation",
34016
- "#SVGDescriptive",
34017
- "#SVGPaintServer",
34018
- "#SVGShape",
34019
- "#SVGStructural",
34165
+ ":model(SVGAnimation)",
34166
+ ":model(SVGDescriptive)",
34167
+ ":model(SVGPaintServer)",
34168
+ ":model(SVGShape)",
34169
+ ":model(SVGStructural)",
34020
34170
  "svg|a",
34021
34171
  "svg|clipPath",
34022
34172
  "svg|filter",
@@ -34037,7 +34187,7 @@
34037
34187
  "implicitRole": false,
34038
34188
  "permittedRoles": false
34039
34189
  },
34040
- "omittion": false,
34190
+ "omission": false,
34041
34191
  "globalAttrs": {
34042
34192
  "#DocumentElementEventAttrs": true,
34043
34193
  "#GlobalEventAttrs": true,
@@ -34157,7 +34307,7 @@
34157
34307
  "description": "This attribute determines the x coordinate shift of the pattern tile. Value type: <length>|<percentage> ; Default value: 0; Animatable: yes"
34158
34308
  },
34159
34309
  "xlink:href": {
34160
- "description": "This attribute reference a template pattern that provides default values for the <pattern> attributes. Value type: <URL>; Default value: none; Animatable: yes Note: For browsers implementing href, if both href and xlink:href are set, xlink:href will be ignored and only href will be used.",
34310
+ "description": "This attribute references a template pattern that provides default values for the <pattern> attributes. Value type: <URL>; Default value: none; Animatable: yes Note: For browsers implementing href, if both href and xlink:href are set, xlink:href will be ignored and only href will be used.",
34161
34311
  "deprecated": true
34162
34312
  },
34163
34313
  "y": {
@@ -34175,9 +34325,9 @@
34175
34325
  "contents": [
34176
34326
  {
34177
34327
  "zeroOrMore": [
34178
- "#SVGAnimation",
34179
- "#SVGDescriptive",
34180
- "#SVGPaintServer",
34328
+ ":model(SVGAnimation)",
34329
+ ":model(SVGDescriptive)",
34330
+ ":model(SVGPaintServer)",
34181
34331
  "svg|clipPath",
34182
34332
  "svg|marker",
34183
34333
  "svg|mask",
@@ -34194,7 +34344,7 @@
34194
34344
  "graphics-aam": true
34195
34345
  }
34196
34346
  },
34197
- "omittion": false,
34347
+ "omission": false,
34198
34348
  "globalAttrs": {
34199
34349
  "#ARIAAttrs": true,
34200
34350
  "#DocumentElementEventAttrs": true,
@@ -34294,9 +34444,9 @@
34294
34444
  "contents": [
34295
34445
  {
34296
34446
  "zeroOrMore": [
34297
- "#SVGAnimation",
34298
- "#SVGDescriptive",
34299
- "#SVGPaintServer",
34447
+ ":model(SVGAnimation)",
34448
+ ":model(SVGDescriptive)",
34449
+ ":model(SVGPaintServer)",
34300
34450
  "svg|clipPath",
34301
34451
  "svg|marker",
34302
34452
  "svg|mask",
@@ -34313,7 +34463,7 @@
34313
34463
  "graphics-aam": true
34314
34464
  }
34315
34465
  },
34316
- "omittion": false,
34466
+ "omission": false,
34317
34467
  "globalAttrs": {
34318
34468
  "#ARIAAttrs": true,
34319
34469
  "#DocumentElementEventAttrs": true,
@@ -34413,7 +34563,7 @@
34413
34563
  "contents": [
34414
34564
  {
34415
34565
  "zeroOrMore": [
34416
- "#SVGDescriptive",
34566
+ ":model(SVGDescriptive)",
34417
34567
  "svg|animate",
34418
34568
  "svg|animateTransform",
34419
34569
  "svg|script",
@@ -34428,7 +34578,7 @@
34428
34578
  "implicitRole": false,
34429
34579
  "permittedRoles": false
34430
34580
  },
34431
- "omittion": false,
34581
+ "omission": false,
34432
34582
  "globalAttrs": {
34433
34583
  "#DocumentElementEventAttrs": true,
34434
34584
  "#GlobalEventAttrs": true,
@@ -34572,9 +34722,9 @@
34572
34722
  "contents": [
34573
34723
  {
34574
34724
  "zeroOrMore": [
34575
- "#SVGAnimation",
34576
- "#SVGDescriptive",
34577
- "#SVGPaintServer",
34725
+ ":model(SVGAnimation)",
34726
+ ":model(SVGDescriptive)",
34727
+ ":model(SVGPaintServer)",
34578
34728
  "svg|clipPath",
34579
34729
  "svg|marker",
34580
34730
  "svg|mask",
@@ -34591,7 +34741,7 @@
34591
34741
  "graphics-aam": true
34592
34742
  }
34593
34743
  },
34594
- "omittion": false,
34744
+ "omission": false,
34595
34745
  "globalAttrs": {
34596
34746
  "#ARIAAttrs": true,
34597
34747
  "#DocumentElementEventAttrs": true,
@@ -34710,7 +34860,7 @@
34710
34860
  "contentModel": {
34711
34861
  "contents": [
34712
34862
  {
34713
- "zeroOrMore": ["#SVGOtherXMLNamespace", "#text"]
34863
+ "zeroOrMore": [":model(SVGNeverRendered)", ":model(SVGStructurallyExternal)", "#text"]
34714
34864
  }
34715
34865
  ]
34716
34866
  },
@@ -34718,7 +34868,7 @@
34718
34868
  "implicitRole": false,
34719
34869
  "permittedRoles": false
34720
34870
  },
34721
- "omittion": false,
34871
+ "omission": false,
34722
34872
  "globalAttrs": {
34723
34873
  "#DocumentElementEventAttrs": true,
34724
34874
  "#GlobalEventAttrs": true,
@@ -34755,7 +34905,7 @@
34755
34905
  "contentModel": {
34756
34906
  "contents": [
34757
34907
  {
34758
- "zeroOrMore": ["#SVGDescriptive", "svg|script"]
34908
+ "zeroOrMore": [":model(SVGDescriptive)", "svg|script"]
34759
34909
  }
34760
34910
  ]
34761
34911
  },
@@ -34763,7 +34913,7 @@
34763
34913
  "implicitRole": false,
34764
34914
  "permittedRoles": false
34765
34915
  },
34766
- "omittion": false,
34916
+ "omission": false,
34767
34917
  "globalAttrs": {
34768
34918
  "#DocumentElementEventAttrs": true,
34769
34919
  "#GlobalEventAttrs": true,
@@ -34807,7 +34957,7 @@
34807
34957
  "implicitRole": false,
34808
34958
  "permittedRoles": false
34809
34959
  },
34810
- "omittion": false,
34960
+ "omission": false,
34811
34961
  "globalAttrs": {
34812
34962
  "#DocumentElementEventAttrs": true,
34813
34963
  "#GlobalEventAttrs": true,
@@ -34918,7 +35068,7 @@
34918
35068
  "implicitRole": false,
34919
35069
  "permittedRoles": false
34920
35070
  },
34921
- "omittion": false,
35071
+ "omission": false,
34922
35072
  "globalAttrs": {
34923
35073
  "#DocumentElementEventAttrs": true,
34924
35074
  "#GlobalEventAttrs": true,
@@ -34948,11 +35098,11 @@
34948
35098
  "contents": [
34949
35099
  {
34950
35100
  "zeroOrMore": [
34951
- "#SVGAnimation",
34952
- "#SVGDescriptive",
34953
- "#SVGPaintServer",
34954
- "#SVGShape",
34955
- "#SVGStructural",
35101
+ ":model(SVGAnimation)",
35102
+ ":model(SVGDescriptive)",
35103
+ ":model(SVGPaintServer)",
35104
+ ":model(SVGShape)",
35105
+ ":model(SVGStructural)",
34956
35106
  "svg|a",
34957
35107
  "svg|clipPath",
34958
35108
  "svg|filter",
@@ -34976,7 +35126,7 @@
34976
35126
  "graphics-aam": true
34977
35127
  }
34978
35128
  },
34979
- "omittion": false,
35129
+ "omission": false,
34980
35130
  "globalAttrs": {
34981
35131
  "#ARIAAttrs": true,
34982
35132
  "#DocumentElementEventAttrs": true,
@@ -35114,8 +35264,8 @@
35114
35264
  "contents": [
35115
35265
  {
35116
35266
  "zeroOrMore": [
35117
- "#SVGAnimation",
35118
- "#SVGShape",
35267
+ ":model(SVGAnimation)",
35268
+ ":model(SVGShape)",
35119
35269
  "svg|a",
35120
35270
  "svg|foreignObject",
35121
35271
  "svg|g",
@@ -35132,7 +35282,7 @@
35132
35282
  "implicitRole": false,
35133
35283
  "permittedRoles": false
35134
35284
  },
35135
- "omittion": false,
35285
+ "omission": false,
35136
35286
  "globalAttrs": {
35137
35287
  "#ARIAAttrs": true,
35138
35288
  "#DocumentElementEventAttrs": true,
@@ -35223,11 +35373,11 @@
35223
35373
  "contents": [
35224
35374
  {
35225
35375
  "zeroOrMore": [
35226
- "#SVGAnimation",
35227
- "#SVGDescriptive",
35228
- "#SVGPaintServer",
35229
- "#SVGShape",
35230
- "#SVGStructural",
35376
+ ":model(SVGAnimation)",
35377
+ ":model(SVGDescriptive)",
35378
+ ":model(SVGPaintServer)",
35379
+ ":model(SVGShape)",
35380
+ ":model(SVGStructural)",
35231
35381
  "svg|a",
35232
35382
  "svg|clipPath",
35233
35383
  "svg|filter",
@@ -35251,7 +35401,7 @@
35251
35401
  "graphics-aam": true
35252
35402
  }
35253
35403
  },
35254
- "omittion": false,
35404
+ "omission": false,
35255
35405
  "globalAttrs": {
35256
35406
  "#ARIAAttrs": true,
35257
35407
  "#DocumentElementEventAttrs": true,
@@ -35313,10 +35463,10 @@
35313
35463
  {
35314
35464
  "zeroOrMore": [
35315
35465
  "#text",
35316
- "#SVGAnimation",
35317
- "#SVGDescriptive",
35318
- "#SVGPaintServer",
35319
- "#SVGTextContentChild",
35466
+ ":model(SVGAnimation)",
35467
+ ":model(SVGDescriptive)",
35468
+ ":model(SVGPaintServer)",
35469
+ ":model(SVGTextContentChild)",
35320
35470
  "svg|a",
35321
35471
  "svg|clipPath",
35322
35472
  "svg|marker",
@@ -35334,7 +35484,7 @@
35334
35484
  "graphics-aam": true
35335
35485
  }
35336
35486
  },
35337
- "omittion": false,
35487
+ "omission": false,
35338
35488
  "globalAttrs": {
35339
35489
  "#ARIAAttrs": true,
35340
35490
  "#DocumentElementEventAttrs": true,
@@ -35461,8 +35611,8 @@
35461
35611
  {
35462
35612
  "zeroOrMore": [
35463
35613
  "#text",
35464
- "#SVGDescriptive",
35465
- "#SVGPaintServer",
35614
+ ":model(SVGDescriptive)",
35615
+ ":model(SVGPaintServer)",
35466
35616
  "svg|a",
35467
35617
  "svg|animate",
35468
35618
  "svg|clipPath",
@@ -35483,7 +35633,7 @@
35483
35633
  "graphics-aam": true
35484
35634
  }
35485
35635
  },
35486
- "omittion": false,
35636
+ "omission": false,
35487
35637
  "globalAttrs": {
35488
35638
  "#ARIAAttrs": true,
35489
35639
  "#DocumentElementEventAttrs": true,
@@ -35623,7 +35773,7 @@
35623
35773
  "contentModel": {
35624
35774
  "contents": [
35625
35775
  {
35626
- "zeroOrMore": ["#SVGOtherXMLNamespace", "#text"]
35776
+ "zeroOrMore": [":model(SVGDescriptive)", ":model(SVGNeverRendered)", "#text"]
35627
35777
  }
35628
35778
  ]
35629
35779
  },
@@ -35631,7 +35781,7 @@
35631
35781
  "implicitRole": false,
35632
35782
  "permittedRoles": false
35633
35783
  },
35634
- "omittion": false,
35784
+ "omission": false,
35635
35785
  "globalAttrs": {
35636
35786
  "#DocumentElementEventAttrs": true,
35637
35787
  "#GlobalEventAttrs": true,
@@ -35652,7 +35802,7 @@
35652
35802
  "permittedRoles": true,
35653
35803
  "implicitRole": false
35654
35804
  },
35655
- "omittion": false,
35805
+ "omission": false,
35656
35806
  "obsolete": true,
35657
35807
  "globalAttrs": {},
35658
35808
  "attributes": {}
@@ -35667,8 +35817,8 @@
35667
35817
  "contents": [
35668
35818
  {
35669
35819
  "zeroOrMore": [
35670
- "#SVGDescriptive",
35671
- "#SVGPaintServer",
35820
+ ":model(SVGDescriptive)",
35821
+ ":model(SVGPaintServer)",
35672
35822
  "svg|a",
35673
35823
  "svg|animate",
35674
35824
  "svg|script",
@@ -35686,7 +35836,7 @@
35686
35836
  "graphics-aam": true
35687
35837
  }
35688
35838
  },
35689
- "omittion": false,
35839
+ "omission": false,
35690
35840
  "globalAttrs": {
35691
35841
  "#ARIAAttrs": true,
35692
35842
  "#DocumentElementEventAttrs": true,
@@ -35810,8 +35960,8 @@
35810
35960
  "contents": [
35811
35961
  {
35812
35962
  "zeroOrMore": [
35813
- "#SVGAnimation",
35814
- "#SVGDescriptive",
35963
+ ":model(SVGAnimation)",
35964
+ ":model(SVGDescriptive)",
35815
35965
  "svg|clipPath",
35816
35966
  "svg|mask",
35817
35967
  "svg|script",
@@ -35827,7 +35977,7 @@
35827
35977
  "graphics-aam": true
35828
35978
  }
35829
35979
  },
35830
- "omittion": false,
35980
+ "omission": false,
35831
35981
  "globalAttrs": {
35832
35982
  "#ARIAAttrs": true,
35833
35983
  "#DocumentElementEventAttrs": true,
@@ -35941,7 +36091,7 @@
35941
36091
  "contentModel": {
35942
36092
  "contents": [
35943
36093
  {
35944
- "zeroOrMore": ["#SVGAnimation", "#SVGDescriptive", "svg|script", "svg|style"]
36094
+ "zeroOrMore": [":model(SVGAnimation)", ":model(SVGDescriptive)", "svg|script", "svg|style"]
35945
36095
  }
35946
36096
  ]
35947
36097
  },
@@ -35949,7 +36099,7 @@
35949
36099
  "implicitRole": false,
35950
36100
  "permittedRoles": false
35951
36101
  },
35952
- "omittion": false,
36102
+ "omission": false,
35953
36103
  "globalAttrs": {
35954
36104
  "#ARIAAttrs": true,
35955
36105
  "#DocumentElementEventAttrs": true,
@@ -35990,7 +36140,7 @@
35990
36140
  "permittedRoles": true,
35991
36141
  "implicitRole": false
35992
36142
  },
35993
- "omittion": false,
36143
+ "omission": false,
35994
36144
  "obsolete": true,
35995
36145
  "globalAttrs": {},
35996
36146
  "attributes": {}