557 lines
33 KiB
JavaScript
557 lines
33 KiB
JavaScript
|
|
|
|
tq=`
|
|
PREFIX ecrm: <http://erlangen-crm.org/current/>
|
|
PREFIX orl: <http://dantenetwork.it/ontology/ORL/>
|
|
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
|
|
PREFIX olires: <https://dantenetwork.it/ontology/OLIRes/>
|
|
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;
|
|
ecrm:P148i_is_component_of ?ver.
|
|
?ver ecrm:P190_Has_Symbolic_Content ?textver;
|
|
olires:hasNumber ?NumVerso;
|
|
ecrm:P148i_is_component_of ?canto.
|
|
?canto ecrm:P102_has_title ?t_canto;
|
|
ecrm:P148i_is_component_of ?cantica.
|
|
?cantica ecrm:P102_has_title ?t_cantica.
|
|
?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) (?NumVerso)
|
|
LIMIT 50
|
|
`
|
|
|
|
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+ (_)? closecl:(")")?
|
|
|
|
{if (head != null) return ' {"'+head+'":['+tail+"]}";
|
|
else if (tail!=null & tail.length <2) return ' {"TERM": ['+tail+']}'
|
|
else return ""+tail+"";}
|
|
/ cl:Clausola
|
|
|
|
Clausola
|
|
= cla:("Clausola"Integer)(_)? {return '"'+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: <http://dantenetwork.it/ontology/ORL/>
|
|
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
|
PREFIX ontolex: <http://www.w3.org/ns/lemon/ontolex#>
|
|
PREFIX olires:<https://dantenetwork.it/ontology/OLIRes/>
|
|
|
|
|
|
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;
|
|
ecrm:P148i_is_component_of ?ver .
|
|
?ver ecrm:P190_Has_Symbolic_Content ?textver;
|
|
olires:hasNumber ?NumVerso;
|
|
ecrm:P148i_is_component_of ?canto .
|
|
?canto ecrm:P102_has_title ?t_canto;
|
|
ecrm:P148i_is_component_of ?cantica .
|
|
?cantica ecrm:P102_has_title ?t_cantica .
|
|
?form ontolex:writtenRep ?Rappresentazione .
|
|
?lent ontolex:lexicalForm ?form;
|
|
ontolex:canonicalForm ?cf .
|
|
?cf ontolex:writtenRep ?lm .
|
|
FILTER regex(?Rappresentazione,"^farò$","i") .
|
|
#FILTER regex(?lm,"^fare$","i") .
|
|
FILTER langMatches(lang(?Rappresentazione),"it")
|
|
} ORDER BY ?Cantica ?Canto ?NumVerso
|
|
LIMIT 50`
|
|
//Togliere LIMIT in prod
|
|
|
|
orlprefix='http://dantenetwork.it/ontology/ORL/'
|
|
|
|
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}`
|
|
}
|
|
|
|
// the basic initial query is parsed
|
|
|
|
function gimmespq(){
|
|
var SparqlParser = sparqljs.Parser;
|
|
var parser = new SparqlParser();
|
|
return parser.parse(ontoSparqlQuery);
|
|
|
|
|
|
}
|
|
|
|
// 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 parseClause(op, tokens){
|
|
alert (op+tokens)
|
|
if (op.trim()=='OR'){
|
|
multipleCondSpQuery.where.push(JSON.parse(unionop)['union']);
|
|
//multipleCondSpQuery.where.at(-1).patterns.push(JSON.parse(unionop)['bgp']);
|
|
for (var mtoken in tokens){
|
|
cond=theguiQ[tokens[mtoken]]
|
|
//multipleCondSpQuery.where.at(-1).patterns.push(JSON.parse(unionop)['bgp']);
|
|
multipleCondSpQuery=buildClause(cond, multipleCondSpQuery, -1)
|
|
}
|
|
}
|
|
if (op.trim()=='AND'){
|
|
multipleCondSpQuery.where.push(JSON.parse(unionop)['group']);
|
|
for (var mtoken in tokens){
|
|
cond=theguiQ[tokens[mtoken]]
|
|
multipleCondSpQuery=buildClause(cond, multipleCondSpQuery, -1)
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
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)){
|
|
parseClause(ck, jsonclauses[ck])
|
|
}
|
|
|
|
|
|
}
|
|
|
|
function buildSQ(stquery) {
|
|
|
|
|
|
if(stquery['EsprLogica']!=null && stquery['EsprLogica'].length>1){
|
|
buildSPQuery (stquery)
|
|
return multipleCondSpQuery;
|
|
}
|
|
var SparqlParser = sparqljs.Parser;
|
|
var parser = new SparqlParser();
|
|
|
|
const parsedquery =parser.parse(ontoSparqlQuery);
|
|
const lf = document.getElementById("lemma_forma");
|
|
mytestq=parser.parse(tq);
|
|
var ftxt = document.getElementById("queryText");
|
|
//Nick
|
|
if (ftxt==null){
|
|
ftxt = document.getElementById("searchValue");
|
|
myquery=buildClauseNick(stquery, parsedquery);
|
|
return (myquery)
|
|
}
|
|
|
|
|
|
|
|
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(clause, parsedquery){
|
|
clause=clause['filtro-1'];//da modificare
|
|
|
|
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 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.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.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='http://dantenetwork.it/ontology/ORL/'
|
|
|
|
|
|
predicate=orlprefix+(sttmnt.split(':')[0])
|
|
obj=orlprefix+(sttmnt.split(':')[1])
|
|
subcatstatement=JSON.parse(subcattmplate)
|
|
|
|
subcatstatement['predicate']['value']=predicate
|
|
subcatstatement['object']['value']=obj
|
|
|
|
return (subcatstatement)
|
|
|
|
}
|
|
|
|
/*
|
|
{
|
|
"b": "VerboVolgareFunzioneAvverbio",
|
|
"l": "VerboVolgareFunzioneLocuzione" #CONTROLLARE
|
|
}
|
|
|
|
|
|
"Persona" : ["Qualsiasi persona", "1ª persona singolare", "2ª persona singolare", "3ª persona singolare", "1ª persona plurale", "2ª persona plurale", "3ª persona plurale"],
|
|
|
|
|
|
*/
|
|
|
|
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": "filtriavverbio",
|
|
"preposizionevolgare": "filtripreposizione",
|
|
"congiunzionevolgare": "filtricongiunzione",
|
|
"onomasticavolgare": {"Tipo" :{"Nome proprio":"TipoDellOnomasticaVolgare:NomeProprio", "Nome proprio separato":"TipoDellOnomasticaVolgare:NomeProprioSeparato",
|
|
"Titolo": "TipoDellOnomasticaVolgare:Titolo"}
|
|
},
|
|
|
|
"citazionevolgare": "filtricitazione"
|
|
}
|
|
|
|
|
|
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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/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": "http://dantenetwork.it/ontology/ORL/FormaLocuzioneVolgare"}}
|
|
}
|
|
`
|
|
|
|
|
|
|
|
sottoCategorieVerbi=`{"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"}
|
|
|
|
}
|
|
`
|
|
|
|
sottoCategorieSostantivi=`{
|
|
"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"}
|
|
}
|
|
`
|
|
|
|
//sottoCategorie=`{"verbovolgare": ["Diatesi,2", "Transitivita,2", "Genere,2", "Numero,2", "Pers,1", "Rifl,1", "Coniugazione,n", "Tempi,n", "Persona,n", "Funzione,n", "Declinazione,n"],
|
|
//"sostantivovolgare": ["pippo,2", "pluto,2"]}`
|