# Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0

@prefix rdfs:	  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rdf:      <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ja:       <http://jena.hpl.hp.com/2005/11/Assembler#> .
@prefix sdb:      <http://jena.hpl.hp.com/2007/sdb#> .

# For use with Fuseki
[] ja:loadClass "org.apache.jena.sdb.SDB" .
sdb:DatasetStore  rdfs:subClassOf  ja:RDFDataset .

<#dataset> rdf:type sdb:DatasetStore ;
    sdb:store <#store> .

<#store> rdf:type sdb:Store ;
##    sdb:layout         "layout2/index" ;
    sdb:layout         "layout2/hash" ;
    sdb:connection     <#conn> .

<#conn> rdf:type sdb:SDBConnection ;
##     sdb:sdbType        "h2:mem" ;
##     sdb:sdbName        "mem" ;

##     sdb:sdbType        "h2:file" ;
##     sdb:sdbName        "DB/H2" ;

     sdb:sdbHost        "localhost" ;
     sdb:sdbType        "derby" ;
     sdb:sdbName        "DB/derby" ;

##     ##    sdb:jdbcURL       "jdbc:mysql://localhost/test2-hash?useUnicode=true&characterEncoding=UTF-8" ;
##     sdb:sdbType       "MySQL" ;
##     sdb:sdbHost       "localhost" ;
##     sdb:sdbName       "SDB" ;

##     sdb:sdbType        "postgresql" ;
##     sdb:sdbHost        "localhost" ;
##     sdb:sdbName        "SDB" ;

##     sdb:sdbType        "MSSQLServerExpress" ;
##     sdb:sdbHost        "localhost" ;
##     sdb:sdbName        "test2-hash" ;

##     sdb:sdbType        "oracle" ;
##     sdb:sdbHost        "localhost:1521" ;
##     sdb:sdbName        "XE" ;       # Oracle SID
##     sdb:driver         "oracle.jdbc.driver.OracleDriver" ;

##     # With OracleXE, it can be useful to use the user/password
##     # to give multiple stores in the same installation.
##     sdb:sdbUser        "SDB" ;
##     sdb:sdbPassword    "password" ;

##     sdb:sdbType        "sap" ;
##     sdb:sdbHost        "localhost" ;
##     sdb:sdbName        "00" ;

    .
