// Raccatto i parametri dall'URL -- mi aspetto un parametro di nome 'link'! thisUrlParams = {}; window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { thisUrlParams[key] = value; }); console.log('URL get params: ', thisUrlParams); // Funzioni per eseguire le queries function prepareQueryURL(query){ sparqlEndpoint = 'http://dev.restore.ovi.cnr.it:8890/sparql/'; sparqlUrlParams = '?default-graph-uri=&query=' + encodeURIComponent(query) + '&output=json&callback=?'; return sparqlEndpoint + sparqlUrlParams; } function doJsonQuery(query){ queryURL = prepareQueryURL(query); response = $.ajax({//OGGETTO url: queryURL, dataType: "json", success: function (data){}, error: function (e) {} }); return response; } // Funzioni per raccattare + stringhificare l'output queryStringOutput = ""; function stringifyResponse(val){ resultArray = val['results']['bindings']; out = ""; for(i = 0; i < resultArray.length; i++){ out = out + JSON.stringify(resultArray[i]) } queryStringOutput = (queryStringOutput + out).replace("}{",","); } queryTopoOutput = ""; function stringifyTopo(val){ resultArray = val['results']['bindings']; out = ""; for(i = 0; i < resultArray.length; i++){ out = out + JSON.stringify(resultArray[i]) } queryStringOutput = (queryStringOutput + out).replace("}{",","); } //////////////////// // TESTI DELLE QUERY //////////////////// prefixes = "PREFIX rdfs: \ PREFIX rdf: \ PREFIX crm: \ PREFIX dat: \ PREFIX mpp: \ PREFIX aut: " queryTesto = prefixes + " SELECT DISTINCT ?titolo ?testo WHERE {?subject crm:P128_carries <" + thisUrlParams.link + ">;\ crm:P128_carries ?object .\ ?object rdf:type crm:E33_Linguistic_Object;\ crm:P190_has_symbolic_content ?testo;\ rdfs:label ?titolo .}" async function fillPageContents(){ val = await doJsonQuery(queryTesto); stringifyResponse(val); putValuesInHTML(); } function putValuesInHTML(){ queryString = queryStringOutput.replaceAll("}}{", "},") console.log("Stringified Response:", queryString); queryOutput = JSON.parse(queryString); // testo = "

" + queryOutput.testo.value + "

"; document.getElementById("testo_OVI").innerHTML = testo; document.getElementById("titolo_lettera").innerHTML = queryOutput.titolo.value; // // Query ancora farlocche } // Dà il via alle queries + riempimento HTML fillPageContents();