# CourseKG: An Educational Knowledge Graph Based on Course Information for Precision Teaching
## 3 Proposed Method
### Definition and Description  
The definition of CourseKG is given by Definition 1.  
Figure 1: Block diagram of CourseKG.  
**Definition 1**.: \(\textit{CourseKG}=<\textit{Model},\textit{Data}>\)_, where \(\textit{Model}=<V,P,R>\), \(\textit{Data}=d_{a}\cup d_{b}\cup d_{c}\)_  
CourseKG aims to structure and integrate data based on the educational ontology type. Ontology typically includes a subclass-based taxonomic hierarchy, incorporating diverse classifications of concepts. The three elements of _Model_, \(V\) represents _a collection of extracted knowledge points_, \(P\) signifies _their properties or features_, and \(R\) denotes _relationships between entities_. The symbolic or numeric attributes of each point are depicted by nested feature vectors for establishing a standardized definition. The three elements are defined as follows:  
* \(V_{i}=[\textit{course},\textit{name}]\), the entity name is defined based on educational ontology;
* \(P_{i}=[\textit{type},\textit{objectives},\textit{difficulties}]\), where:
* \(\textit{type}=[\textit{knowledge},\textit{skills}\_\textit{and}\_ \textit{abilities}]\), denotes the nature of knowledge and can be categorized into three;
* \(\textit{objectives}=[\textit{remember},\textit{understand},\textit{apply}, \textit{analyze},\textit{evaluate},\textit{create}]\); this is defined as a set of six hierarchical models following [PERSON]'s taxonomy;
* \(\textit{difficulties}=[\textit{easy},\textit{relativelyeasy},\textit{normal}, \textit{hard},\textit{veryhard}]\); this is employed to predict the level of difficulty for students in comprehending a specific knowledge unit \(V_{i}\);
* \(R_{i}=[\textit{inclusion},\textit{precursor},\textit{identity},\textit{ brother},\textit{cause\_and\_effect},\dots]\). It is important to highlight that educational entities exhibit a sequential relationship and can possess numerous specific relations, as illustrated in Table 1.  
Further, _Data_ denotes the foundation of CourseKG, sourced from three text types, as shown in Table 2.  
\begin{table}
\begin{tabular}{l l l} \hline \hline
**Type** & **Description** & **Example** \\ \hline _inclusion_ & \(A\) contains \(B\) \\ _precursor_ & \(A\) is a prerequisite for learning \(B\) \\ _identity_ & \(A\) and \(B\) denote distinct descriptions of identical knowledge \\ _brother_ & \(A\) and \(B\) share the same parent \(C\), \\ _correlation_ & \(A\) and \(B\) are relevant but do not conform to the preceding relationships \\ _inheritance_ & \(A\) is parent and \(B\) is its child \\ _cause\_and\_effect_ & \(A\) triggers an event or condition, while \(B\) is the outcome arising from \(A\) \\ \hline \hline \end{tabular}
\end{table}
Table 1: Special relations in _Model_ of CourseKG.  
\begin{table}
\begin{tabular}{l l l l} \hline \hline  & **Text Type** & **Description** & **Example** \\ \hline \(d_{a}\) & Structured & \begin{tabular}{l} Contains data organized in \\ a predefined format \\ \end{tabular} & _Multiple choice questionnaire, Table_ \\ \(d_{b}\) & Semi-structured & \
\begin{tabular}{l} Contains no structured data \\ but has some structures \\ \end{tabular} & _Database, Text-survey, Syllabus_ \\ \(d_{c}\) & Unstructured &
\begin{tabular}{l} Contains text-intensive data \\ without a predefined data model \\ \end{tabular} & _Homework, Tutorial, Courseware_ \\ \hline \hline \end{tabular}
\end{table}
Table 2: The three types of text in _Data_ of CourseKG.  
Based on the above-presented data, _Model_ of CourseKG has a hierarchical structure. One example of CourseKG is given in the following:  
\[<V_{i},P_{i},R_{i}>= <[\textit{course.C\_programming},\textit{name.function}],\] \[[[\textit{type.skills},\textit{type.abilities}],\] \[[objectives.apply,objectives.analyze],\] \[[difficulties.normal]],\] \[[Precursor:\{function\_definition,function\_call,module programming\}],\] \[[\textit{Brother}:\{local\_variable,global\_variable\}]>\]