diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,9 @@
 # Revision history for type-of-html
 
+## 1.4.1.0  -- 2018-11-12
+
+* add aria rules and attributes
+
 ## 1.4.0.2  -- 2018-11-12
 
 * remove all checks for Raw data
diff --git a/src/Html/Attribute.hs b/src/Html/Attribute.hs
--- a/src/Html/Attribute.hs
+++ b/src/Html/Attribute.hs
@@ -5,6 +5,111 @@
 
 import Html.Type
 
+role_ :: a -> 'RoleA := a
+role_ = AT
+
+ariaActivedescendant_ :: a -> 'AriaActivedescendantA := a
+ariaActivedescendant_ = AT
+
+ariaAtomic_ :: a -> 'AriaAtomicA := a
+ariaAtomic_ = AT
+
+ariaAutocomplete_ :: a -> 'AriaAutocompleteA := a
+ariaAutocomplete_ = AT
+
+ariaBusy_ :: a -> 'AriaBusyA := a
+ariaBusy_ = AT
+
+ariaChecked_ :: a -> 'AriaCheckedA := a
+ariaChecked_ = AT
+
+ariaControls_ :: a -> 'AriaControlsA := a
+ariaControls_ = AT
+
+ariaDescribedby_ :: a -> 'AriaDescribedbyA := a
+ariaDescribedby_ = AT
+
+ariaDisabled_ :: a -> 'AriaDisabledA := a
+ariaDisabled_ = AT
+
+ariaDropeffect_ :: a -> 'AriaDropeffectA := a
+ariaDropeffect_ = AT
+
+ariaExpanded_ :: a -> 'AriaExpandedA := a
+ariaExpanded_ = AT
+
+ariaFlowto_ :: a -> 'AriaFlowtoA := a
+ariaFlowto_ = AT
+
+ariaGrabbed_ :: a -> 'AriaGrabbedA := a
+ariaGrabbed_ = AT
+
+ariaHaspopup_ :: a -> 'AriaHaspopupA := a
+ariaHaspopup_ = AT
+
+ariaHidden_ :: a -> 'AriaHiddenA := a
+ariaHidden_ = AT
+
+ariaInvalid_ :: a -> 'AriaInvalidA := a
+ariaInvalid_ = AT
+
+ariaLabel_ :: a -> 'AriaLabelA := a
+ariaLabel_ = AT
+
+ariaLabelledBy_ :: a -> 'AriaLabelledByA := a
+ariaLabelledBy_ = AT
+
+ariaLevel_ :: a -> 'AriaLevelA := a
+ariaLevel_ = AT
+
+ariaLive_ :: a -> 'AriaLiveA := a
+ariaLive_ = AT
+
+ariaMultiline_ :: a -> 'AriaMultilineA := a
+ariaMultiline_ = AT
+
+ariaMultiselectable_ :: a -> 'AriaMultiselectableA := a
+ariaMultiselectable_ = AT
+
+ariaOwns_ :: a -> 'AriaOwnsA := a
+ariaOwns_ = AT
+
+ariaPosinset_ :: a -> 'AriaPosinsetA := a
+ariaPosinset_ = AT
+
+ariaPressed_ :: a -> 'AriaPressedA := a
+ariaPressed_ = AT
+
+ariaReadonly_ :: a -> 'AriaReadonlyA := a
+ariaReadonly_ = AT
+
+ariaRelevant_ :: a -> 'AriaRelevantA := a
+ariaRelevant_ = AT
+
+ariaRequired_ :: a -> 'AriaRequiredA := a
+ariaRequired_ = AT
+
+ariaSelected_ :: a -> 'AriaSelectedA := a
+ariaSelected_ = AT
+
+ariaSetsize_ :: a -> 'AriaSetsizeA := a
+ariaSetsize_ = AT
+
+ariaSort_ :: a -> 'AriaSortA := a
+ariaSort_ = AT
+
+ariaValuemax_ :: a -> 'AriaValuemaxA := a
+ariaValuemax_ = AT
+
+ariaValuemin_ :: a -> 'AriaValueminA := a
+ariaValuemin_ = AT
+
+ariaValuenow_ :: a -> 'AriaValuenowA := a
+ariaValuenow_ = AT
+
+ariaValuetext_ :: a -> 'AriaValuetextA := a
+ariaValuetext_ = AT
+
 accept_ :: a -> 'AcceptA := a
 accept_ = AT
 
diff --git a/src/Html/Type/Internal.hs b/src/Html/Type/Internal.hs
--- a/src/Html/Type/Internal.hs
+++ b/src/Html/Type/Internal.hs
@@ -200,7 +200,43 @@
   | Xmp
 
 data Attribute
-  = AcceptA
+  = RoleA
+  | AriaActivedescendantA
+  | AriaAtomicA
+  | AriaAutocompleteA
+  | AriaBusyA
+  | AriaCheckedA
+  | AriaControlsA
+  | AriaDescribedbyA
+  | AriaDisabledA
+  | AriaDropeffectA
+  | AriaExpandedA
+  | AriaFlowtoA
+  | AriaGrabbedA
+  | AriaHaspopupA
+  | AriaHiddenA
+  | AriaInvalidA
+  | AriaLabelA
+  | AriaLabelledByA
+  | AriaLevelA
+  | AriaLiveA
+  | AriaMultilineA
+  | AriaMultiselectableA
+  | AriaOwnsA
+  | AriaPosinsetA
+  | AriaPressedA
+  | AriaReadonlyA
+  | AriaRelevantA
+  | AriaRequiredA
+  | AriaSelectedA
+  | AriaSetsizeA
+  | AriaSortA
+  | AriaValuemaxA
+  | AriaValueminA
+  | AriaValuenowA
+  | AriaValuetextA
+
+  | AcceptA
   | AcceptCharsetA
   | AccesskeyA
   | ActionA
@@ -556,134 +592,171 @@
 
 -- | Get type list of valid elements for a given attribute.  An empty list signifies global attribute.
 type family GetAInfo a = r | r -> a where
-  GetAInfo AcceptA              = AInfo "accept"              '[Form, Input]
-  GetAInfo AcceptCharsetA       = AInfo "accept-charset"      '[Form]
-  GetAInfo AccesskeyA           = AInfo "accesskey"           '[]
-  GetAInfo ActionA              = AInfo "action"              '[Form]
-  GetAInfo AllowfullscreenA     = AInfo "allowfullscreen"     '[Iframe]
-  GetAInfo AllowpaymentrequestA = AInfo "allowpaymentrequest" '[Iframe]
-  GetAInfo AlignA               = AInfo "align"               '[Applet, Caption, Col, Colgroup, Hr, Iframe, Img, Table, Tbody, Td, Tfoot, Th, Thead, Tr]
-  GetAInfo AltA                 = AInfo "alt"                 '[Applet, Area, Img, Input]
-  GetAInfo AsyncA               = AInfo "async"               '[Script]
-  GetAInfo AutocompleteA        = AInfo "autocomplete"        '[Form, Input]
-  GetAInfo AutofocusA           = AInfo "autofocus"           '[Button, Input, Keygen, Select, Textarea]
-  GetAInfo AutoplayA            = AInfo "autoplay"            '[Audio, Video]
-  GetAInfo AutosaveA            = AInfo "autosave"            '[Input]
-  GetAInfo BgcolorA             = AInfo "bgcolor"             '[Body, Col, Colgroup, Marquee, Table, Tbody, Tfoot, Td, Th, Tr]
-  GetAInfo BorderA              = AInfo "border"              '[Img, Object, Table]
-  GetAInfo BufferedA            = AInfo "buffered"            '[Audio, Video]
-  GetAInfo ChallengeA           = AInfo "challenge"           '[Keygen]
-  GetAInfo CharsetA             = AInfo "charset"             '[Meta, Script]
-  GetAInfo CheckedA             = AInfo "checked"             '[Command, Input]
-  GetAInfo CiteA                = AInfo "cite"                '[Blockquote, Del, Ins, Q]
-  GetAInfo ClassA               = AInfo "class"               '[]
-  GetAInfo CodeA                = AInfo "code"                '[Applet]
-  GetAInfo CodebaseA            = AInfo "codebase"            '[Applet]
-  GetAInfo ColorA               = AInfo "color"               '[Basefont, Font, Hr]
-  GetAInfo ColsA                = AInfo "cols"                '[Textarea]
-  GetAInfo ColspanA             = AInfo "colspan"             '[Td, Th]
-  GetAInfo ContentA             = AInfo "content"             '[Meta]
-  GetAInfo ContenteditableA     = AInfo "contenteditable"     '[]
-  GetAInfo ContextmenuA         = AInfo "contextmenu"         '[]
-  GetAInfo ControlsA            = AInfo "controls"            '[Audio, Video]
-  GetAInfo CoordsA              = AInfo "coords"              '[Area]
-  GetAInfo CrossoriginA         = AInfo "crossorigin"         '[Audio, Img, Link, Script, Video]
-  GetAInfo DataA                = AInfo "data"                '[Object]
-  GetAInfo DatetimeA            = AInfo "datetime"            '[Del, Ins, Time]
-  GetAInfo DefaultA             = AInfo "default"             '[Track]
-  GetAInfo DeferA               = AInfo "defer"               '[Script]
-  GetAInfo DirA                 = AInfo "dir"                 '[]
-  GetAInfo DirnameA             = AInfo "dirname"             '[Input, Textarea]
-  GetAInfo DisabledA            = AInfo "disabled"            '[Button, Command, Fieldset, Input, Keygen, Optgroup, Option, Select, Textarea]
-  GetAInfo DownloadA            = AInfo "download"            '[A, Area]
-  GetAInfo DraggableA           = AInfo "draggable"           '[]
-  GetAInfo DropzoneA            = AInfo "dropzone"            '[]
-  GetAInfo EnctypeA             = AInfo "enctype"             '[Form]
-  GetAInfo ForA                 = AInfo "for"                 '[Label, Output]
-  GetAInfo FormA                = AInfo "form"                '[Button, Fieldset, Input, Keygen, Label, Meter, Object, Output, Progress, Select, Textarea]
-  GetAInfo FormactionA          = AInfo "formaction"          '[Input, Button]
-  GetAInfo FormenctypeA         = AInfo "formenctype"         '[Button, Input]
-  GetAInfo FormmethodA          = AInfo "formmethod"          '[Button, Input]
-  GetAInfo FormnovalidateA      = AInfo "formnovalidate"      '[Button, Input]
-  GetAInfo FormtargetA          = AInfo "formtarget"          '[Button, Input]
-  GetAInfo HeadersA             = AInfo "headers"             '[Td, Th]
-  GetAInfo HeightA              = AInfo "height"              '[Canvas, Embed, Iframe, Img, Input, Object, Video]
-  GetAInfo HiddenA              = AInfo "hidden"              '[]
-  GetAInfo HighA                = AInfo "high"                '[Meter]
-  GetAInfo HrefA                = AInfo "href"                '[A, Area, Base, Link]
-  GetAInfo HreflangA            = AInfo "hreflang"            '[A, Area, Link]
-  GetAInfo HttpEquivA           = AInfo "httpEquiv"           '[Meta]
-  GetAInfo IconA                = AInfo "icon"                '[Command]
-  GetAInfo IdA                  = AInfo "id"                  '[]
-  GetAInfo IntegrityA           = AInfo "integrity"           '[Link, Script]
-  GetAInfo IsmapA               = AInfo "ismap"               '[Img]
-  GetAInfo ItempropA            = AInfo "itemprop"            '[]
-  GetAInfo KeytypeA             = AInfo "keytype"             '[Keygen]
-  GetAInfo KindA                = AInfo "kind"                '[Track]
-  GetAInfo LabelA               = AInfo "label"               '[Track]
-  GetAInfo LangA                = AInfo "lang"                '[]
-  GetAInfo LanguageA            = AInfo "language"            '[Script]
-  GetAInfo ListA                = AInfo "list"                '[Input]
-  GetAInfo LongdescA            = AInfo "longdesc"            '[Img]
-  GetAInfo LoopA                = AInfo "loop"                '[Audio, Bgsound, Marquee, Video]
-  GetAInfo LowA                 = AInfo "low"                 '[Meter]
-  GetAInfo ManifestA            = AInfo "manifest"            '[Html]
-  GetAInfo MaxA                 = AInfo "max"                 '[Input, Meter, Progress]
-  GetAInfo MaxlengthA           = AInfo "maxlength"           '[Input, Textarea]
-  GetAInfo MediaA               = AInfo "media"               '[A, Area, Link, Source, Style]
-  GetAInfo MethodA              = AInfo "method"              '[Form]
-  GetAInfo MinA                 = AInfo "min"                 '[Input, Meter]
-  GetAInfo MinlengthA           = AInfo "minlength"           '[Input, Textarea]
-  GetAInfo MultipleA            = AInfo "multiple"            '[Input, Select]
-  GetAInfo MutedA               = AInfo "muted"               '[Video]
-  GetAInfo NameA                = AInfo "name"                '[Button, Form, Fieldset, Iframe, Input, Keygen, Object, Output, Select, Textarea, Map, Meta, Param]
-  GetAInfo NonceA               = AInfo "nonce"               '[Link, Script, Style]
-  GetAInfo NovalidateA          = AInfo "novalidate"          '[Form]
-  GetAInfo OpenA                = AInfo "open"                '[Details]
-  GetAInfo OptimumA             = AInfo "optimum"             '[Meter]
-  GetAInfo PatternA             = AInfo "pattern"             '[Input]
-  GetAInfo PingA                = AInfo "ping"                '[A, Area]
-  GetAInfo PlaceholderA         = AInfo "placeholder"         '[Input, Textarea]
-  GetAInfo PosterA              = AInfo "poster"              '[Video]
-  GetAInfo PreloadA             = AInfo "preload"             '[Audio, Video]
-  GetAInfo RadiogroupA          = AInfo "radiogroup"          '[Command]
-  GetAInfo ReadonlyA            = AInfo "readonly"            '[Input, Textarea]
-  GetAInfo ReferrerpolicyA      = AInfo "referrerpolicy"      '[A, Area, Iframe, Img, Link]
-  GetAInfo RelA                 = AInfo "rel"                 '[A, Area, Link]
-  GetAInfo RequiredA            = AInfo "required"            '[Input, Select, Textarea]
-  GetAInfo RevA                 = AInfo "rev"                 '[A, Link]
-  GetAInfo ReversedA            = AInfo "reversed"            '[Ol]
-  GetAInfo RowsA                = AInfo "rows"                '[Textarea]
-  GetAInfo RowspanA             = AInfo "rowspan"             '[Td, Th]
-  GetAInfo SandboxA             = AInfo "sandbox"             '[Iframe]
-  GetAInfo ScopeA               = AInfo "scope"               '[Th]
-  GetAInfo ScopedA              = AInfo "scoped"              '[Style]
-  GetAInfo SeamlessA            = AInfo "seamless"            '[Iframe]
-  GetAInfo SelectedA            = AInfo "selected"            '[Option]
-  GetAInfo ShapeA               = AInfo "shape"               '[A, Area]
-  GetAInfo SizeA                = AInfo "size"                '[Input, Select]
-  GetAInfo SizesA               = AInfo "sizes"               '[Link, Img, Source]
-  GetAInfo SlotA                = AInfo "slot"                '[]
-  GetAInfo SpanA                = AInfo "span"                '[Col, Colgroup]
-  GetAInfo SpellcheckA          = AInfo "spellcheck"          '[]
-  GetAInfo SrcA                 = AInfo "src"                 '[Audio, Embed, Iframe, Img, Input, Script, Source, Track, Video]
-  GetAInfo SrcdocA              = AInfo "srcdoc"              '[Iframe]
-  GetAInfo SrclangA             = AInfo "srclang"             '[Track]
-  GetAInfo SrcsetA              = AInfo "srcset"              '[Img]
-  GetAInfo StartA               = AInfo "start"               '[Ol]
-  GetAInfo StepA                = AInfo "step"                '[Input]
-  GetAInfo StyleA               = AInfo "style"               '[]
-  GetAInfo SummaryA             = AInfo "summary"             '[Table]
-  GetAInfo TabindexA            = AInfo "tabindex"            '[]
-  GetAInfo TargetA              = AInfo "target"              '[A, Area, Base, Form]
-  GetAInfo TitleA               = AInfo "title"               '[]
-  GetAInfo TranslateA           = AInfo "translate"           '[]
-  GetAInfo TypeA                = AInfo "type"                '[Button, Input, Command, Embed, Object, Script, Source, Style, Menu, Ol, A, Area, Link]
-  GetAInfo TypemustmatchA       = AInfo "typemustmatch"       '[Object]
-  GetAInfo UsemapA              = AInfo "usemap"              '[Img, Input, Object]
-  GetAInfo ValueA               = AInfo "value"               '[Button, Option, Input, Li, Meter, Progress, Param, Data]
-  GetAInfo WidthA               = AInfo "width"               '[Canvas, Embed, Iframe, Img, Input, Object, Video]
-  GetAInfo WrapA                = AInfo "wrap"                '[Textarea]
+
+  GetAInfo RoleA                 = AInfo "role"                  '[]
+  GetAInfo AriaActivedescendantA = AInfo "aria-activedescendant" '[]
+  GetAInfo AriaAtomicA           = AInfo "aria-atomic"           '[]
+  GetAInfo AriaAutocompleteA     = AInfo "aria-autocomplete"     '[]
+  GetAInfo AriaBusyA             = AInfo "aria-busy"             '[]
+  GetAInfo AriaCheckedA          = AInfo "aria-checked"          '[]
+  GetAInfo AriaControlsA         = AInfo "aria-controls"         '[]
+  GetAInfo AriaDescribedbyA      = AInfo "aria-describedby"      '[]
+  GetAInfo AriaDisabledA         = AInfo "aria-disabled"         '[]
+  GetAInfo AriaDropeffectA       = AInfo "aria-dropeffect"       '[]
+  GetAInfo AriaExpandedA         = AInfo "aria-expanded"         '[]
+  GetAInfo AriaFlowtoA           = AInfo "aria-flowto"           '[]
+  GetAInfo AriaGrabbedA          = AInfo "aria-grabbed"          '[]
+  GetAInfo AriaHaspopupA         = AInfo "aria-haspopup"         '[]
+  GetAInfo AriaHiddenA           = AInfo "aria-hidden"           '[]
+  GetAInfo AriaInvalidA          = AInfo "aria-invalid"          '[]
+  GetAInfo AriaLabelA            = AInfo "aria-label"            '[]
+  GetAInfo AriaLabelledByA       = AInfo "aria-labelledBy"       '[]
+  GetAInfo AriaLevelA            = AInfo "aria-level"            '[]
+  GetAInfo AriaLiveA             = AInfo "aria-live"             '[]
+  GetAInfo AriaMultilineA        = AInfo "aria-multiline"        '[]
+  GetAInfo AriaMultiselectableA  = AInfo "aria-multiselectable"  '[]
+  GetAInfo AriaOwnsA             = AInfo "aria-owns"             '[]
+  GetAInfo AriaPosinsetA         = AInfo "aria-posinset"         '[]
+  GetAInfo AriaPressedA          = AInfo "aria-pressed"          '[]
+  GetAInfo AriaReadonlyA         = AInfo "aria-readonly"         '[]
+  GetAInfo AriaRelevantA         = AInfo "aria-relevant"         '[]
+  GetAInfo AriaRequiredA         = AInfo "aria-required"         '[]
+  GetAInfo AriaSelectedA         = AInfo "aria-selected"         '[]
+  GetAInfo AriaSetsizeA          = AInfo "aria-setsize"          '[]
+  GetAInfo AriaSortA             = AInfo "aria-sort"             '[]
+  GetAInfo AriaValuemaxA         = AInfo "aria-valuemax"         '[]
+  GetAInfo AriaValueminA         = AInfo "aria-valuemin"         '[]
+  GetAInfo AriaValuenowA         = AInfo "aria-valuenow"         '[]
+  GetAInfo AriaValuetextA        = AInfo "aria-valuetext"        '[]
+
+  GetAInfo AcceptA               = AInfo "accept"                '[Form, Input]
+  GetAInfo AcceptCharsetA        = AInfo "accept-charset"        '[Form]
+  GetAInfo AccesskeyA            = AInfo "accesskey"             '[]
+  GetAInfo ActionA               = AInfo "action"                '[Form]
+  GetAInfo AllowfullscreenA      = AInfo "allowfullscreen"       '[Iframe]
+  GetAInfo AllowpaymentrequestA  = AInfo "allowpaymentrequest"   '[Iframe]
+  GetAInfo AlignA                = AInfo "align"                 '[Applet, Caption, Col, Colgroup, Hr, Iframe, Img, Table, Tbody, Td, Tfoot, Th, Thead, Tr]
+  GetAInfo AltA                  = AInfo "alt"                   '[Applet, Area, Img, Input]
+  GetAInfo AsyncA                = AInfo "async"                 '[Script]
+  GetAInfo AutocompleteA         = AInfo "autocomplete"          '[Form, Input]
+  GetAInfo AutofocusA            = AInfo "autofocus"             '[Button, Input, Keygen, Select, Textarea]
+  GetAInfo AutoplayA             = AInfo "autoplay"              '[Audio, Video]
+  GetAInfo AutosaveA             = AInfo "autosave"              '[Input]
+  GetAInfo BgcolorA              = AInfo "bgcolor"               '[Body, Col, Colgroup, Marquee, Table, Tbody, Tfoot, Td, Th, Tr]
+  GetAInfo BorderA               = AInfo "border"                '[Img, Object, Table]
+  GetAInfo BufferedA             = AInfo "buffered"              '[Audio, Video]
+  GetAInfo ChallengeA            = AInfo "challenge"             '[Keygen]
+  GetAInfo CharsetA              = AInfo "charset"               '[Meta, Script]
+  GetAInfo CheckedA              = AInfo "checked"               '[Command, Input]
+  GetAInfo CiteA                 = AInfo "cite"                  '[Blockquote, Del, Ins, Q]
+  GetAInfo ClassA                = AInfo "class"                 '[]
+  GetAInfo CodeA                 = AInfo "code"                  '[Applet]
+  GetAInfo CodebaseA             = AInfo "codebase"              '[Applet]
+  GetAInfo ColorA                = AInfo "color"                 '[Basefont, Font, Hr]
+  GetAInfo ColsA                 = AInfo "cols"                  '[Textarea]
+  GetAInfo ColspanA              = AInfo "colspan"               '[Td, Th]
+  GetAInfo ContentA              = AInfo "content"               '[Meta]
+  GetAInfo ContenteditableA      = AInfo "contenteditable"       '[]
+  GetAInfo ContextmenuA          = AInfo "contextmenu"           '[]
+  GetAInfo ControlsA             = AInfo "controls"              '[Audio, Video]
+  GetAInfo CoordsA               = AInfo "coords"                '[Area]
+  GetAInfo CrossoriginA          = AInfo "crossorigin"           '[Audio, Img, Link, Script, Video]
+  GetAInfo DataA                 = AInfo "data"                  '[Object]
+  GetAInfo DatetimeA             = AInfo "datetime"              '[Del, Ins, Time]
+  GetAInfo DefaultA              = AInfo "default"               '[Track]
+  GetAInfo DeferA                = AInfo "defer"                 '[Script]
+  GetAInfo DirA                  = AInfo "dir"                   '[]
+  GetAInfo DirnameA              = AInfo "dirname"               '[Input, Textarea]
+  GetAInfo DisabledA             = AInfo "disabled"              '[Button, Command, Fieldset, Input, Keygen, Optgroup, Option, Select, Textarea]
+  GetAInfo DownloadA             = AInfo "download"              '[A, Area]
+  GetAInfo DraggableA            = AInfo "draggable"             '[]
+  GetAInfo DropzoneA             = AInfo "dropzone"              '[]
+  GetAInfo EnctypeA              = AInfo "enctype"               '[Form]
+  GetAInfo ForA                  = AInfo "for"                   '[Label, Output]
+  GetAInfo FormA                 = AInfo "form"                  '[Button, Fieldset, Input, Keygen, Label, Meter, Object, Output, Progress, Select, Textarea]
+  GetAInfo FormactionA           = AInfo "formaction"            '[Input, Button]
+  GetAInfo FormenctypeA          = AInfo "formenctype"           '[Button, Input]
+  GetAInfo FormmethodA           = AInfo "formmethod"            '[Button, Input]
+  GetAInfo FormnovalidateA       = AInfo "formnovalidate"        '[Button, Input]
+  GetAInfo FormtargetA           = AInfo "formtarget"            '[Button, Input]
+  GetAInfo HeadersA              = AInfo "headers"               '[Td, Th]
+  GetAInfo HeightA               = AInfo "height"                '[Canvas, Embed, Iframe, Img, Input, Object, Video]
+  GetAInfo HiddenA               = AInfo "hidden"                '[]
+  GetAInfo HighA                 = AInfo "high"                  '[Meter]
+  GetAInfo HrefA                 = AInfo "href"                  '[A, Area, Base, Link]
+  GetAInfo HreflangA             = AInfo "hreflang"              '[A, Area, Link]
+  GetAInfo HttpEquivA            = AInfo "httpEquiv"             '[Meta]
+  GetAInfo IconA                 = AInfo "icon"                  '[Command]
+  GetAInfo IdA                   = AInfo "id"                    '[]
+  GetAInfo IntegrityA            = AInfo "integrity"             '[Link, Script]
+  GetAInfo IsmapA                = AInfo "ismap"                 '[Img]
+  GetAInfo ItempropA             = AInfo "itemprop"              '[]
+  GetAInfo KeytypeA              = AInfo "keytype"               '[Keygen]
+  GetAInfo KindA                 = AInfo "kind"                  '[Track]
+  GetAInfo LabelA                = AInfo "label"                 '[Track]
+  GetAInfo LangA                 = AInfo "lang"                  '[]
+  GetAInfo LanguageA             = AInfo "language"              '[Script]
+  GetAInfo ListA                 = AInfo "list"                  '[Input]
+  GetAInfo LongdescA             = AInfo "longdesc"              '[Img]
+  GetAInfo LoopA                 = AInfo "loop"                  '[Audio, Bgsound, Marquee, Video]
+  GetAInfo LowA                  = AInfo "low"                   '[Meter]
+  GetAInfo ManifestA             = AInfo "manifest"              '[Html]
+  GetAInfo MaxA                  = AInfo "max"                   '[Input, Meter, Progress]
+  GetAInfo MaxlengthA            = AInfo "maxlength"             '[Input, Textarea]
+  GetAInfo MediaA                = AInfo "media"                 '[A, Area, Link, Source, Style]
+  GetAInfo MethodA               = AInfo "method"                '[Form]
+  GetAInfo MinA                  = AInfo "min"                   '[Input, Meter]
+  GetAInfo MinlengthA            = AInfo "minlength"             '[Input, Textarea]
+  GetAInfo MultipleA             = AInfo "multiple"              '[Input, Select]
+  GetAInfo MutedA                = AInfo "muted"                 '[Video]
+  GetAInfo NameA                 = AInfo "name"                  '[Button, Form, Fieldset, Iframe, Input, Keygen, Object, Output, Select, Textarea, Map, Meta, Param]
+  GetAInfo NonceA                = AInfo "nonce"                 '[Link, Script, Style]
+  GetAInfo NovalidateA           = AInfo "novalidate"            '[Form]
+  GetAInfo OpenA                 = AInfo "open"                  '[Details]
+  GetAInfo OptimumA              = AInfo "optimum"               '[Meter]
+  GetAInfo PatternA              = AInfo "pattern"               '[Input]
+  GetAInfo PingA                 = AInfo "ping"                  '[A, Area]
+  GetAInfo PlaceholderA          = AInfo "placeholder"           '[Input, Textarea]
+  GetAInfo PosterA               = AInfo "poster"                '[Video]
+  GetAInfo PreloadA              = AInfo "preload"               '[Audio, Video]
+  GetAInfo RadiogroupA           = AInfo "radiogroup"            '[Command]
+  GetAInfo ReadonlyA             = AInfo "readonly"              '[Input, Textarea]
+  GetAInfo ReferrerpolicyA       = AInfo "referrerpolicy"        '[A, Area, Iframe, Img, Link]
+  GetAInfo RelA                  = AInfo "rel"                   '[A, Area, Link]
+  GetAInfo RequiredA             = AInfo "required"              '[Input, Select, Textarea]
+  GetAInfo RevA                  = AInfo "rev"                   '[A, Link]
+  GetAInfo ReversedA             = AInfo "reversed"              '[Ol]
+  GetAInfo RowsA                 = AInfo "rows"                  '[Textarea]
+  GetAInfo RowspanA              = AInfo "rowspan"               '[Td, Th]
+  GetAInfo SandboxA              = AInfo "sandbox"               '[Iframe]
+  GetAInfo ScopeA                = AInfo "scope"                 '[Th]
+  GetAInfo ScopedA               = AInfo "scoped"                '[Style]
+  GetAInfo SeamlessA             = AInfo "seamless"              '[Iframe]
+  GetAInfo SelectedA             = AInfo "selected"              '[Option]
+  GetAInfo ShapeA                = AInfo "shape"                 '[A, Area]
+  GetAInfo SizeA                 = AInfo "size"                  '[Input, Select]
+  GetAInfo SizesA                = AInfo "sizes"                 '[Link, Img, Source]
+  GetAInfo SlotA                 = AInfo "slot"                  '[]
+  GetAInfo SpanA                 = AInfo "span"                  '[Col, Colgroup]
+  GetAInfo SpellcheckA           = AInfo "spellcheck"            '[]
+  GetAInfo SrcA                  = AInfo "src"                   '[Audio, Embed, Iframe, Img, Input, Script, Source, Track, Video]
+  GetAInfo SrcdocA               = AInfo "srcdoc"                '[Iframe]
+  GetAInfo SrclangA              = AInfo "srclang"               '[Track]
+  GetAInfo SrcsetA               = AInfo "srcset"                '[Img]
+  GetAInfo StartA                = AInfo "start"                 '[Ol]
+  GetAInfo StepA                 = AInfo "step"                  '[Input]
+  GetAInfo StyleA                = AInfo "style"                 '[]
+  GetAInfo SummaryA              = AInfo "summary"               '[Table]
+  GetAInfo TabindexA             = AInfo "tabindex"              '[]
+  GetAInfo TargetA               = AInfo "target"                '[A, Area, Base, Form]
+  GetAInfo TitleA                = AInfo "title"                 '[]
+  GetAInfo TranslateA            = AInfo "translate"             '[]
+  GetAInfo TypeA                 = AInfo "type"                  '[Button, Input, Command, Embed, Object, Script, Source, Style, Menu, Ol, A, Area, Link]
+  GetAInfo TypemustmatchA        = AInfo "typemustmatch"         '[Object]
+  GetAInfo UsemapA               = AInfo "usemap"                '[Img, Input, Object]
+  GetAInfo ValueA                = AInfo "value"                 '[Button, Option, Input, Li, Meter, Progress, Param, Data]
+  GetAInfo WidthA                = AInfo "width"                 '[Canvas, Embed, Iframe, Img, Input, Object, Video]
+  GetAInfo WrapA                 = AInfo "wrap"                  '[Textarea]
 
 -- | Retrieve type level meta data about elements.
 type family GetEInfo a = r | r -> a where
diff --git a/type-of-html.cabal b/type-of-html.cabal
--- a/type-of-html.cabal
+++ b/type-of-html.cabal
@@ -1,5 +1,5 @@
 name:                 type-of-html
-version:              1.4.0.2
+version:              1.4.1.0
 synopsis:             High performance type driven html generation.
 description:          This library makes most invalid html documents compile time errors and uses advanced type level features to realise compile time computations.
 license:              BSD3
