An Extensible and Lightweight Modular Ontology for Programming Education

Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 735)


Semantic web technologies such as ontologies can foster the reusability of learning material by introducing common sets of concepts for annotation purposes. However, suggesting learning material from an open, heterogeneous corpus is a nontrivial problem. In this paper, we propose an extensible and lightweight modular ontology for programming education. Its main purpose is to integrate annotated learning material related to programming into an IDE such as Eclipse. Our ontology is based on a modular architecture, which is extensible with respect to different programming languages. Aligning language-specific concepts with user-specific tags allows us to suggest learning resources for code elements in a fine-grained and cross-curricular way. Our concrete implementation establishes relations between learning aspects in Java or C code and annotated resources such as articles on online question-and-answer sites.


Modular ontology Programming education Annotations Learning material 


  1. 1.
    Andrews, P., Zaihrayeu, I., Pane, J.: A classification of semantic annotation systems. Semant. Web 3(3), 223–248 (2012)Google Scholar
  2. 2.
    Chung, H.S., Kim, J.M.: Ontology design for creating adaptive learning path in e-learning environment. In: Lecture Notes in Engineering and Computer Science, pp. 585–588 (2012)Google Scholar
  3. 3.
    Dehors, S., Faron-Zucker, C.: QBLS: a semantic web based learning system. In: Proceedings of EdMedia: World Conference on Educational Media and Technology 2006, pp. 2795–2802. Association for the Advancement of Computing in Education (AACE) (2006)Google Scholar
  4. 4.
    Grévisse, C., Botev, J., Rothkugel, S.: Integration of learning material into an advanced project-based learning support platform. In: Proceedings of the 11th International Technology, Education and Development Conference, INTED 2017, pp. 5711–5720 (2017)Google Scholar
  5. 5.
    Huang, Y., Yudelson, M., Han, S., He, D., Brusilovsky, P.: A framework for dynamic knowledge modeling in textbook-based learning. In: Proceedings of the 2016 Conference on User Modeling Adaptation and Personalization, UMAP 2016, pp. 141–150. ACM (2016)Google Scholar
  6. 6.
    Isaac, A.: SKOS (Simple Knowledge Organization System) - Dublin Core 2011 tutorial (2011).
  7. 7.
    Ishola, O., McCalla, G.: Tracking and reacting to the evolving knowledge needs of lifelong professional learners. In: Proceedings of the 6th Workshop on Personalization Approaches in Learning Environments (PALE 2016), pp. 68–73 (2016)Google Scholar
  8. 8.
    Kernighan, B.W., Ritchie, D.M.: The C Programming Language. Prentice Hall Englewood Cliffs, Englewood Cliffs (1988)zbMATHGoogle Scholar
  9. 9.
    Kouneli, A., Solomou, G., Pierrakeas, C., Kameas, A.: Modeling the knowledge domain of the Java programming language as an ontology. In: Popescu, E., Li, Q., Klamma, R., Leung, H., Specht, M. (eds.) ICWL 2012. LNCS, vol. 7558, pp. 152–159. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-33642-3_16 CrossRefGoogle Scholar
  10. 10.
    Lohmann, S., Thalmann, S., Harrer, A., Maier, R.: Learner-generated annotation of learning resources - lessons from experiments on tagging. J. Univ. Comput. Sci. (2007)Google Scholar
  11. 11.
    Meccawy, M., Blanchfield, P., Ashman, H., Brailsford, T., Moore, A.: WHURLE 2.0: adaptive learning meets Web 2.0. In: Dillenbourg, P., Specht, M. (eds.) EC-TEL 2008. LNCS, vol. 5192, pp. 274–279. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-87605-2_30 CrossRefGoogle Scholar
  12. 12.
    Miranda, S., Orciuoli, F., Sampson, D.G.: A skos-based framework for subject ontologies to improve learning experiences. Comput. Hum. Behav. 61, 609–621 (2016)CrossRefGoogle Scholar
  13. 13.
    Pfeiffer, R.H., Wąsowski, A.: The design space of multi-language development environments. Softw. Model. 14(1), 383–411 (2015)CrossRefGoogle Scholar
  14. 14.
    Pierrakeas, C., Solomou, G., Kameas, A.: An ontology-based approach in learning programming languages. In: 2012 16th Panhellenic Conference on Informatics, pp. 393–398 (2012)Google Scholar
  15. 15.
    Ponzanelli, L., Bavota, G., Di Penta, M., Oliveto, R., Lanza, M.: Mining StackOverflow to turn the IDE into a self-confident programming prompter. In: Proceedings of the 11th Working Conference on Mining Software Repositories, MSR 2014, pp. 102–111 (2014)Google Scholar
  16. 16.
    Shi, L., Cristea, A.I., Stewart, C., Al Qudah, D.: Students as customers: participatory design for adaptive Web 3.0. In: The Evolution of the Internet in the Business Sector: Web 1.0 to Web 3.0, pp. 306–331 (2014)Google Scholar
  17. 17.
    Somyürek, S.: The new trends in adaptive educational hypermedia systems. Int. Rev. Res. Open Distrib. Learn. 16(1), 221–241 (2015)CrossRefGoogle Scholar
  18. 18.
    Sosnovsky, S., Gavrilova, T.: Development of educational ontology for C-programming. Int. J. Inf. Theor. Appl. 13(4), 303–308 (2006)Google Scholar
  19. 19.
    Vesin, B., Ivanović, M., Klašnja-Milićević, A., Budimac, Z.: Protus 2.0: ontology-based semantic recommendation in programming tutoring system. Expert Syst. Appl. 39(15), 12229–12246 (2012)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.University of LuxembourgEsch-sur-AlzetteLuxembourg

Personalised recommendations