@SuppressWarnings("unchecked")
    public <T extends XPathBuilder> T setTemplateValue(final String key, final String... value) {
        if (value == null) {
            this.templatesValues.remove(key);
        } else {
            this.templatesValues.put(key, value);
        }
        return (T) this;
    }
@ SuppressWarnings ( "unchecked" ) public < T extends XPathBuilder > T setTemplateValue ( final String key , final String ... value ) { if ( value == null ) { this . templatesValues . remove ( key ) ; } else { this . templatesValues . put ( key , value ) ; } return ( T ) this ; }
<p><b>Used for finding element process (to generate xpath address)</b></p>
<p>Example:</p>
<pre>
TODO
</pre>

@param key   template
@param value template
@param <T>   the element which calls this method
@return this element