Oracle Fusion Middleware Data Visualization Tools Tag Reference for Oracle ADF Faces
11g Release 2 (11.1.2.1.0)

E17490-02

<dvt:attributeMatchRule>

dvt:attributeMatchRule attributeMatchRule attribute match rule

UIComponent class: oracle.adf.view.faces.bi.component.attributeGroups.UIAttributeMatchRule
Component type: oracle.dss.adf.attributeGroups.AttributeMatchRule

The attributeMatchRule tag is a child of attributeGroups that can be used to override the default values provided by the attributeGroups. This tag is used to replace an attribute when the data matches a certain value.

The attributeMatchRule tag uses child <f:attribute> tags to define the override values, where the name property defines the type of attribute (such as "color" or "shape"), and the value property defines the override value to use (such as "red" or "square"). When the value property of the attributeGroups tag matches the value in the group property of the attributeMatchRule, then the style value given in the child <f:attribute> will be assigned to that group of data instead of the next value from the default ramp.

The <f:attribute> name must match one of the attributes listed in the type of the top level attributeGroups tag. If the value provided by an override also happens to be in the built-in ramp returned by the attributeGroups, then that value will only be used by the overrides and will be skipped in the built-in ramp.

Sample

This is an example of how attributeGroups and attributeMatchRule can be used with the Thematic Map component:

       <dvt:thematicMap id="map" basemap="usa">
         <dvt:areaLayer id="al1" layer="states">
             <dvt:areaDataLayer id="adl1" value="#{bean.model}" var="row" ...>
                <dvt:areaLocation id="al1" name="#{row.name}">
                    <!--Each stamped marker gets assigned a color and shape from the attributeGroups-->
                    <dvt:marker id="m1">
                        <dvt:attributeGroups id="ag1" type="shape color" value="#{row.category}">
                            <!--If the row's category is "category1", then force the marker shape to be a diamond-->
                            <dvt:attributeMatchRule id="amr1" group="category1">
                                <f:attribute name="shape" value="diamond"/>
                            </dvt:attributeMatchRule>
                        </dvt:attributeGroups>
                    </dvt:marker>
                </dvt:areaLocation>
             </dvt:areaDataLayer>
         </dvt:areaLayer>
       </dvt:thematicMap>
       

Relationship with other tags

The <dvt:attributeMatchRule> tag can have the following children:

Screen Shot(s)


No image.

Events

Type Phases Description
org.apache.myfaces.trinidad.event.AttributeChangeEvent Invoke Application,
Apply Request Values
Event delivered to describe an attribute change. Attribute change events are not delivered for any programmatic change to a property. They are only delivered when a renderer changes a property without the application's specific request. An example of an attribute change event might include the width of a column that supported client-side resizing.

Attributes

Name Type Supports EL? Description
attributeChangeListener javax.el.MethodExpression Only EL a method reference to an attribute change listener. Attribute change events are not delivered for any programmatic change to a property. They are only delivered when a renderer changes a property without the application's specific request. An example of an attribute change events might include the width of a column that supported client-side resizing.
binding oracle.adf.view.faces.bi.component.attributeGroups.UIAttributeMatchRule Only EL an EL reference that will store the component instance on a bean. This can be used to give programmatic access to a component from a backing bean, or to move creation of the component to a backing bean.
group String Yes Category value to match with. If the attributeGroup's value matches this group value, then use the specified overrides
id String Yes the identifier for the component
rendered boolean Yes whether the component is rendered. When set to false, no output will be delivered for this component (the component will not in any way be rendered, and cannot be made visible on the client). If you want to change a component's rendered attribute from false to true using PPR, set the partialTrigger attribute of its parent component so the parent refreshes and in turn will render this component.