1 Introduction

With the development of web technologies, e-learning has become more and more popular. Educational resource construction is a crucial component in e-learning systems. So, through long-term and unremitting efforts of educators and specialists, online educational resources have become richer. Learning websites, online course wares, learning resources management systems and massive open online courses continuously emerge on the Internet. Under these circumstances, learners are not afraid of resource shortage. On the contrary, learners always face a new problem: it is difficult to find the most appropriate resources to meet their learning requirements among such a tremendous amount of resources. How to meet learners’ needs automatically has become an important research field in intelligent education.

The most commonly used method to solve this problem is resource recommendation for learners. There are two kinds of traditional recommendation methods in resource recommendation. The first kind is collaborative filtering, which is one of the most common and effective algorithms (Herlocker et al. 2004; Huang et al. 2007; Linden et al. 2003; Liu and Wu 2016). It can be used in the adaptive e-learning system to recommend courses for learners and teaching instructions for teachers (García et al. 2009). Collaborative filtering doesn’t care about the content of the recommended objects, so any kind of objects can be recommended by this algorithm. However, it also has some disadvantageous such as cold-start and data sparseness (Bobadilla et al. 2012). Besides, it is difficult to give precise recommendations in e-learning because collaborative filtering has no information about the learning content and the cognitive competence of learners. The second kind is recommendation based on content. Recommendations were always based on semantic similarity (Meymandpour and Davis 2016). Researchers try to analyze the content of the learning resources and match them with the keywords or learning historical data of the learners according to the similarity between them. In Li et al.’s research, learner’s online behaviors were modeled. The content similarity with the learning materials was then calculated (Li and Takano 2011). Content analysis was also used to analyze the hyperlinks on Twitter and recommend web resources for users (Yi et al. 2016). Text mining technologies such as keywords and index were used to analyze the text materials in e-learning in order to recommend them to teachers and learners (Manzato et al. 2016; Wan et al. 2015). Content analysis could be combined with collaborative filtering in e-learning recommendation to improve the accuracy (Ghauth and Abdullah 2011). Content analysis pays more attention to the content similarity in recommendation, so it is very useful in the e-learning system. However, text processing technology in content analysis is very complex and time-consuming. Besides, the accuracy of text mining still needs to be improved because of the difficulty of natural language processing.

Due to above disadvantages, some researchers tried to import semantic web into resource recommendation to provide better learning experiences (Aroyo and Dicheva 2004; Shishehchi et al. 2010). The aim of semantic web is to get better communication between people and machines (Berners-Lee et al. 2001). With the help of semantic web, machine can get a better understanding of the meaning and relations between resources and knowledge. This characteristic provides the possibility of automatic resource semantic recommendations (Aroyo and Dicheva 2004). However, how to integrate the learning diagnosis and pedagogics into e-learning semantic recommendation system gained little notice. In this paper, we try to propose a semantic description and recommendation framework of educational resources integrated with learning diagnosis and pedagogics reasoning rules. The aim of this framework is to recommend resources for learners according to both the learning content and the learning behaviors. In this framework, semantic web is used to describe the learning data including both resources and learning behaviors. And then we can recommend resources for learners according to a set of specific learning diagnosis rules and pedagogics rules based on these data. So, learners can get personalized resource services.

The rest of this paper is structured as follows. The related research work is presented in Sect. 2. Section 3 describes the components and details of the semantic description framework for e-learning. Section 4 gives the details of the reasoning rules based on pedagogics. In Sect. 5, we give a case study of the course “theory and technology of database” based on our framework. Section 6 is some discussions about the framework and Sect. 7 is the conclusion.

2 Related Work

2.1 Semantic Web and Ontology

Semantic web was proposed by Berners-Lee et al. (2001). And its purpose is to give well-defined meaning of the objects on the Internet, so that people and computers can get better cooperation. Actually, researchers have already used a lot of standards to describe the educational resource in e-learning to make learners get better understanding of the resources. These standards include Learning Object Metadata (LOM), Dublin Core Metadata Element set for Education, IMS Metadata et al. Metadata is very useful in resource retrieval, but it is seldom used to describe the knowledge structure and relations between resources. Though metadata is widely used in educational resources management system, it is not enough in the intelligent learning system. How to make learning systems intelligent is a new research trend and big challenge in e-learning. Semantic web is a widely used technology aimed at this problem.

Berners-Lee et al. (2001) proposed that “semantic web is not a separate web but an extension of the current one, in which information is given well-defined meaning, better enabling computers and people to work in cooperation”. According to the framework of semantic web, semantic web consists of seven different levels: uniform resource identifier, namespace, Resource Description Framework (RDF), ontology, rules, logic, proof and trust. Ontology is in the middle level of this framework and plays a very important role (Henze et al. 2004). Gruber (2009) defined ontology as the explicit specification of a conceptualization. It is always used to describe the basic knowledge structure to support rules and logic in a semantic web application. According to Gruber’s expression, educational resources can be depicted and organized with the semantic technology, and computers can help us to process and recommend resources for learners automatically. Henze et al. (2004) proposed a personalized e-learning framework with reasoning and ontologies. Bittencourt et al. (2009) presented a computational model for developing semantic web-based educational systems. In this model, authors analyzed the basic components and their functions of semantic web-based educational systems. These studies mainly focused on how to describe resources with semantic web (Lazarus et al. 2015). In our framework, we also construct a course ontology which is used to describe the knowledge structure in a specific course. This course ontology will be used in the description and reasoning of resources. Based on this ontology, a set of recommendation rules are constructed to recommend resource to learners in order to improve the intelligence of resource service.

2.2 Adaptive Educational Systems Based on Semantic Web

Due to the advantages of semantic web, it is widely used in adaptive educational systems and intelligent tutoring systems. According to the research goals and application scenario, we roughly classify these researches into three categories. The first kind is using ontology as the basic principle of a domain. It can provide the standard taxonomy for the authors and instructors in this domain and promote the reusing and sharing of learning resources (Aroyo and Dicheva 2004). Typical research include: ontology evolution and referencing of resources in semantic web context (Rogozan and Paquette 2009). Dicheva and Dichev (2009) developed an authoring tool which allowed users to share concepts and content with the help of ontology. Cassel (2009) used a computing ontology in curriculum development to promote the share of the resources. Libbrecht and Desmoulins (2009) constructed an Geometry ontology platform in which cross-curriculum search and annotation can be done. The second kind is using ontology as a tool to describe the knowledge structure of a domain, and using Resource Description Framework as a tool to describe the resources. So that we can provided learners with a more semantic learning environment and services such as semantic retrieval, content generation, topic map, etc. Typical research includes: Soldatova and Mizoguchi (2009) developed a test generation system based on ontology. It could generate test questions according to the knowledge structure. Yang et al. (2004) proposed two metadata models which allowed annotation and knowledge management for collaborative learning. Abel et al. (2004) built an ontology-based organization memory for e-learning. It is a kind of knowledge management and can provide topic maps for learners. Semantic web technology was also used to integrate with adaptive hypermedia to increase the semantic level of the contents (Papasalouros et al. 2004). The third kind is providing intelligent services such as recommendation and personalization with the help of semantic web combined with rules. Typical research includes: Henze et al. (2004) proposed the basic model of three resources in E-learning which were domain, user and observation based on reasoning and ontologies in order to give a framework of personalized e-learning. Meanwhile, they also developed a personalized e-reading system called “The Personal Reader” which can provide personalized enrichment of web content for each individual user (Henze and Herrlich 2004). Mizoguchi et al. (2009) imported task ontology and functional decomposition into e-learning to promote the personalized learning of procedural knowledge. Radenković et al. (2009) constructed an intelligent assessment system with the help of semantic web and description logic.

2.3 Resource Recommendation Based on Pedagogics

In resource recommendation, how to make the pedagogics serve for the recommendation is also a very important research orientation. Many researchers focus on learners’ interest. Tang and McCalla (2004) proposed a pedagogy-oriented similarity measurement method according to learner’s topic interests and paper preferences, and then introduced two pedagogy-oriented recommendation techniques: model-based and hybrid recommendations. Nadolski et al. suggested a light-weight personalized recommendation system based on ratings. In this research, the authors tried to rate each learning action for the learner with a two-value criterion in an informal learning environment. And they had a simulation to check the effectiveness (Nadolski et al. 2009). Winoto et al. (2012) focused on the pedagogical difference between graduate students and undergraduate students in recommendation system and suggested these differences can be used in collaborative filtering.

These researchers focused on learning interests the learner’s preference, and try to match learning materials with learner’s preference. With the help of semantic web technology, we can describe the knowledge structure of a domain, and use it as a guide to the learners. However, how to combine pedagogical rules with semantic web technology in order to give learners more personalized learning experiences still needs to be explored. For example, different types of knowledge may affect the learning process and need different pedagogical methods. Though learners may have their own preferences, most of the time they cannot figure out what kind of learning resources they really need just by themselves when they have problems. How can semantic web support these different learning needs in e-learning? Our paper aims at this problem. In this paper, we propose a recommendation framework which tries to integrate some pedagogical rules such as the characteristics of the knowledge, the relationships between the knowledge and the diagnosis of learning behavior with semantic web technology. In this framework, we try to integrate the advantages of semantic web and pedagogical rules. Semantic web is used to describe the resources, knowledge structure and learning behavior. Pedagogical rules are used to recommend the appropriate resources for learners.

3 The Semantic Web-Based Recommendation Framework of Resources for E-Learning

3.1 Main Components of the Framework

To manage and organize the learning resources to support semantic recommendation, we propose a semantic recommendation framework of educational resources for e-learning. The framework is showed in Fig. 1.

Fig. 1
figure 1

Semantic recommendation framework for e-learning

In this framework, we define six components in a semantic e-learning system. The six components are: resources, resource metadata, domain ontology, user portfolio, reasoning rules and learning services.

Resources are the basis of the whole system. Most of the learning behaviors are related to learning resources. Recommending different resources for different learners is a kind of intelligence for an e-learning system. The format of resources can be video, audio, text, courseware, test, exam paper, Q&A, etc.

Resource metadata is the basic information of the resources. A lot of metadata standards can be used to depict resources such as LOM, Dublin Core, IMS Metadata, etc. Resource metadata provides the information about resources, but it does not provide the information about knowledge and the associations between resources and knowledge.

Domain ontology is used to depict the knowledge structure and the associations between resources and knowledge. To describe the knowledge structure in a domain, we try to figure out the concepts and the relations between these concepts in the domain.

User portfolio is used to describe the learning history and learning performance of the learners. Its function is to record the resource visiting history and test scores in order to estimate the learning states of learners.

Reasoning rules are used to design personalized learning services for learners. It is the core component of our framework. Though reasoning rules are widely used in semantic web applications (Bruijn et al. 2005; Eiter et al. 2006; Henze et al. 2004; Kopena and Regli 2003), our reasoning rules not only include the “subclass” reasoning which is commonly used in semantic web (Shishehchi et al. 2011; Tanwar and Kumar Malik 2018), but also include a series of pedagogics rules. These reasoning rules are a set of “if–then” rules according to pedagogics. These rules will combine the user portfolio and domain ontology to decide which resource is the best one for learners.

Learning services are those services which are provided to users to help their learning. These services may include learning diagnoses, resource recommendation, etc.

In the following sections, we will give the details of each component in this framework.

3.2 The Domain Ontology

According to the definition of ontology by Gruber (2009), ontology is the explicit specification of a conceptualization in a domain. So, ontology is very appropriate to describe the knowledge structure of a domain. In our application, the domain ontology consists of two parts: the concepts, and the relations between these concepts.

Concepts are the basis of a knowledge structure. For that our application is used in e-learning, we consider the concept in a domain as the knowledge element which is the basic unit to describe knowledge. The knowledge element can be a definition, a theorem, an operation sequence, etc. To depict the concepts in a domain, we define some attributes for the concept. The RDF model for the concept is shown in Fig. 2.

Fig. 2
figure 2

The concept model

In this model, we define four attributes for the concept. These four basic attributes are: interpretation, typical examples, source and type. We use “has interpretation”, “has example”, “has source” and “has type” as predicate verbs to combine the concept with its attribute values to form a series of RDF triples.

The interpretation is used to describe the basic content of the concept such as definition, explanation, illustration and so on. The learners can get a first impression through interpretation. Typical examples are used to provide concrete explanations of the concept because sometimes abstract concepts are harder to understand (Borghi et al. 2018). According to psychology research, worked examples are much easier to understand than explanation in theory (Sweller 1994). The source attribute is used to describe the source of the explanation. It can be a book, an academic paper, an article or any other kind of resources. The type attribute is used to indicate the type of the knowledge in this concept because different knowledge has different learning methods. Knowledge Classification is a complex research field. Different researchers have different classification standards. In our research, combined with David Pawl Ausubel’s Meaning Learning Theory, Gagne’s study result classification theory and John Robert Anderson’s knowledge classification theory, we classify the knowledge into four categories: declarative knowledge, procedural knowledge, applied knowledge and motor skill knowledge. The difference between these different kinds of knowledge and how they affect the learning procedure will be introduced in “Sect. 3.4 the recommendation rules”.

Besides concepts, the ontology also needs to describe the relations between these concepts. Semantic relations between concepts are also very complex. Different ontologies have different relation types. For our research is used in education, we define two most commonly used relations in learning: hyponymy relation and predecessor successor relation. Figure 3 shows two examples of these two relations. These two examples come from the course “theory and technology of database”. Predicate verb “has subclass” is used to describe hyponymy relation between concepts. It is used to depict the knowledge structure of the domain. The learner needs to master all the “sub-classes”, then we can infer that the learner has mastered the “parent-class”. For example, in Fig. 3, the learner needs to master “left join query”, “right join query” and “full outer join query”, then we can infer that the learner has mastered “outer join query”. Predicate verb “has successor” is used to describe the predecessor successor relation between concepts. It is used to depict the learning sequence of the concepts. The predecessor concept is the prior knowledge of the successor concept. For example, in Fig. 3, the learner needs to master “single table query” first, then he/she can study “nested query” and “join query”. With the help of these two relations, we can depict the knowledge of a domain.

Fig. 3
figure 3

RDF triples of concept relations

3.3 The Description of Resources

All the resources have metadata information to describe their metadata. Besides metadata, we define two RDF predicate verbs: “has subject” and “has resource-type” to provide enough information to recommend resources.

“Has subject” is used to describe the relation between resources and concepts. This verb indicates the main content of a resource and provides knowledge foundation for the recommendation. A resource can have one subject or more than one subjects. This depends on the granularity of the resource. According to the number of the subjects a resource contained, we divide the resources into two categories: simple resource and complex resource. The definitions are as follows:

Simple resource Simple resource refers to those resources which only contain one subject.

Complex resource Complex resource refers to those resources which contain more than one subjects.

According to pedagogics, at the beginning of the study, it is better to provide simple resources to learners. These resources are intuitive and easy to understand with small granularity. So learners can concentrate on learning of the current concept. After they master this concept, the complex resources can be provided to help them construct the relations between related concepts. Figure 4 shows an example that a resource is related to three concepts, so it has three “has subject” relations.

Fig. 4
figure 4

RDF triples about resource and concept

“Has resource-type” is used to describe the type of the resource. Though the classification of resources has a wide variety, we just define several types which are widely used in pedagogics to help the reasoning (Table 1).

Table 1 Resource types in the application

“Has subject” and “Has resource-type” can be joined together in the resource retrieval to help us locate the required resources.

3.4 The User Portfolio

The user portfolio is used to collect information about the learning process. In our framework, we divide the learning processing information into three categories: resource visiting information, test information and student knowledge information. Though xAPI is a popular tool to record user tracking data (Bakharia et al. 2016), we still choose RDF to describe the learning behavior in our framework. xAPI is a triple statement which indicates the subject, the verb and the object. In our framework, we want to record more information than just triples. So we import blank node to gather more information in RDF. It can be easily transformed to xAPI to share with other systems.

  1. 1.

    Resource visiting information Resource visiting information is used to describe the resource visiting history of the learners. To gather more information, we also try to record the visiting date time, the duration of the learner on this resource, etc. In RDF triples, we import a blank node called “visiting record” to link the learner and the resource. Figure 5 shows a visiting record of a learner.

    Fig. 5
    figure 5

    RDF triples about resource visiting

  2. 2.

    Test information Test information is used to describe the learner’s performance in the test. The RDF triples are similar to the resource visiting triples. We import a black node called “test record” to link the learner and the test. Figure 6 shows a test record of a learner.

    Fig. 6
    figure 6

    RDF triples about test

  3. 3.

    Student knowledge information Student knowledge information refers to the learner’s knowledge model. It is used to describe the information about those concepts which learner has already known. It is a subset of the domain ontology. According to the definition of the relation between concepts, the learner needs to master all the subclass concepts then we can infer that he/she has mastered the parent concept. So after the learner has mastered a concept, we need to check whether all the subclasses of the current concept’s parent concept have already mastered. If yes, we need to add the parent concept into the RDF triple. Figure 7 shows an example of the student knowledge triples.

    Fig. 7
    figure 7

    RDF triples about student knowledge

4 The Recommendation Rules Based on Pedagogics

Recommendation rules are used to recommend resources according to the learning context. We divide the recommendation rules into two categories: rules based on the type of knowledge and rules based on the learning history. In the following sections, we will give the details of these two kinds of rules.

4.1 Rules Based on the Type of Knowledge

In Sect. 3.2, we define an attribute “type” for concept. According to the knowledge classification theory, we define four values for the attribute “type”: declarative knowledge, applied knowledge, procedural knowledge and motor skill knowledge. Different kind of knowledge involves different cognitive skills and different learning materials (Perkins and Salomon 1989). Table 2 shows the difference between these four kinds of knowledge and the cognitive skills they involve (Bereiter and Scardamalia 2005; Bloom et al. 1984; Gagne 1970, 1984).

Table 2 Different type of knowledge

In Table 2 we can see that different kind of knowledge involve different cognitive skills. To promote the construction of different kind of knowledge, we may need to provide different kind of learning materials to learners. Figure 8 shows the reasoning rules of learning flow path for different kinds of knowledge. In this learning flow path, all the resources provided are single resources (the definition is given in Sect. 3.3). The complex resources will be provided to students after they pass the test.

Fig. 8
figure 8

Reasoning rules based on knowledge type

When the learner starts to learn a new concept, the system will first display the basic information of the concept in the domain ontology. Each concept has an interpretation and typical examples in the domain ontology. This information can provide a general impression of the concept. The learners can judge whether they have already known this concept or not. If they think they have already known this concept, then a test will be displayed to them to check whether they truly understand this concept or not. If they never learned this concept before, then we need to recommend learning materials to them. The first material they need to learn is the micro-video if we have. Micro-video is a well-designed learning material recorded by teachers, so it is the first choice. After the learners study the micro-video, then different kind of learning materials will be recommended to them according to the type of knowledge in this concept. If the concept belongs to declarative knowledge, and the cognitive skill involved is memorization, then those kinds of materials that can let them memorize will be a good choice. So, the sequence of the learning materials is courseware, example and other materials. Most of the coursewares contain text information and learners can stay at any slide they want to memorize it. If the concept belongs to applied knowledge, and the involved cognitive skills include memorization, comprehension and application, then those kinds of materials that can help learners apply the knowledge they learned will be helpful for them. So, the sequence of the learning materials is example, exercise, courseware and other materials. If the concept belongs to procedural knowledge, and the cognitive skills involved are memorization, comprehension, analysis, application, then those integrated cases which involve complex analytic skills are suitable for learners. So the sequence of the materials is case, example, exercise, courseware and other materials. If the concept belongs to motor skill knowledge, and the involved skill is imitation, then those kinds of materials that can help the learner get the details of the movements and imitate them will be useful. So, the first choice for motor skill knowledge is still micro-video. The sequence of other materials is case, exercise, courseware and other materials. During the learning process, the learners can stop at any step and go to the test if they think they’ve already mastered this concept.

4.2 Rules Based on Learning History

The type of knowledge is not the only factor that will affect the learning process. The outcome of the test and learner’s learning history also affects the learning path. Figure 9 shows the reasoning rules based on the test and learning history.

Fig. 9
figure 9

Reasoning rules based on learning history

The learner needs to do a test if he thinks he has already understood the concept. The test is a list of questions related to the concept which are designed by teachers. If the learner can pass this test, that means he has already known this concept. Then we need to check the number of times this learner attended the test on this concept. If it is less than a certain threshold, we consider that this student is a very good student and he/she can master this concept very quickly. So we will provide some supplementary learning materials to him/her. Else, we will just let the student do the normal learning path. That means, after they master this concept, we will provide complex resources which contain the current concept. Before we provide these resources to the learner, we will make sure that all the concepts contained in these resources have been mastered by the learner. These complex resources are used to help learners build the connections between concepts. So, they can integrate the fragmental concepts together. After they finish these complex resources, they can move to the study of next concept in the domain ontology. If the learner cannot pass the test, that means we need to provide more study materials to help the learner. Then the reasoning rules are arranged according to learner’s learning history. At first, we need to check the learning times of the current concept. This information can be found in the user portfolio. If the learning times of the current concept are less than 2, that means the learner do not learn this concept before or just learn it for one time. Then we will recommend the learner to study this concept again. The basic process of learning a concept is shown in Fig. 8. If the learning times are more than 2, that means the learner has already learned this concept for a lot of times, but he/she still cannot master it. From this phenomenon, we infer that maybe the learner did not master the prior knowledge of the current concept. So we get all the predecessor concepts of the current concept from the domain ontology. And then we check the learning states of these predecessor concepts. If all the predecessor concepts are marked as mastered in user portfolio, we will then check the resource visiting history to get those learning materials which are not visited by the learner before and related to these concepts. And then provided the learner with these learning materials in order to supplement and consolidate their learning outcomes. If we find that some predecessor concepts are not mastered in user portfolio. We will then add all the non-mastered concepts into the learning queue, and ask the learner to study them one by one. The learning process is shown in Fig. 8.

5 Implementation of the Prototype System

In order to validate the effectiveness of our framework, we chose a course “the theory and practice of database technology” to build a prototype system as a case study.

5.1 The Construction of Curriculum Ontology

To extract all the concepts from the course “the theory and practice of database technology”, two experienced teachers work independently to extract the concepts, their interpretations, their types and typical examples. Then they will compare and merge their results together. If they have disagreements, they will discuss with each other until they get an agreement. Table 3 shows parts of the concepts they extract.

Table 3 Examples of the concepts in curriculum ontology

Besides the extraction of the concepts, we also use the same method to label the relations between these concepts. Figure 10 shows the knowledge structure of “single table query” and “join query”. In this subset of domain ontology, we describe two kinds of relations. The first kind of relation is “has subclass” relation. For example, “join query” has a subclass “equi-join”. The other is “has successor” relation. For example, “equi-join” has a successor “complex join”.

Fig. 10
figure 10

Knowledge structure of “Database Query”

5.2 Resource Organization and Retrieval Based on Domain Ontology

According to our framework, all the resources will have an ID, a “resource type” attribute and metadata information. Besides this, all the resources are connected with the concepts in the domain ontology using the RDF vocabulary “has subject”. Resources are encouraged to be cut in small granularity. For micro-resources are more easily to be connected with the concepts precisely. And micro-resources are more acceptable for students to concentrate on.

To retrieve the semantic relationships between knowledge, user portfolio and resources, we need to use some semantic retrieval technologies. Simple Protocol and RDF Query Language (SPRQL) is a kind of commonly used semantic query language (Lu and Xu 2017). In our system, we also use this language to support all the retrieval and reasoning. Some examples are given below.

Query all the prior knowledge concepts of “complex query”

  • PREFIX ccnuit: <http://www.ccnu.edu.cn/it/data/0.9/>

  • select ?c where

  • {?c ccnuit:has successor ccnuit:complex query.}

  • Query the url of a resource whose resource type is “micro-video” and its subejct is “equi join”

  • select ?url where

  • {?resource ccnuit:has subject ccnuit:equi join.

  • ?reource ccnuit:resourcetype ccnuit:micro video.

  • ?resource dc:url ?url.

  • }

Query all the resources which are related to “equi join” and learner A has visited before.

  • select ?resource where

  • {?resource ccnuit:has subject ccnuit:equi join.

  • ccnuit:A ccnuit:visit ?temp.

  • ?temp ccnuit:visit resource ?resource.

  • }

5.3 Personalized Learning Experiences

According to our resource organization and recommendation reasoning rules, different learners will get different learning paths and receive different resources under our framework. We introduce three typical learning modes to describe the personalized learning experience. They are expansion and enhancement mode, repeated training mode, prior knowledge supplement mode.

  1. 1.

    Expansion and enhancement mode

This kind of learning mode always appears when the learner is very familiar with the learning content or the learner has a very good learning capacity. Figure 11 shows a typical learning flow path in this mode.

Fig. 11
figure 11

Typical learning flow path in expansion and enhancement mode

In this learning flow path, a student starts to learn the concept “complex path”. The definition and typical examples will be provided to him/her. After seeing the definition, he/she chooses to keep learning on this concept. Then micro video of this concept will be provided to him/her. After the micro video, he/she thinks it’s not enough for him/her to master this concept. So, some examples will be provided to him/her because “complex path” is a kind of application knowledge. After learning these examples, the learner chooses to attend the test. The result is that he/she passes this test at once. Then we will mark this concept as mastered by this learner in RDF. For this concept is the last subclass of “join query”, we will check the states of all the subclasses of “join query”. If all the subclass concepts are marked as “mastered”, then we will mark the parent class “join query” as mastered. Then this learner passes the test at the first time, so we assume that he/she has a very good learning capacity. We will provide some supplementary materials to him/her. After learning of the supplementary materials, he/she will receive some complex resources which contain the concept “complex query” and the other concepts the learner has mastered. This will help the learner to build connections between knowledge. Then the learning of “complex query” comes to the end. The learner can move to another concept.

  1. 2.

    Repeated training mode

This kind of learning mode always appears on the general students. They cannot master the knowledge at the first of the learning. So they need to get repeated training to get better understanding of the knowledge. Figure 12 shows a typical learning flow path in this mode.

Fig. 12
figure 12

Typical learning flow path in repeated training mode

The difference between this mode and the expansion and enhancement mode is that the student cannot pass the test at the first time in this mode. After he/she doesn’t pass the test, he/she will receive more learning materials to get further learning. In the example of Fig. 12, this learner received more examples and exercises after he/she didn’t pass the test. Then after studying these examples and exercises, the learner passed the test at the second time. For the learner attended the test for two times, so he/she will not receive supplementary materials. This kind of mode is the most likely happened mode in learning. Students need to have repeated study on this concept in order to master it. So, in this mode, we try to give more learning resources to help students.

  1. 3.

    Prior knowledge supplement mode

This kind of learning mode always appears when the learner has problem in learning. Turning back and studying the prior knowledge of the current concept may help him. So, we need to supplement the prior knowledge for the learner. Figure 13 shows a learning flow path in prior knowledge supplement mode.

Fig. 13
figure 13

Typical learning flow path in prior knowledge supplement mode

The difference between this mode and the repeated training mode is that in this mode, the learner attends the test for more than 2 times and he/she still cannot pass the test. So according to the relations described in domain ontology, we suggest that he/she to study the prior knowledge of the current concept. The prior knowledge described in domain ontology is “join query”. The process of learning “join query” is similar to the learning process of the concept “complex query”, so it is omitted in Fig. 13. After learning “join query”, the learner will return to study “complex query”. Micro video will be provided to the learner again. After he/she studied the micro video, he/she thought that he/she understood this concept finally. Then he/she chose to attend the test again. And this time, the learner passed this test. We assume that the learner has finally mastered this concept.

From the above three learning modes, we can see that, though the final learning objective is helping them master the knowledge, students who have different learning capacity will receive different learning resources according to the content of knowledge and their behavior during the learning.

6 Discussion

In this case study, we develop a curriculum ontology about “the theory and practice of database technology”. And with the help of this ontology, we use RDF to describe the semantics of resources in order to depict the relations between knowledge and resources. Then, based on the knowledge structure and resources, the pedagogical recommendation rules are used to recommend personalized learning resources for learners. According to our case study, learners can get different resources according to different type of knowledge and their different learning levels. It proves that our framework can provide individualized learning services.

During the practice process we found that, compared to the other recommendation framework, our framework has the following advantages:

  1. 1.

    In our framework, the cold-start problem is partly solved. Though all students will get the same resources at the first time when they enter the system, they will get personalized learning experiences once the system can get personal information and feedback from students.

  2. 2.

    With the help of domain ontology and knowledge graph, it is easy to visualize the structure of the knowledge. Students can get a general idea of the relations between different knowledge. Meanwhile, knowledge graph can also be used to display the learning states of students by using different colors on concepts of different states.

  3. 3.

    Our framework can recommend learning resources from multi-granularities and multi-perspectives. Students can get learning resources based on the inner structure of the knowledge. This strategy can ensure the integrity of learning. Students can also get different resources according to their different learning capacity. This strategy can ensure that all students with different levels of learning capacity can get satisfying learning experiences.

  4. 4.

    All the data including resources and learning histories are compatible with the learning-related criteria. The meta data of the learning resources accord with the popular metadata learning object criteria. The learning process data can be easily transformed into xAPI format. The compatibility can ensure that it is easy to share and reuse all the data with other systems and organizations.

Meanwhile, in our experiences, there are also some shortcomings and challenges which need further study in the future.

  1. 1.

    The first shortcoming is that the annotation of resources is a time-consuming work. All resources need to be cut in small granularities and classified into different categories. It is a very heavy burden for teachers to apply it to a huge number of resources. On the other hand, the number of resources should be large enough to ensure that students can get appropriate recommendations. So, crowdsourcing technology or automatic annotation will be a good solution to this problem.

  2. 2.

    The second shortcoming is that due to some limitations, we did not do a comparative study between our framework and the human tutor’s recommendation. Though our framework can provide personalized services, we cannot sure that it is better, equal or even worse than human recommendation.

  3. 3.

    The third shortcoming is that the learning behaviors are still very coarse-grained in our framework and it is not enough to make precise recommendation in the learning process. In our framework, we only record the learners’ learning behaviors. The other features such as physiological and psychological features will also affect the learning states of the learners. Adding these features into the framework will greatly increase the recommendation precision.

7 Conclusion

This paper has proposed a semantic recommendation framework of educational resources for e-learning. The aim of the framework is to recommend appropriate resources for learners with the help of semantic web technology and pedagogics. In this framework, semantic web is used to describe and organize knowledge structure and resources. Pedagogics are integrated into the reasoning rules to support recommendation. This framework contains six components: resources, resource metadata, domain ontology, user portfolio, reasoning rules and learning services. In this framework, domain ontology is used to provide the basic knowledge structure of the domain. Resources and portfolio are described in RDF triples. They can be retrieved by SPRQL to support reasoning. Reasoning rules include two kinds of rules: rules based on the type of knowledge and the rules based on learning history. These rules are made according to the pedagogics in order to provide individualized resources for learners.

To verify the effectiveness of the framework, we take the “theory and practice of database” as a case study to implement our framework. Personalized learning path can be recommended for learners according to their different learning performance. And the system has a good compatibility to share and reuse data with other systems and organizations. On the other hand, the recommendation mechanisms in our framework are still not elaborated enough for precise education. The recorded behaviors in our framework are coarse-grained. Those physiological and psychological features could be added into the framework to improve the precision of the recommendation. In the future study, we will try to improve the precision of our recommendation and transfer our framework to other courses to get more application data.