On-demand Construction of Personalized Learning Experiences Using Semantic Web and Web 2.0 Techniques