diff --git a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/applications.rnc b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/applications.rnc index 609d79f9d..e87f7a1a0 100644 --- a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/applications.rnc +++ b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/applications.rnc @@ -217,11 +217,11 @@ ) summary.inner = ( common.inner.phrasing - | h1.elem - | h2.elem - | h3.elem - | h4.elem - | h5.elem - | h6.elem - | hgroup.elem + & h1.elem? + & h2.elem? + & h3.elem? + & h4.elem? + & h5.elem? + & h6.elem? + & hgroup.elem? ) diff --git a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/core-scripting.rnc b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/core-scripting.rnc index dd5d87e71..a63913770 100644 --- a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/core-scripting.rnc +++ b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/core-scripting.rnc @@ -129,7 +129,6 @@ & scripting.attr.ondrag? & scripting.attr.ondragend? & scripting.attr.ondragenter? - & scripting.attr.ondragexit? & scripting.attr.ondragleave? & scripting.attr.ondragover? & scripting.attr.ondragstart? @@ -139,6 +138,8 @@ & scripting.attr.onended? & scripting.attr.onerror? & scripting.attr.onfocus? + & scripting.attr.onfocusin? + & scripting.attr.onfocusout? & scripting.attr.onformdata? & scripting.attr.oninput? & scripting.attr.oninvalid? @@ -175,6 +176,10 @@ & scripting.attr.onsuspend? & scripting.attr.ontimeupdate? & scripting.attr.ontoggle? + & scripting.attr.ontransitioncancel? + & scripting.attr.ontransitionend? + & scripting.attr.ontransitionrun? + & scripting.attr.ontransitionstart? & scripting.attr.onvolumechange? & scripting.attr.onwaiting? & scripting.attr.onwheel? @@ -216,8 +221,6 @@ attribute ondragend { common.data.functionbody } scripting.attr.ondragenter = attribute ondragenter { common.data.functionbody } - scripting.attr.ondragexit = - attribute ondragexit { common.data.functionbody } scripting.attr.ondragleave = attribute ondragleave { common.data.functionbody } scripting.attr.ondragover = @@ -236,6 +239,10 @@ attribute onerror { common.data.functionbody } scripting.attr.onfocus = attribute onfocus { common.data.functionbody } + scripting.attr.onfocusin = + attribute onfocusin { common.data.functionbody } + scripting.attr.onfocusout = + attribute onfocusout { common.data.functionbody } scripting.attr.onformchange = attribute onformchange { common.data.functionbody } scripting.attr.onformdata = @@ -314,6 +321,14 @@ attribute ontimeupdate { common.data.functionbody } scripting.attr.ontoggle = attribute ontoggle { common.data.functionbody } + scripting.attr.ontransitioncancel = + attribute ontransitioncancel { common.data.functionbody } + scripting.attr.ontransitionend = + attribute ontransitionend { common.data.functionbody } + scripting.attr.ontransitionrun = + attribute ontransitionrun { common.data.functionbody } + scripting.attr.ontransitionstart = + attribute ontransitionstart { common.data.functionbody } scripting.attr.onvolumechange = attribute onvolumechange { common.data.functionbody } scripting.attr.onwaiting = diff --git a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/embed.rnc b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/embed.rnc index b6ad0589a..011b0783f 100644 --- a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/embed.rnc +++ b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/embed.rnc @@ -27,16 +27,12 @@ namespace local = "" & embedded.content.attrs.crossorigin? ) - no-alt-img.elem = - element img { img.inner & shared-img.attrs } - img.elem = element img { img.inner & img.attrs } img.attrs = ( shared-img.attrs - & img.attrs.alt + & img.attrs.alt? & ( common.attrs.aria.implicit.img - | common.attrs.aria.implicit.img | common.attrs.aria.role.button | common.attrs.aria.role.checkbox | common.attrs.aria.role.img @@ -112,7 +108,6 @@ namespace local = "" img.inner = empty - common.elem.phrasing |= no-alt-img.elem common.elem.phrasing |= img.elem ## Image with multiple sources: @@ -234,7 +229,6 @@ namespace local = "" | ondrag | ondragend | ondragenter - | ondragexit | ondragleave | ondragover | ondragstart @@ -244,6 +238,8 @@ namespace local = "" | onended | onerror | onfocus + | onfocusin + | onfocusout | onformdata | oninput | oninvalid @@ -280,6 +276,10 @@ namespace local = "" | onsuspend | ontimeupdate | ontoggle + | ontransitioncancel + | ontransitionend + | ontransitionrun + | ontransitionstart | onvolumechange | onwaiting | onwheel @@ -479,10 +479,9 @@ namespace local = "" & iframe.attrs.name? & iframe.attrs.width? & iframe.attrs.height? + & iframe.attrs.loading? & iframe.attrs.sandbox? & iframe.attrs.allowfullscreen? - & iframe.attrs.allowpaymentrequest? - & iframe.attrs.allowusermedia? & iframe.attrs.allow? & referrerpolicy? & ( common.attrs.aria.role.application @@ -507,6 +506,10 @@ namespace local = "" attribute height { common.data.integer.non-negative } + iframe.attrs.loading = + attribute loading { + "lazy" | "eager" + } iframe.attrs.width = attribute width { common.data.integer.non-negative @@ -519,14 +522,6 @@ namespace local = "" attribute allowfullscreen { "allowfullscreen" | "" } & v5only - iframe.attrs.allowpaymentrequest = - attribute allowpaymentrequest { - "allowpaymentrequest" | "" - } & v5only - iframe.attrs.allowusermedia = - attribute allowusermedia { - "allowusermedia" | "" - } & v5only iframe.attrs.allow = attribute allow { common.data.feature-policy diff --git a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/meta.rnc b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/meta.rnc index 5f9c57b56..f0a08f613 100644 --- a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/meta.rnc +++ b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/meta.rnc @@ -175,6 +175,7 @@ | string "audioworklet" | string "document" | string "embed" + | string "fetch" | string "font" | string "image" | string "manifest" diff --git a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/web-forms2.rnc b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/web-forms2.rnc index c9dcd657b..10cde3524 100644 --- a/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/web-forms2.rnc +++ b/src/main/resources/com/adobe/epubcheck/schema/30/mod/html5/web-forms2.rnc @@ -210,6 +210,7 @@ input.file.attrs &= ( shared-input.attrs & input.attrs.multiple? + & aria.prop.required? & input.input.attrs.capture? ) input.input.attrs.capture = diff --git a/src/main/resources/com/adobe/epubcheck/schema/30/mod/svg11/svg-basic-filter.rnc b/src/main/resources/com/adobe/epubcheck/schema/30/mod/svg11/svg-basic-filter.rnc index e3e861f13..275e36f94 100644 --- a/src/main/resources/com/adobe/epubcheck/schema/30/mod/svg11/svg-basic-filter.rnc +++ b/src/main/resources/com/adobe/epubcheck/schema/30/mod/svg11/svg-basic-filter.rnc @@ -131,7 +131,22 @@ grammar { attribute in2 { text }, [ a:defaultValue = "normal" ] attribute mode { - string "normal" | string "multiply" | string "screen" | string "darken" | string "lighten" + string "normal" + | string "multiply" + | string "screen" + | string "overlay" + | string "darken" + | string "lighten" + | string "color-dodge" + | string "color-burn" + | string "hard-light" + | string "soft-light" + | string "difference" + | string "exclusion" + | string "hue" + | string "saturation" + | string "color" + | string "luminosity" }? a:documentation [ "\x{a}" ~ @@ -184,7 +199,7 @@ grammar { attribute in2 { text }, [ a:defaultValue = "over" ] attribute operator { - string "over" | string "in" | string "out" | string "atop" | string "xor" | string "arithmetic" + string "over" | string "in" | string "out" | string "atop" | string "xor" | string "lighter" | string "arithmetic" }?, attribute k1 { Number.datatype }?, attribute k2 { Number.datatype }?,