package tyxml

  1. Overview
  2. Docs

HTML types with variants, goes with Html_sigs.T.

Attribute types.

type cdata = string

Character data

type id = string

A document-unique identifier

type idref = string

A reference to a document-unique identifier

type idrefs = idref list

A space-separated list of references to document-unique identifiers

type name = string

A name with the same character constraints as ID above

type nmtoken = string

A name composed of only name tokens as defined in XML 1.0

type nmtokens = nmtoken list

One or more white space separated NMTOKEN values

Data Types

type character = char

A single character from ISO 10646.

type charset = string

A character encoding, as per RFC2045 (MIME).

type charsets = charset list

A space-separated list of character encodings, as per RFC2045 (MIME).

type contenttype = string

A media type, as per RFC2045 (MIME).

type contenttypes = contenttype list

A comma-separated list of media types, as per RFC2045 (MIME).

type number = int
type numbers = number list
type coords = string list

Comma- separated list of coordinates to use in defining areas.

type datetime = string

Date and time information.

type number_or_datetime = [
  1. | `Number of number
  2. | `Datetime of datetime
]

Either a number or date and time information.

type fpi = string

A character string representing an SGML Formal Public Identifier.

type frametarget = string

Frame name used as destination for results of certain actions.

type languagecode = string

A language code, as per RFC5646/BCP47.

type linktype = [
  1. | `Alternate
  2. | `Archives
  3. | `Author
  4. | `Bookmark
  5. | `Canonical
  6. | `Dns_prefetch
  7. | `External
  8. | `First
  9. | `Help
  10. | `Icon
  11. | `Index
  12. | `Last
  13. | `License
  14. | `Manifest
  15. | `Me
  16. | `Modulepreload
  17. | `Next
  18. | `Nofollow
  19. | `Noopener
  20. | `Noreferrer
  21. | `Opener
  22. | `Pingback
  23. | `Preconnect
  24. | `Prefetch
  25. | `Prev
  26. | `Preload
  27. | `Prerender
  28. | `Search
  29. | `Stylesheet
  30. | `Sidebar
  31. | `Tag
  32. | `Up
  33. | `Other of string
]
type linktypes = linktype list

Authors may use the following recognized link types, listed here with their conventional interpretations. A LinkTypes value refers to a space-separated list of link types. White space characters are not permitted within link types. These link types are case-insensitive, i.e., "Alternate" has the same meaning as "alternate".

User agents, search engines, etc. may interpret these link types in a variety of ways. For example, user agents may provide access to linked documents through a navigation bar.

  • `Alternate: Gives alternate representations of the current document.
  • `Archives: Provides a link to a collection of records, documents, or other materials of historical interest.
  • `Author: Gives a link to the current document's author.
  • `Bookmark: Gives the permalink for the nearest ancestor section.
  • `Canonical: Gives the preferred location for accessing the current document.
  • `Dns_prefetch: Specifies that the user agent should preemptively perform DNS resolution for the target resource's origin..
  • `External: Indicates that the referenced document is not part of the same site as the current document.
  • `First: Indicates that the current document is a part of a series, and that the first document in the series is the referenced document.
  • `Help: Provides a link to context-sensitive help.
  • `Icon: Imports an icon to represent the current document.
  • `Index: Gives a link to the document that provides a table of contents or index listing the current document.
  • `Last: Indicates that the current document is a part of a series, and that the last document in the series is the referenced document.
  • `Licence: Indicates that the main content of the current document is covered by the copyright license described by the referenced document.
  • `Manifest: Imports or links to an application manifest.
  • `Me: Indicates that the current document represents the person who owns the linked content.
  • `Modulepreload: Specifies that the user agent must preemptively fetch the module script and store it in the document's module map for later evaluation. Optionally, the module's dependencies can be fetched as well.
  • `Next: Indicates that the current document is a part of a series, and that the next document in the series is the referenced document.
  • `Nofollow: Indicates that the current document's original author or publisher does not endorse the referenced document.
  • `Noopener: Instructs the browser to open the link without granting the new browsing context access to the document that opened it.
  • `Noreferrer: Requires that the user agent not send an HTTP Referer (sic) header if the user follows the hyperlink.
  • `Opener: Creates an auxiliary browsing context if the hyperlink would otherwise create a top-level traversable with a non-auxiliary browsing context (i.e., has "_blank" as target attribute value).
  • `Pingback: Gives the address of the pingback server that handles pingbacks to the current document.
  • `Preconnect: Specifies that the user agent should preemptively connect to the target resource's origin.
  • `Prefetch: Specifies that the target resource should be preemptively cached.
  • `Preload: Specifies that the user agent must preemptively fetch and cache the target resource for current navigation according to the potential destination given by the as attribute (and the priority associated with the corresponding destination).
  • `Prerender: Specifies that the user agent should preemptively fetch the target resource and process it in a way that helps deliver a faster response in the future.
  • `Prev: Indicates that the current document is a part of a series, and that the previous document in the series is the referenced document.
  • `Search: Gives a link to a resource that can be used to search through the current document and its related pages.
  • `Stylesheet: Imports a stylesheet.
  • `Sidebar: Specifies that the referenced document, if retrieved, is intended to be shown in the browser's sidebar (if it has one).
  • `Tag: Gives a tag (identified by the given address) that applies to the current document.
  • `Up: Provides a link to a document giving the context for the current document.
type mediadesc_token = [
  1. | `All
  2. | `Aural
  3. | `Braille
  4. | `Embossed
  5. | `Handheld
  6. | `Print
  7. | `Projection
  8. | `Screen
  9. | `Speech
  10. | `Tty
  11. | `Tv
  12. | `Raw_mediadesc of string
]
type mediadesc = mediadesc_token list

The MediaDesc attribute is a comma-separated list of media descriptors. The following is a list of recognized media descriptors:

  • `Screen: For non-paged computer screens.
  • `TTY: For media using a fixed-pitch character grid (like teletypes, terminals, or devices with limited display capabilities).
  • `TV: For TV-type devices (low resolution, limited scrollability).
  • `Projection: For projectors.
  • `Handheld: For handheld devices (small screen, limited bandwidth).
  • `Print: For paged and for documents viewed on screen in print preview mode.
  • `Braille: For braille tactile feedback devices.
  • `Aural: For speech synthesizers.
  • `All: For speech synthesizers.
  • `Raw_mediadesc: For more complex (untyped) media descriptors.
type float_number = float
type pixels = int

The value is an integer that represents the number of pixels of the canvas (screen, paper). Thus, the value "50" means fifty pixels. For normative information about the definition of a pixel, please consult CSS2.

type script_ = string

Script data can be the content of the "script" element and the value of intrinsic event attributes. User agents must not evaluate script data as HTML markup but instead must pass it on as data to a script engine.

The case-sensitivity of script data depends on the scripting language.

Please note that script data that is element content may not contain character references, but script data that is the value of an attribute may contain them.

type text = string

Arbitrary textual data, likely meant to be human-readable.

Core

type i18n = [
  1. | `XML_lang
  2. | `Lang
]
type core = [
  1. | `Accesskey
  2. | `Class
  3. | `Contenteditable
  4. | `Contextmenu
  5. | `Dir
  6. | `Draggable
  7. | `Hidden
  8. | `Id
  9. | i18n
  10. | `Spellcheck
  11. | `Style_Attr
  12. | `Tabindex
  13. | `Translate
  14. | `Title
  15. | `User_data
  16. | `XMLns
]

Events

type events = [
  1. | `OnAbort
  2. | `OnBlur
  3. | `OnCanPlay
  4. | `OnCanPlayThrough
  5. | `OnChange
  6. | `OnClick
  7. | `OnClose
  8. | `OnContextMenu
  9. | `OnDblClick
  10. | `OnDrag
  11. | `OnDragEnd
  12. | `OnDragEnter
  13. | `OnDragLeave
  14. | `OnDragOver
  15. | `OnDragStart
  16. | `OnDrop
  17. | `OnDurationChange
  18. | `OnEmptied
  19. | `OnEnded
  20. | `OnError
  21. | `OnFocus
  22. | `OnFormChange
  23. | `OnFormInput
  24. | `OnInput
  25. | `OnInvalid
  26. | `OnMouseDown
  27. | `OnMouseUp
  28. | `OnMouseOver
  29. | `OnMouseMove
  30. | `OnMouseOut
  31. | `OnMouseWheel
  32. | `OnPause
  33. | `OnPlay
  34. | `OnPlaying
  35. | `OnProgress
  36. | `OnRateChange
  37. | `OnReadyStateChange
  38. | `OnScroll
  39. | `OnSeeked
  40. | `OnSeeking
  41. | `OnSelect
  42. | `OnShow
  43. | `OnStalled
  44. | `OnSubmit
  45. | `OnSuspend
  46. | `OnTimeUpdate
  47. | `OnTouchStart
  48. | `OnTouchEnd
  49. | `OnTouchMove
  50. | `OnTouchCancel
  51. | `OnVolumeChange
  52. | `OnWaiting
  53. | `OnKeyPress
  54. | `OnKeyDown
  55. | `OnKeyUp
  56. | `OnLoad
  57. | `OnLoadedData
  58. | `OnLoadedMetaData
  59. | `OnLoadStart
]

Javascript events

ARIA

type aria = [
  1. | `Role
  2. | `Aria
]
type common = [
  1. | core
  2. | i18n
  3. | events
  4. | aria
]

Common attributes

Categories of HTML elements

These category are mainly subdivised in

  • interactive,
  • phrasing,
  • flow5, these categories may overlap
type heading = [
  1. | `H1
  2. | `H2
  3. | `H3
  4. | `H4
  5. | `H5
  6. | `H6
  7. | `Hgroup
]
type sectioning = [
  1. | `Section
  2. | `Nav
  3. | `Aside
  4. | `Article
]
type resetable = [
  1. | `Textarea
  2. | `Select
  3. | `Output
  4. | `Keygen
  5. | `Input
]
type submitable = [
  1. | `Textarea
  2. | `Select
  3. | `Keygen
  4. | `Input
  5. | `Button
]
type labelable = [
  1. | resetable
  2. | `Progress
  3. | `Meter
  4. | `Button
]
type labelable_without_interactive = [
  1. | `Progress
  2. | `Meter
]
type formatblock = [
  1. | heading
  2. | sectioning
  3. | `Pre
  4. | `P
  5. | `Header
  6. | `Footer
  7. | `Div
  8. | `Blockquote
  9. | `Address
]
type sectionningroot = [
  1. | `Td
  2. | `Figure
  3. | `Fieldset
  4. | `Details
  5. | `Body
  6. | `Blockquote
  7. | `Dialog
]
type listed = [
  1. | resetable
  2. | submitable
  3. | `Fieldset
]
type formassociated = [
  1. | listed
  2. | `Progress
  3. | `Meter
  4. | `Label
]
type subressource_integrity = [
  1. | `Crossorigin
  2. | `Integrity
]
type (+'interactive, +'noscript, +'regular, +'media) transparent = [
  1. | `A of 'interactive
  2. | `Noscript of 'noscript
  3. | `Canvas of 'regular
  4. | `Map of 'regular
  5. | `Ins of 'regular
  6. | `Del of 'regular
  7. | `Object of 'regular
  8. | `Object_interactive of 'regular
  9. | `Audio_interactive of 'media
  10. | `Video_interactive of 'media
  11. | `Audio of 'media
  12. | `Video of 'media
]

Transparent elements. Such elements have a part of they children in their data and behaves like them. We could do something like a: 'a elt list -> 'a elt but the information about the node name would be forgotten and would allow things like that : p [a [a []]]. This system allow to build non-conforming terms such as a [a []] but when passed to a standard element (such as p), it will yield an error. Exception to that : if you embdedd the element in another transparent (of an another kind) : p [noscript (a [a []])] will be correctly typed.

type (+'noscript, +'regular, +'media) transparent_without_interactive = [
  1. | `Noscript of 'noscript
  2. | `Ins of 'regular
  3. | `Del of 'regular
  4. | `Object of 'regular
  5. | `Canvas of 'regular
  6. | `Map of 'regular
  7. | `Audio of 'media
  8. | `Video of 'media
]
type (+'interactive, +'regular, +'media) transparent_without_noscript = [
  1. | `A of 'interactive
  2. | `Ins of 'regular
  3. | `Del of 'regular
  4. | `Canvas of 'regular
  5. | `Map of 'regular
  6. | `Object of 'regular
  7. | `Object_interactive of 'regular
  8. | `Video of 'media
  9. | `Audio of 'media
  10. | `Video_interactive of 'media
  11. | `Audio_interactive of 'media
]
type (+'interactive, +'noscript, +'regular) transparent_without_media = [
  1. | `A of 'interactive
  2. | `Noscript of 'noscript
  3. | `Ins of 'regular
  4. | `Del of 'regular
  5. | `Map of 'regular
  6. | `Canvas of 'regular
  7. | `Object of 'regular
  8. | `Object_interactive of 'regular
]
type metadata_without_title = [
  1. | `Template
  2. | `Style
  3. | `Script
  4. | `Noscript of [ `Meta | `Link | `Style ]
  5. | `Meta
  6. | `Command
  7. | `Base
]

Metadata without title

type metadata = [
  1. | metadata_without_title
  2. | `Title
]

Metadata contents. Used specially in <head>

Interactive contents : contents that require user-interaction (Forms, link, etc.)

type core_interactive = [
  1. | `Textarea
  2. | `Select
  3. | `Menu
  4. | `Label
  5. | `Keygen
  6. | `Input
  7. | `Img_interactive
  8. | `Iframe
  9. | `Embed
  10. | `Details
  11. | `Button
]

Core element types are element types without transparent.

type core_phrasing = [
  1. | labelable
  2. | submitable
  3. | `Wbr
  4. | `Var
  5. | `U
  6. | `Svg
  7. | `Time
  8. | `Template
  9. | `Sup
  10. | `Sub
  11. | `Strong
  12. | `Span
  13. | `Small
  14. | `Script
  15. | `Samp
  16. | `Ruby
  17. | `Q
  18. | `Mark
  19. | `Label
  20. | `Kbd
  21. | `Iframe
  22. | `I
  23. | `Embed
  24. | `Em
  25. | `Dfn
  26. | `Datalist
  27. | `Command
  28. | `Code
  29. | `Cite
  30. | `Br
  31. | `Bdo
  32. | `B
  33. | `Abbr
  34. | `Img
  35. | `Img_interactive
  36. | `Picture
  37. | `PCDATA
]

Phrasing contents is inline contents : bold text, span, and so on.

type core_phrasing_without_noscript = [
  1. | labelable
  2. | submitable
  3. | `Wbr
  4. | `Var
  5. | `U
  6. | `Time
  7. | `Template
  8. | `Sup
  9. | `Sub
  10. | `Svg
  11. | `Strong
  12. | `Span
  13. | `Small
  14. | `Script
  15. | `Samp
  16. | `Ruby
  17. | `Q
  18. | `Mark
  19. | `Label
  20. | `Kbd
  21. | `Iframe
  22. | `I
  23. | `Embed
  24. | `Em
  25. | `Dfn
  26. | `Datalist
  27. | `Command
  28. | `Code
  29. | `Cite
  30. | `Br
  31. | `Bdo
  32. | `Img
  33. | `Img_interactive
  34. | `Picture
  35. | `B
  36. | `Abbr
  37. | `PCDATA
]
type core_phrasing_without_interactive = [
  1. | labelable_without_interactive
  2. | `Wbr
  3. | `Var
  4. | `U
  5. | `Time
  6. | `Template
  7. | `Sup
  8. | `Sub
  9. | `Strong
  10. | `Span
  11. | `Small
  12. | `Script
  13. | `Svg
  14. | `Samp
  15. | `Ruby
  16. | `Q
  17. | `Mark
  18. | `Kbd
  19. | `Img
  20. | `Picture
  21. | `I
  22. | `Em
  23. | `Dfn
  24. | `Datalist
  25. | `Command
  26. | `Code
  27. | `Cite
  28. | `Br
  29. | `Bdo
  30. | `B
  31. | `Abbr
  32. | `PCDATA
]
type core_phrasing_without_media = [
  1. | labelable
  2. | submitable
  3. | `Wbr
  4. | `Var
  5. | `U
  6. | `Time
  7. | `Template
  8. | `Svg
  9. | `Sup
  10. | `Sub
  11. | `Strong
  12. | `Span
  13. | `Small
  14. | `Script
  15. | `Samp
  16. | `Ruby
  17. | `Q
  18. | `Mark
  19. | `Label
  20. | `Kbd
  21. | `Img
  22. | `Img_interactive
  23. | `Picture
  24. | `Iframe
  25. | `I
  26. | `Embed
  27. | `Em
  28. | `Dfn
  29. | `Datalist
  30. | `Command
  31. | `Code
  32. | `Cite
  33. | `Br
  34. | `Bdo
  35. | `B
  36. | `Abbr
  37. | `PCDATA
]
type (+'a, +'b) between_phrasing_and_phrasing_without_interactive = [< core_phrasing | ([< phrasing_without_interactive ] as 'b, phrasing_without_noscript, phrasing, phrasing_without_media) transparent Abbr B Bdo Br Canvas Cite Code Command Datalist Del Dfn Em I Img Picture Ins Kbd Map Mark Meter Noscript Object PCDATA Progress Q Ruby Samp Script Small Span Strong Sub Sup Svg Template Time U Var Wbr ] as 'a
type phrasing_without_dfn = [
  1. | labelable
  2. | submitable
  3. | `Wbr
  4. | `Var
  5. | `U
  6. | `Time
  7. | `Template
  8. | `Sup
  9. | `Sub
  10. | `Strong
  11. | `Span
  12. | `Small
  13. | `Script
  14. | `Samp
  15. | `Ruby
  16. | `Q
  17. | `Mark
  18. | `Label
  19. | `Img
  20. | `Img_interactive
  21. | `Picture
  22. | `Kbd
  23. | `I
  24. | `Em
  25. | `Datalist
  26. | `Command
  27. | `Code
  28. | `Cite
  29. | `Br
  30. | `Bdo
  31. | `B
  32. | `Abbr
  33. | `PCDATA
  34. | (phrasing_without_interactive, phrasing_without_noscript, phrasing_without_dfn, phrasing_without_media) transparent
]

Phrasing without the interactive markups

type phrasing_without_label = [
  1. | labelable
  2. | submitable
  3. | `Wbr
  4. | `Var
  5. | `U
  6. | `Time
  7. | `Template
  8. | `Sup
  9. | `Sub
  10. | `Strong
  11. | `Span
  12. | `Img
  13. | `Img_interactive
  14. | `Picture
  15. | `Small
  16. | `Script
  17. | `Samp
  18. | `Ruby
  19. | `Q
  20. | `Mark
  21. | `Kbd
  22. | `I
  23. | `Em
  24. | `Dfn
  25. | `Datalist
  26. | `Command
  27. | `Code
  28. | `Cite
  29. | `Br
  30. | `Bdo
  31. | `B
  32. | `Abbr
  33. | `PCDATA
  34. | (phrasing_without_interactive, phrasing_without_noscript, phrasing_without_label, phrasing_without_media) transparent
]
type phrasing_without_progress = [
  1. | resetable
  2. | submitable
  3. | `Wbr
  4. | `Var
  5. | `U
  6. | `Time
  7. | `Template
  8. | `Sup
  9. | `Sub
  10. | `Strong
  11. | `Span
  12. | `Small
  13. | `Script
  14. | `Samp
  15. | `Img
  16. | `Img_interactive
  17. | `Picture
  18. | `Ruby
  19. | `Q
  20. | `Meter
  21. | `Mark
  22. | `Label
  23. | `Kbd
  24. | `I
  25. | `Em
  26. | `Dfn
  27. | `Datalist
  28. | `Command
  29. | `Code
  30. | `Cite
  31. | `Button
  32. | `Br
  33. | `Bdo
  34. | `B
  35. | `Abbr
  36. | `PCDATA
  37. | (phrasing_without_interactive, phrasing_without_noscript, phrasing_without_progress, phrasing_without_media) transparent
]
type phrasing_without_time = [
  1. | labelable
  2. | submitable
  3. | `Wbr
  4. | `Var
  5. | `U
  6. | `Template
  7. | `Sup
  8. | `Sub
  9. | `Strong
  10. | `Img
  11. | `Img_interactive
  12. | `Picture
  13. | `Span
  14. | `Small
  15. | `Script
  16. | `Samp
  17. | `Ruby
  18. | `Q
  19. | `Mark
  20. | `Label
  21. | `Kbd
  22. | `I
  23. | `Em
  24. | `Dfn
  25. | `Datalist
  26. | `Command
  27. | `Code
  28. | `Cite
  29. | `Br
  30. | `Bdo
  31. | `B
  32. | `Abbr
  33. | `PCDATA
  34. | (phrasing_without_interactive, phrasing_without_noscript, phrasing_without_time, phrasing_without_media) transparent
]
type phrasing_without_meter = [
  1. | submitable
  2. | resetable
  3. | `Progress
  4. | `Button
  5. | `Wbr
  6. | `Var
  7. | `U
  8. | `Time
  9. | `Template
  10. | `Sup
  11. | `Img
  12. | `Img_interactive
  13. | `Picture
  14. | `Sub
  15. | `Strong
  16. | `Span
  17. | `Small
  18. | `Script
  19. | `Samp
  20. | `Ruby
  21. | `Q
  22. | `Mark
  23. | `Label
  24. | `Kbd
  25. | `I
  26. | `Em
  27. | `Dfn
  28. | `Datalist
  29. | `Command
  30. | `Code
  31. | `Cite
  32. | `Br
  33. | `Bdo
  34. | `B
  35. | `Abbr
  36. | `PCDATA
  37. | (phrasing_without_interactive, phrasing_without_noscript, phrasing_without_meter, phrasing_without_media) transparent
]
type core_flow5 = [
  1. | core_phrasing
  2. | formassociated
  3. | formatblock
  4. | `Ul
  5. | `Table
  6. | `Style
  7. | `Ol
  8. | `Menu
  9. | `Hr
  10. | `Form
  11. | `Figure
  12. | `Dl
  13. | `Details
  14. | `Main
  15. | `Dialog
]
type core_flow5_without_interactive = [
  1. | core_phrasing_without_interactive
  2. | formassociated
  3. | formatblock
  4. | `Ul
  5. | `Table
  6. | `Style
  7. | `Ol
  8. | `Menu
  9. | `Hr
  10. | `Form
  11. | `Figure
  12. | `Dl
  13. | `Main
  14. | `Dialog
]
type core_flow5_without_noscript = [
  1. | core_phrasing_without_noscript
  2. | formassociated
  3. | formatblock
  4. | `Ul
  5. | `Table
  6. | `Style
  7. | `Ol
  8. | `Menu
  9. | `Hr
  10. | `Form
  11. | `Figure
  12. | `Dl
  13. | `Details
  14. | `Main
  15. | `Dialog
]
type core_flow5_without_media = [
  1. | core_phrasing_without_media
  2. | formassociated
  3. | formatblock
  4. | `Ul
  5. | `Table
  6. | `Style
  7. | `Ol
  8. | `Menu
  9. | `Hr
  10. | `Form
  11. | `Figure
  12. | `Dl
  13. | `Details
  14. | `Main
  15. | `Dialog
]
type flow5_without_table = [
  1. | core_phrasing
  2. | formassociated
  3. | formatblock
  4. | `Ul
  5. | `Style
  6. | `Ol
  7. | `Menu
  8. | `Hr
  9. | `Form
  10. | `Figure
  11. | `Dl
  12. | `Details
  13. | `Main
  14. | `Dialog
  15. | (flow5_without_interactive, flow5_without_noscript, flow5, flow5_without_media) transparent
]
type flow5_without_form = [
  1. | core_phrasing
  2. | formassociated
  3. | formatblock
  4. | `Ul
  5. | `Table
  6. | `Style
  7. | `Ol
  8. | `Menu
  9. | `Hr
  10. | `Figure
  11. | `Dl
  12. | `Details
  13. | `Main
  14. | `Dialog
  15. | (flow5_without_interactive, flow5_without_noscript, flow5, flow5_without_media) transparent
]
type pcdata = [
  1. | `PCDATA
]
type txt = [
  1. | `PCDATA
]
type notag
type no_attribute_allowed
type noattrib = [
  1. | `No_attribute_allowed of no_attribute_allowed
]
type html = [
  1. | `Html
]
type html_content_fun = [
  1. | `Head
  2. | `Body
]
type html_content = html_content_fun
type html_attrib = [
  1. | common
  2. | `Manifest
]
type head = [
  1. | `Head
]
type head_content = [
  1. | metadata
]
type head_content_fun = [
  1. | metadata_without_title
]
type head_attrib = [
  1. | common
]
type body = [
  1. | `Body
]
type body_attrib = [
  1. | common
  2. | `OnAfterPrint
  3. | `OnBeforePrint
  4. | `OneBeforeUnload
  5. | `OnHashChange
  6. | `OnMessage
  7. | `OnOffLine
  8. | `OnOnLine
  9. | `OnPageHide
  10. | `OnPageShow
  11. | `OnPopState
  12. | `OnRedo
  13. | `OnResize
  14. | `OnStorage
  15. | `OnUndo
  16. | `OnUnload
]
type body_content = flow5
type body_content_fun = flow5
type svg = [
  1. | `Svg
]
type svg_content = Svg_types.svg_content
type svg_attrib = Svg_types.svg_attr
type base = [
  1. | `Base
]
type base_content = notag
type base_content_fun = notag
type base_attrib = [
  1. | common
  2. | `Href
  3. | `Target
]
type title = [
  1. | `Title
]
type title_content = [
  1. | `PCDATA
]
type title_content_fun = [
  1. | `PCDATA
]
type title_attrib = noattrib
type header = [
  1. | `Header
]
type header_content = [
]
type header_content_fun = [
]
type header_attrib = [
  1. | common
]
type section = [
  1. | `Section
]
type section_content = [
  1. | flow5
]
type section_content_fun = [
  1. | flow5
]
type section_attrib = [
  1. | common
]
type nav = [
  1. | `Nav
]
type nav_content = [
  1. | flow5
]
type nav_content_fun = [
  1. | flow5
]
type nav_attrib = [
  1. | common
]
type h1 = [
  1. | `H1
]
type h1_content = [
  1. | phrasing
]
type h1_content_fun = [
  1. | phrasing
]
type h1_attrib = [
  1. | common
]
type h2 = [
  1. | `H2
]
type h2_content = [
  1. | phrasing
]
type h2_content_fun = [
  1. | phrasing
]
type h2_attrib = [
  1. | common
]
type h3 = [
  1. | `H3
]
type h3_content = [
  1. | phrasing
]
type h3_content_fun = [
  1. | phrasing
]
type h3_attrib = [
  1. | common
]
type h4 = [
  1. | `H4
]
type h4_content = [
  1. | phrasing
]
type h4_content_fun = [
  1. | phrasing
]
type h4_attrib = [
  1. | common
]
type h5 = [
  1. | `H5
]
type h5_content = [
  1. | phrasing
]
type h5_content_fun = [
  1. | phrasing
]
type h5_attrib = [
  1. | common
]
type h6 = [
  1. | `H6
]
type h6_content = [
  1. | phrasing
]
type h6_content_fun = [
  1. | phrasing
]
type h6_attrib = [
  1. | common
]
type hgroup = [
  1. | `Hgroup
]
type hgroup_content = [
  1. | `H1
  2. | `H2
  3. | `H3
  4. | `H4
  5. | `H5
  6. | `H6
]
type hgroup_content_fun = [
  1. | `H1
  2. | `H2
  3. | `H3
  4. | `H4
  5. | `H5
  6. | `H6
]
type hgroup_attrib = [
  1. | common
]
type address = [
  1. | `Address
]
type address_attrib = [
  1. | common
]
type article = [
  1. | `Article
]
type article_content = [
  1. | flow5
]
type article_content_fun = [
  1. | flow5
]
type article_attrib = [
  1. | common
]
type aside = [
  1. | `Aside
]
type aside_content = [
  1. | flow5
]
type aside_content_fun = [
  1. | flow5
]
type aside_attrib = [
  1. | common
]
type main = [
  1. | `Main
]
type main_content = [
  1. | flow5
]
type main_content_fun = [
  1. | flow5
]
type main_attrib = [
  1. | common
]
type p = [
  1. | `P
]
type p_content = [
  1. | phrasing
]
type p_content_fun = [
  1. | phrasing
]
type p_attrib = [
  1. | common
]
type pre = [
  1. | `Pre
]
type pre_content = [
  1. | phrasing
]
type pre_content_fun = [
  1. | phrasing
]
type pre_attrib = [
  1. | common
]
type blockquote = [
  1. | `Blockquote
]
type blockquote_content = [
  1. | flow5
]
type blockquote_content_fun = [
  1. | flow5
]
type blockquote_attrib = [
  1. | common
  2. | `Cite
]
type dialog = [
  1. | `Dialog
]
type dialog_content = [
  1. | flow5
]
type dialog_content_fun = [
  1. | flow5
]
type dialog_attrib = [
  1. | common
  2. | `Open
]
type div = [
  1. | `Div
]
type div_content = [
  1. | flow5
]
type div_content_fun = [
  1. | flow5
]
type div_attrib = [
  1. | common
]
type ol = [
  1. | `Ol
]
type ol_content = [
  1. | `Li of [ common | `Int_Value ]
]
type ol_content_fun = [
  1. | `Li of [ common | `Int_Value ]
]
type ol_attrib = [
  1. | common
  2. | `Reversed
  3. | `Start
]
type li_content = [
  1. | flow5
]
type li_content_fun = [
  1. | flow5
]
type li_attrib = [
  1. | common
  2. | `Int_Value
]
type li = [
  1. | `Li of li_attrib
]
type ul = [
  1. | `Ul
]
type ul_content = [
  1. | `Li of [ li_attrib ]
]
type ul_content_fun = [
  1. | `Li of [ li_attrib ]
]
type ul_attrib = [
  1. | common
]
type dd = [
  1. | `Dd
]
type dd_content = [
  1. | flow5
]
type dd_content_fun = [
  1. | flow5
]
type dd_attrib = [
  1. | common
]
type dt = [
  1. | `Dt
]
type dt_attrib = [
  1. | common
]
type dl = [
  1. | `Dl
]
type dl_content = [
  1. | `Dt
  2. | `Dd
]
type dl_content_fun = [
  1. | `Dt
  2. | `Dd
]
type dl_attrib = [
  1. | common
]
type figcaption = [
  1. | `Figcaption
]
type figcaption_content = [
  1. | flow5
]
type figcaption_content_fun = [
  1. | flow5
]
type figcaption_attrib = [
  1. | common
]
type figure = [
  1. | `Figure
]
type figure_content = [
  1. | flow5
]
type figure_content_fun = [
  1. | flow5
]
type figure_attrib = [
  1. | common
]
type rp = [
  1. | `Rp
]
type rp_content = [
  1. | phrasing
]
type rp_content_fun = [
  1. | phrasing
]
type rp_attrib = [
  1. | common
]
type rt = [
  1. | `Rt
]
type rt_content = [
  1. | phrasing
]
type rt_content_fun = [
  1. | phrasing
]
type rt_attrib = [
  1. | common
]
type ruby = [
  1. | `Ruby
]
type ruby_content = [
  1. | phrasing
  2. | rp
  3. | rt
]
type ruby_content_fun = [
  1. | phrasing
  2. | rp
  3. | rt
]
type ruby_attrib = [
  1. | common
]
type hr = [
  1. | `Hr
]
type hr_content = notag
type hr_content_fun = notag
type hr_attrib = [
  1. | common
]
type b = [
  1. | `B
]
type b_content = [
  1. | phrasing
]
type b_content_fun = [
  1. | phrasing
]
type b_attrib = [
  1. | common
]
type i = [
  1. | `I
]
type i_content = [
  1. | phrasing
]
type i_content_fun = [
  1. | phrasing
]
type i_attrib = [
  1. | common
]
type u = [
  1. | `U
]
type u_content = [
  1. | phrasing
]
type u_content_fun = [
  1. | phrasing
]
type u_attrib = [
  1. | common
]
type small = [
  1. | `Small
]
type small_content = [
  1. | phrasing
]
type small_content_fun = [
  1. | phrasing
]
type small_attrib = [
  1. | common
]
type sub = [
  1. | `Sub
]
type sub_content = [
  1. | phrasing
]
type sub_content_fun = [
  1. | phrasing
]
type sub_attrib = [
  1. | common
]
type sup = [
  1. | `Sup
]
type sup_content = [
  1. | phrasing
]
type sup_content_fun = [
  1. | phrasing
]
type sup_attrib = [
  1. | common
]
type mark = [
  1. | `Mark
]
type mark_content = [
  1. | phrasing
]
type mark_content_fun = [
  1. | phrasing
]
type mark_attrib = [
  1. | common
]
type wbr = [
  1. | `Wbr
]
type wbr_content = notag
type wbr_content_fun = notag
type wbr_attrib = [
  1. | common
]
type bdo = [
  1. | `Bdo
]
type bdo_content = [
  1. | phrasing
]
type bdo_content_fun = [
  1. | phrasing
]
type bdo_attrib = [
  1. | common
]
type abbr = [
  1. | `Abbr
]
type abbr_content = [
  1. | phrasing
]
type abbr_content_fun = [
  1. | phrasing
]
type abbr_attrib = [
  1. | common
]
type br = [
  1. | `Br
]
type br_content = notag
type br_content_fun = notag
type br_attrib = [
  1. | common
]
type cite = [
  1. | `Cite
]
type cite_content = [
  1. | phrasing
]
type cite_content_fun = [
  1. | phrasing
]
type cite_attrib = [
  1. | common
]
type code = [
  1. | `Code
]
type code_content = [
  1. | phrasing
]
type code_content_fun = [
  1. | phrasing
]
type code_attrib = [
  1. | common
]
type dfn = [
  1. | `Dfn
]
type dfn_content = [
  1. | phrasing_without_dfn
]
type dfn_content_fun = [
  1. | phrasing_without_dfn
]
type dfn_attrib = [
  1. | common
]
type em = [
  1. | `Em
]
type em_content = [
  1. | phrasing
]
type em_content_fun = [
  1. | phrasing
]
type em_attrib = [
  1. | common
]
type kbd = [
  1. | `Kbd
]
type kbd_content = [
  1. | phrasing
]
type kbd_content_fun = [
  1. | phrasing
]
type kbd_attrib = [
  1. | common
]
type q = [
  1. | `Q
]
type q_content = [
  1. | phrasing
]
type q_content_fun = [
  1. | phrasing
]
type q_attrib = [
  1. | common
  2. | `Cite
]
type samp = [
  1. | `Samp
]
type samp_content = [
  1. | phrasing
]
type samp_content_fun = [
  1. | phrasing
]
type samp_attrib = [
  1. | common
]
type span = [
  1. | `Span
]
type span_content = [
  1. | phrasing
]
type span_content_fun = [
  1. | phrasing
]
type span_attrib = [
  1. | common
]
type strong = [
  1. | `Strong
]
type strong_content = [
  1. | phrasing
]
type strong_content_fun = [
  1. | phrasing
]
type strong_attrib = [
  1. | common
]
type time = [
  1. | `Time
]
type time_content = [
  1. | phrasing_without_time
]
type time_content_fun = [
  1. | phrasing_without_time
]
type time_attrib = [
  1. | common
  2. | `Datetime
  3. | `Pubdate
]
type var = [
  1. | `Var
]
type var_content = [
  1. | phrasing
]
type var_content_fun = [
  1. | phrasing
]
type var_attrib = [
  1. | common
]
type a_content = flow5_without_interactive
type a_content_fun = flow5_without_interactive
type 'a a = [
  1. | `A of 'a
]
type a_ = [
  1. | `A of a_content
]
type a_attrib = [
  1. | common
  2. | `Href
  3. | `Hreflang
  4. | `Media
  5. | `Rel
  6. | `Target
  7. | `Mime_type
  8. | `Download
]
type 'a del = [
  1. | `Del of 'a
]
type del_content = flow5
type del_ = del_content del
type del_content_fun = flow5
type del_attrib = [
  1. | common
  2. | `Cite
  3. | `Datetime
]
type 'a ins = [
  1. | `Ins of 'a
]
type ins_content = flow5
type ins_ = ins_content ins
type ins_content_fun = flow5
type ins_attrib = [
  1. | common
  2. | `Cite
  3. | `Datetime
]
type iframe = [
  1. | `Iframe
]
type iframe_content = [
  1. | `PCDATA
]
type iframe_content_fun = [
  1. | `PCDATA
]
type iframe_attrib = [
  1. | common
  2. | `Allowfullscreen
  3. | `Allowpaymentrequest
  4. | `Src
  5. | `Name
  6. | `Sandbox
  7. | `Seamless
  8. | `Width
  9. | `Height
  10. | `Referrerpolicy
]
type object__content = [
  1. | flow5
  2. | `Param
]
type object__content_fun = flow5
type 'a object_ = [
  1. | `Object of 'a
  2. | `Object_interactive of 'a
]
type object__ = object__content object_
type object__attrib = [
  1. | common
  2. | `Data
  3. | `Form
  4. | `Mime_type
  5. | `Height
  6. | `Width
  7. | `Name
  8. | `Usemap
]
type param = [
  1. | `Param
]
type param_content = notag
type param_content_fun = notag
type param_attrib = [
  1. | common
  2. | `Name
  3. | `Text_Value
]
type embed = [
  1. | `Embed
]
type embed_content = notag
type embed_content_fun = notag
type embed_attrib = [
  1. | common
  2. | `Src
  3. | `Height
  4. | `Mime_type
  5. | `Width
]
type img = [
  1. | `Img
]
type img_interactive = [
  1. | `Img
  2. | `Img_interactive
]
type img_content = notag
type img_content_fun = notag
type img_attrib = [
  1. | common
  2. | `Height
  3. | `Ismap
  4. | `Width
  5. | `Srcset
  6. | `Img_sizes
]
type media_attrib = [
  1. | `Crossorigin
  2. | `Preload
  3. | `Autoplay
  4. | `Mediagroup
  5. | `Loop
  6. | `Muted
  7. | `Controls
]
type 'a audio = [
  1. | `Audio of 'a
]
type 'a audio_interactive = [
  1. | `Audio of 'a
  2. | `Audio_interactive of 'a
]
type audio_content = flow5_without_media
type audio_ = audio_content audio
type audio_content_fun = flow5_without_media
type audio_attrib = [
  1. | common
  2. | media_attrib
]
type 'a video = [
  1. | `Video of 'a
]
type 'a video_interactive = [
  1. | `Video of 'a
  2. | `Video_interactive of 'a
]
type video_content = flow5_without_media
type video_ = video_content video
type video_content_fun = flow5_without_media
type video_attrib = [
  1. | common
  2. | media_attrib
  3. | `Poster
  4. | `Width
  5. | `Height
]
type 'a canvas = [
  1. | `Canvas of 'a
]
type canvas_content = flow5
type canvas_ = canvas_content canvas
type canvas_content_fun = flow5
type canvas_attrib = [
  1. | common
  2. | `Width
  3. | `Height
]
type source = [
  1. | `Source
]
type source_content = notag
type source_content_fun = notag
type source_attrib = [
  1. | common
  2. | `Src
  3. | `Srcset
  4. | `Mime_type
  5. | `Media
]
type area = [
  1. | `Area
]
type area_content = notag
type area_content_fun = notag
type area_attrib = [
  1. | common
  2. | `Alt
  3. | `Coords
  4. | `Shape
  5. | `Target
  6. | `Rel
  7. | `Media
  8. | `Hreflang
  9. | `Mime_type
  10. | `Download
]
type 'a map = [
  1. | `Map of 'a
]
type map_content = flow5
type map_ = map_content map
type map_content_fun = flow5
type map_attrib = [
  1. | common
  2. | `Name
]
type caption = [
  1. | `Caption
]
type caption_content = [
  1. | flow5_without_table
]
type caption_content_fun = [
  1. | flow5_without_table
]
type caption_attrib = [
  1. | common
]
type table = [
  1. | `Table
]
type table_content = [
  1. | `Tr
]
type table_content_fun = [
  1. | `Tr
]
type table_attrib = [
  1. | common
  2. | `Summary
]
type tablex = [
  1. | `Table
]
type tablex_content = [
  1. | `Tbody
]
type tablex_content_fun = [
  1. | `Tbody
]
type tablex_attrib = [
  1. | common
  2. | `Summary
]
type colgroup = [
  1. | `Colgroup
]
type colgroup_content = [
  1. | `Col
]
type colgroup_content_fun = [
  1. | `Col
]
type colgroup_attrib = [
  1. | common
  2. | `Span
]
type col = [
  1. | `Col
]
type col_content = notag
type col_content_fun = notag
type col_attrib = [
  1. | common
  2. | `Span
]
type thead = [
  1. | `Thead
]
type thead_content = [
  1. | `Tr
]
type thead_content_fun = [
  1. | `Tr
]
type thead_attrib = [
  1. | common
]
type tbody = [
  1. | `Tbody
]
type tbody_content = [
  1. | `Tr
]
type tbody_content_fun = [
  1. | `Tr
]
type tbody_attrib = [
  1. | common
]
type tfoot = [
  1. | `Tfoot
]
type tfoot_content = [
  1. | `Tr
]
type tfoot_content_fun = [
  1. | `Tr
]
type tfoot_attrib = [
  1. | common
]
type td = [
  1. | `Td
]
type td_content = [
  1. | flow5
]
type td_content_fun = [
  1. | flow5
]
type td_attrib = [
  1. | common
  2. | `Colspan
  3. | `Headers
  4. | `Rowspan
]
type th = [
  1. | `Th
]
type th_content = [
  1. | flow5
]
type th_content_fun = [
  1. | flow5
]
type th_attrib = [
  1. | common
  2. | `Colspan
  3. | `Headers
  4. | `Rowspan
  5. | `Scope
]
type tr = [
  1. | `Tr
]
type tr_content = [
  1. | `Td
  2. | `Th
]
type tr_content_fun = [
  1. | `Td
  2. | `Th
]
type tr_attrib = [
  1. | common
]
type form = [
  1. | `Form
]
type form_content = [
  1. | flow5_without_form
]
type form_content_fun = [
  1. | flow5_without_form
]
type form_attrib = [
  1. | common
  2. | `Accept_charset
  3. | `Action
  4. | `Enctype
  5. | `Method
  6. | `Name
  7. | `Target
  8. | `Autocomplete
  9. | `Novalidate
]
type fieldset = [
  1. | `Fieldset
]
type fieldset_content = [
  1. | flow5
]
type fieldset_content_fun = [
  1. | flow5
]
type fieldset_attrib = [
  1. | common
  2. | `Disabled
  3. | `Form
  4. | `Name
]
type legend = [
  1. | `Legend
]
type legend_content = [
  1. | phrasing
]
type legend_content_fun = [
  1. | phrasing
]
type legend_attrib = [
  1. | common
]
type label = [
  1. | `Label
]
type label_content = [
  1. | phrasing_without_label
]
type label_content_fun = [
  1. | phrasing_without_label
]
type label_attrib = [
  1. | common
  2. | `Label_for
  3. | `Form
]
type input = [
  1. | `Input
]
type input_content = notag
type input_content_fun = notag
type input_attrib = [
  1. | common
  2. | `Accept
  3. | `Alt
  4. | `Autocomplete
  5. | `Autofocus
  6. | `Checked
  7. | `Disabled
  8. | `Form
  9. | `Formaction
  10. | `Formenctype
  11. | `Formmethod
  12. | `Method
  13. | `Formnovalidate
  14. | `Formtarget
  15. | `Height
  16. | `List
  17. | `Input_Max
  18. | `Maxlength
  19. | `Minlength
  20. | `Input_Min
  21. | `Multiple
  22. | `Name
  23. | `Pattern
  24. | `Placeholder
  25. | `ReadOnly
  26. | `Required
  27. | `Size
  28. | `Src
  29. | `Step
  30. | `Input_Type
  31. | `Value
  32. | `Width
  33. | `Inputmode
]
type textarea = [
  1. | `Textarea
]
type textarea_attrib = [
  1. | common
  2. | `Autofocus
  3. | `Disabled
  4. | `Form
  5. | `Maxlength
  6. | `Minlength
  7. | `Name
  8. | `Placeholder
  9. | `ReadOnly
  10. | `Required
  11. | `Wrap
  12. | `Rows
  13. | `Cols
]
type textarea_content = [
  1. | `PCDATA
]
type textarea_content_fun = textarea_content
type button = [
  1. | `Button
]
type button_content = [
  1. | phrasing_without_interactive
]
type button_content_fun = [
  1. | phrasing_without_interactive
]
type button_attrib = [
  1. | common
  2. | `Autofocus
  3. | `Disabled
  4. | `Form
  5. | `Formaction
  6. | `Formenctype
  7. | `Formmethod
  8. | `Method
  9. | `Formnovalidate
  10. | `Formtarget
  11. | `Name
  12. | `Text_Value
  13. | `Button_Type
]
type select = [
  1. | `Select
]
type select_content = [
  1. | `Optgroup
  2. | `Option
]
type select_content_fun = [
  1. | `Optgroup
  2. | `Option
]
type select_attrib = [
  1. | common
  2. | `Autofocus
  3. | `Multiple
  4. | `Name
  5. | `Size
  6. | `Form
  7. | `Disabled
  8. | `Required
]
type datalist = [
  1. | `Datalist
]
type datalist_content = notag
type datalist_content_fun = notag
type datalist_attrib = [
  1. | common
]
type optgroup = [
  1. | `Optgroup
]
type optgroup_content = [
  1. | `Option
]
type optgroup_content_fun = [
  1. | `Option
]
type optgroup_attrib = [
  1. | common
  2. | `Disabled
  3. | `Label
]
type option_attrib = [
  1. | common
  2. | `Selected
  3. | `Text_Value
  4. | `Disabled
  5. | `Label
  6. | `Value
]
type selectoption = [
  1. | `Option
]
type option_content_fun = [
  1. | `PCDATA
]
type option_content = [
  1. | `PCDATA
]
type keygen = [
  1. | `Keygen
]
type keygen_content = notag
type keygen_content_fun = notag
type keygen_attrib = [
  1. | common
  2. | `Autofcus
  3. | `Challenge
  4. | `Disabled
  5. | `Form
  6. | `Keytype
  7. | `Name
]
type progress = [
  1. | `Progress
]
type progress_content = [
  1. | phrasing_without_progress
]
type progress_content_fun = [
  1. | phrasing_without_progress
]
type progress_attrib = [
  1. | common
  2. | `Float_Value
  3. | `Max
  4. | `Form
]
type meter = [
  1. | `Meter
]
type meter_content = [
  1. | phrasing_without_meter
]
type meter_content_fun = [
  1. | phrasing_without_meter
]
type meter_attrib = [
  1. | common
  2. | `Float_Value
  3. | `Min
  4. | `Max
  5. | `Low
  6. | `High
  7. | `Optimum
  8. | `Form
]
type output_elt = [
  1. | `Output
]
type output_elt_content = [
  1. | phrasing
]
type output_elt_content_fun = [
  1. | phrasing
]
type output_elt_attrib = [
  1. | common
  2. | `Form
  3. | `Output_for
  4. | `Name
]
type details = [
  1. | `Details
]
type details_content = [
  1. | flow5
]
type details_content_fun = [
  1. | flow5
]
type details_attrib = [
  1. | common
  2. | `Open
]
type summary = [
  1. | `Summary
]
type summary_content = [
  1. | phrasing
]
type summary_content_fun = [
  1. | phrasing
]
type summary_attrib = [
  1. | common
]
type command = [
  1. | `Command
]
type command_content = notag
type command_content_fun = notag
type command_attrib = [
  1. | common
  2. | `Icon
  3. | `Disabled
  4. | `Checked
  5. | `Radiogroup
  6. | `Command_Type
]
type menu = [
  1. | `Menu
]
type menu_content = notag
type menu_content_fun = notag
type menu_attrib = [
  1. | common
  2. | `Label
  3. | `Menu_Type
]
type noscript = [
  1. | `Noscript of flow5_without_noscript
]
type noscript_content = flow5_without_noscript
type noscript_content_fun = flow5_without_noscript
type noscript_attrib = [
  1. | common
]
type meta = [
  1. | `Meta
]
type meta_content = notag
type meta_content_fun = notag
type meta_attrib = [
  1. | common
  2. | `Http_equiv
  3. | `Name
  4. | `Content
  5. | `Charset
  6. | `Property
]
type style = [
  1. | `Style
]
type style_content = [
  1. | `PCDATA
]
type style_content_fun = [
  1. | `PCDATA
]
type style_attrib = [
  1. | common
  2. | `Media
  3. | `Mime_type
  4. | `Scoped
]
type script = [
  1. | `Script
]
type script_attrib = [
  1. | common
  2. | subressource_integrity
  3. | `Async
  4. | `Charset
  5. | `Src
  6. | `Defer
  7. | `Script_type
]
type script_content = [
  1. | `PCDATA
]
type script_content_fun = [
  1. | `PCDATA
]
type template = [
  1. | `Template
]
type template_attrib = [
  1. | common
]
type template_content = [
  1. | flow5
]
type template_content_fun = [
  1. | flow5
]
type picture = [
  1. | `Picture
]
type picture_content = [
  1. | source
  2. | script
  3. | template
]
type picture_content_fun = [
  1. | source
  2. | script
  3. | template
]
type picture_attrib = [
  1. | common
]
type referrerpolicy = [
  1. | `Empty
  2. | `No_referrer
  3. | `No_referrer_when_downgrade
  4. | `Origin
  5. | `Origin_when_cross_origin
  6. | `Same_origin
  7. | `Strict_origin
  8. | `Strict_origin_when_cross_origin
  9. | `Unsafe_url
]
type big_variant = [
  1. | `W3_org_1999_xhtml
  2. | `Default
  3. | `Preserve
  4. | `Selected
  5. | `Get
  6. | `Post
  7. | `Checked
  8. | `Disabled
  9. | `ReadOnly
  10. | `Async
  11. | `Autofocus
  12. | `Autoplay
  13. | `Muted
  14. | `Anonymous
  15. | `Use_credentials
  16. | `Controls
  17. | `Ltr
  18. | `Rtl
  19. | `Formnovalidate
  20. | `Hidden
  21. | `Ismap
  22. | `Loop
  23. | `Novalidate
  24. | `Open
  25. | `Audio
  26. | `Metadata
  27. | `None
  28. | `Pubdate
  29. | `Required
  30. | `Reversed
  31. | `Scoped
  32. | `Seamless
  33. | `Hard
  34. | `Soft
  35. | `Multiple
  36. | `Checkbox
  37. | `Command
  38. | `Radio
  39. | `Context
  40. | `Toolbar
  41. | `Char
  42. | `Justify
  43. | `Left
  44. | `Right
  45. | `Col
  46. | `Colgroup
  47. | `Row
  48. | `Rowgroup
  49. | `All
  50. | `Cols
  51. | `Groups
  52. | `None
  53. | `Rows
  54. | `Rect
  55. | `Circle
  56. | `Poly
  57. | `Default
  58. | `One
  59. | `Zero
  60. | `Auto
  61. | `No
  62. | `Yes
  63. | `Defer
  64. | `Verbatim
  65. | `Latin
  66. | `Latin_name
  67. | `Latin_prose
  68. | `Full_width_latin
  69. | `Kana
  70. | `Katakana
  71. | `Numeric
  72. | `Tel
  73. | `Email
  74. | `Url
  75. | `Text
  76. | `Decimal
  77. | `Search
]
type sandbox_token = [
  1. | `Allow_forms
  2. | `Allow_pointer_lock
  3. | `Allow_popups
  4. | `Allow_top_navigation
  5. | `Allow_same_origin
  6. | `Allow_script
]
type input_type = [
  1. | `Button
  2. | `Checkbox
  3. | `Color
  4. | `Date
  5. | `Datetime
  6. | `Datetime_local
  7. | `Email
  8. | `File
  9. | `Hidden
  10. | `Image
  11. | `Month
  12. | `Number
  13. | `Password
  14. | `Radio
  15. | `Range
  16. | `Reset
  17. | `Search
  18. | `Submit
  19. | `Tel
  20. | `Text
  21. | `Time
  22. | `Url
  23. | `Week
]
type script_type = [
  1. | `Javascript
  2. | `Module
  3. | `Mime of string
]
type autocomplete_option = [
  1. | `On
  2. | `Off
  3. | `Tokens of string list
]