## 2 Literature Review
### Ontology Instantiation: Populating Knowledge Graphs  
The web is a complex scenario for information extraction due to the enormous amount of data available, the heterogeneity of the sources, and their technological variety. Ontologies have become the cornerstone technology of the semantic web allowing to represent knowledge in a machine-readable fashion and to organize the information in a homogeneous structure [42]. Some methodologies have been conceived that guide the development of ontologies, offering considerations such as determining the specific domain and ontological scope, the reuse of existing ontologies, T-BOX design (classes, concepts, properties, and relationships), and instantiation (A-BOX) [20]. The manual construction of ontologies turns into a rigorous group of tasks, which are time-consuming, human effort-demanding, error-prone, and require some technical skills [13]. It is possible to solve these problems by implementing automatic or semi-automatic tools for ontology creation, also referred to as OL [43]. OL comprises methods and techniques for the extraction, generation, or acquisition of ontologies from natural language texts, involving data pre-processing, term/concept and relation extraction, axioms acquisition, and evaluation [43]. In synthesis, OL is the approach for automating the knowledge acquisition process. Conversely, OP is the task of adding new instances of concepts or relationships to the ontology, also including processes to eliminate redundant instances [14]. OP does not change the ontology structure; therefore, the concept hierarchy and non-taxonomic relations are not modified. OP requires an existing and specific domain ontology with defined structure. OP systems are related to ontology-based information extraction systems, for the similarities in the procedures used to associate data with ontology concepts and instances [44]. The manual OP process is time consuming and susceptible to human errors; therefore, it is highly advisable to use automatic or semi-automatic processes leveraging various techniques such as NLP and information extraction to acquire and classify ontology instances [19]. In recent years, KGs have become popular because of the high demand for graph technology to make sense of data [45]. KGs are a specific type of graph with an emphasis on contextual understanding. KGs are interlinked sets of facts that describe real-world entities, events, or things and their interrelations in a human and machine-understandable format [46]. In a simple and clear definition, KGs represent words as nodes and the relationships as edges between words [47]. With all, KGs allow people and machines to improve the connections in their datasets [48]. The property graph model is the most popular method to create KGs, consisting basically of nodes representing entities in the domain and relationships representing how entities interrelate [46]. Ontologies allow for more complex types of relationships than property graph-based KGs; for example, properties such as _part_of_, _compatible_with_, or _depends_on_ can be established between categories. They also enable the definition of hierarchical relationships and the further characterization of relationships (e.g., whether they are transitive, symmetric, reflexive, etc.) [46; 49]. A KG built on top of an ontology schema acquires and integrates information into an ontology and can apply a reasoner to derive new knowledge [48]. Unstructured data sources are the most dominant knowledge resources online and, consequently, the most common source format exploited in OP systems. Typically, the first process in an OP pipeline is data acquisition including the identification of the type of source (i.e., image, video, text), which influences the information extraction techniques to be used [15]. There are many information extraction techniques such as Application Programming Interfaces (APIs), web scraping, and the use of specialized libraries to extract heterogeneous data from social media and news websites.