954 lines
47 KiB
JavaScript
954 lines
47 KiB
JavaScript
|
|
tq = `
|
|
PREFIX ecrm: <http://erlangen-crm.org/current/>
|
|
PREFIX orl: <https://dantenetwork.it/ontology/orl/current/>
|
|
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
|
|
PREFIX olires: <https://dantenetwork.it/ontology/olires/current/>
|
|
PREFIX comm: <http://dantenetwork.it/data/commedia/>
|
|
SELECT (?form AS ?IRIForma) (?Rappresentazione AS ?Forma) (?lm AS ?Lemma) (?textver AS ?Verso) (?NumVerso AS ?NumeroVerso) (?t_canto AS ?Canto) (?t_cantica AS ?Cantica) WHERE {
|
|
?fa orl:occurrenceOf ?form .
|
|
?ver olires:hasStructuralComponent ?fa .
|
|
?ver ecrm:P190_Has_Symbolic_Content ?textver;
|
|
olires:hasNumber ?NumVerso.
|
|
?canto ecrm:P102_has_title ?t_canto;
|
|
hasStructuralComponent ?ver.
|
|
?cantica ecrm:P102_has_title ?t_cantica ;
|
|
hasStructuralComponent ?canto .
|
|
?form ontolex:writtenRep ?Rappresentazione.
|
|
?lent ontolex:lexicalForm ?form;
|
|
ontolex:canonicalForm ?cf.
|
|
?cf ontolex:writtenRep ?lm.
|
|
{?form <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> orl:FormaVerboVolgare;
|
|
orl:TipoDiatesiVerboVolgare orl:VerboVolgareAttivo.
|
|
}
|
|
{?form <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> orl:FormaVerboVolgare;
|
|
orl:TipoDiatesiVerboVolgare orl:VerboVolgareAttivo.
|
|
{ ?form <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> orl:FormaVerboVolgare;
|
|
orl:TipoDiatesiVerboVolgare orl:VerboVolgareAttivo.}
|
|
UNION
|
|
{ ?form <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> orl:FormaSostantivoVolgare;
|
|
orl:TipoNumeroSostantivoVolgare orl:NumeroSingolareSostantivoVolgare. }
|
|
}
|
|
} ORDER BY (?Cantica) (?Canto)
|
|
LIMIT 50
|
|
`
|
|
|
|
tqvpvs=`
|
|
PREFIX ecrm: <http://erlangen-crm.org/current/>
|
|
PREFIX orl: <https://dantenetwork.it/ontology/orl/current/>
|
|
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
|
|
PREFIX olires: <https://dantenetwork.it/ontology/olires/current/>
|
|
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
|
PREFIx comm: <https://dantenetwork.it/data/commedia/>
|
|
|
|
SELECT (?form AS ?IRIForma) (?Rappresentazione AS ?Forma) (?lm AS ?Lemma) (?textver AS ?Verso) (?NumVerso AS ?NumeroVerso) (?t_canto AS ?Canto) (?t_cantica AS ?Cantica)
|
|
(?textver1 AS ?VersoPrec) (?textver2 AS ?VersoSucc)
|
|
WHERE {
|
|
?fa orl:occurrenceOf ?form.
|
|
?ver ecrm:P190_Has_Symbolic_Content ?textver;
|
|
olires:hasNumber ?NumVerso;
|
|
olires:hasStructuralComponent ?fa.
|
|
?canto ecrm:P102_has_title ?t_canto;
|
|
olires:hasStructuralComponent ?ver.
|
|
?cantica ecrm:P102_has_title ?t_cantica;
|
|
olires:hasStructuralComponent ?canto.
|
|
?form ontolex:writtenRep ?Rappresentazione.
|
|
?lent ontolex:lexicalForm ?form;
|
|
ontolex:canonicalForm ?cf.
|
|
?cf ontolex:writtenRep ?lm.
|
|
FILTER(REGEX(?Rappresentazione, "^stelle$", "i")) .
|
|
FILTER(LANGMATCHES(LANG(?Rappresentazione), "it")) .
|
|
#BIND(IF((?NumVerso-1) >0,(xsd:short(?NumVerso-1)), (xsd:short(1))) as ?NumVerso1)
|
|
BIND(xsd:short(?NumVerso-1) as ?NumVerso1)
|
|
BIND(xsd:short(?NumVerso+1) as ?NumVerso2)
|
|
Optional{
|
|
?ver1 ecrm:P190_Has_Symbolic_Content ?textver1;
|
|
olires:hasNumber ?NumVerso1.
|
|
?canto olires:hasStructuralComponent ?ver1 .
|
|
}
|
|
OPTIONAL {
|
|
?ver2 ecrm:P190_Has_Symbolic_Content ?textver2;
|
|
olires:hasNumber ?NumVerso2.
|
|
?canto olires:hasStructuralComponent ?ver2 .
|
|
}
|
|
} ORDER BY (?canto) (?cantica)
|
|
LIMIT 20
|
|
`
|
|
|
|
// Per restituire i versi di una cantica
|
|
var qVersiCanticaold=`
|
|
PREFIX ecrm: <http://erlangen-crm.org/current/>
|
|
PREFIX orl: <https://dantenetwork.it/ontology/orl/current/>
|
|
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
|
|
PREFIX olires: <https://dantenetwork.it/ontology/olires/current/>
|
|
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
|
PREFIX text: <http://jena.apache.org/text#>
|
|
PREFIx hdn: <https://dantenetwork.it/data/commedia/>
|
|
|
|
SELECT (?textver AS ?Verso) (?NumVerso AS ?NumeroVerso) (?t_canto AS ?Canto) (?t_cantica AS ?Cantica) ?from ?to
|
|
WHERE {
|
|
?ver ecrm:P190_Has_Symbolic_Content ?textver;
|
|
olires:hasNumber ?NumVerso;
|
|
olires:OccursInRegion ?reg .
|
|
?reg olires:fragmentRegionFrom ?from;
|
|
olires:fragmentRegionTo ?to .
|
|
?canto ecrm:P102_has_title ?t_canto;
|
|
olires:hasStructuralComponent ?ver.
|
|
?cantica ecrm:P102_has_title ?t_cantica ;
|
|
olires:hasStructuralComponent ?canto.
|
|
FILTER regex(?t_cantica,"Inferno","i") .
|
|
}`
|
|
|
|
var qVersiCantica=`
|
|
PREFIX ecrm: <http://erlangen-crm.org/current/>
|
|
PREFIX orl: <https://dantenetwork.it/ontology/orl/current/>
|
|
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
|
|
PREFIX olires: <https://dantenetwork.it/ontology/olires/current/>
|
|
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
|
PREFIX text: <http://jena.apache.org/text#>
|
|
PREFIx hdn: <https://dantenetwork.it/data/commedia/>
|
|
|
|
SELECT (?textver AS ?Verso) (?NumVerso AS ?NumeroVerso) (?t_canto AS ?Canto) (?t_cantica AS ?Cantica)
|
|
?textform ?pos
|
|
WHERE {
|
|
|
|
?cantica ecrm:P102_has_title ?t_cantica ;
|
|
olires:hasStructuralComponent ?canto.
|
|
?canto ecrm:P102_has_title ?t_canto;
|
|
olires:hasStructuralComponent ?ver.
|
|
?ver ecrm:P190_Has_Symbolic_Content ?textver;
|
|
olires:hasNumber ?NumVerso;
|
|
olires:hasStructuralComponent ?fa.
|
|
# olires:OccursInRegion ?reg .
|
|
?fa orl:occurrenceOf ?form.
|
|
?fa olires:OccursInRegion ?regfo .
|
|
?regfo olires:fragmentRegionFrom ?pos .
|
|
?form ontolex:writtenRep ?textform.
|
|
# ?reg olires:fragmentRegionFrom ?from;
|
|
# olires:fragmentRegionTo ?to .
|
|
|
|
FILTER regex(?t_cantica,"Inferno","i") .
|
|
|
|
}`
|
|
|
|
|
|
var hdnquerygrammar = `
|
|
Expression
|
|
= head:((_)?"("(_)?("AND "/"OR ") Filtro+ (_)?(")")?){return '{"'+head[3]+'": ['+head[4]+"]}"}//{ return head}.join("").replaceAll(", ,","").replaceAll("(,","(").replaceAll(",("," (")}
|
|
/ resu:Filtro {return resu[1].split().join()+' ';}
|
|
Filtro
|
|
= (_)"("?head:(("AND "/"OR "))? tail:(Clausola+ / Filtronick+) (_)? closecl:(")")?
|
|
|
|
{if (head != null) return ' {"'+head+'":['+tail+"]}";
|
|
else if (tail!=null & tail.length <2) return ' '+tail+''
|
|
else return ""+tail+"";}
|
|
/ cl:Clausola
|
|
|
|
Clausola
|
|
= cla:("Clausola"Integer)(_)? {return ' {"TERM": "'+cla[0]+cla[1]+'"}';}
|
|
|
|
Filtronick
|
|
=fil:("filtro-"Integer)(_)? {return ' {"TERM": "'+fil[0]+fil[1]+'"}';}
|
|
|
|
|
|
Integer "integer"
|
|
= _ [0-9]+ { return parseInt(text(), 10); }
|
|
|
|
_ "whitespace"= " "*
|
|
|
|
`
|
|
var hdnquerygrammartest = `
|
|
Expression
|
|
= head:((_)?"("(_)?("AND "/"OR ") Filtro+ (_)?(")")?){return '{"'+head[3]+'": ['+head[4]+"]}"}//{ return head}.join("").replaceAll(", ,","").replaceAll("(,","(").replaceAll(",("," (")}
|
|
/ resu:Filtro {return resu[1].split().join()+' ';}
|
|
Filtro
|
|
= (_)"("?head:(("AND "/"OR "))? tail:Clausola+ (_)? closecl:(")")?
|
|
|
|
{if (head != null) return ' {"'+head+'":['+tail+"]}";
|
|
else if (tail!=null & tail.length <2) return ' '+tail+''
|
|
else return ""+tail+"";}
|
|
/ cl:Clausola
|
|
|
|
Clausola
|
|
= cla:("Clausola"Integer)(_)? {return ' {"TERM": "'+cla[0]+cla[1]+'"}';}
|
|
|
|
|
|
Integer "integer"
|
|
= _ [0-9]+ { return parseInt(text(), 10); }
|
|
|
|
_ "whitespace"= " "*
|
|
|
|
`
|
|
var testmm = 0
|
|
|
|
//query
|
|
ontoSparqlQuery = `PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
|
PREFIX ecrm: <http://erlangen-crm.org/current/>
|
|
PREFIX hdn: <http://dantenetwork.it/data/commedia/>
|
|
PREFIX lemon: <http://lemon-model.net/lemon#>
|
|
PREFIX orl: <https://dantenetwork.it/ontology/orl/current/>
|
|
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
|
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
|
|
PREFIX olires:<https://dantenetwork.it/ontology/olires/current/>
|
|
PREFIX comm: <http://dantenetwork.it/data/commedia/>
|
|
|
|
SELECT (?form as ?IRIForma) (?Rappresentazione as ?Forma) (?lm as ?Lemma) (?textver as ?Verso) (?NumVerso as ?NumeroVerso)
|
|
(?t_canto as ?Canto) (?t_cantica as ?Cantica) ?pos
|
|
|
|
|
|
WHERE {
|
|
?fa orl:occurrenceOf ?form.
|
|
?ver ecrm:P190_Has_Symbolic_Content ?textver;
|
|
olires:hasNumber ?NumVerso;
|
|
olires:hasStructuralComponent ?fa.
|
|
?fa olires:OccursInRegion ?reg .
|
|
?reg olires:fragmentRegionFrom ?pos .
|
|
?canto ecrm:P102_has_title ?t_canto;
|
|
olires:hasStructuralComponent ?ver.
|
|
?cantica ecrm:P102_has_title ?t_cantica;
|
|
olires:hasStructuralComponent ?canto.
|
|
?form ontolex:writtenRep ?Rappresentazione.
|
|
?lent ontolex:lexicalForm ?form;
|
|
ontolex:canonicalForm ?cf.
|
|
?cf ontolex:writtenRep ?lm.
|
|
FILTER(LANGMATCHES(LANG(?Rappresentazione), "it"))
|
|
} `
|
|
//Togliere LIMIT in prod
|
|
|
|
orlprefix = 'https://dantenetwork.it/ontology/orl/current/'
|
|
var stringInSparql= false;
|
|
|
|
function writesparqlquery(query) {
|
|
return (query);
|
|
}
|
|
// write the query in natural language
|
|
|
|
function writesearchValue(form) {
|
|
var strq = 'il lemma';
|
|
var strcategoria = 'in tutte le categorie'
|
|
|
|
if (form.oggetto.value == 'forma')
|
|
strq = 'la forma';
|
|
if (form.categoria.value != 'all')
|
|
strcategoria = 'nella categoria ' + form.categoria.value;
|
|
|
|
return `Cerco: ${strq} ${form.query.value}, ${form.tipo.value}, ${strcategoria}`
|
|
}
|
|
|
|
//restituisce la query per ottenere tutti i versi di una cantica
|
|
|
|
function versiCantica(cantica) {
|
|
var SparqlParser = sparqljs.Parser;
|
|
var parser = new SparqlParser();
|
|
parsedqVersiCantica= parser.parse(qVersiCantica);
|
|
parsedqVersiCantica.where[1].expression.args[1].value =cantica;
|
|
return (parsedqVersiCantica)
|
|
|
|
}
|
|
|
|
// the basic initial query is parsed RIMUOVERE
|
|
|
|
function gimmespq() {
|
|
var SparqlParser = sparqljs.Parser;
|
|
var parser = new SparqlParser();
|
|
return parser.parse(ontoSparqlQuery);
|
|
//return parser.parse(tqvpvs);
|
|
|
|
|
|
}
|
|
|
|
// the query is transformed according the form values
|
|
|
|
function gimmespqfromjson(form) {
|
|
const sparqlgen = sparqljs.Generator;
|
|
const generator = new sparqlgen({ orl: "http://www.w3.org/2000/01/rdf-schema#" })
|
|
const parsedquery = gimmespq()
|
|
if (form.categoria.value != 'all')
|
|
parsedquery.where[0].triples.push(JSON.parse(data21)[form.categoria.value]);
|
|
if (form.query.value != "")
|
|
switch (form.tipo.value) {
|
|
case 'parola':
|
|
parsedquery.where[1].expression.args[1].value = "^" + form.query.value + "$";
|
|
break;
|
|
case 'sottostringa':
|
|
parsedquery.where[1].expression.args[1].value = form.query.value;
|
|
break;
|
|
case 'prefisso':
|
|
parsedquery.where[1].expression.args[1].value = form.query.value;
|
|
break;
|
|
case 'suffisso':
|
|
parsedquery.where[1].expression.args[1].value = form.query.value + "$";
|
|
break;
|
|
default:
|
|
parsedquery.where[1].expression.args[1].value = "^" + form.query.value + "$";
|
|
};
|
|
return generator.stringify(parsedquery);
|
|
|
|
}
|
|
|
|
function getStatements() {
|
|
|
|
return data21
|
|
|
|
}
|
|
var theguiQ = ''
|
|
var multipleCondSpQuery = ''
|
|
var conditions = []
|
|
var filters = []
|
|
var unionop = '{"union": {"type": "union", "patterns":[]}, "bgp": {"type": "bgp", "triples":[]}, "group": {"type": "group", "patterns":[]}}'
|
|
|
|
|
|
|
|
function parseJsonClause(op, tokens, nowhere) {
|
|
//alert(op)
|
|
if (op.trim() == 'OR') {
|
|
//multipleCondSpQuery.where.push(JSON.parse(unionop)['union']);
|
|
nowhere.push(JSON.parse(unionop)['union']);
|
|
}
|
|
if (op.trim() == 'AND') {
|
|
nowhere.push(JSON.parse(unionop)['group']);
|
|
}
|
|
for (var mtoken in tokens) {
|
|
te_op = tokens[mtoken]
|
|
if ('TERM' in te_op) {
|
|
cond = theguiQ[te_op['TERM']]
|
|
//parsedquery.where.at(-1).patterns
|
|
multipleCondSpQuery = buildJsonClause(cond, multipleCondSpQuery, -1, nowhere.at(-1).patterns)
|
|
}
|
|
else
|
|
parseJsonClause(Object.keys(te_op)[0], te_op[Object.keys(te_op)[0]], nowhere.at(-1).patterns)
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
function buildSPQuery(guiquery) {
|
|
theguiQ = '';
|
|
theguiQ = guiquery;
|
|
var SparqlParser = sparqljs.Parser;
|
|
var spqparser = new SparqlParser();
|
|
multipleCondSpQuery = spqparser.parse(ontoSparqlQuery);
|
|
mytestq = spqparser.parse(tq);
|
|
var parser = peg.generate(hdnquerygrammar);
|
|
test = guiquery['EsprLogica'].join(" ");
|
|
test = test.replaceAll("( ", "(")
|
|
test = test.replaceAll(" )", ")")
|
|
clauses = parser.parse(test);
|
|
jsonclauses = JSON.parse(clauses)
|
|
|
|
for (const ck of Object.keys(jsonclauses)) {
|
|
parseJsonClause(ck, jsonclauses[ck], multipleCondSpQuery.where)
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
function buildSQ(stquery) {
|
|
|
|
|
|
stringInSparql= false;
|
|
var SparqlParser = sparqljs.Parser;
|
|
var parser = new SparqlParser();
|
|
//Prendo la query SPARQL template
|
|
const parsedquery = parser.parse(ontoSparqlQuery);
|
|
//const parsedquery = parser.parse(tqvpvs);
|
|
const lf = document.getElementById("lemma_forma");
|
|
//mytestq = parser.parse(tq);
|
|
var ftxt = document.getElementById("queryText");
|
|
//Nick
|
|
if (ftxt == null) {
|
|
ftxt = document.getElementById("searchValue");
|
|
/*
|
|
//definizione struttura della query
|
|
var EsprLogica = ""
|
|
filters = $("[id^=filtro-]")
|
|
term = "";
|
|
filters.each(function(index, element) {
|
|
var mx = $(this).find('#andor');
|
|
if (index == 0) {
|
|
EsprLogica += ''
|
|
term = $(this).attr('id')
|
|
}
|
|
else {
|
|
EsprLogica = "(" + mx.val() + " " + term + " " + $(this).attr('id') + ") "
|
|
term = EsprLogica
|
|
}
|
|
});
|
|
stquery['EsprLogica'] = EsprLogica.split(" ")
|
|
// fine definizione struttura
|
|
*/
|
|
if (stquery['EsprLogica'] != '') {
|
|
if (stquery['query'] != null && clause['query'].trim() != "") {
|
|
if (clause['query'].trim().slice(-1) !== '*')
|
|
strval = "^" + clause['query'].trim() + "$";
|
|
else
|
|
strval = clause['query'].trim().slice(0, -1)
|
|
|
|
multipleCondSpQuery.where[1].expression.args[1].value = strval;
|
|
|
|
if (clause['lemma_forma'] != null && clause['lemma_forma'] == 'lemma')
|
|
multipleCondSpQuery.where[1].expression.args[0].value = "lm";
|
|
}
|
|
buildSPQuery(stquery)
|
|
return multipleCondSpQuery;
|
|
|
|
}
|
|
myquery = buildClauseNick(stquery, parsedquery);
|
|
return (myquery)
|
|
}
|
|
|
|
if (stquery['EsprLogica'] != null && stquery['EsprLogica'].length > 1) {
|
|
buildSPQuery(stquery)
|
|
return multipleCondSpQuery;
|
|
}
|
|
|
|
if (stquery['EsprLogica'] != null && stquery['EsprLogica'] != '' && stquery['EsprLogica'].length == 1) {
|
|
clause = stquery['EsprLogica']
|
|
|
|
myquery = buildClause(stquery[clause], parsedquery, 0)
|
|
return (myquery)
|
|
}
|
|
|
|
if (ftxt.value.trim() != "") {
|
|
|
|
if (ftxt.value.trim().slice(-1) !== '*')
|
|
strval = "^" + ftxt.value.trim() + "$";
|
|
else
|
|
strval = ftxt.value.trim().slice(0, -1)
|
|
|
|
parsedquery.where[1].expression.args[1].value = strval;
|
|
if (lf.value == 'lemma')
|
|
parsedquery.where[1].expression.args[0].value = "lm";
|
|
}
|
|
else {
|
|
parsedquery.where.splice(1, 1)
|
|
}
|
|
|
|
|
|
return (parsedquery)
|
|
|
|
}
|
|
//Nick
|
|
function buildClauseNick(nickclause, parsedquery) {
|
|
//clause = clause['filtro-1'];//da modificare
|
|
sctk = Object.keys(nickclause)
|
|
clause={}
|
|
for (ck in sctk){
|
|
if (sctk[ck].includes("filtro-")){
|
|
clause = nickclause [sctk[ck]]
|
|
break
|
|
}
|
|
}
|
|
if (clause['query'] != null && clause['query'].trim() != "") {
|
|
if (clause['query'].trim().slice(-1) !== '*')
|
|
strval = "^" + clause['query'].trim() + "$";
|
|
else
|
|
strval = clause['query'].trim().slice(0, -1)
|
|
|
|
parsedquery.where[1].expression.args[1].value = strval;
|
|
if (clause['lemma_forma'] != null && clause['lemma_forma'] == 'lemma')
|
|
parsedquery.where[1].expression.args[0].value = "lm";
|
|
}
|
|
else {
|
|
parsedquery.where.splice(1, 1)
|
|
}
|
|
if (clause['categoria'] != null && clause['categoria'] != "all")
|
|
parsedquery.where[0].triples.push(JSON.parse(data21)[clause['categoria']]);
|
|
|
|
|
|
if (clause['tipoClausola'] != null && Object.keys(sottoCategorie).includes(clause['categoria'].trim())) {
|
|
//sctmp=JSON.parse(sottoCategorieSostantivi)
|
|
sctmp = sottoCategorie[clause['categoria'].trim()]
|
|
sctk = Object.keys(sctmp)
|
|
for (ke in sctk) {
|
|
|
|
keval = clause[encodeURI(sctk[ke])]
|
|
|
|
if (keval != null && keval != '') {
|
|
keval = decodeURI(keval)
|
|
sttmts = sctmp[sctk[ke]]
|
|
if (sttmts[keval] != null && (sttmts[keval].split(':')[1]) != null) {
|
|
subcatstat = buildsubcategoryClause(sttmts[keval])
|
|
parsedquery.where[0].triples.push(subcatstat);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return parsedquery
|
|
|
|
|
|
}
|
|
|
|
function buildJsonClause(clause, parsedquery, whereind, theplace) {
|
|
//Nick
|
|
if (clause['categoria'] != null){
|
|
clause['typeGramm0']=clause['categoria'];
|
|
clause['queryText']=clause['query']
|
|
}
|
|
|
|
if (clause['queryText']!=null && clause['queryText'].trim() != "") {
|
|
if (clause['queryText'].trim().slice(-1) !== '*')
|
|
strval = "^" + clause['queryText'].trim() + "$";
|
|
else
|
|
strval = clause['queryText'].trim().slice(0, -1)
|
|
|
|
parsedquery.where[1].expression.args[1].value = strval;
|
|
if (clause['lemma_forma'] == 'lemma')
|
|
parsedquery.where[1].expression.args[0].value = "lm";
|
|
}
|
|
else {
|
|
if (parsedquery.where[1].type == 'filter' && parsedquery.where[1].expression.args[0].value == 'Rappresentazione')
|
|
parsedquery.where.splice(1, 1)
|
|
}
|
|
|
|
if (clause['typeGramm0'] != null && clause['typeGramm0'] != "all")
|
|
if (whereind > -1)
|
|
parsedquery.where[whereind].triples.push(JSON.parse(data21)[clause['typeGramm0']]);
|
|
else {
|
|
//parsedquery.where.at(-1).patterns
|
|
theplace.push(JSON.parse(unionop)['bgp']);
|
|
theplace.at(-1).triples.push(JSON.parse(data21)[clause['typeGramm0']]);
|
|
}
|
|
|
|
|
|
|
|
if (clause['typeGramm0'] != null && Object.keys(sottoCategorie).includes(clause['typeGramm0'].trim())) {
|
|
//sctmp=JSON.parse(sottoCategorieSostantivi)
|
|
sctmp = sottoCategorie[clause['typeGramm0'].trim()]
|
|
sctk = Object.keys(sctmp)
|
|
for (ke in sctk) {
|
|
|
|
keval = clause[sctk[ke]]
|
|
if (keval != null && keval != '') {
|
|
sttmts = sctmp[sctk[ke]]
|
|
if (sttmts[keval] != null && (sttmts[keval].split(':')[1]) != null) {
|
|
subcatstat = buildsubcategoryClause(sttmts[keval])
|
|
if (whereind > -1)
|
|
parsedquery.where[whereind].triples.push(subcatstat);
|
|
else
|
|
theplace.at(-1).triples.push(subcatstat);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return parsedquery
|
|
|
|
}
|
|
|
|
function buildClause(clause, parsedquery, whereind) {
|
|
|
|
if (clause['queryText'].trim() != "") {
|
|
if (clause['queryText'].trim().slice(-1) !== '*')
|
|
strval = "^" + clause['queryText'].trim() + "$";
|
|
else
|
|
strval = clause['queryText'].trim().slice(0, -1)
|
|
|
|
parsedquery.where[1].expression.args[1].value = strval;
|
|
if (clause['lemma_forma'] == 'lemma')
|
|
parsedquery.where[1].expression.args[0].value = "lm";
|
|
}
|
|
else {
|
|
if (parsedquery.where[1].type == 'filter' && parsedquery.where[1].expression.args[0].value == 'Rappresentazione')
|
|
parsedquery.where.splice(1, 1)
|
|
}
|
|
if (clause['typeGramm0'] != null && clause['typeGramm0'] != "all")
|
|
if (whereind > -1)
|
|
//parsedquery.where[whereind].triples.push(JSON.parse(data21)[clause['typeGramm0']]);
|
|
parsedquery.where[whereind].triples.splice(0, 0, JSON.parse(data21)[clause['typeGramm0']]);
|
|
else {
|
|
parsedquery.where.at(-1).patterns.push(JSON.parse(unionop)['bgp']);
|
|
parsedquery.where.at(-1).patterns.at(-1).triples.push(JSON.parse(data21)[clause['typeGramm0']]);
|
|
}
|
|
|
|
|
|
if (clause['typeGramm0'] != null && Object.keys(sottoCategorie).includes(clause['typeGramm0'].trim())) {
|
|
//sctmp=JSON.parse(sottoCategorieSostantivi)
|
|
sctmp = sottoCategorie[clause['typeGramm0'].trim()]
|
|
sctk = Object.keys(sctmp)
|
|
for (ke in sctk) {
|
|
|
|
keval = clause[sctk[ke]]
|
|
if (keval != null && keval != '') {
|
|
sttmts = sctmp[sctk[ke]]
|
|
if (sttmts[keval] != null && (sttmts[keval].split(':')[1]) != null) {
|
|
subcatstat = buildsubcategoryClause(sttmts[keval])
|
|
if (whereind > -1)
|
|
parsedquery.where[whereind].triples.push(subcatstat);
|
|
else
|
|
parsedquery.where.at(-1).patterns.at(-1).triples.push(subcatstat);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return parsedquery
|
|
|
|
}
|
|
|
|
function buildsubcategoryClause(sttmnt) {
|
|
|
|
subcattmplate = `{"subject": {"termType": "Variable", "value":"form"},
|
|
"predicate": {"termType":"NamedNode"},
|
|
"object": {"termType": "NamedNode"}}
|
|
`
|
|
|
|
//orlprefix='https://dantenetwork.it/ontology/orl/current/'
|
|
|
|
|
|
predicate = orlprefix + (sttmnt.split(':')[0])
|
|
obj = orlprefix + (sttmnt.split(':')[1])
|
|
subcatstatement = JSON.parse(subcattmplate)
|
|
|
|
subcatstatement['predicate']['value'] = predicate
|
|
subcatstatement['object']['value'] = obj
|
|
|
|
return (subcatstatement)
|
|
|
|
}
|
|
|
|
/*
|
|
//autocomplete
|
|
var categorie = ['aggettivovolgare', 'articolovolgare', 'avverbiovolgare',
|
|
'citazionevolgare', 'congiunzionevolgare', 'interiezionevolgare',
|
|
'locuzionevolgare', 'onomasticavolgare', 'preposizionevolgare',
|
|
'pronomevolgare', 'sostantivovolgare','verbovolgare'];
|
|
|
|
function autocompleteMatch(input) {
|
|
if (input == '') {
|
|
return [];
|
|
}
|
|
var reg = new RegExp(input)
|
|
return categorie.filter(function(term) {
|
|
if (term.match(reg)) {
|
|
return term;
|
|
}
|
|
});
|
|
}
|
|
|
|
function showResults(val) {
|
|
res = document.getElementById("aco");
|
|
res.innerHTML = '';
|
|
let list = '';
|
|
let terms = autocompleteMatch(val);
|
|
for (i=0; i<terms.length; i++) {
|
|
list += '<li>' + terms[i] + '</li>';
|
|
}
|
|
res.innerHTML = '<ul>' + list + '</ul>';
|
|
}
|
|
|
|
*/
|
|
var sottoCategorie = {
|
|
"verbovolgare": {
|
|
"Diatesi": { "Attivo": "TipoDiatesiVerboVolgare:VerboVolgareAttivo", "Passivo": "TipoDiatesiVerboVolgare:VerboVolgarePassivo" },
|
|
"Transitivita": { "Intransitivo": "TipoTransitivitàVerboVolgare:VerboVolgareIntransitivo", "Transitivo": "TipoTransitivitàVerboVolgare:VerboVolgareTransitivo" },
|
|
"Genere": { "Femminile": "TipoGenereVerboVolgare:GenereFemminileVerboVolgare", "Maschile": "TipoGenereVerboVolgare:GenereMaschileVerboVolgare" },
|
|
"Numero": { "Singolare": "TipoNumeroVerboVolgare:NumeroSingolareVerboVolgare", "Plurale": "TipoNumeroVerboVolgare:NumeroPluraleVerboVolgare" },
|
|
"Pers": { "Impersonale": "VerboVolgareImpersonale:VerboVolgareImpersonale" },
|
|
"Rifl": { "Riflessivo": "VerboVolgareRiflessivo:VerboVolgareRiflessivo" },
|
|
"Coniugazione": {
|
|
"Prima coniugazione": "TipoConiugazioneVerboVolgare:VerboVolgarePrimaConiugazione", "Seconda coniugazione": "TipoConiugazioneVerboVolgare:VerboVolgareSecondaConiugazione",
|
|
"Terza coniugazione": "TipoConiugazioneVerboVolgare:VerboVolgareTerzaConiugazione",
|
|
"Essere coniugazione": "TipoConiugazioneVerboVolgare:VerboVolgareAusiliareEssere",
|
|
"Avere coniugazione": "TipoConiugazioneVerboVolgare:VerboVolgareAusiliareAvere"
|
|
},
|
|
"Tempi": {
|
|
"Indicativo presente": "TipoTempoVerboVolgare:PresenteIndicativoVerboVolgare", "Indicativo passato prossimo": "TipoTempoVerboVolgare:PassatoProssimoIndicativoVerboVolgare",
|
|
"Indicativo imperfetto": "TipoTempoVerboVolgare:ImperfettoIndicativoVerboVolgare", "Indicativo passato remoto": "TipoTempoVerboVolgare:PassatoRemotoIndicativoVerboVolgare",
|
|
"Indicativo trapassato prossimo": "TipoTempoVerboVolgare:TrapassatoProssimoIndicativoVerboVolgare", "Indicativo trapassato remoto": "TipoTempoVerboVolgare:TrapassatoRemotoIndicativoVerboVolgare",
|
|
"Indicativo futuro semplice": "TipoTempoVerboVolgare:FuturoSempliceIndicativoVerboVolgare", "Indicativo futuro anteriore": "TipoTempoVerboVolgare:FuturoAnterioreIndicativoVerboVolgare",
|
|
"Congiuntivo presente": "TipoTempoVerboVolgare:PresenteCongiuntivoVerboVolgare", "Congiuntivo imperfetto": "TipoTempoVerboVolgare:ImperfettoCongiuntivoVerboVolgare",
|
|
"Congiuntivo passato": "TipoTempoVerboVolgare:PassatoCongiuntivoVerboVolgare", "Congiuntivo trapassato": "TipoTempoVerboVolgare:TrapassatoCongiuntivoVerboVolgare",
|
|
"Condizionale presente": "TipoTempoVerboVolgare:PresenteCondizionaleVerboVolgare", "Condizionale passato": "TipoTempoVerboVolgare:PassatoCondizionaleVerboVolgare",
|
|
"Imperativo presente": "TipoTempoVerboVolgare:PresenteImperativoVerboVolgare", "Infinito presente": "TipoTempoVerboVolgare:PresenteInfinitoVerboVolgare",
|
|
"Infinito passato": "TipoTempoVerboVolgare:PassatoInfinitoVerboVolgare", "Participio presente": "TipoTempoVerboVolgare:PresenteParticipioVerboVolgare",
|
|
"Participio passato": "TipoTempoVerboVolgare:PassatoParticipioVerboVolgare", "Gerundio presente": "TipoTempoVerboVolgare:PresenteGerundioVerboVolgare",
|
|
"Gerundio passato": "TipoTempoVerboVolgare:PassatoGerundioVerboVolgare"
|
|
},
|
|
"Funzione": {
|
|
"Aggettivo": "TipoFunzioneVerboVolgare:VerboVolgareFunzioneAggettivo", "Sostantivo maschile": "TipoFunzioneVerboVolgare:VerboVolgareFunzioneSostantivoMaschile",
|
|
"Sostantivo femminile": "TipoFunzioneVerboVolgare:VerboVolgareFunzioneSostantivoFemminile"
|
|
},
|
|
"Declinazione": {
|
|
"Prima declinazione": "TipoDeclinazioneVerboVolgare:PrimaDeclinazioneVerboVolgare", "Seconda declinazione": "TipoDeclinazioneVerboVolgare:SecondaDeclinazioneVerboVolgare",
|
|
"Terza declinazione": "TipoDeclinazioneVerboVolgare:TerzaDeclinazioneVerboVolgare"
|
|
},
|
|
"Persona": {
|
|
"1ª persona singolare": "TipoPersonaVerboVolgare:PrimaPersonaSingolareVerboVolgare", "2ª persona singolare": "TipoPersonaVerboVolgare:SecondaPersonaSingolareVerboVolgare",
|
|
"3ª persona singolare": "TipoPersonaVerboVolgare:TerzaPersonaSingolareVerboVolgare", "1ª persona plurale": "TipoPersonaVerboVolgare:PrimaPersonaPluraleVerboVolgare",
|
|
"2ª persona plurale": "TipoPersonaVerboVolgare:SecondaPersonaPluraleVerboVolgare", "3ª persona plurale": "TipoPersonaVerboVolgare:TerzaPersonaPluraleVerboVolgare"
|
|
}
|
|
|
|
},
|
|
|
|
"sostantivovolgare": {
|
|
"Genere_lemma": { "Lemma femminile": "TipoGenereLemmaSostantivoVolgare:GenereFemminileLemmaSostantivoVolgare", "Lemma maschile": "TipoGenereLemmaSostantivoVolgare:GenereMaschileLemmaSostantivoVolgare" },
|
|
"Genere_forma": { "Forma femminile": "TipoGenereSostantivoVolgare:GenereFemminileSostantivoVolgare", "Forma maschile": "TipoGenereSostantivoVolgare:GenereMaschileSostantivoVolgare" },
|
|
"Numero": { "Singolare": "TipoNumeroSostantivoVolgare:NumeroSingolareSostantivoVolgare", "Plurale": "TipoNumeroSostantivoVolgare:NumeroPluraleSostantivoVolgare" },
|
|
"riflpers": { "In locuzione": "SostantivoVolgareInLocuzione:Lv_lv" },
|
|
"Declinazione_sostantivo": {
|
|
"Prima declinazione": "TipoDeclinazioneSostantivoVolgare:PrimaDeclinazioneSostantivoVolgare", "Seconda declinazione": "TipoDeclinazioneSostantivoVolgare:SecondaDeclinazioneSostantivoVolgare",
|
|
"Terza declinazione": "TipoDeclinazioneSostantivoVolgare:TerzaDeclinazioneSostantivoVolgare"
|
|
}
|
|
},
|
|
|
|
"pronomevolgare": {
|
|
"Genere": { "Femminile": "generePronomeVolgare:PronomeVolgareFemminile", "Maschile": "generePronomeVolgare:PronomeVolgareMaschile" },
|
|
"Numero": { "Singolare": "TipoNumeroPronomeVolgare:PronomeVolgareSingolare", "Plurale": "TipoNumeroPronomeVolgare:PronomeVolgarePlurale" },
|
|
"Classe_Persona": {
|
|
"1ª": "TipoClassePersonaPronomeVolgare:PronomeVolgarePrimaClassePersona",
|
|
"2ª": "TipoClassePersonaPronomeVolgare:PronomeVolgareSecondaClassePersona",
|
|
"3ª": "TipoClassePersonaPronomeVolgare:PronomeVolgareTerzaClassePersona"
|
|
},
|
|
"Tipo": {
|
|
"Personale": "TipoDelPronomeVolgare:PronomePersonaleVolgare",
|
|
"Riflessivo": "TipoDelPronomeVolgarePronomeRiflessivoVolgare",
|
|
"Interrogativo": "TipoDelPronomeVolgare:PronomeInterrogativoVolgare",
|
|
"Esclamativo": "TipoDelPronomeVolgare:PronomeEsclamativoVolgare",
|
|
"Dimostrativo": "TipoDelPronomeVolgare:PronomeDimostrativoVolgare",
|
|
"Relativo": "TipoDelPronomeVolgare:PronomeRelativoVolgare",
|
|
"Possessivo": "TipoDelPronomeVolgare:PronomePossessivoVolgare"
|
|
},
|
|
"Forma_Personali_Riflessivi": {
|
|
"Libero": "TipoFormaPerRifPronomeVolgare:PronomeLiberoVolgare",
|
|
"Libero in Composizione": "TipoFormaPerRifPronomeVolgare:PronomeLiberoInComposizioneVolgare",
|
|
"Proclitico": "TipoFormaPerRifPronomeVolgare:PronomeProcliticoVolgare", "Enclitico": "TipoFormaPerRifPronomeVolgare:PronomeEncliticoVolgare"
|
|
},
|
|
"Funzione_Personali": {
|
|
"Libero - soggetto": "TipoFunzionePronomeVolgare:PronomeVolgareLiberoSoggetto",
|
|
"Libero - soggetto impersonale": "TipoFunzionePronomeVolgare:PronomeVolgareLiberoSoggettoImpersonale",
|
|
"Libero - complemento": "TipoFunzionePronomeVolgare:PronomeVolgareLiberoComplemento", "Libero - rafforzativo": "TipoFunzionePronomeVolgare:PronomeVolgareLiberoRafforzativo",
|
|
"Clitico - accusativo": "TipoFunzionePronomeVolgare:PronomeVolgareCliticoAccusativo", "Clitico - dativo": "TipoFunzionePronomeVolgare:PronomeVolgareCliticoDativo",
|
|
"Clitico - partitivo": "TipoFunzionePronomeVolgare:PronomeVolgareCliticoPartitivo"
|
|
},
|
|
"Tipo_Riflessivi": {
|
|
"Proprio": "TipoRiflessiviDelPronomeVolgare:PronomeVolgareProprio", "Lessicalizzato": "TipoRiflessiviDelPronomeVolgare:PronomeVolgareLessicalizzato",
|
|
"Impersonale": "TipoRiflessiviDelPronomeVolgare:PronomeVolgareImpersonale", "Passivo": "TipoRiflessiviDelPronomeVolgare:PronomeVolgarePassivo",
|
|
"Reciproco": "TipoRiflessiviDelPronomeVolgare:PronomeVolgareReciproco"
|
|
}
|
|
|
|
},
|
|
|
|
"aggettivovolgare": {
|
|
"Classe": { "1ª": "TipoClasseAggettivoVolgare:AggettivoVolgarePrimaClasse", "2ª": "TipoClasseAggettivoVolgare:AggettivoVolgareSecondaClasse" },
|
|
"Genere": { "Femminile": "TipoGenereAggettivoVolgare:AggettivoVolgareFemminile", "Maschile": "TipoGenereAggettivoVolgare:AggettivoVolgareMaschile" },
|
|
"Numero": { "Singolare": "TipoNumeroAggettivoVolgare:AggettivoVolgareSingolare", "Plurale": "TipoNumeroAggettivoVolgare:AggettivoVolgareSingolare" },
|
|
"Con_oggetto_indiretto": { "Con oggetto indiretto": "AggettivoVolgareConOggettoIndiretto:AggettivoVolgareConOggettoIndiretto" },
|
|
"Tipo_aggettivo": {
|
|
"Qualificativo": "TipoDellAggettivoVolgare:AggettivoQualificativoVolgare",
|
|
"Indefinito": "TipoDellAggettivoVolgare:AggettivoIndefinitoVolgare", "Interrogativo": "TipoDellAggettivoVolgare:AggettivoInterrogativoVolgare",
|
|
"Esclamativo": "TipoDellAggettivoVolgare:AggettivoEsclamativoVolgare", "Numerale": "TipoDellAggettivoVolgare:AggettivoNumeraleVolgare",
|
|
"Dimostrativo": "TipoDellAggettivoVolgare:AggettivoDimostrativoVolgare", "Relativo": "TipoDellAggettivoVolgare:AggettivoRelativoVolgare",
|
|
"Possessivo": "TipoDellAggettivoVolgare:AggettivoPossessivoVolgare", "In locuzione": "TipoDellAggettivoVolgare:AggettivoVolgareInLocuzione"
|
|
},
|
|
"Grado": {
|
|
"Comparativo di maggioranza": "TipoGradoAggettivoVolgare:AggettivoVolgareComparativoDiMaggioranza", "Comparativo di minoranza": "TipoGradoAggettivoVolgare:AggettivoVolgareComparativoDiMinoranza",
|
|
"Comparativo di uguaglianza": "TipoGradoAggettivoVolgare:AggettivoVolgareComparativoDiUgualianza", "Superlativo relativo": "TipoGradoAggettivoVolgare:AggettivoVolgareSuperlativorelativo",
|
|
"Superlativo assoluto": "TipoGradoAggettivoVolgare:AggettivoVolgareSuperlativoAssoluto"
|
|
},
|
|
"Tipo_di_Complemento": {
|
|
"Introdotto da A": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaA", "Introdotto da CON": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaCON",
|
|
"Introdotto da CONTRO": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaCONTRO", "Introdotto da DA": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaDA",
|
|
"Introdotto da DI": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaDI", "Introdotto da IN": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaIN",
|
|
"Introdotto da PER": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaPER", "Introdotto da SU": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaSU",
|
|
"Introdotto da TRA": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaTRA", "Introdotto da VERSO": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaVERSO",
|
|
"Introdotto da SOPRA": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaSOPRA", "Introdotto da SOTTO": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaSOTTO",
|
|
"Introdotto da DINANZI": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaDINANZI", "Introdotto da prep.": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareIntrodottoDaPreposizione",
|
|
"Oggetto ind.": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareOggettoInd", "Ogg. indi. + compl. con DI": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareOggettoIndComplConDI",
|
|
"Ogg. ind. pronom.": "TipoDiCompelementoAggettivoVolgare:AggettivoVolgareOggettoIndPronom"
|
|
},
|
|
"Tipo_di_frase": {
|
|
"Con infinito retto da A": "TipoDiFraseAggettivoVolgare:AggettivoVolgareConInfinitoRettoDaA", "Con infinito retto da DA": "TipoDiFraseAggettivoVolgare:AggettivoVolgareConInfinitoRettoDaDA",
|
|
"Con infinito retto da DI": "TipoDiFraseAggettivoVolgare:AggettivoVolgareConInfinitoRettoDaDI", "Con infinito retto da PER": "TipoDiFraseAggettivoVolgare:AggettivoVolgareConInfinitoRettoDaPER",
|
|
"Con infinito retto da SE": "TipoDiFraseAggettivoVolgare:AggettivoVolgareConInfinitoRettoDaSE", "Con subordinata all'indic.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareConSubordinataAllIndicativo",
|
|
"Con subordinata al cong.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareConSubordinataAlCongiuntivo", "In locuzione imp.+infinito": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpInfinito",
|
|
"In locuzione imp.+che+indic.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpCheIndicativo", "In locuzione imp.+che+cong.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpCheCongiuntivo",
|
|
"In locuzione imp.+se+indic.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpSeIndicativo", "In locuzione imp.+se+cong.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpSeCongiuntivo",
|
|
"In locuzione imp.+come+indic.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpComeIndicativo", "In locuzione imp.+quando+indic.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpQuandoIndicativo",
|
|
"In locuzione imp.+perché+cong.": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpPerchéCongiuntivo", "In locuzione imp.+a+infinito": "TipoDiFraseAggettivoVolgare:AggettivoVolgareInLocuzioneImpAInfinito"
|
|
}
|
|
|
|
},
|
|
|
|
"articolovolgare": {
|
|
"Genere": { "Femminile": "TipoGenereArticoloVolgare:ArticoloVolgareFemminile", "Maschile": "TipoGenereArticoloVolgare:ArticoloVolgareMaschile" },
|
|
"Numero": { "Singolare": "TipoNumeroArticoloVolgare:ArticoloVolgareSingolare", "Plurale": "TipoNumeroArticoloVolgare:ArticoloVolgarePlurale" },
|
|
"Tipo": { "Determinativo": "TipoDellArticoloVolgare:ArticoloVolgareDeterminativo", "Indeterminativo": "TipoDellArticoloVolgare:ArticoloVolgareIndeterminativo" }
|
|
|
|
},
|
|
"avverbiovolgare": {
|
|
"Tipo": {
|
|
"Al comparativo di maggioranza": "TipoDellAvverbioVolgare:AvverbioVolgareAlComparativoDiMaggioranza",
|
|
"Al comparativo di minoranza": "TipoDellAvverbioVolgare:AvverbioVolgareAlComparativoDiMinoranza",
|
|
"Al superlativo assoluto": "TipoDellAvverbioVolgare:AvverbioVolgareAlSuperlativoAssoluto",
|
|
"Al superlativo relativo": "TipoDellAvverbioVolgare:AvverbioVolgareAlSuperlativoRelativo",
|
|
"In Locuzione": "TipoDellAvverbioVolgare:AvverbioVolgareInLocuzione",
|
|
"In Locuzione separato": "TipoDellAvverbioVolgare:AvverbioVolgareInLocuzioneSeparato",
|
|
"Proclitico": "TipoDellAvverbioVolgare:AvverbioVolgareProclitico",
|
|
"Enclitico": "TipoDellAvverbioVolgare:AvverbioVolgareEnclitico",
|
|
"Al comparativo di ugualianza": "TipoDellAvverbioVolgare:AvverbioVolgareAlComparativoDiUgualianza"
|
|
}
|
|
},
|
|
|
|
"preposizionevolgare": {
|
|
"Tipo_I": {
|
|
"Propria": "TipoIDellaPreposizioneVolgare:PreposizioneVolgarePropria",
|
|
"Impropria": "TipoIDellaPreposizioneVolgare:PreposizioneVolgareImpropria"
|
|
},
|
|
"Tipo_preposizione": {
|
|
"Semplice": "TipoIIDellaPreposizioneVolgare:PreposizioneVolgareSemplice",
|
|
"Articolata": "TipoIIDellaPreposizioneVolgare:PreposizioneVolgareArticolata",
|
|
"In locuzione": "TipoIIDellaPreposizioneVolgare:PreposizioneVolgareInLocuzione",
|
|
"In locuzione separata": "TipoIIDellaPreposizioneVolgare:PreposizioneVolgareInLocuzioneSeparata"
|
|
},
|
|
"Sintassi": {
|
|
"Soggettiva": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareSoggettiva", "Oggettiva": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareOggettiva",
|
|
"Dichiarativa": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareDichiarativa", "Completiva obliqua": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareCompletivaObliqua",
|
|
"Finale": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareFinale",
|
|
"Causale": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareCausale",
|
|
"Concessiva": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareConcessiva",
|
|
"Consecutiva": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareConsecutiva",
|
|
"Temporale": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareTemporale",
|
|
"Modale": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareModale",
|
|
"Eccettuativa": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareEccettuativa",
|
|
"Esclusiva": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareEsclusiva",
|
|
"Limitativa": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareLimitativa",
|
|
"Comparativa": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareComparativa",
|
|
"Avversativa": "TipoSintassiPreposizioneVolgare:PreposizioneVolgareAvversativa"
|
|
},
|
|
"Complemento_(I)": {
|
|
"Di stato in luogo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiStatoInLuogo",
|
|
"Di moto a luogo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiMotoALuogo",
|
|
"Di moto da luogo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiMotoDaLuogo",
|
|
"Di moto per luogo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiMotoPerLuogo",
|
|
"Di luogo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiLuogo",
|
|
"Predicativo del soggetto": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgarePredicativoDelSoggetto",
|
|
"Predicativo dell'oggetto": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgarePredicativoDellOggetto",
|
|
"Di distanza": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiDistanza",
|
|
"Di tempo determinato": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiTempoDeterminato",
|
|
"Di tempo continuato": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiTempoContinuato",
|
|
"Di tempo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiTempo",
|
|
"Di termine": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiTermine",
|
|
"Di vantaggio": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiVantaggio",
|
|
"Di svantaggio": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiSvantaggio",
|
|
"Di specificazione": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiSpecificazione",
|
|
"Di modo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiModo",
|
|
"Di mezzo": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiMezzo",
|
|
"Di compagnia": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiCompagnia",
|
|
"Di unione": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiUnione",
|
|
"Di allontanamento-separazione": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiAllontanamentoSeparazione",
|
|
"Di materia": "TipoComplementoIPreposizioneVolgare:PreposizioneVolgareDiMateria"
|
|
},
|
|
"Complemento_(II)": {
|
|
"Di limitazione": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiLimitazione",
|
|
"Di qualità": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiQualità",
|
|
"Di causa": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiCausa",
|
|
"Di agente": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiAgente",
|
|
"Di causa efficiente": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiCausaEfficiente",
|
|
"Di fine o scopo": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiFineScopo",
|
|
"Di paragone": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiParagone",
|
|
"Di argomento": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiArgomento",
|
|
"Distributivo": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDistributivo",
|
|
"Di sostituzione": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiSostituzione",
|
|
"Di estensione": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiEstensione",
|
|
"Di rapporto": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiRapporto",
|
|
"Di esclusione": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiEsclusione",
|
|
"Di peso": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiPeso",
|
|
"Di quantità": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiQuantità",
|
|
"Di colpa": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiColpa",
|
|
"Di denominazione": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiDenominazione",
|
|
"partitivo": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgarePartitivo",
|
|
"Di abbondanza-privazione": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiAbbondanzaPrivazione",
|
|
"Di origine-provenienza": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiOrigineProvenienza",
|
|
"Concessivo": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareConcessivo",
|
|
"Di effetto": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiEffetto",
|
|
"Di pena": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareDiPena",
|
|
"Simmetrico": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareSimmetrico",
|
|
"Indiretto esperiente": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareIndirettoEsperiente",
|
|
"Indiretto dativo": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareIndirettoDativo",
|
|
"Indiretto oggetto": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareIndirettoOggetto",
|
|
"Indiretto possessore": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareIndirettoPossessore",
|
|
"Indiretto benefattivo": "TipoComplementoIIPreposizioneVolgare:PreposizioneVolgareIndirettoBenefattivo"
|
|
}
|
|
},
|
|
|
|
"congiunzionevolgare": {
|
|
"Coo_sub": {
|
|
"Coordinativa": "TipoCooSubCongiunzioneVolgare:CongiunzioneVolgareCoordinativa",
|
|
"Subordinativa": "TipoCooSubCongiunzioneVolgare:CongiunzioneVolgareSubordinativa"
|
|
},
|
|
"Tipo": {
|
|
"Semplice": "TipoDellaCongiunzioneVolgare:CongiunzioneVolgareSemplice",
|
|
"Composta": "TipoDellaCongiunzioneVolgare:CongiunzioneVolgareComposta",
|
|
"Locuzione": "TipoDellaCongiunzioneVolgare:CongiunzioneVolgareLocuzione",
|
|
"Locuzione separata": "TipoDellaCongiunzioneVolgare:CongiunzioneVolgareLocuzioneSeparata"
|
|
},
|
|
"Coord_tipo": {
|
|
"Copulativa": "TipoDellaCoordinativaCongiunzioneVolgare:CongiunzioneVolgareCopulativa",
|
|
"Disgiuntiva": "TipoDellaCoordinativaCongiunzioneVolgare:CongiunzioneVolgareDisgiuntiva",
|
|
"Avversativa": "TipoDellaCoordinativaCongiunzioneVolgare:CongiunzioneVolgareAvversativa",
|
|
"Esplicativa": "TipoDellaCoordinativaCongiunzioneVolgare:CongiunzioneVolgareEsplicativa",
|
|
"Conclusiva": "TipoDellaCoordinativaCongiunzioneVolgare:CongiunzioneVolgareConclusiva",
|
|
"Correlativa": "TipoDellaCoordinativaCongiunzioneVolgare:CongiunzioneVolgareCorrelativa"
|
|
},
|
|
"Subord_tipo": {
|
|
"Soggettiva": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareSoggettiva",
|
|
"Oggettiva": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareOggettiva",
|
|
"Dichiarativa": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareDichiarativa",
|
|
"Completiva obliqua": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareCompletivaObliqua",
|
|
"Interrogativa": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareInterrogativa",
|
|
"Finali": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareFinali",
|
|
"Causali": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareCausali",
|
|
"Concessiva": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareConcessiva",
|
|
"Consecutiva": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareConsecutiva",
|
|
"Temporale": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareTemporale",
|
|
"Modale": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareModale",
|
|
"Eccettuativa": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareEccettuativa",
|
|
"Comparativa": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareComparativa",
|
|
"Condizionale": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareCondizionale",
|
|
"Esclusiva": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareEsclusiva",
|
|
"Limitativa": "TipoDellaSubordinativaCongiunzioneVolgare:CongiunzioneVolgareLimitativa"
|
|
}
|
|
},
|
|
|
|
"onomasticavolgare": {
|
|
"Tipo": {
|
|
"Nome proprio": "TipoDellOnomasticaVolgare:NomeProprio", "Nome proprio separato": "TipoDellOnomasticaVolgare:NomeProprioSeparato",
|
|
"Titolo": "TipoDellOnomasticaVolgare:Titolo"
|
|
}
|
|
},
|
|
|
|
"citazionevolgare": {
|
|
"Tipo": {
|
|
"Latina": "TipoDellaCitazioneVolgare:CitazioneLatina",
|
|
"Provenzale": "TipoDellaCitazioneVolgare:CitazioneProvenzale",
|
|
"Francese": "TipoDellaCitazioneVolgare:CitazioneFrancese",
|
|
"Spagnola": "TipoDellaCitazioneVolgare:CitazioneSpagnola",
|
|
"Ebraica": "TipoDellaCitazioneVolgare:CitazioneEbraica",
|
|
"Greca": "TipoDellaCitazioneVolgare:CitazioneGreca"
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
|
|
data21 = `{"verbovolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaVerboVolgare"}},
|
|
"sostantivovolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaSostantivoVolgare"}},
|
|
"aggettivovolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaAggettivoVolgare"}},
|
|
"avverbiovolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaAvverbioVolgare"}},
|
|
"pronomevolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaPronomeVolgare"}},
|
|
"congiunzionevolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaCongiunzioneVolgare"}},
|
|
"articolovolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaArticoloVolgare"}},
|
|
"preposizionevolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaPreposizioneVolgare"}},
|
|
"interiezionevolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaInteriezioneVolgare"}},
|
|
"onomasticavolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaOnomasticaVolgare"}},
|
|
"citazionevolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaCitazioneVolgare"}},
|
|
"locuzionevolgare": {"subject": {"termType": "Variable", "value":"form"}, "predicate": {"termType":"NamedNode", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}, "object": {"termType": "NamedNode", "value": "https://dantenetwork.it/ontology/orl/current/FormaLocuzioneVolgare"}}
|
|
}
|
|
`
|
|
|