All Downloads are FREE. Search and download functionalities are using the official Maven repository.

relaxng.meta.rnc Maven / Gradle / Ivy

The newest version!
datatypes w = "http://whattf.org/datatype-draft"

# #####################################################################
##  RELAX NG Schema for HTML 5: Global Structure & Metadata          #
# #####################################################################

## Root Element: 

	html.elem =
		element html { html.inner & html.attrs }
	html.attrs =
		(	common.attrs
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
	html.inner =
		(	head.elem
		,	body.elem
		)

## Metadata Container: 

	head.elem =
		element head { head.inner & head.attrs }
	head.attrs =
		(	common.attrs
#		&	head.attrs.profile?
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
#		head.attrs.profile =
#			attribute profile {
#				common.data.uris #REVISIT should these be absolute (zero or more)
#			}
	head.inner =
		(	title.elem
		&	base.elem? # REVISIT need a non-schema checker or Schematron
		&	common.inner.metadata # Limit encoding decl position in Schematron
		)
#	head.inner =
#		(	meta.elem.encoding?
#		,	(	title.elem
#			&	base.elem? # REVISIT need a non-schema checker or Schematron
#			&	common.inner.metadata
#			)
#		)
		
## Content Container: 

	body.elem =
		element body { body.inner & body.attrs }
	body.attrs =
		(	common.attrs
		&	(	common.attrs.aria.landmark.application
			|	common.attrs.aria.landmark.document
			|	common.attrs.aria.role.presentation
			|	common.attrs.aria.implicit.document
			)?
		&	body.attrs.onafterprint?
		&	body.attrs.onbeforeprint?
		&	body.attrs.onbeforeunload?
		&	body.attrs.onhashchange?
		&	body.attrs.onmessage?
		&	body.attrs.onoffline?
		&	body.attrs.ononline?
		&	body.attrs.onpagehide?
		&	body.attrs.onpageshow?
		&	body.attrs.onpopstate?
		&	body.attrs.onresize?
		&	body.attrs.onstorage?
		&	body.attrs.onunload?
		)
	body.inner =
		( common.inner.flow )

	body.attrs.onafterprint =
		attribute onafterprint { common.data.functionbody }
	body.attrs.onbeforeprint =
		attribute onbeforeprint { common.data.functionbody }
	body.attrs.onbeforeunload =
		attribute onbeforeunload { common.data.functionbody }
	body.attrs.onhashchange =
		attribute onhashchange { common.data.functionbody }
	body.attrs.onmessage =
		attribute onmessage { common.data.functionbody }
	body.attrs.onoffline =
		attribute onoffline { common.data.functionbody }
	body.attrs.ononline =
		attribute ononline { common.data.functionbody }
	body.attrs.onpopstate =
		attribute onpopstate { common.data.functionbody }
	body.attrs.onpagehide =
		attribute onpagehide { common.data.functionbody }
	body.attrs.onpageshow =
		attribute onpageshow { common.data.functionbody }
	body.attrs.onredo =
		attribute onredo { common.data.functionbody }
	body.attrs.onresize =
		attribute onresize { common.data.functionbody }
	body.attrs.onstorage =
		attribute onstorage { common.data.functionbody }
	body.attrs.onundo =
		attribute onundo { common.data.functionbody }
	body.attrs.onunload =
		attribute onunload { common.data.functionbody }

## Document Title: 

	title.elem =
		element title { title.inner & title.attrs }
	title.attrs =
		(	common.attrs
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
	title.inner =
		( text )

## Base URI: <base>

	base.elem =
		element base { base.inner & base.attrs }
	base.attrs =
		(	common.attrs.basic
		&	common.attrs.i18n
		&	common.attrs.present
		&	common.attrs.other
		&	(	(	base.attrs.href
				&	base.attrs.target?
				)
			|	base.attrs.target
			)
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
	base.attrs.href =
		attribute href {
			common.data.uri
		}
	base.attrs.target =
		attribute target {
			common.data.browsing-context-or-keyword
		}
	base.inner =
		( empty )

## Global Relationships: <link>

	link.elem =
		element link { link.inner & link.attrs }
	link.attrs =
		(	common.attrs.basic
		&	common.attrs.i18n
		&	common.attrs.present
		&	common.attrs.other
		&	link.attrs.href
		&	link.attrs.rel
		&	shared-hyperlink.attrs.hreflang?
		&	shared-hyperlink.attrs.media?
		&	shared-hyperlink.attrs.type?
		&	link.attrs.sizes?
		#	link.attrs.title included in common.attrs
		&	(	common.attrs.aria.role.link
			|	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		link.attrs.href =
			attribute href {
				common.data.uri.non-empty
			}
		link.attrs.rel =
			attribute rel {
				w:link-rel
			}
		link.attrs.sizes =
			attribute sizes {
				w:string "any" | common.data.sizes
			}
	link.inner =
		( empty )
		
	common.elem.metadata |= link.elem

## Global Style: <style>

	style.elem =
		element style { style.inner & style.attrs }
	style.attrs =
		(	common.attrs
		&	style.attrs.type?
		&	style.attrs.media?
		#	style.attrs.title included in common.attrs
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		style.attrs.type =
			attribute type {
				common.data.mimetype
			}
		style.attrs.media =
			attribute media {
				common.data.mediaquery
			}
	style.inner =
		( common.inner.anything )
		
	common.elem.metadata |= style.elem

## Scoped Style: <style scoped>

	style.elem.scoped =
		element style { style.inner & style.scoped.attrs }
	style.scoped.attrs =
		(	common.attrs
		&	style.attrs.type?
		&	style.attrs.media?
		&	style.attrs.scoped
		#	style.attrs.title included in common.attrs
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		style.attrs.scoped =
			attribute scoped {
				w:string "scoped" | w:string ""
			}

## Name-Value Metadata: <meta name>

	meta.name.elem =
		element meta { meta.inner & meta.name.attrs }
	meta.name.attrs =
		(	common.attrs.basic
		&	common.attrs.i18n
		&	common.attrs.present
		&	common.attrs.other
		&	meta.name.attrs.name
		&	meta.name.attrs.content
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		meta.name.attrs.name =
			attribute name {
				w:meta-name
			}
		meta.name.attrs.content =
			attribute content {
				string
			}
	meta.inner =
		( empty )
		
	common.elem.metadata |= meta.name.elem

## "refresh" pragma directive: <meta http-equiv='refresh'>

	meta.http-equiv.refresh.elem =
		element meta { meta.inner & meta.http-equiv.refresh.attrs }
	meta.http-equiv.refresh.attrs =
		(	common.attrs.basic
		&	common.attrs.i18n
		&	common.attrs.present
		&	common.attrs.other
		&	meta.http-equiv.attrs.http-equiv.refresh
		&	meta.http-equiv.attrs.content.refresh
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		meta.http-equiv.attrs.http-equiv.refresh =
			attribute http-equiv {
				w:string "refresh"
			}
		meta.http-equiv.attrs.content.refresh =
			attribute content { 
				common.data.refresh
			}
	common.elem.metadata |= meta.http-equiv.refresh.elem # not quite right per spec
                                                       # if the definition is 
                                                       # reused in another language

## "default-style" pragma directive: <meta http-equiv='default-style'>

	meta.http-equiv.default-style.elem =
		element meta { meta.inner & meta.http-equiv.default-style.attrs }
	meta.http-equiv.default-style.attrs =
		(	common.attrs.basic
		&	common.attrs.i18n
		&	common.attrs.present
		&	common.attrs.other
		&	meta.http-equiv.attrs.http-equiv.default-style
		&	meta.http-equiv.attrs.content.default-style
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		meta.http-equiv.attrs.http-equiv.default-style =
			attribute http-equiv {
				w:string "default-style"
			}
		meta.http-equiv.attrs.content.default-style =
			attribute content {
				common.data.default-style
			}
		
	common.elem.metadata |= meta.http-equiv.default-style.elem # not quite right per spec
                                                               # if the definition is 
                                                               # reused in another language

## Inline Character Encoding Statement for HTML: <meta charset>

	meta.charset.elem =
		element meta { meta.inner & meta.charset.attrs }
	meta.charset.attrs =
		(	common.attrs.basic
		&	common.attrs.i18n
		&	common.attrs.present
		&	common.attrs.other
		&	meta.charset.attrs.charset
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		meta.charset.attrs.charset =
			attribute charset {
				(common.data.charset & HTMLonly)
				| (xsd:string {
					pattern = "[uU][tT][fF]-8"
				} & XMLonly )
			} 

## Inline Character Encoding Statement for HTML: <meta http-equiv='content-type'>

	meta.http-equiv.content-type.elem =
		element meta { meta.inner & meta.http-equiv.content-type.attrs }
		& HTMLonly
	meta.http-equiv.content-type.attrs =
		(	common.attrs.basic
		&	common.attrs.i18n
		&	common.attrs.present
		&	common.attrs.other
		&	meta.http-equiv.attrs.http-equiv.content-type
		&	meta.http-equiv.attrs.content.content-type
		&	(	common.attrs.aria.role.presentation
			|	common.attrs.aria.role.menuitem
			)?
		)
		meta.http-equiv.attrs.http-equiv.content-type =
			attribute http-equiv {
				w:string "content-type"
			}
		meta.http-equiv.attrs.content.content-type =
			attribute content {
				common.data.meta-charset
			}

	common.elem.metadata |= ( meta.charset.elem | meta.http-equiv.content-type.elem )
</code></pre>    <br/>
    <br/>
    <div id="right-banner">
            </div>
    <div id="left-banner">
            </div>
<div class='clear'></div>
    <aside class="related-items">
        <section>
            <div class="panel panel-primary">
                <div class="panel-heading margin-bottom">Related Artifacts</div>
                <div class="">
                    <a title='This artifact is from the group mysql' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/mysql/mysql-connector-java' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> mysql-connector-java <small class='group-info' >mysql</small></a><br/><a title='This artifact is from the group com.github.codedrinker' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.github.codedrinker/facebook-messenger' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> facebook-messenger <small class='group-info' >com.github.codedrinker</small></a><br/><a title='This artifact is from the group org.seleniumhq.selenium' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.seleniumhq.selenium/selenium-java' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> selenium-java <small class='group-info' >org.seleniumhq.selenium</small></a><br/><a title='This artifact is from the group com.github.sola92' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.github.sola92/instagram-java' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> instagram-java <small class='group-info' >com.github.sola92</small></a><br/><a title='This artifact is from the group com.google.code.gson' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.google.code.gson/gson' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> gson <small class='group-info' >com.google.code.gson</small></a><br/><a title='This artifact is from the group org.apache.poi' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.apache.poi/poi' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> poi <small class='group-info' >org.apache.poi</small></a><br/><a title='This artifact is from the group org.apache.httpcomponents' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.apache.httpcomponents/httpclient' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> httpclient <small class='group-info' >org.apache.httpcomponents</small></a><br/><a title='This artifact is from the group org.json' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.json/json' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> json <small class='group-info' >org.json</small></a><br/><a title='This artifact is from the group com.google.code.facebook-java-api' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.google.code.facebook-java-api/facebook-java-api' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> facebook-java-api <small class='group-info' >com.google.code.facebook-java-api</small></a><br/><a title='This artifact is from the group org.apache.poi' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.apache.poi/poi-ooxml' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> poi-ooxml <small class='group-info' >org.apache.poi</small></a><br/><a title='This artifact is from the group com.fasterxml.jackson.core' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.fasterxml.jackson.core/jackson-databind' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> jackson-databind <small class='group-info' >com.fasterxml.jackson.core</small></a><br/><a title='This artifact is from the group junit' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/junit/junit' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> junit <small class='group-info' >junit</small></a><br/><a title='This artifact is from the group org.primefaces' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.primefaces/primefaces' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> primefaces <small class='group-info' >org.primefaces</small></a><br/><a title='This artifact is from the group com.github.noraui' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.github.noraui/ojdbc7' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> ojdbc7 <small class='group-info' >com.github.noraui</small></a><br/><a title='This artifact is from the group com.jfoenix' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.jfoenix/jfoenix' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> jfoenix <small class='group-info' >com.jfoenix</small></a><br/><a title='This artifact is from the group org.testng' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.testng/testng' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> testng <small class='group-info' >org.testng</small></a><br/><a title='This artifact is from the group com.googlecode.json-simple' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.googlecode.json-simple/json-simple' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> json-simple <small class='group-info' >com.googlecode.json-simple</small></a><br/><a title='This artifact is from the group org.seleniumhq.selenium' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.seleniumhq.selenium/selenium-server' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> selenium-server <small class='group-info' >org.seleniumhq.selenium</small></a><br/><a title='This artifact is from the group com.itextpdf' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.itextpdf/itextpdf' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> itextpdf <small class='group-info' >com.itextpdf</small></a><br/><a title='This artifact is from the group org.springframework' class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.springframework/spring-core' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> spring-core <small class='group-info' >org.springframework</small></a><br/>                </div>
            </div>
        </section>
        <section>
            <div class="panel panel-primary">
                <div class="panel-heading margin-bottom">Related Groups</div>
                <div class="">
                    <a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.springframework' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.springframework</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.apache.poi' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.apache.poi</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.hibernate' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.hibernate</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.springframework.boot' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.springframework.boot</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.fasterxml.jackson.core' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> com.fasterxml.jackson.core</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.itextpdf' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> com.itextpdf</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.seleniumhq.selenium' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.seleniumhq.selenium</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/mysql' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> mysql</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.finos.legend.engine' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.finos.legend.engine</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.apache.httpcomponents' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.apache.httpcomponents</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.apache.logging.log4j' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.apache.logging.log4j</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.openjfx' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.openjfx</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.apache.commons' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.apache.commons</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/org.json' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> org.json</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.google.guava' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> com.google.guava</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.google.zxing' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> com.google.zxing</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/net.sf.jasperreports' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> net.sf.jasperreports</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/javax.xml.bind' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> javax.xml.bind</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/ojdbc' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> ojdbc</a><br/><a class='btn btn-default btn-xs small-margin-bottom ellipsis sidebar-btn' href='/artifacts/com.google.code.facebook-java-api' ><i class="fa fa-arrow-circle-right" aria-hidden="true"></i> com.google.code.facebook-java-api</a><br/>                </div>
            </div>
        </section>
    </aside>
    <div class='clear'></div>
</main>
</div>
<br/><br/>
    <div class="align-center">© 2015 - 2024 <a href="/legal-notice.php">Weber Informatics LLC</a> | <a href="/data-protection.php">Privacy Policy</a></div>
<br/><br/><br/><br/><br/><br/>
</body>
</html>