private void writeParameter( StringBuilder sb, Node parameter, Node configurationElement )
        throws MojoExecutionException
    {
        String parameterName = getValue( parameter, "name" );
        String parameterDescription = getValue( parameter, "description" );

        Node fieldConfigurationElement = findSingleChild( configurationElement, parameterName );

        String parameterDefaultValue = "";
        if ( fieldConfigurationElement != null && fieldConfigurationElement.getNodeValue() != null )
        {
            parameterDefaultValue = " (Default: " + ((Element)fieldConfigurationElement).getAttribute( "default-value" ) + ")";
        }
        append( sb, parameterName + parameterDefaultValue, 2 );
        Node deprecated = findSingleChild( parameter, "deprecated" );
        if ( ( deprecated != null ) && isNotEmpty( deprecated.getNodeValue() ) )
        {
            append( sb, "Deprecated. " + deprecated.getNodeValue(), 3 );
            append( sb, "", 0 );
        }
        append( sb, parameterDescription, 3 );
        if ( "true".equals( getValue( parameter, "required" ) ) )
        {
            append( sb, "Required: Yes", 3 );
        }
        Node expression = findSingleChild( parameter, "expression" );
        if ( ( expression != null ) && isNotEmpty( expression.getNodeValue() ) )
        {
        	String property = getPropertyFromExpression( expression.getNodeValue() );
            append( sb, "User property: " + property, 3 );
        }

        append( sb, "", 0 );
    }