VirtTipsAndTricksGuideConstructINSERTStatementHow can I use INSERT via CONSTRUCT Statements?How can I use INSERT via CONSTRUCT Statements? What? Use of SPARUL to add triples to a Named Graph. Why? Imagine a situation where you seek to create mappings between datasets across Linked Data Spaces. For example, we have two datasets across the and data spaces and we seek to mint owl:equivalentClass and owl:equivalentProperty relations across the aforementioned data spaces in a third dataspace hosted by a Virtuoso instance. How? You can write an ordinary CONSTRUCT statement, ensure that it generates the triples intended to be added, and then replace the leading CONSTRUCT keyword with the INSERT INTO UNKNOWN tag: phrase. The example below shows how CONSTRUCT is used to manufacture the triples required by the Virtuoso hosted dataset. Example Assume the following CONSTRUCT statement: CONSTRUCT { ?s <> `iri (bif:replace(?o,'', ''))` } FROM <> WHERE { ?s <> ?o }; Execute the CONSTRUCT query from the htp://cname/sparql SPARQL endpoint. View the generated triples to ensure they are correct. Replace CONSTRUCT with INSERT INTO: SPARQL INSERT INTO <> { ?s <> `iri (bif:replace(?o,'', ''))` } FROM <> WHERE { ?s <> ?o } ; Related Virtuoso Tips and Tricks Collection. RDF Data Access and Data Management. Usage of CONSTRUCT with Prepared Statements.