<?php if (isset($_GET['idhash'])) { $userID = $_GET['idhash']; } else { $userID = $_POST['idhash']; } require 'bc-fourstore-php/FourStore/FourStore_StorePlus.php'; require 'bc-fourstore-php/FourStore/Namespace.php'; require 'shakespeare_utilities.php'; FourStore_Namespace::addW3CNamespace(); FourStore_Namespace::add('omb', 'http://purl.org/ontomedia/ext/common/being#'); FourStore_Namespace::add('ome', 'http://purl.org/ontomedia/core/expression#'); FourStore_Namespace::add('omj', 'http://purl.org/ontomedia/ext/events/travel#'); FourStore_Namespace::add('loc', 'http://signage.ecs.soton.ac.uk/ontologies/location#'); FourStore_Namespace::add('foaf', 'http://xmlns.com/foaf/0.1/'); $query = FourStore_Namespace::to_sparql(); $graphAuto = 'http://contextus.net/resource/midsum_night_dream/auto/'; $graphUser = '******' . $userID . '/'; $s = new FourStore_StorePlus('http://contextus.net:7000/sparql/'); $entity = array(); $type = "Character"; if (isset($_POST['gotoLoc'])) { $entityID = "location/" . $_POST['locNum']; $type = "Space"; } else { if (isset($_POST['gotoChar'])) { $entityID = "character/" . $_POST['charNum']; } else { $queryAuto1 = $query . "\n" . 'SELECT DISTINCT ?id WHERE { { GRAPH ?g {?id a omb:Character}} {GRAPH <' . $graphAuto . '> { ?id ?p ?o } } } ORDER BY ?id LIMIT 1' . "\n"; $rAuto = $s->query($queryAuto1);
<?php require 'bc-fourstore-php/FourStore/FourStore_StorePlus.php'; require 'bc-fourstore-php/FourStore/Namespace.php'; require 'shakespeare_utilities.php'; $userID = getUserID(); $propertyList = loadProperties(); $classList = loadClasses(); FourStore_Namespace::addW3CNamespace(); //FourStore_Namespace::add('loc','http://signage.ecs.soton.ac.uk/ontologies/location#'); FourStore_Namespace::add('loc', 'http://purl.org/ontomedia/core/space#'); FourStore_Namespace::add('ome', 'http://purl.org/ontomedia/core/expression#'); $query = FourStore_Namespace::to_sparql(); $graphAuto = 'http://contextus.net/resource/midsum_night_dream/auto/'; $graphUser = '******' . $userID . '/'; $queryAuto = $query . "\nSELECT ?s ?p ?o\nFROM <" . $graphAuto . ">\n" . 'WHERE { ?s a loc:Space ; ?p ?o . FILTER (?p = rdfs:label || ?p = ome:is-shadow-of || ?p = rdf:type || ?p = ome:is || ?p = loc:is-part-of || ?p = loc:adjacent-to) }' . "\n"; $queryUser = $query . "\nSELECT ?s ?p ?o\nFROM <" . $graphUser . ">\n" . 'WHERE { ?s a loc:Space ; ?p ?o . FILTER (?p = rdfs:label || ?p = ome:is-shadow-of || ?p = rdf:type || ?p = ome:is || ?p = loc:is-part-of || ?p = loc:adjacent-to) }' . "\n"; $s = new FourStore_StorePlus('http://contextus.net:7000/sparql/'); $graph = array(); $autoLocsToBeIgnored = array(); $rUser = $s->query($queryUser); foreach ($rUser['result']['rows'] as $result) { addTripleToGraph($graph, makeTriple($result['s'], $result['p'], $result['o'])); if ($result['p'] == 'http://purl.org/ontomedia/core/expression#is-shadow-of') { $autoLocsToBeIgnored[] = $result['o']; } } $rAuto = $s->query($queryAuto); foreach ($rAuto['result']['rows'] as $result) { if (!in_array($result['s'], $autoLocsToBeIgnored)) { addTripleToGraph($graph, makeTriple($result['s'], $result['p'], $result['o']));