.getPropertyIterator( );
.propertiesIterator( );
	public Object validateValue( Module module, PropertyDefn defn, Object value )			throws PropertyValueException	{		if ( value == null )		{			logger.log( Level.WARNING, "The value of the structure is null" ); //$NON-NLS-1$			return null;		}		// Cannot store objects of a list directly.		if ( defn.isList( ) )			throw new PropertyValueException( value,					PropertyValueException.DESIGN_EXCEPTION_INVALID_VALUE,					STRUCT_TYPE );		if ( value instanceof Structure )		{			logger.log( Level.INFO, "Validate the structure value for each of its member " ); //$NON-NLS-1$			Iterator iter = ( (Structure) value ).getDefn( )					.getPropertyIterator( );			while ( iter.hasNext( ) )			{				PropertyDefn memberDefn = (PropertyDefn) iter.next( );				if ( !memberDefn.isList( ) )				{					Object propValue = ( (Structure) value ).getProperty(							module, memberDefn );					memberDefn.validateValue( module, propValue );				}			}			return value;		}		// exception		logger.log( Level.WARNING, "The value of this structure property is not a valid type" ); //$NON-NLS-1$		return null;	}