<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">RMLStreamer supported by RML-view-to-CSV in the performance track of the KGCW Challenge 2024</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Els</forename><surname>De Vleeschauwer</surname></persName>
							<affiliation key="aff0">
								<orgName type="department" key="dep1">IDLab</orgName>
								<orgName type="department" key="dep2">Dept. Electronics &amp; Information Systems</orgName>
								<orgName type="institution">Ghent University -imec</orgName>
								<address>
									<country key="BE">Belgium</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Ben</forename><surname>De Meester</surname></persName>
							<affiliation key="aff0">
								<orgName type="department" key="dep1">IDLab</orgName>
								<orgName type="department" key="dep2">Dept. Electronics &amp; Information Systems</orgName>
								<orgName type="institution">Ghent University -imec</orgName>
								<address>
									<country key="BE">Belgium</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">RMLStreamer supported by RML-view-to-CSV in the performance track of the KGCW Challenge 2024</title>
					</analytic>
					<monogr>
						<idno type="ISSN">1613-0073</idno>
					</monogr>
					<idno type="MD5">BEFAB0B1C0562C1629149E99A75E379E</idno>
					<idno type="DOI">10.5281/zenodo.10721875</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2025-04-23T18:22+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>RMLStreamer</term>
					<term>RML-view-to-CSV</term>
					<term>challenge</term>
					<term>knowledge graph construction</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>This paper presents the results of the performance track of the Knowledge Graph Construction Workshop 2024 Challenge with RMLStreamer, an RML mapping engine that processes all data in a streaming fashion. On mappings without joins, RMLStreamer scales well regarding execution time and CPU usage, while maintaining a constant memory usage. To optimize the processing of the joins, we added RML-view-to-CSV as a first step to our knowledge graph construction pipeline. RML-view-to-CSV is a proof-of-concept implementation for RML Logical Views, i.e. flattened, source format-agnostic views over one or more existing data sources. RML-view-to-CSV can additionally rewrite referencing object maps as logical views, before it materializes the logical views as CSV files. The combination of RML-view-to-CSV and RMLStreamer emerges as an efficient approach, showcasing the potential of modular mapping engines that delegate each task to the most suitable framework.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.">Introduction</head><p>The Knowledge Graph Construction Workshop (KGCW) 2024 Challenge 1 consists of two tracks: (i) a conformance track, that aims to spark development of implementations for the new RML specifications and improve the test-cases, and (2) a performance track, that wants to encourage the implementation of optimizations not only for execution time but also for CPU and memory usage. The conformance track covers the same experiments as the KGCW 2023 Challenge 2 , consisting of two parts: (i) knowledge graph construction (KGC) parameters to evaluate individual parameters, e.g. joins and duplicates, with artificial data, and (ii) GTFS-Madrid-Bench <ref type="bibr" target="#b0">[1]</ref> to focus on real-life use cases based on public transport data from Madrid. In contrast to the previous edition, all participants now conduct the experiments on identical virtual machines provided by Orange 3 . This ensures that the results from all participants can be directly compared. In this paper, we present the results of the performance track for RMLStreamer <ref type="bibr" target="#b1">[2]</ref>, an RML mapping engine which processes all data in a streaming fashion, in combination with RML-view-to-CSV<ref type="foot" target="#foot_0">4</ref> , a proof-of-concept implementation for RML Logical Views <ref type="bibr" target="#b2">[3]</ref>.</p><p>Section 2 describes the components of our knowledge graph construction pipeline. Section 3 discusses the setup used to execute the challenge's experiments. We present our results in Section 4 and our conclusion in Section 5.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">Knowledge Graph Construction Pipeline</head><p>Our knowledge graph construction pipeline (Figure <ref type="figure" target="#fig_0">1</ref>) consists of two components: (i) RMLStreamer executes the RML mapping rules in a streaming fashion <ref type="bibr" target="#b1">[2]</ref>, and (ii) RML-view-to-CSV is a proof-of-concept implementation for RML Logical Views, that can resolve joins between data sources <ref type="bibr" target="#b2">[3]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1.">RMLStreamer</head><p>RMLStreamer executes RML mapping rules to generate high quality Linked Data from multiple originally (semi-)structured data sources in a streaming way. It handles big input files and continuous data streams like sensor data without consuming more memory when the input data size increases. It leverages Apache Flink to scale vertically across multiple CPU cores and horizontally across multiple machines. In the challenge, we use RMLStreamer version v2.5.0 with an embedded Flink version in a Docker container<ref type="foot" target="#foot_1">5</ref> .</p><p>The challenge results of 2023 show that, on mapping tasks without joins, RMLStreamer scales well regarding execution time and CPU usage, while maintaining a constant memory usage <ref type="bibr" target="#b3">[4]</ref>.</p><p>However, joins can significantly prolongue the execution time and increase the size of the output of RMLStreamer, as RMLStreamer does not eliminate self-joins or duplicates. As a result, RMLStreamer needs more than three hours to execute the first scale of the GTFS-Madrid-Bench, generating an output of 105 GB. Therefore, we delegate the execution of joins to RML-view-to-CSV.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2.">RML-view-to-CSV</head><p>RML-view-to-CSV is a proof-of-concept implementation for RML Logical Views, a new RML module that is still under development. In our previous paper <ref type="bibr" target="#b2">[3]</ref> we elaborated on both RML Logical Views and RML-view-to-CSV. In this section, we highlight the aspects used for the challenge.</p><p>RML Logical Views<ref type="foot" target="#foot_2">6</ref> allow specifying a logical view: a flattened, source format-agnostic view over one or more existing data sources. A view over multiple data sources can be created by joining a logical view with other logical views.</p><p>RML-view-to-CSV resolves logical views as a first step in the KGC pipeline. It includes an option to delegate the execution of joins expressed in triples maps to logical views. First, RML-view-to-CSV identifies and optimizes redundant self-joins, and eliminates the remaining referencing object maps from the mapping, replacing them by equivalent logical views. Afterwards, it materializes the logical views as CSV files. During this process, RMLview-to-CSV also takes the related triples maps into account, eliminating redundant fields and duplicate logical iterations. Finally, it rewrites the mapping accordingly, replacing the logical views as logical sources over the materialized logical views.</p><p>At this moment, RML-view-to-CSV supports one nested source format (JSON) and one tabular source format (CSV). Slight adaptations to the experiment setup were needed to overcome this limitation.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">Experiment setup</head><p>The KGCW 2024 Challenge provides CSV files as source data, mapping files, queries, baseline results (i.e. the expected set of triples and query results), an example pipeline based on the MySQL, RMLMapper, and Virtuoso for reaching those results, and a tool for executing the example pipeline.</p><p>The following adaptations were made to the provided experiments to enable execution with our KGC pipeline. (i) In the provided end-to-end pipelines, the CSV files are loaded into a relational database. As RML-view-to-CSV does not support SQL (yet), we used the CSV files directly to construct the knowledge graphs and adapted the mapping files accordingly. (ii) As RML-view-to-CSV does not support XML (yet), we replaced the XML files in the GTFS-Madrid-Bench heterogeneity experiments by JSON files. We conducted two heterogeneity experiments: one experiment with only JSON source data and one experiment with 50 % CSV and 50 % JSON source data, both on scale 100. (iii) We added a condition to the mapping files to recognize the string NULL in the provided CSV files as an empty value. The GTFS experiments were executed with our KGC pipeline as shown in Figure <ref type="figure" target="#fig_0">1</ref>. For the KGC parameters experiments without joins, we skipped the preprocessing step with RML-view-to-CSV, as it is a redundant step for these experiments. For the KGC parameter experiments with joins, we tested both the pipeline with and without RML-view-to-CSV as preprocessor, to measure also the impact of RML-view-to-CSV for those experiments.</p><p>We compared our experiments' results to ensure that our output is correct with respect to the baseline results of the challenge. For the first part of the challenge (KGC parameters), where the output of RMLStreamer is not loaded into a triples store, we deduplicated the output results as RMLStreamer cannot eliminate duplicates by itself. After deduplication, we compared the number of triples to the baseline results of the challenge. For the second part of the challenge (GTFS-Madrid-Bench) we compared the number of query results to the baseline.</p><p>All experiments were executed on the virtual machine provided by Orange, with following specifications: 4 vCPUs, 16 GB RAM and 140GiB SSD storage running on Ubuntu 22.04.3 LTS. The challenge execution tool configures the Java heap space to 50 % of the available memory. All experiments were performed 5 times, and the experiment with the median of the measurements is reported. All files needed to reproduce the conducted experiments are available on Zenodo<ref type="foot" target="#foot_3">7</ref> .</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">Results</head><p>In Figure <ref type="figure" target="#fig_5">2</ref> and Table <ref type="table" target="#tab_0">1</ref> we included the measured execution time, CPU time, and maximal memory usage of the knowledge graph construction pipeline for selected experiments. The complete overview of the results, as it was submitted to the KGCW 2024 Challenge, is available on Zenodo<ref type="foot" target="#foot_4">8</ref> . First, we verify how RMLStreamer behaves when the size of the expected output increases. This is best illustrated by the GTFS-Madrid-Bench scale experiments. Figure <ref type="figure" target="#fig_5">2a</ref> and Figure <ref type="figure" target="#fig_5">2b</ref> show that both RML-view-to-CSV and RMLStreamer scale towards a linear trend. Note that the reported metrics include the startup time of RML-view-to-CSV and RMLStreamer (no separate measurements in the challenge execution tool), that is independent of data size and has a higher impact on the lower scales. The execution time and CPU time increases with a factor of ten, the same factor as the data size for higher scales. The peak RAM memory (fig. <ref type="figure" target="#fig_5">2c</ref>) measured is similar for all scales when using RMLStreamer. RMLStreamer has a constant memory usage independent of the data size, because it processes everything in a streaming way. This ensures a stable performance independent of the data size. As long as there is space to store the output, RMLStreamer can continue its knowledge graph construction process. For RML-view-to-CSV we note an increasing use of memory for the higher GTFS scales. Nevertheless, it was still able to handle scale 1000 without reaching the memory limitations of the provided hardware.</p><p>The measurements for the KGC parameter experiments confirm these observations (Table <ref type="table" target="#tab_0">1</ref> Section 1). RMLStreamer shows linear scaling of execution time and CPU usage, proportional to the size of the input data, in combination with a constant memory usage.</p><p>Second, we evaluate the impact of the format of the data input. Replacing the CSV source data by JSON data increases the execution time of RMLStreamer with a factor of two. The difference in execution time for RMLStreamer is the consequence of RMLStreamer chunking CSV files and processing the chunks in parallel. This is not the     case for the JSON formats yet. The performance impact of nested data is higher for RML-view-to-CSV. The execution time and CPU usage of RML-view-to-CSV increases with a factor of ten, and its memory consumption with a factor of three (fig. <ref type="figure" target="#fig_5">2d</ref>). Third, we investigate the impact of duplicates and empty values in the input data. As RMLStreamer does not eliminate duplicates and the duplicate tests all start with the same amount of input data, there is no noticeable difference in performance between the experiments with and without duplicates, whilst a duplication elimination could result in a much better performance for tests with duplicates (Table <ref type="table" target="#tab_0">1</ref> Section 2). In the source data of the experiments with empty values (Table <ref type="table" target="#tab_0">1</ref> Section 3), this string NULL is representing an empty value in a CSV file. We had to add a condition to the mappings of those experiments to recognise this string as an empty values. The execution of this condition increased the execution time and CPU usage with 50% when all rows contain  <ref type="table" target="#tab_0">1</ref> Section 4). We executed these experiments without and with RML-view-to-CSV as preprocessor and noticed that RML-view-to-CSV reduced the total execution time and CPU usage with respectively 20% and 39% for the experiments containing most joins.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.">Conclusion</head><p>The KGCW 2024 Challenge results confirms the observations of the KGCW 2023 Challenge: RMLStreamer has a linear scaling of execution time and CPU usage, proportional to the size of the input data, while maintaining a constant memory usage. Scalability is the main strength of RMLStreamer.</p><p>The main weakness of RMLStreamer is its inefficient implementation of join operations (e.g. GTFS-Madrid-Bench experiments with joins cannot be handled properly by RMLStreamer). When delegating this task to RML-view-to-CSV as a preprocessor, we resolve this weakness and build a reliable and performing knowledge graph construction pipeline.</p><p>The challenge results reveal of slower performance of RML-view-to-CSV when handling nested data. As RML Logical Views enable the flattening of nested data, the implementation of RML-view-to-CSV is processing all JSON fields separately. A more efficient implementation for nested data sources is a challenge for future implementations, after the RML Logical View specification is finalized.</p><p>Comparing to the results of KGCW Challenge 2023 <ref type="bibr" target="#b3">[4]</ref>, we see a direct relation between the performance of RMLStreamer, and the available CPU cores and RAM memory of the virtual machines used for the experiments. RMLStreamer is now up to a factor of three slower and uses 30% less memory. The virtual machine used for the KGCW Challenge 2023 had 12 CPU cores and 24 GB RAM; for the KGCW Challenge 2024, all experiments were conducted on a virtual machine with 4 CPU cores and 16 GB RAM. We concluded that RMLStreamer takes full advantage of the number of available CPU cores and of the available memory. At the moment of writing, we have no insight in the results of the other engines participating in the performance track of the KGCW Challenge 2024. We are looking forward to the comparison of the challenge results.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: Knowledge graph construction pipeline: joins are resolved by RML-view-to-CSV to reduce the knowledge graph construction execution time and the size of the resulting RDF knowledge graph.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head></head><label></label><figDesc>Linear trend: the execution time of both RML-view-to-CSV and RMLStreamer increases with the same factor as the data size for higher scales.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head></head><label></label><figDesc>Linear trend: the CPU usage of both RML-view-to-CSV and RMLStreamer increases with the same factor as the data size for higher scales. 0,5</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head></head><label></label><figDesc>The memory consumption of RML-viewto-CSV increases, while RMLStreamer has a constant memory usage independent of data size.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head></head><label></label><figDesc>When using JSON data as source instead of CSV data, the performance impact is higher on RML-view-to-CSV than on RMLStreamer.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: Metrics of the knowledge graph construction pipeline for the GTFS-Madrid-Bench experiments.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>Table 1</head><label>1</label><figDesc>Metrics of the knowledge graph construction step for selected KGC parameter experiments empty values.Last, we comment on the KGC parameter experiments that include joins (Table</figDesc><table><row><cell></cell><cell cols="4">Execution (s) CPU (s) Peak RAM (GB) Output (triples)</cell></row><row><cell>1. Records</cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell>10K rows 20 columns</cell><cell>22</cell><cell>49</cell><cell>1,8</cell><cell>200.000</cell></row><row><cell>100K rows 20 columns</cell><cell>41</cell><cell>120</cell><cell>6,1</cell><cell>2.000.000</cell></row><row><cell>1M rows 20 columns</cell><cell>187</cell><cell>694</cell><cell>6,1</cell><cell>20.000.000</cell></row><row><cell>10M rows 20 columns</cell><cell>1.769</cell><cell>6.918</cell><cell>6,2</cell><cell>200.000.000</cell></row><row><cell>2. Duplicates</cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell>100 percent</cell><cell>43</cell><cell>128</cell><cell>6,1</cell><cell>20</cell></row><row><cell>0 percent</cell><cell>44</cell><cell>130</cell><cell>6,1</cell><cell>2.000.000</cell></row><row><cell>3. Empty values</cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell>100 percent</cell><cell>66</cell><cell>223</cell><cell>6,1</cell><cell>0</cell></row><row><cell>0 percent</cell><cell>46</cell><cell>147</cell><cell>6,1</cell><cell>2.000.000</cell></row><row><cell cols="3">4a. Joins (without support of RML-view-to-CSV)</cell><cell></cell><cell></cell></row><row><cell>1-1 0 percent</cell><cell>41</cell><cell>120</cell><cell>6.3</cell><cell>0</cell></row><row><cell>5-5 100 percent</cell><cell>110</cell><cell>396</cell><cell>6.4</cell><cell>2.500.000</cell></row><row><cell cols="3">4b. Joins (with support of RML-view-to-CSV)</cell><cell></cell><cell></cell></row><row><cell>1-1 0 percent</cell><cell>37</cell><cell>88</cell><cell>6,1</cell><cell>0</cell></row><row><cell>5-5 100 percent</cell><cell>88</cell><cell>242</cell><cell>6,1</cell><cell>2.500.000</cell></row></table></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_0">https://github.com/RMLio/rml-view-to-csv/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="5" xml:id="foot_1">https://zenodo.org/records/7998156</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="6" xml:id="foot_2">https://github.com/kg-construct/rml-lv</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="7" xml:id="foot_3">https://doi.org/10.5281/zenodo.11100801</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="8" xml:id="foot_4">https://doi.org/10.5281/zenodo.11100801</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Acknowledgments</head><p>The described research activities were supported by SolidLab Vlaanderen (Flemish Government, EWI and RRF project VV023/10), and the European Unions Horizon Europe research and innovation program under grant agreement no. 101058682 (Onto-DESIDE).</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Gtfs-madrid-bench: A benchmark for virtual knowledge graph access in the transport domain</title>
		<author>
			<persName><forename type="first">D</forename><surname>Chaves-Fraga</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Priyatna</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Cimmino</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Toledo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Ruckhaus</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Corcho</surname></persName>
		</author>
		<idno type="DOI">10.1016/j.websem.2020.100596</idno>
	</analytic>
	<monogr>
		<title level="j">Journal of Web Semantics</title>
		<imprint>
			<biblScope unit="volume">65</biblScope>
			<biblScope unit="page">100596</biblScope>
			<date type="published" when="2020">2020</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">RMLStreamer-SISO: An RDF Stream Generator from Streaming Heterogeneous Data</title>
		<author>
			<persName><forename type="first">G</forename><surname>Sitt Min Oo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Haesendonck</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>De Meester</surname></persName>
		</author>
		<author>
			<persName><surname>Dimou</surname></persName>
		</author>
		<idno type="DOI">10.1007/978-3-031-19433-7_40</idno>
	</analytic>
	<monogr>
		<title level="m">The Semantic Web -ISWC 2022</title>
				<editor>
			<persName><forename type="first">U</forename><surname>Sattler</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Hogan</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Keet</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">V</forename><surname>Presutti</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">P A</forename><surname>Almeida</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">H</forename><surname>Takeda</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">P</forename><surname>Monnin</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Pirrò</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">C</forename><surname>Amato</surname></persName>
		</editor>
		<meeting><address><addrLine>Cham</addrLine></address></meeting>
		<imprint>
			<publisher>Springer International Publishing</publisher>
			<date type="published" when="2022">2022</date>
			<biblScope unit="page" from="697" to="713" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">RML-view-to-CSV: A Proofof-Concept Implementation for RML Logical Views</title>
		<author>
			<persName><forename type="first">E</forename><surname>Vleeschauwer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>De Meester</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Colpaert</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 5 th International Workshop on Knowledge Graph Construction (KGCW 2024) co-located with 20 th Extended Semantic Web Conference</title>
				<meeting>the 5 th International Workshop on Knowledge Graph Construction (KGCW 2024) co-located with 20 th Extended Semantic Web Conference<address><addrLine>ESWC</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2024">2024. 2024</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">RMLStreamer with Reference Conditions in the KGCW Challenge</title>
		<author>
			<persName><forename type="first">E</forename><surname>Vleeschauwer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Haesendonck</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Van Assche</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">D</forename><surname>Meester</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">De</forename><surname>Meester</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 4 rd International Workshop on Knowledge Graph Construction (KGCW 2023) co-located with 20 th Extended Semantic Web Conference</title>
				<meeting>the 4 rd International Workshop on Knowledge Graph Construction (KGCW 2023) co-located with 20 th Extended Semantic Web Conference<address><addrLine>ESWC</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2023">2023. 2023. 2023</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
