| <?xml version="1.0" encoding="iso-8859-1"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <!-- $Id: form.rng 42702 2004-03-13 12:34:18Z gregor $ --> |
| |
| <!-- Forms Module --> |
| <!-- Unlike the DTD implementation, this builds on the basic-form module --><grammar xmlns="http://relaxng.org/ns/structure/1.0"> |
| |
| <include href="basic-form.rng"> |
| |
| <define name="select"> |
| <element name="select"> |
| <ref name="select.attlist"/> |
| <oneOrMore> |
| <choice> |
| <ref name="option"/> |
| <ref name="optgroup"/> |
| </choice> |
| </oneOrMore> |
| </element> |
| </define> |
| |
| </include> |
| |
| <define name="form.attlist" combine="interleave"> |
| <optional> |
| <attribute name="accept-charset"> |
| <ref name="Charsets.datatype"/> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="accept"> |
| <ref name="ContentTypes.datatype"/> |
| </attribute> |
| </optional> |
| </define> |
| |
| <define name="input.attlist" combine="interleave"> |
| <optional> |
| <attribute name="disabled"> |
| <value>disabled</value> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="readonly"> |
| <value>readonly</value> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="alt"/> |
| </optional> |
| <optional> |
| <attribute name="tabindex"> |
| <ref name="Number.datatype"/> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="accept"> |
| <ref name="ContentTypes.datatype"/> |
| </attribute> |
| </optional> |
| </define> |
| |
| <define name="InputType.class" combine="choice"> |
| <choice> |
| <value>image</value> |
| <value>button</value> |
| </choice> |
| </define> |
| |
| <define name="select.attlist" combine="interleave"> |
| <optional> |
| <attribute name="disabled"> |
| <value>disabled</value> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="tabindex"> |
| <ref name="Number.datatype"/> |
| </attribute> |
| </optional> |
| </define> |
| |
| <define name="option.attlist" combine="interleave"> |
| <optional> |
| <attribute name="disabled"> |
| <value>disabled</value> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="label"> |
| <ref name="Text.datatype"/> |
| </attribute> |
| </optional> |
| </define> |
| |
| <define name="optgroup"> |
| <element name="optgroup"> |
| <ref name="optgroup.attlist"/> |
| <oneOrMore> |
| <ref name="option"/> |
| </oneOrMore> |
| </element> |
| </define> |
| |
| <define name="optgroup.attlist"> |
| <ref name="Common.attrib"/> |
| <optional> |
| <attribute name="disabled"> |
| <value>disabled</value> |
| </attribute> |
| </optional> |
| <attribute name="label"> |
| <ref name="Text.datatype"/> |
| </attribute> |
| </define> |
| |
| <define name="textarea.attlist" combine="interleave"> |
| <optional> |
| <attribute name="disabled"> |
| <value>disabled</value> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="readonly"> |
| <value>readonly</value> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="tabindex"> |
| <ref name="Number.datatype"/> |
| </attribute> |
| </optional> |
| </define> |
| |
| <define name="fieldset"> |
| <element name="fieldset"> |
| <ref name="fieldset.attlist"/> |
| <ref name="legend"/> |
| <ref name="Flow.model"/> |
| </element> |
| </define> |
| |
| <define name="fieldset.attlist"> |
| <ref name="Common.attrib"/> |
| </define> |
| |
| <define name="button"> |
| <element name="button"> |
| <ref name="button.attlist"/> |
| <ref name="Flow.model"/> |
| </element> |
| </define> |
| |
| <define name="button.attlist"> |
| <ref name="Common.attrib"/> |
| <optional> |
| <attribute name="name"/> |
| </optional> |
| <optional> |
| <attribute name="value"/> |
| </optional> |
| <optional> |
| <attribute name="type"> |
| <choice> |
| <value>button</value> |
| <value>submit</value> |
| <value>reset</value> |
| </choice> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="disabled"> |
| <value>disabled</value> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="tabindex"> |
| <ref name="Number.datatype"/> |
| </attribute> |
| </optional> |
| <optional> |
| <attribute name="accesskey"> |
| <ref name="Character.datatype"/> |
| </attribute> |
| </optional> |
| </define> |
| |
| <define name="legend"> |
| <element name="legend"> |
| <ref name="legend.attlist"/> |
| <ref name="Inline.model"/> |
| </element> |
| </define> |
| |
| <define name="legend.attlist"> |
| <ref name="Common.attrib"/> |
| <optional> |
| <attribute name="accesskey"> |
| <ref name="Character.datatype"/> |
| </attribute> |
| </optional> |
| </define> |
| |
| <define name="Form.class" combine="choice"> |
| <ref name="fieldset"/> |
| </define> |
| |
| <define name="Formctrl.class" combine="choice"> |
| <ref name="button"/> |
| </define> |
| |
| </grammar> |