// 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 .}" queryLocations = prefixes + "select ?b where {\ ?a 'Toponimo' .\ ?a ?b .\ }"; console.log() async function fillPageContents(){ // val = await doJsonQuery(queryLocations); // stringifyResponse(val); val = await doJsonQuery(queryTesto); stringifyResponse(val); putValuesInHTML(); $.ajax({ url: '../python/nlp.py', type: 'POST', data: {places: ["prato", "firenze", "avignone", "siena"], text: queryStringOutput}, dataType: "json", success: function(data){ alert(data); } }); } 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();