Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
dalia.ttl 3.39 KiB
@prefix :        <http://base/#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix dt:      <http://dalia.education/text#> .
@prefix fuseki:  <http://jena.apache.org/fuseki#> .
@prefix ja:      <http://jena.hpl.hp.com/2005/11/Assembler#> .
@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema:  <https://schema.org/> .
@prefix tdb2:    <http://jena.apache.org/2016/tdb#> .
@prefix text:    <http://jena.apache.org/text#> .

:service_tdb_all a fuseki:Service ;
    fuseki:name    "dalia" ;
    rdfs:label     "DALIA dataset" ;
    fuseki:dataset :text_dataset ;

    # endpoint /dalia/
    # SPARQL Query Language, SPARQL Update and SPARQL Graph Store HTTP Protocol (read+write)
    fuseki:endpoint [
        fuseki:operation fuseki:query
    ] ;
    fuseki:endpoint [
        fuseki:operation fuseki:update
    ] ;
    fuseki:endpoint [
        fuseki:operation fuseki:gsp-rw
    ] ;

    # endpoint /dalia/query
    # SPARQL Query Language
    fuseki:endpoint [
        fuseki:name      "query" ;
        fuseki:operation fuseki:query
    ] ;

    # endpoint /dalia/sparql
    # SPARQL Query Language
    fuseki:endpoint [
        fuseki:name      "sparql" ;
        fuseki:operation fuseki:query
    ] ;

    # endpoint /dalia/get
    # SPARQL Graph Store HTTP Protocol (read)
    fuseki:endpoint [
        fuseki:name      "get" ;
        fuseki:operation fuseki:gsp-r
    ] ;

    # endpoint /dalia/update
    # SPARQL Update
    fuseki:endpoint [
        fuseki:name      "update" ;
        fuseki:operation fuseki:update
    ] ;

    # endpoint /dalia/data
    # SPARQL Graph Store HTTP Protocol (read+write)
    fuseki:endpoint [
        fuseki:name      "data" ;
        fuseki:operation fuseki:gsp-rw
    ] .

:text_dataset a text:TextDataset ;
    text:dataset :tdb2_dataset ;
    text:index   :indexLucene .

:tdb2_dataset a tdb2:DatasetTDB2 ;
    tdb2:location "/database/databases/dalia/tdb2" .

:indexLucene a text:TextIndexLucene ;
    text:directory <file:/database/databases/dalia/lucene> ;
    text:entityMap :entMap ;
    text:storeValues true ;
    text:propLists (
        [
            text:propListProp dt:learningResourceTexts ;
            text:props (
                dcterms:title
                dcterms:description
                schema:keywords
                schema:name
                schema:familyName
                schema:givenName
            )
        ]
        [
            text:propListProp dt:communityTexts ;
            text:props (
                dcterms:title
                dcterms:description
            )
        ]
    ) .

:entMap a text:EntityMap ;
    text:defaultField "dctermsTitle" ;
    text:entityField  "uri" ;
    text:uidField     "uid" ;
    text:langField    "lang" ;
    text:graphField   "graph" ;
    text:map (
        [
            text:field     "dctermsTitle" ;
            text:predicate dcterms:title
        ]
        [
            text:field     "dctermsDescription" ;
            text:predicate dcterms:description
        ]
        [
            text:field     "schemaKeywords" ;
            text:predicate schema:keywords
        ]
        [
            text:field     "schemaName" ;
            text:predicate schema:name
        ]
        [
            text:field     "schemaFamilyName" ;
            text:predicate schema:familyName
        ]
        [
            text:field     "schemaGivenName" ;
            text:predicate schema:givenName
        ]
    ) .