This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch WW-5233-tiles in repository https://gitbox.apache.org/repos/asf/struts.git
commit add505a3bafb5b221ed96437abb6dcb4514eaf53 Author: Lukasz Lenart <[email protected]> AuthorDate: Mon Oct 3 10:58:02 2022 +0200 WW-5233 Adds Tiles DTD definition --- .../apache/tiles/resources/tiles-config_3_0.dtd | 245 +++++++++++++++++++++ 1 file changed, 245 insertions(+) diff --git a/plugins/tiles/src/main/resources/org/apache/tiles/resources/tiles-config_3_0.dtd b/plugins/tiles/src/main/resources/org/apache/tiles/resources/tiles-config_3_0.dtd new file mode 100644 index 000000000..dab8d7857 --- /dev/null +++ b/plugins/tiles/src/main/resources/org/apache/tiles/resources/tiles-config_3_0.dtd @@ -0,0 +1,245 @@ +<!-- +% + + 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. + +% + +@hidden $Id$ +@title DTD for the Tiles Definition File, Version 3.0 +@doctype tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN" "http://tiles.apache.org/dtds/tiles-config_3_0.dtd" +@root tiles-definitions +--> + + +<!-- ========== Defined Types ============================================= --> + + +<!-- A "Boolean" is the string representation of a boolean (true or false) + variable. +--> +<!ENTITY % Boolean "(true|false)"> + + +<!-- A "ContentType" is the content type of attribute passed to a template. +--> +<!ENTITY % ContentType "CDATA"> + +<!-- A "ClassName" is the fully qualified name of a Java class which is + instantiated to provide the functionality of the enclosing element. +--> +<!ENTITY % ClassName "CDATA"> + +<!-- A "RequestPath" is a module-relative URI path, beginning with a + slash, that identifies a mapped resource (such as a JSP page or a servlet) + within this web application. +--> +<!ENTITY % RequestPath "CDATA"> + +<!-- A "DefinitionName" is the unique identifier of a definition. This identifier + is a logical name used to reference the definition. +--> +<!ENTITY % DefinitionName "CDATA"> + +<!-- A "Location" is a relative path, delimited by "/" characters, that + defines the location of a resource relative to the location of the + configuration file itself. +--> +<!ENTITY % Location "#PCDATA"> + + + +<!-- ========== Top Level Elements ======================================== --> + + +<!-- The "tiles-definitions" element is the root of the configuration file + hierarchy, and contains nested elements for all the other + configuration settings. +--> +<!ELEMENT tiles-definitions (definition+)> + +<!-- The "definition" element describes a definition that can be inserted in a jsp + page. This definition is identified by its logical name. A definition allows + to define all the attributes that can be set in <insert> tag from a jsp page. +--> +<!ELEMENT definition (put-attribute*, put-list-attribute*)> +<!ATTLIST definition id ID #IMPLIED> +<!-- +@attr preparer The fully qualified Java class name of the preparer + subclass to call immediately before the tiles is inserted. + Only one of preparerClass or preparerUrl should be + specified. +--> +<!ATTLIST definition preparer %ClassName; #IMPLIED> +<!-- +@attr extends Name of a definition that is used as ancestor of this definition. + All attributes from the ancestor are available to the new + definition. Any attribute inherited from the ancestor can + be overloaded by providing a new value. +--> +<!ATTLIST definition extends %DefinitionName; #IMPLIED> +<!-- +@attr name The unique identifier for this definition. Required when + it is a root definition, while it is implied in nested + definitions. +--> +<!ATTLIST definition name %DefinitionName; #IMPLIED> +<!-- +@attr role Security role name that is allowed access to this definition + object. The definition is inserted only if the role name is + allowed. +--> +<!ATTLIST definition role CDATA #IMPLIED> +<!-- +@attr template The context-relative path to the resource used as tiles to + insert. This tiles will be inserted and a tiles context + containing appropriate attributes will be available. +--> +<!ATTLIST definition template %RequestPath; #IMPLIED> +<!-- +@attr templateExpression The expression that will evaluate to a template for this definition. + This attribute will be ignored if template is specified. + +--> +<!ATTLIST definition templateExpression CDATA #IMPLIED> +<!-- +@attr templateType The type of the template attribute. Can be: string, + template or definition. + By default, the type is "template". If a type is + associated, the desired renderer will be invoked. +--> +<!ATTLIST definition templateType %ContentType; #IMPLIED> + +<!-- The "put-attribute" element describes an attribute of a definition. It allows to + specify the tiles attribute name and its value. The tiles value can be + specified as a xml attribute, or in the body of the <put-attribute> tag. +--> +<!ELEMENT put-attribute ( (definition*) )> +<!ATTLIST put-attribute id ID #IMPLIED> +<!-- +@attr name The unique identifier for this put-attribute. +--> +<!ATTLIST put-attribute name CDATA #REQUIRED> +<!-- +@attr type The type of the value. Can be: string, template or definition. + By default, no type is associated to a value. If a type is + associated, it will be used as a hint to process the value + when the attribute will be used in the inserted tiles. +--> +<!ATTLIST put-attribute type %ContentType; #IMPLIED> +<!-- +@attr value The value associated to this tiles attribute. The value should + be specified with this tag attribute, or in the body of the tag. +--> +<!ATTLIST put-attribute value CDATA #IMPLIED> +<!-- +@attr expression The expression associated to this tiles attribute. This + attribute will be ignored if value is specified. + +--> +<!ATTLIST put-attribute expression CDATA #IMPLIED> +<!-- +@attr role Security role name that is allowed access to this attribute + object. The attribute is inserted only if the role name is + allowed. +--> +<!ATTLIST put-attribute role CDATA #IMPLIED> +<!-- +@attr cascade If true, the attribute will be cascaded to all inner + definitions. By default, cascade is false. +--> +<!ATTLIST put-attribute cascade %Boolean; #IMPLIED> + + +<!-- The "put-list-attribute" element describes a list attribute of a definition. It allows to + specify an attribute that is a java List containing any kind of values. In + the config file, the list elements are specified by nested <add-attribute> or + <add-list-attribute>. +--> +<!ELEMENT put-list-attribute ( (add-attribute* | add-list-attribute*)+) > +<!ATTLIST put-list-attribute id ID #IMPLIED> +<!-- +@attr name The unique identifier for this put attribute list. +--> +<!ATTLIST put-list-attribute name CDATA #REQUIRED> +<!-- +@attr role Security role name that is allowed access to this attribute + object. The attribute is inserted only if the role name is + allowed. +--> +<!ATTLIST put-list-attribute role CDATA #IMPLIED> +<!-- +@attr inherit If true, the attribute will put the elements of the attribute + with the same name of the parent definition before the ones + specified here. By default, it is 'false'. +--> +<!ATTLIST put-list-attribute inherit %Boolean; #IMPLIED> +<!-- +@attr cascade If true, the attribute will be cascaded to all inner + definitions. By default, cascade is false. +--> +<!ATTLIST put-list-attribute cascade %Boolean; #IMPLIED> + +<!-- ========== Subordinate Elements ====================================== --> + + +<!-- The "add-attribute" element describes an element of a list. It is similar to the + <put> element. +--> +<!ELEMENT add-attribute ( (definition*) )> +<!ATTLIST add-attribute id ID #IMPLIED> +<!-- +@attr type The type of the value. Can be: string, template or definition. + By default, no type is associated to a value. If a type is + associated, it will be used as a hint to process the value + when the attribute will be used in the inserted tiles. +--> +<!ATTLIST add-attribute type %ContentType; #IMPLIED> +<!-- +@attr value The value associated to this tiles attribute. The value should + be specified with this tag attribute, or in the body of the tag. +--> +<!ATTLIST add-attribute value CDATA #IMPLIED> +<!-- +@attr expression The expression associated to this tiles attribute. This + attribute will be ignored if value is specified. + +--> +<!ATTLIST add-attribute expression CDATA #IMPLIED> +<!-- +@attr role Security role name that is allowed access to this attribute + object. The attribute will be added to the parent list + anyway. It is delegated to the user of this attribute to + use it or not depending on the role of the user. +--> +<!ATTLIST add-attribute role CDATA #IMPLIED> + +<!-- The "add-list-attribute" element describes a list attribute subordinate to another + list attribute. It allows to specify an attribute value that is a java List + containing any kind of values. In the config file, the list elements are specified + by nested <add-attribute> or <add-list-attribute>. +--> +<!ELEMENT add-list-attribute ( (add-attribute* | add-list-attribute*)+) > +<!ATTLIST add-list-attribute id ID #IMPLIED> +<!-- +@attr role Security role name that is allowed access to this attribute + object. The attribute will be added to the parent list + anyway. It is delegated to the user of this attribute to + use it or not depending on the role of the user. +--> +<!ATTLIST add-list-attribute role CDATA #IMPLIED>
