A knowledge based approach to integration of products, processes and reconfigurable automation resources