Ontology-based Learning Content Management System in Programming Languages Domain

Marina Kultsova, Anton Anikin, Irina Zhukova and Alexander Dvoryankin
Volgograd State Technical University, Volgograd, Russia


A learning content management system (LCMS) (Boiko 2005),(Rockley 2003),(White 2005) is a computer application that allows creating, editing and modifying learning content, organizing, deleting as well as maintenance from a central interface. The LCMS provides a complex platform meant for developing learning content used in e-learning educational systems. Many LCMS packages available on the market also contain tools that resemble those used in learning management systems (LMS), and most assume that an LMS is already in place. The emphasis in an LCMS is the ability for developers to create a new learning content in accordance to learning objectives as well as cognitive peculiarities and experience of learner. Most content-management systems have several aspects in common: a focus on creating, developing, and managing content for on-line courses, with far less emphasis placed on managing the experience of learners; a multi-user environment that allows several developers to interact and exchange tools; a learning object repository containing learning materials, which are commonly used components that are archived so as to be searchable and adaptable to any on-line course.

A new trend in LCMS development is using the Smart Learning Content (SLC) approach(Brusilovsky 2014). Apart from adaptive personalization (Parra 2015) and sophisticated forms of feedback, smart learning content often also authenticates the user, models the learner, aggregates data, and supports learning analytics. That is especially important in computer science education because of expediency of using the program and algorithm visualization tools, automatic assessment, coding tools, algorithm and program simulation tools, problem-solving tools and other learning resources that process input data provided by the learner and generate customized output. The same approach can be used to generate adaptive learning content based on the some content elements. So the creation of SLC implies personalized search of learning resources (Ahn 2015) and adaptive visualization of information retrieval (Ahn 2013).

In this paper we describe the ontology-based learning content management system which allows to create a new smart learning content in programming languages domain in form of personal learning collection.

Ontology-based approach to Learning Content Management

The modern LMS and LCMS systems (Hatzilygeroudis 2005) usually includes the following components: subsystems for learning administration, users management (learners, tutors, learning courses authors, system administrators), testing and knowledge assessment (that generates reports about learners achievements in the course and allows to manage the learning of content during learning the course), course learning management, learning sequence management, learning content management, content delivery management, API for interaction with external subsystems.

The common structure of LMS and LCMS systems is depicted in Fig. \ref{fig:LMS}, where: 1 - base information about LMS users; 2 - learning achievement reports, tests planning; 3 - learning course achievements; 4- current learning course achievements for modules of the course, modules tests results; 5 - learning content administration; 6 - testing results (for modules of the course); 7 - information about learning sequence of modules of the course; 8 - content selection for the learning course; 9 - content request; 10 - course learning management using the API (with third-party software); 11 - managing the content representation for the learner; 12 - content package; 13 - selected learning content; 14 - results of content selection from the content repository; 15 - representation of the learning content for learner; 16 - interactions using API with HTTP-requests.

\label{fig:LMS} Modern Learning Management Systems architecture

For the learning resources management task it is necessary to find subset of the learning resources within set of the learning resources available in the repository. This subset should fulfill the learner needs and preferences. It is also necessary to organize the learning process on this set of learning resources.

In their previous works (Anikin 2014, Anikin 2014a, Anikin 2014b) the authors proposed an ontology-based concept of new learning content creation in open learning network on the base of learning resources retrieval and integration in personal learning collections. The personal learning collection was defined as a set of the learning resources retrieved according to the learner profile, learner’s current and outcome competencies and other personal preferences, and set of relations between the resources which define the learning sequence to achieve the learning objectives. The process of learning content management was presented as a control system (Fig. \ref{fig:management}), where control object is the personal learning collection, controller for the inner circuit is the personal collection builder, for the outer circuit - the learner profile editor, the system output is the set of learning resources and relations between them, the measured output for the inner circuit is the personal collection quality measures, for the outer circuit - measured current and intentional competencies of the learner. So the feedback loops ensure the quality of the personal collection and conformity with the variable learner properties.

\label{fig:management} Learning content management as a control system

The ontology-based approach to creation of personal learning collections implies utilizing the ontologies for modeling the learning course data domain, the learner profile, the learning resources and the personal learning collection. The data domain of learning course is described by competencies (knowledge, skills, abilities) which the student should acquire as a result of the learning process within the learning course or some part of it. The knowledge field is represented as a set of knowledge domain concepts and relations between the concepts. The learner profile is described using the current and outcome competencies (knowledge, skills, abilities) of the learner which are defined on the same domain. It also includes individual learner properties such as preferred languages, current and outcome knowledge level/comprehension etc. Each learning resources is annotated with competencies (knowledge, skills, abilities) which the learner can get using this resource, and prerequisite competencies which he should have before using this resource. These properties are defined on the same domain along with some specific properties (resource name, authors, resource location and type, language, knowledge level, didactic role etc.). Annotated in this way learning resources can be collected in open repositories for further use. The meta-ontology for retrieval and integration of learning resources in the personal collections was developed (Fig. \ref{fig:metaontology}) to integrate and manage the domain ontologies: \[M = < O_{M}, C, Inst, R, I> ,\] where \(M\) – meta-ontology;
\(O_{M} = \left \{ O_{DD}, O_{ELR}, O_{COL}, O_{L} \right \}\) – set of ontologies, \(O_{DD}\) – learning course domain ontology, \(O_{ELR}\) – learning resource ontology, \(O_{COL}\) – personal learning collection ontology, \(O_{L}\) – learner profile ontology;
\(C\) – finite set of meta-ontology concepts, \(C = \varnothing\);
\(Inst\) – finite set of meta-ontology instances, \(Inst = \varnothing\);
\(R=\left \{ has, uses, includes, is \right \} \) – finite set of meta-ontology relations;
\(I\) – finite set of interpretation rules, \(I = \varnothing\).

\label{fig:metaontology} Metaontology (IDEF5 diagram)

The formal models of ontologies mentioned above are described in detail in (Anikin 2014b).

The new two-stage method for electronic learning resources retrieval and integration based on ontology reasoning rules was developed which includes the following main stages:

1st stage: search for a fragment of semantic net which is relevant to search query. The search is performed using inference engine on the base of semantic rules defined in the ontology as a set of Horn clauses. To implement this stage the semantic rules were formulated for parametrized search on the following parameters: preferred language; outcome learner competencies; mastering level of competences; synonymy of the terms in subject domain.

2d stage: redefining the subnet obtained at the first stage. To implement this stage the semantic rules were formulated to search the additional resources on the base of current learner competencies, and search the auxiliary resources, as well as the rules for defining the logical links between learning resources in personal collection. Auxiliary resources are the resources which are not included in the set of additional resources because of too long learning sequence but these resources can help to get the missing competences which are not provided by the set of additional resources.

The developed set of semantic rules allows to create the personal learning collection in accordance with the learning outcomes, current knowledge level and other preferences of the learner. This collection includes the relations between the learning resources to manage the learning process. To represent the ontology reasoning rules for learning resources retrieval and integration we used SWRL language. SWRL extends the OWL-DL and is based on first-order predicate calculus that allows to represent the reasoning rules as a set of Horn clauses. Below are a few examples of semantic rules. The SWRL-rule for learning resources retrieval based on the preferred language has the following form: \[\begin{gathered} \label{eq5} COL:hasStudent(?c, ?u) \wedge L:hasLanguage(?u,?l) \wedge \\ \wedge ELR:hasLanguage(?r, ?l) \rightarrow \\ \rightarrow COL:hasResourceByLanguage(?c, ?r),\end{gathered}\] where ?c, ?u, ?l, ?r – SWRL variables,

\(COL:hasStudent, L:hasLanguage, \\ ELR:hasLanguage, COL:hasResourceByLanguage\) – ontology relations with ontology prefixes.

The SWRL-rule for learning resources retrieval based on the outcome learner competencies with allowance for the synonymy has the form: \[\begin{gathered} \label{eq6} COL:hasStudent(?c,?u)\wedge \\ \wedge L:hasIntentionalDataDomain(?u,?d) \wedge \\ \wedge DD:hasCompetence(?d,?cmp1) \wedge \\ \wedge ELR:hasOutputCompetence(?r,?cmp2) \wedge \\ \wedge DD:is(?cmp2, ?cmp) \wedge DD:is(?cmp1,?cmp) \rightarrow \\ \rightarrow COL:hasResourceByIntentional-\\competencies(?c,?r).\end{gathered}\] So, the rules  (\ref{eq5}, \ref{eq6}) define the subset of learning resources that comply with the learner’s language and outcome competencies.

The developed two-stage method solves efficiently the problem of creating the personal learning collection as a result of search and integration of relevant learning resources at the expense of application of ontological model for knowledge representation and semantic rules for inference on ontology.

Software Architecture. Implementation Aspects

To create the personal learning collections using the proposed method and developed ontologies, it is necessary to use appropriate software tools, providing the logic reasoning on ontologies (reasoning engines). To implement the logical reasoning the reasoning engine RacerPro (Racer Systems GmbH and Co. KG, Germany) was used. This engine supports the ontologies described with OWL language and reasoning rules described in SWRL. It also can work as server with both DIG (DL Implementors Group) interface and TCP/IP interface with internal queries language nRQL. DIG is a application interface to interact with the reasoning engine that also allows to work with OWL-ontologies and interact with other software tools like ontologies editor Protégé. However this interface has some restrictions, including impossibility to work with SWRL reasoning rules, so the TCP/IP interface was used to implement the SWRL-reasoning.

RacerPro (Fig. \ref{fig:racer}) allows to load ontologies and ontology-based annotations in OWL (1-5) - Learning course domain ontology, Learning resource ontology, Learner profile ontology, Personal learning collection ontology, resources annotations within Learning resources repository - that can also include SWRL reasoning rules. Personal collection builder module interacts with the RacerPro reasoning engine, it generates requests for the OWL files load, forward chaining reasoning and nRQL-request for the ontology (7) and gets back the corresponding results from the RacerPro (6). On the base of the received results the Personal collection builder generates the learning resources presentation for the learner as the Personal learning collection (8) and provides the ability for learning management on this collection.

\label{fig:racer} Framework for integration of the ontologies and RacerPro reasoning engine to create the personal learning collections

To automate the creation of personal collections of learning resources the software architecture was designed. Software architecture for learning resources retrieval and integration into personal learning collection (Fig. \ref{fig:architecture}) includes interface, logical and data levels. Interface level provides creating the domain ontologies of learning courses, learning resources annotations and learner profile using ontology editor. The logical level includes the personal collections builder and third-party ontology reasoning engine RacerPro. The data level contains 4 ontologies described below, repositories for domain ontologies and annotated learning resources, learner profiles and personal collections of learning resources.

In the Fig. \ref{fig:architecture}: 1 — author knowledge about the learning course, learning resources and learner; 2,3 — specific learning course ontology (in OWL); 4,5 — learning course ontologies created or modified by the tutor; 6,7 — learning resources annotations created or modified by the tutor; 8 — RacerPro request for the learning resources annotations; 9 — learning resources annotations (in OWL); 10 — RacerPro request for specific learning course ontology; 11 — specific learning course ontology (in OWL); 12 — learner profile for RacerPro reasoning; 13,14 — learner profile created or modified by the tutor or learner; 15 — reasoning request (in nRQL); 16 — reasoning results (the resources and relations of the collection, in nRQL); 17 — information about learner; 18 — information about learner profile; 19 — information about learner profile’s URL and request for creating the personal collection; 20 — learner profile (in OWL); 21 — personal collection of learning resources (in HTML).

\label{fig:architecture} Software architecture of LCMS

The software tool for creating the personal learning collections Collection Builder (Anikin 2014b) was designed and implemented within framework of proposed knowledge-based approach with employment of the object-oriented analysis and C# language (Fig. \ref{fig:cb1}\ref{fig:cb2}). It allows to create the personal learning collection based on the learner profile and annotations of learning resources. The collection is visualized in tree-structured form in accordance with data domain structure defined with domain ontology (Fig. \ref{fig:cb2}).

\label{fig:cb1} Collection Builder: learner profile and personal learning collection

\label{fig:cb2} Collection Builder: tree-structured visualization of the personal learning collection

Software Testing and Personal Collections Quality Assessment

Developed software tool was applied for creation of personal collections for the course “Programming Languages. C++” in Volgograd State Technical University. Testing included the following steps: creation of personal collections by students themselves using Collection Builder; creation of personal collections for students by tutors-experts; comparative analysis of created collections, assessment of collections quality, estimation of collection creation time.

As a quality criterion for the personal learning collection we used the relevance to the search query, at that, the relevance is defined on the basis of the following quantitative metrics that used in information retrieval tasks (Rijsbergen 1979):

Precision: \(p=\frac{\left|{RL}_{COL}^{'} \right|}{\left|{RL}^{'}_{COL} \right|+\left|{RL}^{''}_{COL}\right|}\),

Recall: \(r=\frac{\left|{RL}_{COL}^{'} \right|}{\left|{RL}^{'} \right|}\),

F-measure: \(F=\frac{2}{\frac{1}{p}+\frac{1}{r}}\),

where \({RL}^{'}_{COL}\) - relevant resources of the collection, \({RL}^{''}_{COL}\) - irrelevant resources of the collection, \({RL}^{'}\) - relevant resources in the repository, \({RL}^{''}\) - irrelevant resources in the repository, \({RL}\) - resources in the repository, \({RL}_{COL}\) - resources of the collection, \({RL}^{'}\bigcup {RL}^{''}=RL\), \({RL}^{'}_{COL}\bigcup {RL}^{''}_{COL}={RL}_{COL}\).

The precision and recall are the base metrics, F-measure - one of the derivative metrics.

Test results has shown that:

  1. the average time of collection creation decreased almost by 99%;

  2. automatically generated collection contains 100% of learning resources obtained by the intersection of the collections created by tutors for each student, and 91% of learning resources obtained by combining the tutors collections;

  3. the average value of collection recall increased by 29%, precision - by 2,9%, F-measure - by 16,3% in comparison with non-automated process.

These facts allow to draw a conclusion that developed models, method and software tool are effective and efficient for creation of new personal learning content.

Conclusion and future work

The architecture of LCMS and special software tool for creating the smart learning content in form of personal learning collections were designed and implemented within framework of proposed ontology-based approach in the domain of programming languages. The ontological model for knowledge representation was developed including ontologies of learning course domain, learning resource, learner’s profile and personal learning collection. The last one includes the set of semantic rules for creating the personal learning collection. The new two-stage method for electronic learning resources retrieval and integration into personal learning collection was developed based on ontology reasoning rules.

Further evolution of the project implies:

  • reimplementation of the collection builder as a web application using the Stardog Enterprise Graph Database as a data store and reasoning engine. Stardog is a fast SPARQL query answering, lightweight, transactional, with world class OWL 2 and SWRL reasoning support graph database and using it can improve the speed and scalability of the collection builder;

  • implementation the software tool as a web application for creating the learning course ontologies;

  • developing software tool as a web application for annotating the learning resources;

  • developing ontologies for other university courses;

  • the learning resources repository (with Stardog backend as a data store) should be further scaled for subject domain of software engineering to provide the creation of personal collections for variety of learning courses.


This paper presents the results of research carried out under the RFBR grants 13-07-00219 “Intelligent support of strategic planning based on the integration of cognitive and ontological models” and 15-07-03541 “Intelligent support of decision making in management of large scale systems on the base of integration of different types of reasoning on ontological knowledge”.


  1. B. Boiko. Content Management Bible. Wiley, 2005.

  2. A. Rockley, P. Kostur, S. Manning. Managing Enterprise Content: A Unified Content Strategy. New Riders, 2003.

  3. M. White. The Content Management Handbook. Facet Publishing, 2005.

  4. Peter Brusilovsky, Stephen Edwards, Amruth Kumar, Lauri Malmi, Luciana Benotti, Duane Buck, Petri Ihantola, Rikki Prince, Teemu Sirkiä, Sergey Sosnovsky, Jaime Urquiza, Arto Vihavainen, Michael Wollowski. Increasing Adoption of Smart Learning Content for Computer Science Education. 31-57 In Proceedings of the Working Group Reports of the 2014 on Innovation and Technology in Computer Science Education Conference. ACM, 2014. Link

  5. Denis Parra, Peter Brusilovsky. User-controllable personalization: A case study with SetFusion. International Journal of Human-Computer Studies 78, 43–67 Elsevier BV, 2015. Link

  6. Jaewook Ahn, Peter Brusilovsky, Shuguang Han. Personalized Search. In Proceedings of the 20th International Conference on Intelligent User Interfaces - IUI 15. ACM Press, 2015. Link

  7. Jaewook Ahn, Peter Brusilovsky. Adaptive visualization for exploratory information retrieval. Information Processing & Management 49, 1139–1164 Elsevier BV, 2013. Link

  8. I Hatzilygeroudis, J Prentzas, J Garofalakis. Personalized Learning in Web-Based Intelligent Educational Systems: Technologies and Techniques. In Proceedings of the 11th Ineternational Conference on Human-Computer Interaction (HCII-2005), Las Vegas, Nevada, USA, 22-27 July 2005. (2005).

  9. A. Anikin, A. Dvoryankin. Algoritmy i vyvod na ontologiyakh dlya poiska i integracii obrazovatel’nykh resursov v otkrytyh obrazovatel’nykh setyakh. Izvestiya volgogradskogo gosudarstvennogo tekhnicheskogo universiteta 21, 70-74 (2014).

  10. A. Anikin, I. Zhukova. Ontologicheskaya model’ predstavleniya znaniy dlya poiska i integracii obrazovatel’nykh resursov v otkrytykh obrazovatel’nykh setyakh. Izvestiya volgogradskogo gosudarstvennogo tekhnicheskogo universiteta 21, 74-80 (2014).

  11. Anton Anikin, Marina Kultsova, Irina Zhukova, Natalia Sadovnikova, Dmitry Litovkin. Knowledge Based Models and Software Tools for Learning Management in Open Learning Network. 466, 156-171 In Knowledge-Based Software Engineering. Springer International Publishing, 2014. Link

  12. C. J. van Rijsbergen. Information Retrieval. London; Boston: Butterworths, 1979.

[Someone else is editing this]

You are editing this file