Use this file to discover all available pages before exploring further.
Session 10 of Going Meta, broadcast on November 1, 2022, demonstrates how to treat SPARQL endpoints as live data sources that Neo4j can query directly — no pre-downloaded dumps, no ETL pipelines. Jesus shows how a handful of company ticker symbols stored in Neo4j can be enriched on demand with rich structured data from DBpedia, using both lightweight CSV fetches for simple lookups and full SPARQL CONSTRUCT queries that import subgraphs of related people and places.
The basic SPARQL query that resolves a ticker symbol to a DBpedia URI and English company name:
SELECT (?company AS ?uri) (?name AS ?companyname)WHERE { # match company by ticker ?company a dbo:Company ; dbp:symbol "FB"@en ; rdfs:label ?name . FILTER(lang(?name) = "en")}
To run this for every ticker in the graph, parameterize the query and consume the SPARQL endpoint like any other CSV URL:
WITH 'https://dbpedia.org/sparql/?format=text%2Fcsv&query=' AS endpoint,'SELECT (?company AS ?uri) (?name AS ?companyname)WHERE { # match company by ticker ?company a dbo:Company ; dbp:symbol "<<ticker>>"@en ; rdfs:label ?name . FILTER(lang(?name) = "en")}' AS queryMATCH (o:Organization) WHERE o.ticker IS NOT NULLLOAD CSV WITH HEADERS FROM endpoint + apoc.text.urlencode(replace(query,"<<ticker>>", o.ticker)) AS rowRETURN o.ticker, row.companyname, row.uri
LOAD CSV treats any HTTP URL that returns comma-separated data as a valid source. Combined with apoc.text.urlencode, it becomes a universal REST/SPARQL client within plain Cypher.
To enable full RDF import later, create a Resource node whose URI matches the DBpedia entity, and link it to your domain node:
-- Option A: create a separate twin nodeMERGE (r:Resource { uri: row.uri })MERGE (o)-[:wikidata_twin]->(r)-- Option B: promote the Organization node itself to a ResourceSET o:Resource, o.uri = row.uri
Making an existing node a Resource (Option B) allows n10s.rdf.import.fetch to merge incoming RDF triples directly onto your domain nodes rather than creating duplicates.
For deep enrichment, use a SPARQL CONSTRUCT query to fetch a company along with all related people and places from DBpedia, then import the result as RDF: