Inferential Knowledge Sharing with Goal Hierarchies in Distributed Engineering Systems