Categories in pattern language