src/p4l/settings.py
changeset 117 0a4e7d6ebe80
parent 114 93b45b4f423c
child 118 d33a072d974b
--- a/src/p4l/settings.py	Mon Sep 23 00:38:16 2013 +0200
+++ b/src/p4l/settings.py	Wed Sep 25 22:14:51 2013 +0200
@@ -199,354 +199,17 @@
 }
 
 
-SPARQL_QUERY_ENDPOINT = "http://localhost:8080/openrdf-sesame/repositories/plan4learning"
-SPARQL_SUBJECT_QUERIES = {
-"filter" : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept.
-    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000> .
-    ?uri skos:prefLabel ?label.
-    FILTER (lang(?label) = %s).
-    ?uri skos:prefLabel ?lab.
-    FILTER regex (str(?lab), ?reg, 'i').
-    FILTER (lang (?lab) = %s).
-    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
-    BIND (STRLEN(STR(?lab)) AS ?len)
-}
-ORDER BY ?place ?len ?lab
-""",
-"root" : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?type
-WHERE {
-    ?uri a skos:Collection ;
-    skos:inScheme <http://skos.um.es/unescothes/CS000> ;
-    skos:prefLabel|rdfs:label ?label ;
-    rdf:type ?type ;
-    FILTER (lang(?label) = %s). 
-    FILTER NOT EXISTS { [skos:member ?uri] }.
-}
-ORDER BY ?label
-""",
-"childs" : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?type
-WHERE {
-  ?uri skos:inScheme <http://skos.um.es/unescothes/CS000> .
-  { ?uri a ?type
-    FILTER (?type = skos:Collection || ?type = skos:Concept) }.
-  ?root skos:narrower|skos:member ?uri.
-  ?uri skos:prefLabel|rdfs:label ?label.
-  FILTER (lang(?label) = %s).
-}
-ORDER BY ?label
-""",
-"child-count" : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT (COUNT(?uri) as ?nb)
-WHERE {
-    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000> .
-    ?root skos:narrower|skos:member ?uri.
-}
-"""
-}
-SPARQL_THEME_QUERIES = {
-'filter' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept.
-    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> .
-    ?uri skos:prefLabel ?label.
-    FILTER (lang(?label) = %s).
-    ?uri skos:prefLabel ?lab.
-    FILTER regex (str(?lab), ?reg, 'i').
-    FILTER (lang (?lab) = %s).
-    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
-    BIND (STRLEN(STR(?lab)) AS ?len)
-}
-ORDER BY ?place ?len ?lab
-""",
-'root' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?type
-WHERE {
-    ?uri a skos:Collection ;
-    skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> ;    
-    skos:prefLabel|rdfs:label ?label ;
-    rdf:type ?type ;
-    FILTER (lang(?label) = %s). 
-    FILTER NOT EXISTS { [skos:member ?uri] }
-}
-ORDER BY ?label
-""",
-'childs' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?type
-WHERE {
-  ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> .
-  { ?uri a ?type
-    FILTER (?type = skos:Collection || ?type = skos:Concept) }.
-  ?root skos:narrower|skos:member ?uri.
-  ?uri skos:prefLabel|rdfs:label ?label.
-  FILTER (lang(?label) = %s).
-}
-ORDER BY ?label
-""",
-'child-count' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT (COUNT(?uri) as ?nb)
-WHERE {
-    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> .
-    ?root skos:narrower|skos:member ?uri.
-}
-"""
-}
-SPARQL_COUNTRY_QUERIES = {
-'filter' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept.
-    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> .
-    ?uri skos:prefLabel ?label.
-    FILTER (lang(?label) = %s).
-    ?uri skos:prefLabel ?lab.
-    FILTER regex (str(?lab), ?reg, 'i').
-    FILTER (lang (?lab) = %s).
-    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
-    BIND (STRLEN(STR(?lab)) AS ?len)
-}
-ORDER BY ?place ?len ?lab
-""",
-'root' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept ;
-    skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> ;    
-    skos:prefLabel ?label .
-    FILTER (lang(?label) = %s). 
-    FILTER NOT EXISTS { [skos:narrower ?uri] }
-}
-ORDER BY ?label
-""",
-'childs' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-  ?uri skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> .
-  { ?uri a ?type
-    FILTER (?type = skos:Collection || ?type = skos:Concept) }.
-  ?root skos:narrower|skos:member ?uri.
-  ?uri skos:prefLabel|rdfs:label ?label.
-  FILTER (lang(?label) = %s).
-}
-ORDER BY ?label
-""",
-'child-count' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT (COUNT(?uri) as ?nb)
-WHERE {
-    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> .
-    ?root skos:narrower|skos:member ?uri.
-}
-"""
-}
-SPARQL_LANGUAGE_QUERIES = {
-'filter' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept.
-    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Languages> .
-    ?uri skos:prefLabel ?label.
-    FILTER (lang(?label) = %s).
-    ?uri skos:prefLabel ?lab.
-    FILTER regex (str(?lab), ?reg, 'i').
-    FILTER (lang (?lab) = %s).
-    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
-    BIND (STRLEN(STR(?lab)) AS ?len)
-}
-ORDER BY ?place ?len ?lab
-""",
-'root' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept ;
-    skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Languages> ;    
-    skos:prefLabel ?label .
-    FILTER (lang(?label) = %s). 
-    FILTER NOT EXISTS { [skos:narrower ?uri] }
-}
-ORDER BY ?label
-"""
-}
-SPARQL_PROJECT_QUERIES = {
-'filter' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?acro
-WHERE {
-    ?uri a skos:Concept.
-    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Projects> .
-    ?uri skos:prefLabel ?label.
-    ?uri skos:prefLabel ?lab.
-    OPTIONAL { ?uri skos:altLabel ?acro }.
-    FILTER regex (str(?lab), ?reg, 'i').
-    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
-    BIND (STRLEN(STR(?lab)) AS ?len)
-}
-ORDER BY ?place ?len ?lab
-""",
-'root' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?acro
-WHERE {
-    ?uri a skos:Concept ;
-    skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Projects> ;    
-    skos:prefLabel ?label .
-    OPTIONAL { ?uri skos:altLabel ?acro }
-}
-ORDER BY ?label
-"""
-}
-SPARQL_ORGANIZATION_QUERIES = {
-'filter' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?acro
-WHERE {
-    ?uri a skos:Concept.
-    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Organizations> .
-    ?uri skos:prefLabel ?label.
-    ?uri skos:prefLabel ?lab.
-    OPTIONAL { ?uri skos:altLabel ?acro }.
-    FILTER regex (str(?lab), ?reg, 'i').
-    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
-    BIND (STRLEN(STR(?lab)) AS ?len)
-}
-ORDER BY ?place ?len ?lab
-""",
-'root' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label ?acro
-WHERE {
-    ?uri a skos:Concept ;
-    skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Organizations> ;    
-    skos:prefLabel ?label .
-    OPTIONAL { ?uri skos:altLabel ?acro }
-}
-ORDER BY ?label
-"""
-}
-SPARQL_TYPE_QUERIES = {
-'filter' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept.
-    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/DocumentType> .
-    ?uri skos:prefLabel ?label.
-    FILTER (lang(?label) = %s).
-    ?uri skos:prefLabel ?lab.
-    FILTER regex (str(?lab), ?reg, 'i').
-    FILTER (lang (?lab) = %s).
-    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
-    BIND (STRLEN(STR(?lab)) AS ?len)
-}
-ORDER BY ?place ?len ?lab
-""",
-'root' : """
-PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
-PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
-PREFIX owl:<http://www.w3.org/2002/07/owl#>
-PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
-SELECT DISTINCT ?uri ?label
-WHERE {
-    ?uri a skos:Concept ;
-    skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/DocumentType> ;    
-    skos:prefLabel ?label .
-    FILTER (lang(?label) = %s). 
-    FILTER NOT EXISTS { [skos:narrower ?uri] }
-}
-ORDER BY ?label
-"""
-}
-SPARQL_AUDIENCE_QUERIES = {
-"filter" : "",
-"root" : "",
-"childs" : "",
-"child-count" : ""
-}
+
 
-RDF_SCHEMES = {
-    'organization': 'http://www.iiep.unesco.org/plan4learning/scheme/Organizations',
-    'audience': '',
-    'language': 'http://www.iiep.unesco.org/plan4learning/scheme/Languages',
-    'type': 'http://www.iiep.unesco.org/plan4learning/scheme/DocumentType',
-    'subject': 'http://skos.um.es/unescothes/CS000',
-    'theme': 'http://www.iiep.unesco.org/plan4learning/scheme/Themes',
-    'country': 'http://skos.um.es/unescothes/CS000/Countries',    
-    'project': 'http://www.iiep.unesco.org/plan4learning/scheme/Projects'
+RDF_SCHEMES = { 
+    'organizations': 'http://www.iiep.unesco.org/plan4learning/scheme/Organizations',
+    'audiences': '',
+    'languages': 'http://www.iiep.unesco.org/plan4learning/scheme/Languages',
+    'types': 'http://www.iiep.unesco.org/plan4learning/scheme/DocumentType',
+    'subjects': 'http://skos.um.es/unescothes/CS000',
+    'themes': 'http://www.iiep.unesco.org/plan4learning/scheme/Themes',
+    'countries': 'http://skos.um.es/unescothes/CS000/Countries',    
+    'projects': 'http://www.iiep.unesco.org/plan4learning/scheme/Projects'
 }
 
 REST_FRAMEWORK = {
@@ -566,195 +229,195 @@
 }
 
 LANGUAGES_LIST = [
-(u"French","fr"),
-(u"English","en"),
-(u"Spanish; Castilian","es"),
-(u"",""),
-(u"Abkhaz","ab"),
-(u"Afar","aa"),
-(u"Afrikaans","af"),
-(u"Akan","ak"),
-(u"Albanian","sq"),
-(u"Amharic","am"),
-(u"Arabic","ar"),
-(u"Aragonese","an"),
-(u"Armenian","hy"),
-(u"Assamese","as"),
-(u"Avaric","av"),
-(u"Avestan","ae"),
-(u"Aymara","ay"),
-(u"Azerbaijani","az"),
-(u"Bambara","bm"),
-(u"Bashkir","ba"),
-(u"Basque","eu"),
-(u"Belarusian","be"),
-(u"Bengali; Bangla","bn"),
-(u"Bihari","bh"),
-(u"Bislama","bi"),
-(u"Bosnian","bs"),
-(u"Breton","br"),
-(u"Bulgarian","bg"),
-(u"Burmese","my"),
-(u"Catalan","ca"),
-(u"Chamorro","ch"),
-(u"Chechen","ce"),
-(u"Chichewa; Chewa; Nyanja","ny"),
-(u"Chinese","zh"),
-(u"Chuvash","cv"),
-(u"Cornish","kw"),
-(u"Corsican","co"),
-(u"Cree","cr"),
-(u"Croatian","hr"),
-(u"Czech","cs"),
-(u"Danish","da"),
-(u"Divehi; Dhivehi; Maldivian;","dv"),
-(u"Dutch","nl"),
-(u"Dzongkha","dz"),
-(u"English","en"),
-(u"Esperanto","eo"),
-(u"Estonian","et"),
-(u"Ewe","ee"),
-(u"Faroese","fo"),
-(u"Fijian","fj"),
-(u"Finnish","fi"),
-(u"French","fr"),
-(u"Fula; Fulah; Pulaar; Pular","ff"),
-(u"Galician","gl"),
-(u"Ganda","lg"),
-(u"Georgian","ka"),
-(u"German","de"),
-(u"Greek Modern","el"),
-(u"Guarani","gn"),
-(u"Gujarati","gu"),
-(u"Haitian; Haitian Creole","ht"),
-(u"Hausa","ha"),
-(u"Hebrew","he"),
-(u"Herero","hz"),
-(u"Hindi","hi"),
-(u"Hiri Motu","ho"),
-(u"Hungarian","hu"),
-(u"Icelandic","is"),
-(u"Ido","io"),
-(u"Igbo","ig"),
-(u"Indonesian","id"),
-(u"Interlingua","ia"),
-(u"Interlingue","ie"),
-(u"Inuktitut","iu"),
-(u"Inupiaq","ik"),
-(u"Irish","ga"),
-(u"Italian","it"),
-(u"Japanese","ja"),
-(u"Javanese","jv"),
-(u"Kalaallisut; Greenlandic","kl"),
-(u"Kannada","kn"),
-(u"Kanuri","kr"),
-(u"Kashmiri","ks"),
-(u"Kazakh","kk"),
-(u"Khmer","km"),
-(u"Kikuyu; Gikuyu","ki"),
-(u"Kinyarwanda","rw"),
-(u"Kirundi","rn"),
-(u"Komi","kv"),
-(u"Kongo","kg"),
-(u"Korean","ko"),
-(u"Kurdish","ku"),
-(u"Kwanyama; Kuanyama","kj"),
-(u"Kyrgyz","ky"),
-(u"Lao","lo"),
-(u"Latin","la"),
-(u"Latvian","lv"),
-(u"Limburgish; Limburgan; Limburger","li"),
-(u"Lingala","ln"),
-(u"Lithuanian","lt"),
-(u"Luba-Katanga","lu"),
-(u"Luxembourgish; Letzeburgesch","lb"),
-(u"Macedonian","mk"),
-(u"Malagasy","mg"),
-(u"Malay","ms"),
-(u"Malayalam","ml"),
-(u"Maltese","mt"),
-(u"Manx","gv"),
-(u"Marathi","mr"),
-(u"Marshallese","mh"),
-(u"Mongolian","mn"),
-(u"Maori","mi"),
-(u"Nauru","na"),
-(u"Navajo; Navaho","nv"),
-(u"Ndonga","ng"),
-(u"Nepali","ne"),
-(u"North Ndebele","nd"),
-(u"Northern Sami","se"),
-(u"Norwegian","no"),
-(u"Norwegian Bokmal","nb"),
-(u"Norwegian Nynorsk","nn"),
-(u"Nuosu","ii"),
-(u"Occitan","oc"),
-(u"Ojibwe; Ojibwa","oj"),
-(u"Church Slavic; Church Slavonic","cu"),
-(u"Oriya","or"),
-(u"Oromo","om"),
-(u"Ossetian; Ossetic","os"),
-(u"Panjabi; Punjabi","pa"),
-(u"Pashto; Pushto","ps"),
-(u"Persian","fa"),
-(u"Polish","pl"),
-(u"Portuguese","pt"),
-(u"Pali","pi"),
-(u"Quechua","qu"),
-(u"Romanian; Moldavian","ro"),
-(u"Romansh","rm"),
-(u"Russian","ru"),
-(u"Samoan","sm"),
-(u"Sango","sg"),
+(u"French", "fr"),
+(u"English", "en"),
+(u"Spanish; Castilian", "es"),
+(u"", ""),
+(u"Abkhaz", "ab"),
+(u"Afar", "aa"),
+(u"Afrikaans", "af"),
+(u"Akan", "ak"),
+(u"Albanian", "sq"),
+(u"Amharic", "am"),
+(u"Arabic", "ar"),
+(u"Aragonese", "an"),
+(u"Armenian", "hy"),
+(u"Assamese", "as"),
+(u"Avaric", "av"),
+(u"Avestan", "ae"),
+(u"Aymara", "ay"),
+(u"Azerbaijani", "az"),
+(u"Bambara", "bm"),
+(u"Bashkir", "ba"),
+(u"Basque", "eu"),
+(u"Belarusian", "be"),
+(u"Bengali; Bangla", "bn"),
+(u"Bihari", "bh"),
+(u"Bislama", "bi"),
+(u"Bosnian", "bs"),
+(u"Breton", "br"),
+(u"Bulgarian", "bg"),
+(u"Burmese", "my"),
+(u"Catalan", "ca"),
+(u"Chamorro", "ch"),
+(u"Chechen", "ce"),
+(u"Chichewa; Chewa; Nyanja", "ny"),
+(u"Chinese", "zh"),
+(u"Chuvash", "cv"),
+(u"Cornish", "kw"),
+(u"Corsican", "co"),
+(u"Cree", "cr"),
+(u"Croatian", "hr"),
+(u"Czech", "cs"),
+(u"Danish", "da"),
+(u"Divehi; Dhivehi; Maldivian;", "dv"),
+(u"Dutch", "nl"),
+(u"Dzongkha", "dz"),
+(u"English", "en"),
+(u"Esperanto", "eo"),
+(u"Estonian", "et"),
+(u"Ewe", "ee"),
+(u"Faroese", "fo"),
+(u"Fijian", "fj"),
+(u"Finnish", "fi"),
+(u"French", "fr"),
+(u"Fula; Fulah; Pulaar; Pular", "ff"),
+(u"Galician", "gl"),
+(u"Ganda", "lg"),
+(u"Georgian", "ka"),
+(u"German", "de"),
+(u"Greek Modern", "el"),
+(u"Guarani", "gn"),
+(u"Gujarati", "gu"),
+(u"Haitian; Haitian Creole", "ht"),
+(u"Hausa", "ha"),
+(u"Hebrew", "he"),
+(u"Herero", "hz"),
+(u"Hindi", "hi"),
+(u"Hiri Motu", "ho"),
+(u"Hungarian", "hu"),
+(u"Icelandic", "is"),
+(u"Ido", "io"),
+(u"Igbo", "ig"),
+(u"Indonesian", "id"),
+(u"Interlingua", "ia"),
+(u"Interlingue", "ie"),
+(u"Inuktitut", "iu"),
+(u"Inupiaq", "ik"),
+(u"Irish", "ga"),
+(u"Italian", "it"),
+(u"Japanese", "ja"),
+(u"Javanese", "jv"),
+(u"Kalaallisut; Greenlandic", "kl"),
+(u"Kannada", "kn"),
+(u"Kanuri", "kr"),
+(u"Kashmiri", "ks"),
+(u"Kazakh", "kk"),
+(u"Khmer", "km"),
+(u"Kikuyu; Gikuyu", "ki"),
+(u"Kinyarwanda", "rw"),
+(u"Kirundi", "rn"),
+(u"Komi", "kv"),
+(u"Kongo", "kg"),
+(u"Korean", "ko"),
+(u"Kurdish", "ku"),
+(u"Kwanyama; Kuanyama", "kj"),
+(u"Kyrgyz", "ky"),
+(u"Lao", "lo"),
+(u"Latin", "la"),
+(u"Latvian", "lv"),
+(u"Limburgish; Limburgan; Limburger", "li"),
+(u"Lingala", "ln"),
+(u"Lithuanian", "lt"),
+(u"Luba-Katanga", "lu"),
+(u"Luxembourgish; Letzeburgesch", "lb"),
+(u"Macedonian", "mk"),
+(u"Malagasy", "mg"),
+(u"Malay", "ms"),
+(u"Malayalam", "ml"),
+(u"Maltese", "mt"),
+(u"Manx", "gv"),
+(u"Marathi", "mr"),
+(u"Marshallese", "mh"),
+(u"Mongolian", "mn"),
+(u"Maori", "mi"),
+(u"Nauru", "na"),
+(u"Navajo; Navaho", "nv"),
+(u"Ndonga", "ng"),
+(u"Nepali", "ne"),
+(u"North Ndebele", "nd"),
+(u"Northern Sami", "se"),
+(u"Norwegian", "no"),
+(u"Norwegian Bokmal", "nb"),
+(u"Norwegian Nynorsk", "nn"),
+(u"Nuosu", "ii"),
+(u"Occitan", "oc"),
+(u"Ojibwe; Ojibwa", "oj"),
+(u"Church Slavic; Church Slavonic", "cu"),
+(u"Oriya", "or"),
+(u"Oromo", "om"),
+(u"Ossetian; Ossetic", "os"),
+(u"Panjabi; Punjabi", "pa"),
+(u"Pashto; Pushto", "ps"),
+(u"Persian", "fa"),
+(u"Polish", "pl"),
+(u"Portuguese", "pt"),
+(u"Pali", "pi"),
+(u"Quechua", "qu"),
+(u"Romanian; Moldavian", "ro"),
+(u"Romansh", "rm"),
+(u"Russian", "ru"),
+(u"Samoan", "sm"),
+(u"Sango", "sg"),
 (u"Sanskrit (Samskrta),sa"),
-(u"Sardinian","sc"),
-(u"Scottish Gaelic; Gaelic","gd"),
-(u"Serbian","sr"),
-(u"Shona","sn"),
-(u"Sindhi","sd"),
-(u"Sinhala; Sinhalese","si"),
-(u"Slovak","sk"),
-(u"Slovene","sl"),
-(u"Somali","so"),
-(u"South Azerbaijani","az"),
-(u"South Ndebele","nr"),
-(u"Southern Sotho","st"),
-(u"Spanish; Castilian","es"),
-(u"Sundanese","su"),
-(u"Swahili","sw"),
-(u"Swati","ss"),
-(u"Swedish","sv"),
-(u"Tagalog","tl"),
-(u"Tahitian","ty"),
-(u"Tajik","tg"),
-(u"Tamil","ta"),
-(u"Tatar","tt"),
-(u"Telugu","te"),
-(u"Thai","th"),
-(u"Tibetan","bo"),
-(u"Tigrinya","ti"),
-(u"Tonga","to"),
-(u"Tsonga","ts"),
-(u"Tswana","tn"),
-(u"Turkish","tr"),
-(u"Turkmen","tk"),
-(u"Twi","tw"),
-(u"Ukrainian","uk"),
-(u"Urdu","ur"),
-(u"Uyghur; Uighur","ug"),
-(u"Uzbek","uz"),
-(u"Venda","ve"),
-(u"Vietnamese","vi"),
-(u"Volapuk","vo"),
-(u"Walloon","wa"),
-(u"Welsh","cy"),
-(u"Western Frisian","fy"),
-(u"Wolof","wo"),
-(u"Xhosa","xh"),
-(u"Yiddish","yi"),
-(u"Yoruba","yo"),
-(u"Zhuang; Chuang","za"),
-(u"Zulu","zu")]
+(u"Sardinian", "sc"),
+(u"Scottish Gaelic; Gaelic", "gd"),
+(u"Serbian", "sr"),
+(u"Shona", "sn"),
+(u"Sindhi", "sd"),
+(u"Sinhala; Sinhalese", "si"),
+(u"Slovak", "sk"),
+(u"Slovene", "sl"),
+(u"Somali", "so"),
+(u"South Azerbaijani", "az"),
+(u"South Ndebele", "nr"),
+(u"Southern Sotho", "st"),
+(u"Spanish; Castilian", "es"),
+(u"Sundanese", "su"),
+(u"Swahili", "sw"),
+(u"Swati", "ss"),
+(u"Swedish", "sv"),
+(u"Tagalog", "tl"),
+(u"Tahitian", "ty"),
+(u"Tajik", "tg"),
+(u"Tamil", "ta"),
+(u"Tatar", "tt"),
+(u"Telugu", "te"),
+(u"Thai", "th"),
+(u"Tibetan", "bo"),
+(u"Tigrinya", "ti"),
+(u"Tonga", "to"),
+(u"Tsonga", "ts"),
+(u"Tswana", "tn"),
+(u"Turkish", "tr"),
+(u"Turkmen", "tk"),
+(u"Twi", "tw"),
+(u"Ukrainian", "uk"),
+(u"Urdu", "ur"),
+(u"Uyghur; Uighur", "ug"),
+(u"Uzbek", "uz"),
+(u"Venda", "ve"),
+(u"Vietnamese", "vi"),
+(u"Volapuk", "vo"),
+(u"Walloon", "wa"),
+(u"Welsh", "cy"),
+(u"Western Frisian", "fy"),
+(u"Wolof", "wo"),
+(u"Xhosa", "xh"),
+(u"Yiddish", "yi"),
+(u"Yoruba", "yo"),
+(u"Zhuang; Chuang", "za"),
+(u"Zulu", "zu")]
 
 from config import *  # @UnusedWildImport
 
@@ -767,4 +430,356 @@
 if not "LOGIN_REDIRECT_URL" in locals():
     LOGIN_REDIRECT_URL = SRC_BASE_URL
 if not "LOGOUT_REDIRECT_URL" in locals():
-    LOGOUT_REDIRECT_URL = SRC_BASE_URL + 'auth/login'     
+    LOGOUT_REDIRECT_URL = SRC_BASE_URL + 'auth/login'
+
+if not "SPARQL_QUERY_ENDPOINT" in locals():    
+    SPARQL_QUERY_ENDPOINT = "http://localhost:8080/openrdf-sesame/repositories/plan4learning"
+
+if not "SPARQL_REF_QUERIES" in locals():
+    SPARQL_REF_QUERIES = {
+        'subjects': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            'filter' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept.
+                    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000> .
+                    ?uri skos:prefLabel ?label.
+                    FILTER (lang(?label) = {lang}).
+                    ?uri skos:prefLabel ?lab.
+                    FILTER regex (str(?lab), ?reg, 'i').
+                    FILTER (lang (?lab) = {lang}).
+                    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
+                    BIND (STRLEN(STR(?lab)) AS ?len)
+                }}
+                ORDER BY ?place ?len ?lab
+            """,
+            "root" : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?type
+                WHERE {{
+                    ?uri a skos:Collection ;
+                         skos:inScheme <http://skos.um.es/unescothes/CS000> ;
+                         skos:prefLabel|rdfs:label ?label ;
+                         rdf:type ?type .
+                    FILTER (lang(?label) = {lang}). 
+                    FILTER NOT EXISTS {{ [skos:member ?uri] }}.
+                }}
+                ORDER BY ?label
+            """,
+            "childs" : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?type
+                WHERE {{
+                  ?uri skos:inScheme <http://skos.um.es/unescothes/CS000> .
+                  {{ ?uri a ?type
+                    FILTER (?type = skos:Collection || ?type = skos:Concept) }}.
+                  ?root skos:narrower|skos:member ?uri.
+                  ?uri skos:prefLabel|rdfs:label ?label.
+                  FILTER (lang(?label) = {lang}).
+                }}
+                ORDER BY ?label
+            """,
+            "child-count" : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT (COUNT(?uri) as ?nb)
+                WHERE {{
+                    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000> .
+                    ?root skos:narrower|skos:member ?uri.
+                }}
+            """
+        },
+        'themes': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            'filter' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept.
+                    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> .
+                    ?uri skos:prefLabel ?label.
+                    FILTER (lang(?label) = {lang}).
+                    ?uri skos:prefLabel ?lab.
+                    FILTER regex (str(?lab), ?reg, 'i').
+                    FILTER (lang (?lab) = {lang}).
+                    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
+                    BIND (STRLEN(STR(?lab)) AS ?len)
+                }}
+                ORDER BY ?place ?len ?lab
+            """,
+            'root' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?type
+                WHERE {{
+                    ?uri a skos:Collection ;
+                         skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> ;    
+                         skos:prefLabel|rdfs:label ?label ;
+                         rdf:type ?type .
+                    FILTER (lang(?label) = {lang}). 
+                    FILTER NOT EXISTS {{ [skos:member ?uri] }}
+                }}
+                ORDER BY ?label
+            """,
+            'childs' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?type
+                WHERE {{
+                  ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> .
+                  {{ ?uri a ?type
+                    FILTER (?type = skos:Collection || ?type = skos:Concept) }}.
+                  ?root skos:narrower|skos:member ?uri.
+                  ?uri skos:prefLabel|rdfs:label ?label.
+                  FILTER (lang(?label) = {lang}).
+                }}
+                ORDER BY ?label
+            """,
+            'child-count' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT (COUNT(?uri) as ?nb)
+                WHERE {{
+                    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Themes> .
+                    ?root skos:narrower|skos:member ?uri.
+                }}
+            """
+        },
+        'countries': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            'filter' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept.
+                    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> .
+                    ?uri skos:prefLabel ?label.
+                    FILTER (lang(?label) = {lang}).
+                    ?uri skos:prefLabel ?lab.
+                    FILTER regex (str(?lab), ?reg, 'i').
+                    FILTER (lang (?lab) = {lang}).
+                    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
+                    BIND (STRLEN(STR(?lab)) AS ?len)
+                }}
+                ORDER BY ?place ?len ?lab
+            """,
+            'root' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept ;
+                         skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> ;    
+                         skos:prefLabel ?label .
+                    FILTER (lang(?label) = {lang}). 
+                    FILTER NOT EXISTS {{ [skos:narrower ?uri] }}
+                }}
+                ORDER BY ?label
+            """,
+            'childs' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                  ?uri skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> .
+                  {{ ?uri a ?type
+                    FILTER (?type = skos:Collection || ?type = skos:Concept) }}.
+                  ?root skos:narrower|skos:member ?uri.
+                  ?uri skos:prefLabel|rdfs:label ?label.
+                  FILTER (lang(?label) = {lang}).
+                }}
+                ORDER BY ?label
+            """,
+            'child-count' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT (COUNT(?uri) as ?nb)
+                WHERE {{
+                    ?uri skos:inScheme <http://skos.um.es/unescothes/CS000/Countries> .
+                    ?root skos:narrower|skos:member ?uri.
+                }}
+            """
+        },
+        'languages': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            'filter' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept.
+                    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Languages> .
+                    ?uri skos:prefLabel ?label.
+                    FILTER (lang(?label) = {lang}).
+                    ?uri skos:prefLabel ?lab.
+                    FILTER regex (str(?lab), ?reg, 'i').
+                    FILTER (lang (?lab) = {lang}).
+                    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
+                    BIND (STRLEN(STR(?lab)) AS ?len)
+                }}
+                ORDER BY ?place ?len ?lab
+            """,
+            'root' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept ;
+                         skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Languages> ;    
+                         skos:prefLabel ?label .
+                    FILTER (lang(?label) = {lang}). 
+                    FILTER NOT EXISTS {{ [skos:narrower ?uri] }}
+                }}
+                ORDER BY ?label
+            """
+        },
+        'projects': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            'filter' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?acro
+                WHERE {{
+                    ?uri a skos:Concept.
+                    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Projects> .
+                    ?uri skos:prefLabel ?label.
+                    ?uri skos:prefLabel ?lab.
+                    OPTIONAL {{ ?uri skos:altLabel ?acro }}.
+                    FILTER regex (str(?lab), ?reg, 'i').
+                    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
+                    BIND (STRLEN(STR(?lab)) AS ?len)
+                }}
+                ORDER BY ?place ?len ?lab
+            """,
+            'root' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?acro
+                WHERE {{
+                    ?uri a skos:Concept ;
+                    skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Projects> ;    
+                    skos:prefLabel ?label .
+                    OPTIONAL {{ ?uri skos:altLabel ?acro }}
+                }}
+                ORDER BY ?label
+            """
+        },
+        'organizations': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            'filter' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?acro
+                WHERE {{
+                    ?uri a skos:Concept.
+                    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Organizations> .
+                    ?uri skos:prefLabel ?label.
+                    ?uri skos:prefLabel ?lab.
+                    OPTIONAL {{ ?uri skos:altLabel ?acro }}.
+                    FILTER regex (str(?lab), ?reg, 'i').
+                    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
+                    BIND (STRLEN(STR(?lab)) AS ?len)
+                }}
+                ORDER BY ?place ?len ?lab
+            """,
+            'root' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label ?acro
+                WHERE {{
+                    ?uri a skos:Concept ;
+                         skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Organizations> ;    
+                         skos:prefLabel ?label .
+                    OPTIONAL {{ ?uri skos:altLabel ?acro }}
+                }}
+                ORDER BY ?label
+            """
+        },
+        'types': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            'filter' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept.
+                    ?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/DocumentType> .
+                    ?uri skos:prefLabel ?label.
+                    FILTER (lang(?label) = {lang}).
+                    ?uri skos:prefLabel ?lab.
+                    FILTER regex (str(?lab), ?reg, 'i').
+                    FILTER (lang (?lab) = {lang}).
+                    BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place).
+                    BIND (STRLEN(STR(?lab)) AS ?len)
+                }}
+                ORDER BY ?place ?len ?lab
+            """,
+            'root' : """
+                PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
+                PREFIX rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+                PREFIX owl:<http://www.w3.org/2002/07/owl#>
+                PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>
+                SELECT DISTINCT ?uri ?label
+                WHERE {{
+                    ?uri a skos:Concept ;
+                         skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/DocumentType> ;    
+                         skos:prefLabel ?label .
+                    FILTER (lang(?label) = {lang}). 
+                    FILTER NOT EXISTS {{ [skos:narrower ?uri] }}
+                }}
+                ORDER BY ?label
+            """
+        },
+        'audiences': {
+            'url' : SPARQL_QUERY_ENDPOINT,
+            "filter" : "",
+            "root" : "",
+            "childs" : "",
+            "child-count" : ""
+        }
+    }