2022-10-07 17:06:36 +02:00
2022-10-13 15:59:16 +02:00
tq = `
2022-10-07 17:06:36 +02:00
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/>
2022-10-21 15:00:07 +02:00
PREFIX comm : < http : //dantenetwork.it/data/commedia/>
2022-10-07 17:06:36 +02:00
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 .
2022-10-10 10:08:39 +02:00
{ ? 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 .
2022-10-07 17:06:36 +02:00
{ ? 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 . }
}
2022-10-21 15:00:07 +02:00
} ORDER BY ( ? Cantica ) ( ? Canto )
2022-10-07 17:06:36 +02:00
LIMIT 50
`
2022-10-21 15:00:07 +02:00
tqvpvs = `
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/>
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 ;
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 , "^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 ;
ecrm : P148i _is _component _of ? canto .
}
OPTIONAL {
? ver2 ecrm : P190 _Has _Symbolic _Content ? textver2 ;
olires : hasNumber ? NumVerso2 ;
ecrm : P148i _is _component _of ? canto .
}
} ORDER BY ( ? canto ) ( ? cantica )
LIMIT 10
`
2022-11-06 17:12:56 +01:00
// Per restituire i versi di una cantica
var qVersiCantica = `
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/>
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 ;
ecrm : P148i _is _component _of ? canto .
? reg olires : fragmentRegionFrom ? from ;
olires : fragmentRegionTo ? to .
? canto ecrm : P102 _has _title ? t _canto ;
ecrm : P148i _is _component _of ? cantica .
? cantica ecrm : P102 _has _title ? t _cantica .
FILTER regex ( ? t _cantica , "Inferno" , "i" ) .
} `
2022-10-07 17:06:36 +02:00
2022-10-13 15:59:16 +02:00
var hdnquerygrammar = `
2022-10-07 17:06:36 +02:00
Expression
= head : ( ( _ ) ? "(" ( _ ) ? ( "AND " / "OR " ) Filtro + ( _ ) ? ( ")" ) ? ) { return '{"' + head [ 3 ] + '": [' + head [ 4 ] + "]}" } //{ return head}.join("").replaceAll(", ,","").replaceAll("(,","(").replaceAll(",("," (")}
/ r e s u : F i l t r o { r e t u r n r e s u [ 1 ] . s p l i t ( ) . j o i n ( ) + ' ' ; }
Filtro
2022-10-13 15:59:16 +02:00
= ( _ ) "(" ? head : ( ( "AND " / "OR " ) ) ? tail : ( Clausola + / F i l t r o n i c k + ) ( _ ) ? c l o s e c l : ( " ) " ) ?
2022-10-07 17:06:36 +02:00
{ if ( head != null ) return ' {"' + head + '":[' + tail + "]}" ;
2022-10-13 15:59:16 +02:00
else if ( tail != null & tail . length < 2 ) return ' ' + tail + ''
2022-10-07 17:06:36 +02:00
else return "" + tail + "" ; }
/ c l : C l a u s o l a
Clausola
2022-10-13 15:59:16 +02:00
= cla : ( "Clausola" Integer ) ( _ ) ? { return ' {"TERM": "' + cla [ 0 ] + cla [ 1 ] + '"}' ; }
Filtronick
= fil : ( "filtro-" Integer ) ( _ ) ? { return ' {"TERM": "' + fil [ 0 ] + fil [ 1 ] + '"}' ; }
2022-10-07 17:06:36 +02:00
2022-10-10 17:01:29 +02:00
Integer "integer"
= _ [ 0 - 9 ] + { return parseInt ( text ( ) , 10 ) ; }
_ "whitespace" = " " *
`
2022-10-13 15:59:16 +02:00
var hdnquerygrammartest = `
2022-10-10 17:01:29 +02:00
Expression
= head : ( ( _ ) ? "(" ( _ ) ? ( "AND " / "OR " ) Filtro + ( _ ) ? ( ")" ) ? ) { return '{"' + head [ 3 ] + '": [' + head [ 4 ] + "]}" } //{ return head}.join("").replaceAll(", ,","").replaceAll("(,","(").replaceAll(",("," (")}
/ r e s u : F i l t r o { r e t u r n r e s u [ 1 ] . s p l i t ( ) . j o i n ( ) + ' ' ; }
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 + "" ; }
/ c l : C l a u s o l a
Clausola
= cla : ( "Clausola" Integer ) ( _ ) ? { return ' {"TERM": "' + cla [ 0 ] + cla [ 1 ] + '"}' ; }
2022-10-07 17:06:36 +02:00
Integer "integer"
= _ [ 0 - 9 ] + { return parseInt ( text ( ) , 10 ) ; }
_ "whitespace" = " " *
`
2022-10-13 15:59:16 +02:00
var testmm = 0
2022-10-07 17:06:36 +02:00
2021-06-01 11:22:12 +02:00
//query
2022-10-13 15:59:16 +02:00
ontoSparqlQuery = ` PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
2021-06-01 11:22:12 +02:00
PREFIX ecrm : < http : //erlangen-crm.org/current/>
2022-09-29 14:54:49 +02:00
PREFIX hdn : < http : //dantenetwork.it/data/commedia/>
2021-06-01 11:22:12 +02:00
PREFIX lemon : < http : //lemon-model.net/lemon#>
2022-09-29 14:54:49 +02:00
PREFIX orl : < http : //dantenetwork.it/ontology/ORL/>
2021-06-01 11:22:12 +02:00
PREFIX xsd : < http : //www.w3.org/2001/XMLSchema#>
2022-09-29 14:54:49 +02:00
PREFIX ontolex : < http : //www.w3.org/ns/lemon/ontolex#>
PREFIX olires : < https : //dantenetwork.it/ontology/OLIRes/>
2022-10-21 15:00:07 +02:00
PREFIX comm : < http : //dantenetwork.it/data/commedia/>
2022-09-29 15:59:35 +02:00
2022-10-04 10:51:37 +02:00
SELECT ( ? form as ? IRIForma ) ( ? Rappresentazione as ? Forma ) ( ? lm as ? Lemma ) ( ? textver as ? Verso ) ( ? NumVerso as ? NumeroVerso )
2022-09-30 09:43:32 +02:00
( ? t _canto as ? Canto ) ( ? t _cantica as ? Cantica )
2022-09-29 15:59:35 +02:00
2021-06-01 11:22:12 +02:00
WHERE {
2022-09-29 14:54:49 +02:00
? 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 .
2022-09-29 15:59:35 +02:00
? 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" )
2022-10-17 13:09:47 +02:00
} ORDER BY ? Cantica ? Canto ? NumVerso
2022-09-30 09:43:32 +02:00
LIMIT 50 `
//Togliere LIMIT in prod
2021-06-01 11:22:12 +02:00
2022-10-13 15:59:16 +02:00
orlprefix = 'http://dantenetwork.it/ontology/ORL/'
2022-10-13 18:35:57 +02:00
var stringInSparql = false ;
2022-10-03 15:58:16 +02:00
2022-09-29 14:54:49 +02:00
function writesparqlquery ( query ) {
2021-06-01 11:22:12 +02:00
return ( query ) ;
}
// write the query in natural language
2022-10-13 15:59:16 +02:00
2021-06-01 11:22:12 +02:00
function writesearchValue ( form ) {
2022-10-13 15:59:16 +02:00
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 ;
2021-06-01 11:22:12 +02:00
return ` Cerco: ${ strq } ${ form . query . value } , ${ form . tipo . value } , ${ strcategoria } `
}
2022-11-06 17:12:56 +01:00
//restituisce la query per ottenere tutti i versi di una cantica
function versiCantica ( cantica ) {
var SparqlParser = sparqljs . Parser ;
var parser = new SparqlParser ( ) ;
return parser . parse ( qVersiCantica ) ;
}
// the basic initial query is parsed RIMUOVERE
2021-06-01 11:22:12 +02:00
2022-10-13 15:59:16 +02:00
function gimmespq ( ) {
var SparqlParser = sparqljs . Parser ;
var parser = new SparqlParser ( ) ;
2022-10-21 15:00:07 +02:00
//return parser.parse(ontoSparqlQuery);
return parser . parse ( tqvpvs ) ;
2022-10-13 15:59:16 +02:00
}
2021-06-01 11:22:12 +02:00
// the query is transformed according the form values
2022-10-13 15:59:16 +02:00
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 ) ;
2021-06-01 11:22:12 +02:00
}
2022-10-13 15:59:16 +02:00
function getStatements ( ) {
2022-09-29 14:54:49 +02:00
return data21
2022-10-13 15:59:16 +02:00
2022-10-07 17:06:36 +02:00
}
2022-10-13 15:59:16 +02:00
var theguiQ = ''
var multipleCondSpQuery = ''
var conditions = [ ]
var filters = [ ]
var unionop = '{"union": {"type": "union", "patterns":[]}, "bgp": {"type": "bgp", "triples":[]}, "group": {"type": "group", "patterns":[]}}'
2022-10-07 17:06:36 +02:00
2022-10-10 17:01:29 +02:00
2022-10-13 15:59:16 +02:00
function parseJsonClause ( op , tokens , nowhere ) {
2022-10-17 14:15:30 +02:00
//alert(op)
2022-10-13 15:59:16 +02:00
if ( op . trim ( ) == 'OR' ) {
2022-10-10 17:01:29 +02:00
//multipleCondSpQuery.where.push(JSON.parse(unionop)['union']);
2022-10-13 15:59:16 +02:00
nowhere . push ( JSON . parse ( unionop ) [ 'union' ] ) ;
2022-10-10 17:01:29 +02:00
}
2022-10-13 15:59:16 +02:00
if ( op . trim ( ) == 'AND' ) {
2022-10-10 17:01:29 +02:00
nowhere . push ( JSON . parse ( unionop ) [ 'group' ] ) ;
2022-10-13 15:59:16 +02:00
}
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 )
2022-10-10 17:01:29 +02:00
}
2022-10-13 15:59:16 +02:00
else
parseJsonClause ( Object . keys ( te _op ) [ 0 ] , te _op [ Object . keys ( te _op ) [ 0 ] ] , nowhere . at ( - 1 ) . patterns )
}
2022-10-07 17:06:36 +02:00
}
2022-10-13 15:59:16 +02:00
function buildSPQuery ( guiquery ) {
theguiQ = '' ;
theguiQ = guiquery ;
2022-10-07 17:06:36 +02:00
var SparqlParser = sparqljs . Parser ;
var spqparser = new SparqlParser ( ) ;
2022-10-13 15:59:16 +02:00
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 ) ) {
2022-10-10 17:01:29 +02:00
parseJsonClause ( ck , jsonclauses [ ck ] , multipleCondSpQuery . where )
2022-10-07 17:06:36 +02:00
}
2022-10-13 15:59:16 +02:00
2022-09-30 09:43:32 +02:00
}
2022-10-13 18:35:57 +02:00
2022-09-30 12:38:49 +02:00
function buildSQ ( stquery ) {
2022-10-07 17:06:36 +02:00
2022-10-13 15:59:16 +02:00
2022-10-13 18:35:57 +02:00
stringInSparql = false ;
2022-09-30 09:43:32 +02:00
var SparqlParser = sparqljs . Parser ;
var parser = new SparqlParser ( ) ;
2022-10-21 15:00:07 +02:00
//Prendo la query SPARQL template
//const parsedquery = parser.parse(ontoSparqlQuery);
const parsedquery = parser . parse ( tqvpvs ) ;
2022-09-30 09:43:32 +02:00
const lf = document . getElementById ( "lemma_forma" ) ;
2022-10-21 15:00:07 +02:00
//mytestq = parser.parse(tq);
2022-10-04 10:20:15 +02:00
var ftxt = document . getElementById ( "queryText" ) ;
//Nick
2022-10-13 15:59:16 +02:00
if ( ftxt == null ) {
2022-10-04 10:20:15 +02:00
ftxt = document . getElementById ( "searchValue" ) ;
2022-10-13 15:59:16 +02:00
/ *
//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 ;
2022-10-13 18:35:57 +02:00
2022-10-13 15:59:16 +02:00
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 ) ;
2022-10-04 13:31:05 +02:00
return ( myquery )
2022-10-04 10:20:15 +02:00
}
2022-10-07 17:06:36 +02:00
2022-10-13 15:59:16 +02:00
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 )
2022-09-30 16:51:43 +02:00
return ( myquery )
}
2022-10-13 15:59:16 +02:00
2022-09-30 12:38:49 +02:00
if ( ftxt . value . trim ( ) != "" ) {
2022-10-13 15:59:16 +02:00
if ( ftxt . value . trim ( ) . slice ( - 1 ) !== '*' )
strval = "^" + ftxt . value . trim ( ) + "$" ;
2022-09-30 12:38:49 +02:00
else
2022-10-13 15:59:16 +02:00
strval = ftxt . value . trim ( ) . slice ( 0 , - 1 )
2022-09-30 10:25:52 +02:00
parsedquery . where [ 1 ] . expression . args [ 1 ] . value = strval ;
2022-09-30 09:43:32 +02:00
if ( lf . value == 'lemma' )
parsedquery . where [ 1 ] . expression . args [ 0 ] . value = "lm" ;
}
2022-10-13 15:59:16 +02:00
else {
2022-09-30 09:43:32 +02:00
parsedquery . where . splice ( 1 , 1 )
}
2022-10-13 15:59:16 +02:00
2022-09-30 09:43:32 +02:00
return ( parsedquery )
2022-10-04 13:31:05 +02:00
}
//Nick
2022-10-17 14:15:30 +02:00
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
}
}
2022-10-04 13:31:05 +02:00
if ( clause [ 'query' ] != null && clause [ 'query' ] . trim ( ) != "" ) {
2022-10-13 15:59:16 +02:00
if ( clause [ 'query' ] . trim ( ) . slice ( - 1 ) !== '*' )
strval = "^" + clause [ 'query' ] . trim ( ) + "$" ;
2022-10-04 13:31:05 +02:00
else
2022-10-13 15:59:16 +02:00
strval = clause [ 'query' ] . trim ( ) . slice ( 0 , - 1 )
2022-10-04 13:31:05 +02:00
parsedquery . where [ 1 ] . expression . args [ 1 ] . value = strval ;
if ( clause [ 'lemma_forma' ] != null && clause [ 'lemma_forma' ] == 'lemma' )
2022-10-13 15:59:16 +02:00
parsedquery . where [ 1 ] . expression . args [ 0 ] . value = "lm" ;
2022-10-04 13:31:05 +02:00
}
2022-10-13 15:59:16 +02:00
else {
2022-10-04 13:31:05 +02:00
parsedquery . where . splice ( 1 , 1 )
}
2022-10-13 15:59:16 +02:00
if ( clause [ 'categoria' ] != null && clause [ 'categoria' ] != "all" )
2022-10-04 13:31:05 +02:00
parsedquery . where [ 0 ] . triples . push ( JSON . parse ( data21 ) [ clause [ 'categoria' ] ] ) ;
2022-10-13 15:59:16 +02:00
if ( clause [ 'tipoClausola' ] != null && Object . keys ( sottoCategorie ) . includes ( clause [ 'categoria' ] . trim ( ) ) ) {
2022-10-04 13:31:05 +02:00
//sctmp=JSON.parse(sottoCategorieSostantivi)
2022-10-13 15:59:16 +02:00
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 ] )
2022-10-05 14:46:37 +02:00
parsedquery . where [ 0 ] . triples . push ( subcatstat ) ;
}
2022-10-04 13:31:05 +02:00
}
}
}
2022-10-13 15:59:16 +02:00
2022-10-04 13:31:05 +02:00
return parsedquery
2022-10-13 15:59:16 +02:00
2022-09-29 14:54:49 +02:00
}
2022-10-13 15:59:16 +02:00
function buildJsonClause ( clause , parsedquery , whereind , theplace ) {
2022-10-13 18:35:57 +02:00
//Nick
if ( clause [ 'categoria' ] != null ) {
clause [ 'typeGramm0' ] = clause [ 'categoria' ] ;
clause [ 'queryText' ] = clause [ 'query' ]
}
2022-10-13 15:59:16 +02:00
if ( clause [ 'queryText' ] != null && clause [ 'queryText' ] . trim ( ) != "" ) {
if ( clause [ 'queryText' ] . trim ( ) . slice ( - 1 ) !== '*' )
strval = "^" + clause [ 'queryText' ] . trim ( ) + "$" ;
2022-10-10 18:02:58 +02:00
else
2022-10-13 15:59:16 +02:00
strval = clause [ 'queryText' ] . trim ( ) . slice ( 0 , - 1 )
2022-10-10 18:02:58 +02:00
parsedquery . where [ 1 ] . expression . args [ 1 ] . value = strval ;
if ( clause [ 'lemma_forma' ] == 'lemma' )
2022-10-13 15:59:16 +02:00
parsedquery . where [ 1 ] . expression . args [ 0 ] . value = "lm" ;
2022-10-10 18:02:58 +02:00
}
2022-10-13 15:59:16 +02:00
else {
if ( parsedquery . where [ 1 ] . type == 'filter' && parsedquery . where [ 1 ] . expression . args [ 0 ] . value == 'Rappresentazione' )
2022-10-10 18:02:58 +02:00
parsedquery . where . splice ( 1 , 1 )
}
2022-10-13 18:35:57 +02:00
2022-10-13 15:59:16 +02:00
if ( clause [ 'typeGramm0' ] != null && clause [ 'typeGramm0' ] != "all" )
if ( whereind > - 1 )
2022-10-10 18:02:58 +02:00
parsedquery . where [ whereind ] . triples . push ( JSON . parse ( data21 ) [ clause [ 'typeGramm0' ] ] ) ;
2022-10-13 15:59:16 +02:00
else {
2022-10-10 18:02:58 +02:00
//parsedquery.where.at(-1).patterns
theplace . push ( JSON . parse ( unionop ) [ 'bgp' ] ) ;
theplace . at ( - 1 ) . triples . push ( JSON . parse ( data21 ) [ clause [ 'typeGramm0' ] ] ) ;
}
2022-10-13 15:59:16 +02:00
2022-10-10 18:02:58 +02:00
2022-10-13 15:59:16 +02:00
if ( clause [ 'typeGramm0' ] != null && Object . keys ( sottoCategorie ) . includes ( clause [ 'typeGramm0' ] . trim ( ) ) ) {
2022-10-10 18:02:58 +02:00
//sctmp=JSON.parse(sottoCategorieSostantivi)
2022-10-13 15:59:16 +02:00
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 )
2022-10-10 18:02:58 +02:00
parsedquery . where [ whereind ] . triples . push ( subcatstat ) ;
else
theplace . at ( - 1 ) . triples . push ( subcatstat ) ;
}
}
}
}
2022-10-13 15:59:16 +02:00
return parsedquery
2022-10-10 18:02:58 +02:00
}
2022-10-04 13:31:05 +02:00
2022-10-13 15:59:16 +02:00
function buildClause ( clause , parsedquery , whereind ) {
2022-09-30 16:51:43 +02:00
if ( clause [ 'queryText' ] . trim ( ) != "" ) {
2022-10-13 15:59:16 +02:00
if ( clause [ 'queryText' ] . trim ( ) . slice ( - 1 ) !== '*' )
strval = "^" + clause [ 'queryText' ] . trim ( ) + "$" ;
2022-09-30 16:51:43 +02:00
else
2022-10-13 15:59:16 +02:00
strval = clause [ 'queryText' ] . trim ( ) . slice ( 0 , - 1 )
2022-09-30 16:51:43 +02:00
parsedquery . where [ 1 ] . expression . args [ 1 ] . value = strval ;
if ( clause [ 'lemma_forma' ] == 'lemma' )
2022-10-13 15:59:16 +02:00
parsedquery . where [ 1 ] . expression . args [ 0 ] . value = "lm" ;
2022-09-30 16:51:43 +02:00
}
2022-10-13 15:59:16 +02:00
else {
if ( parsedquery . where [ 1 ] . type == 'filter' && parsedquery . where [ 1 ] . expression . args [ 0 ] . value == 'Rappresentazione' )
2022-10-07 18:07:12 +02:00
parsedquery . where . splice ( 1 , 1 )
2022-09-30 16:51:43 +02:00
}
2022-10-13 15:59:16 +02:00
if ( clause [ 'typeGramm0' ] != null && clause [ 'typeGramm0' ] != "all" )
if ( whereind > - 1 )
2022-10-07 17:06:36 +02:00
parsedquery . where [ whereind ] . triples . push ( JSON . parse ( data21 ) [ clause [ 'typeGramm0' ] ] ) ;
2022-10-13 15:59:16 +02:00
else {
2022-10-07 17:06:36 +02:00
parsedquery . where . at ( - 1 ) . patterns . push ( JSON . parse ( unionop ) [ 'bgp' ] ) ;
parsedquery . where . at ( - 1 ) . patterns . at ( - 1 ) . triples . push ( JSON . parse ( data21 ) [ clause [ 'typeGramm0' ] ] ) ;
}
2022-10-13 15:59:16 +02:00
if ( clause [ 'typeGramm0' ] != null && Object . keys ( sottoCategorie ) . includes ( clause [ 'typeGramm0' ] . trim ( ) ) ) {
2022-10-03 15:58:16 +02:00
//sctmp=JSON.parse(sottoCategorieSostantivi)
2022-10-13 15:59:16 +02:00
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 )
2022-10-07 17:06:36 +02:00
parsedquery . where [ whereind ] . triples . push ( subcatstat ) ;
else
parsedquery . where . at ( - 1 ) . patterns . at ( - 1 ) . triples . push ( subcatstat ) ;
2022-10-05 14:46:37 +02:00
}
2022-09-30 16:51:43 +02:00
}
}
}
2022-10-13 15:59:16 +02:00
return parsedquery
2022-09-30 16:51:43 +02:00
}
2022-10-13 15:59:16 +02:00
function buildsubcategoryClause ( sttmnt ) {
subcattmplate = ` {"subject": {"termType": "Variable", "value":"form"},
2022-09-30 16:51:43 +02:00
"predicate" : { "termType" : "NamedNode" } ,
"object" : { "termType" : "NamedNode" } }
`
2022-10-13 15:59:16 +02:00
2022-10-03 15:58:16 +02:00
//orlprefix='http://dantenetwork.it/ontology/ORL/'
2022-10-13 15:59:16 +02:00
predicate = orlprefix + ( sttmnt . split ( ':' ) [ 0 ] )
obj = orlprefix + ( sttmnt . split ( ':' ) [ 1 ] )
subcatstatement = JSON . parse ( subcattmplate )
subcatstatement [ 'predicate' ] [ 'value' ] = predicate
subcatstatement [ 'object' ] [ 'value' ] = obj
2022-09-30 16:51:43 +02:00
return ( subcatstatement )
2022-10-13 15:59:16 +02:00
2022-09-30 16:51:43 +02:00
}
2022-10-04 13:31:05 +02:00
2022-10-03 15:58:16 +02:00
var sottoCategorie = {
2022-10-13 15:59:16 +02:00
"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"
2022-10-12 18:52:09 +02:00
}
2022-10-13 15:59:16 +02:00
} ,
"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"
}
2022-10-03 15:58:16 +02:00
}
2022-10-13 15:59:16 +02:00
}
2022-10-03 15:58:16 +02:00
2022-09-29 14:54:49 +02:00
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" } } ,
2022-10-03 15:58:16 +02:00
"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" } }
2021-06-01 11:22:12 +02:00
}
2022-09-30 12:38:49 +02:00
`
2022-10-13 15:59:16 +02:00