Data Mining for Co-location Patterns (Principles and Applications)