org.geotools.styling
Interface FeatureTypeStyle

All Superinterfaces:
GTComponent
All Known Implementing Classes:
FeatureTypeStyleImpl

public interface FeatureTypeStyle
extends GTComponent

How to style a feature type. This is introduced as a convenient package that can be used independently for feature types, for example in GML Default Styling. The "layer" concept is discarded inside of this element and all processing is relative to feature types. The FeatureTypeName is allowed to be optional, but only one feature type may be in context and it must match the syntax and semantics of all attribute references inside of the FeatureTypeStyle.

The details of this object are taken from the OGC Styled-Layer Descriptor Report (OGC 02-070) version 1.0.0.:


 <xsd:element name="FeatureTypeStyle">
 <xsd:annotation>
   <xsd:documentation>
     A FeatureTypeStyle contains styling information specific to one
    feature type.  This is the SLD level that separates the 'layer'
     handling from the 'feature' handling.
   </xsd:documentation>
   </xsd:annotation>
   <xsd:complexType>
     <xsd:sequence>
       <xsd:element ref="sld:Name" minOccurs="0"/>
       <xsd:element ref="sld:Title" minOccurs="0"/>
       <xsd:element ref="sld:Abstract" minOccurs="0"/>
       <xsd:element ref="sld:FeatureTypeName" minOccurs="0"/>
       <xsd:element ref="sld:SemanticTypeIdentifier" minOccurs="0"
                   maxOccurs="unbounded"/>
       <xsd:element ref="sld:Rule" maxOccurs="unbounded"/>
     </xsd:sequence>
   </xsd:complexType>
 </xsd:element>
 

Version:
$Id: FeatureTypeStyle.java 17702 2006-01-23 00:08:55Z desruisseaux $
Author:
James Macgill, CCG

Method Summary
 void accept(StyleVisitor visitor)
           
 void addRule(Rule rule)
           
 java.lang.String getAbstract()
           
 java.lang.String getFeatureTypeName()
          Only features with the type name returned by this method should be styled by this feature type styler.
 java.lang.String getName()
           
 Rule[] getRules()
          Rules govern the appearance of any given feature to be styled by this styler.
 java.lang.String[] getSemanticTypeIdentifiers()
          The SemanticTypeIdentifiers is experimental and is intended to be used to identify, using a community-controlled name(s), what the style is suitable to be used for.
 java.lang.String getTitle()
           
 java.util.List rules()
          Rules govern the appearance of any given feature to be styled by this styler.
 void setAbstract(java.lang.String abstractStr)
           
 void setFeatureTypeName(java.lang.String name)
          Sets the type name of the features that this styler should be applied to.
 void setName(java.lang.String name)
           
 void setRules(Rule[] rules)
          Rules govern the appearance of any given feature to be styled by this styler.
 void setSemanticTypeIdentifiers(java.lang.String[] types)
          The SemanticTypeIdentifiers is experimental and is intended to be used to identify, using a community-controlled name(s), what the style is suitable to be used for.
 void setTitle(java.lang.String title)
           
 
Methods inherited from interface org.geotools.event.GTComponent
changed, getNote, getParent, removed, setNote
 

Method Detail

getName

public java.lang.String getName()

setName

public void setName(java.lang.String name)

getTitle

public java.lang.String getTitle()

setTitle

public void setTitle(java.lang.String title)

getAbstract

public java.lang.String getAbstract()

setAbstract

public void setAbstract(java.lang.String abstractStr)

getFeatureTypeName

public java.lang.String getFeatureTypeName()
Only features with the type name returned by this method should be styled by this feature type styler.

Returns:
The name of types that this styler applies to

setFeatureTypeName

public void setFeatureTypeName(java.lang.String name)
Sets the type name of the features that this styler should be applied to.

Parameters:
name - The TypeName of the features to be styled by this instance.
Task:
REVISIT: should a set method be declared in this interface at all?

getSemanticTypeIdentifiers

public java.lang.String[] getSemanticTypeIdentifiers()
The SemanticTypeIdentifiers is experimental and is intended to be used to identify, using a community-controlled name(s), what the style is suitable to be used for. For example, a single style may be suitable to use with many different feature types. The syntax of the SemanticTypeIdentifiers string is undefined, but the strings "generic:line_string", "generic:polygon", "generic:point", "generic:text", "generic:raster", and "generic:any" are reserved to indicate that a FeatureTypeStyle may be used with any feature type with the corresponding default geometry type (i.e., no feature properties are referenced in the feature type style).

Returns:
An array of strings representing systematic types which could be styled by this instance.

setSemanticTypeIdentifiers

public void setSemanticTypeIdentifiers(java.lang.String[] types)
The SemanticTypeIdentifiers is experimental and is intended to be used to identify, using a community-controlled name(s), what the style is suitable to be used for. For example, a single style may be suitable to use with many different feature types. The syntax of the SemanticTypeIdentifiers string is undefined, but the strings "generic:line_string", "generic:polygon", "generic:point", "generic:text", "generic:raster", and "generic:any" are reserved to indicate that a FeatureTypeStyle may be used with any feature type with the corresponding default geometry type (i.e., no feature properties are referenced in the feature type style).

Parameters:
types - An array of strings representing systematic types which could be styled by this instance.

getRules

public Rule[] getRules()
Rules govern the appearance of any given feature to be styled by this styler. Each rule contains conditions based on scale and feature attribute values. In addition, rules contain the symbolizers which should be applied when the rule holds true.

Returns:
The full set of rules contained in this styler.

setRules

public void setRules(Rule[] rules)
Rules govern the appearance of any given feature to be styled by this styler. Each rule contains conditions based on scale and feature attribute values. In addition, rules contain the symbolizers which should be applied when the rule holds true.

Parameters:
rules - The set of rules to be set for this styler.

addRule

public void addRule(Rule rule)

rules

public java.util.List rules()
Rules govern the appearance of any given feature to be styled by this styler.

This is *the* list being used to mange the rules!

Since:
GeoTools 2.2.M3, GeoAPI 2.0

accept

public void accept(StyleVisitor visitor)


Copyright © GeoTools. All Rights Reserved.