code: private PropertyDescriptor _createPropertyDescriptor(boolean development)
      {
          try
          {
              CompositeComponentPropertyDescriptor attributeDescriptor = 
                  new CompositeComponentPropertyDescriptor(_name.getValue());
              
              // If ProjectStage is Development, The "displayName", "shortDescription",
              // "expert", "hidden", and "preferred" attributes are exposed
              if (development)
              {
                  CompositeTagAttributeUtils.addDevelopmentAttributesLiteral(attributeDescriptor,
                          _displayName, _shortDescription, _expert, _hidden, _preferred);
              }
              
              // note that no unspecified attributes are handled here, because the current
              // tag does not contain any, otherwise this code would not have been called.
              
              return attributeDescriptor;
          }
          catch (IntrospectionException e)
          {
              if (log.isLoggable(Level.SEVERE))
              {
                  log.log(Level.SEVERE, "Cannot create PropertyDescriptor for attribute ",e);
              }
              throw new TagException(tag,e);
          }
      }
docs: This method could be called only if it is not necessary to set the following properties:
  targets, default, required, methodSignature and type
  
  @param development true if the current ProjectStage is Development
  @return