Provides support for defining and contributing variables for the purpose of string substitution.
This package provides classes and interfaces to support the definition and 
  contribution of variables for the purpose of string substitution. The plug-in 
  supports the recursive replacement of variables referenced by name in arbitrary 
  strings with the value of the variable. Two types of variables are provided 
  - value variables (IValueVariable) and dynamic variables (IDynamicVariable). 
  A value variable has a simple setter and getter for its current value. A dynamic 
  variable has an associated resolver that provides a variable's value each time 
  it is referenced (replaced) in a string substitution. A dynamic variable may 
  also provide an argument in its reference that can be used by its resolver to 
  determine its substitution value.
A variable manager (IStringVariableManager) is provided to manage 
  the set of defined variables. Value variables may be created via API on the 
  variable manager, or contributed via the valueVariables extension 
  point. Dynamic variables must be contributed via the dynamicVariables 
  extension point. The variable manager also provides change notification for 
  value variables. The variable manager also provides an API for performing string 
  substitution, which accepts a string, and returns a string with all variable 
  references replaced by associated variable values.
Variables are referenced in strings by enclosing them in braces, preceded with 
  a dollar sign. For example, consider a variable defined with the name foo, 
  and referenced in the following string: "abc${foo}ghi". 
  If the value of foo is "def", the result 
  of a string substitution would be "abcdefghi". In the 
  case of a dynamic variable, an (optional) argument is supplied by appending 
  a colon and argument value after the variable name. For example "${foo:bar}". 
  In this case, the resolver associated with foo would be provided 
  with the referenced argument (bar) when asked to resolve a value 
  for the variable foo.