Mining semi-structured data