code: function Version(value, parameters) {
      abstractions.Element.call(this, utilities.types.VERSION, parameters);
      value = value || [1];  // the default value
      if (value.indexOf(0) >= 0) {
          throw new utilities.Exception({
              $module: '/bali/elements/Version',
              $procedure: '$Version',
              $exception: '$invalidParameter',
              $parameter: value.toString(),
              $text: '"An invalid version value was passed to the constructor."'
          });
      }
  
      // since this element is immutable the value must be read-only
      this.getValue = function() { return value; };
  
      return this;
  }
docs: PUBLIC CONSTRUCTOR 
  This constructor creates a new version element using the specified value.
  
  @param {Array} value An array containing the version levels for the version string.
  @param {Parameters} parameters Optional parameters used to parameterize this element.
  @returns {Symbol} The new version string element.