<c:attribute-set
name = eqname
use-attribute-sets? = eqname*
visibility? = "public" | "private" | "final" | "abstract" | "hidden" >
<!-- Content: c:attribute* -->
</c:attribute-set>
Defines an attribute set.
- Category
- declaration
- Permitted parent elements
c:module
c:override
c:package
Attributes
name |
The name of the attribute set. |
use-attribute-sets |
Specifies other attribute sets to use before the current one. |
visibility |
Specifies how the current component can be used in other (using) packages. |
In addition to the attributes in the preceding table, there are a number of standard attributes that may appear on any XCST element.
Example: Using an Attribute Set
The following attribute set:
<c:attribute-set name='delete-btn'>
<c:attribute name='type'>submit</c:attribute>
<c:attribute name='name'>X-HTTP-Method-Override</c:attribute>
<c:attribute name='value'>DELETE</c:attribute>
<c:attribute name='onclick'>return confirm("Are you sure?")</c:attribute>
<c:attribute name='formnovalidate'>formnovalidate</c:attribute>
</c:attribute-set>
…can be used on a literal result element:
<button c:use-attribute-sets='delete-btn'>Delete</button>
…or on c:element
:
<c:element name='button' use-attribute-sets='delete-btn'>Delete</c:element>
Note: Differences with xsl:attribute-set
Unlike xsl:attribute-set
, c:attribute-set
does not allow multiple declarations with the same name in the same module. Also, c:attribute-set
declarations with higher import precedence hide declarations with lower import precedence, which means hidden declarations are never evaluated.
Error Conditions
It is a compilation error if the name
attribute uses a reserved namespace.
It is a compilation error if an c:attribute-set
declaration has visibility='abstract'
and the content of the element is non-empty.
It is a compilation error if another c:attribute-set
declaration with the same name exists in the containing module.
It is a compilation error if the use-attribute-sets
attribute specifies a name that does not match the name of any c:attribute-set
declaration in the containing package.