|
From: <cw...@us...> - 2007-06-21 15:52:57
|
Revision: 463
http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=463&view=rev
Author: cweiske
Date: 2007-06-21 08:52:53 -0700 (Thu, 21 Jun 2007)
Log Message:
-----------
Some Sparql parser tests for nested queries and the querysimplifier
Modified Paths:
--------------
trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php
trunk/rdfapi-php/test/unit/Sparql/SparqlTestHelper.php
trunk/rdfapi-php/test/unit/Sparql/SparqlTests_test.php
Added Paths:
-----------
trunk/rdfapi-php/test/unit/Sparql/casesParserFilter.php
trunk/rdfapi-php/test/unit/Sparql/casesParserNested.php
trunk/rdfapi-php/test/unit/sparqlParserTests.php
Removed Paths:
-------------
trunk/rdfapi-php/test/unit/Sparql/filterCases.php
Modified: trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php 2007-06-21 14:48:58 UTC (rev 462)
+++ trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php 2007-06-21 15:52:53 UTC (rev 463)
@@ -1,7 +1,10 @@
<?php
require_once dirname(__FILE__) . '/../../config.php';
+require_once dirname(__FILE__) . '/casesParserFilter.php';
+require_once dirname(__FILE__) . '/casesParserNested.php';
+require_once dirname(__FILE__) . '/SparqlTestHelper.php';
require_once RDFAPI_INCLUDE_DIR . 'sparql/SparqlParser.php';
-require_once dirname(__FILE__) . '/filterCases.php';
+require_once RDFAPI_INCLUDE_DIR . 'sparql/SparqlEngineDb/QuerySimplifier.php';
/**
@@ -9,6 +12,57 @@
*/
class testSparqlParserTests extends UnitTestCase
{
+ /**
+ * Tests if Query::getLanguageTag() works correctly
+ */
+ function testQueryGetLanguageTag()
+ {
+ $this->assertEqual('en', Query::getLanguageTag('?x@en'));
+ $this->assertEqual('en', Query::getLanguageTag('?x@en^^xsd:integer'));
+ $this->assertEqual('en', Query::getLanguageTag('?x^^xsd:integer@en'));
+ $this->assertEqual('en_US', Query::getLanguageTag('?x@en_US'));
+ }//function testQueryGetLanguageTag()
+
+
+
+ /**
+ * Tests if Query::getDatatype() works correctly
+ */
+ function testQueryGetDatatype()
+ {
+ $q = new Query();
+ $q->addPrefix('rdfs', 'http://www.w3.org/2000/01/rdf-schema#');
+ $q->addPrefix('rdf' , 'http://www.w3.org/1999/02/22-rdf-syntax-ns#');
+ $q->addPrefix('xsd' , 'http://www.w3.org/2001/XMLSchema#');
+
+ $this->assertNull($q->getDatatype('?name'));
+ $this->assertNull($q->getDatatype('?name@en'));
+ $this->assertEqual(
+ 'http://www.w3.org/2001/XMLSchema#integer',
+ $q->getDatatype('?name^^xsd:integer')
+ );
+ $this->assertEqual(
+ 'http://www.w3.org/2001/XMLSchema#integer',
+ $q->getDatatype('?name^^<http://www.w3.org/2001/XMLSchema#integer>')
+ );
+ }//function testQueryGetDatatype()
+
+
+
+ function testQueryGetFullUri()
+ {
+ $q = new Query();
+ $q->addPrefix('rdfs', 'http://www.w3.org/2000/01/rdf-schema#');
+ $q->addPrefix('rdf' , 'http://www.w3.org/1999/02/22-rdf-syntax-ns#');
+ $q->addPrefix('xsd' , 'http://www.w3.org/2001/XMLSchema#');
+
+ $this->assertEqual('http://www.w3.org/2001/XMLSchema#integer', $q->getFullUri('xsd:integer'));
+ $this->assertFalse($q->getFullUri('yyy:integer'));
+ $this->assertFalse($q->getFullUri('integer'));
+ }//function testQueryGetFullUri()
+
+
+
function testEdgeCases()
{
$query = <<<EOT
@@ -33,7 +87,7 @@
EOT;
$p = new SparqlParser();
$q = $p->parse($query);
- }
+ }//function testEdgeCases()
@@ -47,7 +101,7 @@
$q = $p->parse($query);
$res = $q->getResultPart();
- $constraint = $res[0]->getConstraint();
+ $constraint = $res[0]->getConstraints();
$tree = $constraint[0]->getTree();
self::removeLevel($tree);
@@ -55,92 +109,29 @@
if ($result != $tree) {
var_dump($tree);
echo '----------------------' . "\n" . $query . "\n";
- echo "\n!!!!!!!! " . self::renderTree($tree) . "\n\n";
+ echo "\n!!!!!!!! " . SparqlTestHelper::renderTree($tree) . "\n\n";
}
}
- }
+ }//function testParseFilter()
- /**
- * Tests if Query::getLanguageTag() works correctly
- */
- function testQueryGetLanguageTag()
- {
- $this->assertEqual('en', Query::getLanguageTag('?x@en'));
- $this->assertEqual('en', Query::getLanguageTag('?x@en^^xsd:integer'));
- $this->assertEqual('en', Query::getLanguageTag('?x^^xsd:integer@en'));
- $this->assertEqual('en_US', Query::getLanguageTag('?x@en_US'));
- }
- /**
- * Tests if Query::getDatatype() works correctly
- */
- function testQueryGetDatatype()
+ function testParseNested()
{
- $q = new Query();
- $q->addPrefix('rdfs', 'http://www.w3.org/2000/01/rdf-schema#');
- $q->addPrefix('rdf' , 'http://www.w3.org/1999/02/22-rdf-syntax-ns#');
- $q->addPrefix('xsd' , 'http://www.w3.org/2001/XMLSchema#');
+ echo "<b>Nested queries tests</b><br/>\n";
+ foreach ($GLOBALS['testSparqlParserTestsNested'] as $arNestedTest) {
+ list($query, $strExpected) = $arNestedTest;
- $this->assertNull($q->getDatatype('?name'));
- $this->assertNull($q->getDatatype('?name@en'));
- $this->assertEqual(
- 'http://www.w3.org/2001/XMLSchema#integer',
- $q->getDatatype('?name^^xsd:integer')
- );
- $this->assertEqual(
- 'http://www.w3.org/2001/XMLSchema#integer',
- $q->getDatatype('?name^^<http://www.w3.org/2001/XMLSchema#integer>')
- );
- }
+ $p = new SparqlParser();
+ $q = $p->parse($query);
+ $qs = new SparqlEngineDb_QuerySimplifier();
+ $qs->simplify($q);
- function testQueryGetFullUri()
- {
- $q = new Query();
- $q->addPrefix('rdfs', 'http://www.w3.org/2000/01/rdf-schema#');
- $q->addPrefix('rdf' , 'http://www.w3.org/1999/02/22-rdf-syntax-ns#');
- $q->addPrefix('xsd' , 'http://www.w3.org/2001/XMLSchema#');
-
- $this->assertEqual('http://www.w3.org/2001/XMLSchema#integer', $q->getFullUri('xsd:integer'));
- $this->assertFalse($q->getFullUri('yyy:integer'));
- $this->assertFalse($q->getFullUri('integer'));
- }
-
-
-
- /**
- * Helper method that creates a sparql filter string from the
- * given filter tree.
- */
- static function renderTree($tree)
- {
- if (!is_array($tree) || !isset($tree['type'])) {
- return 'Parser is broken';
+ $strRendResult = SparqlTestHelper::renderResult($q);
+ $this->assertEqual($strExpected, $strRendResult);
}
- $negation = isset($tree['negated']) ? '!' : '';
- switch ($tree['type']) {
- case 'equation':
- return $negation . '(' . self::renderTree($tree['operand1'])
- . ' ' . $tree['operator'] . ' '
- . self::renderTree($tree['operand2']) . ')';
- case 'value':
- return $negation . $tree['value'];
- case 'function':
- return $negation . $tree['name'] . '('
- . implode(
- ', ',
- array_map(
- array('self', 'renderTree'),
- $tree['parameter']
- )
- ) . ')';
- default:
- var_dump($tree);
- throw new Exception('Unsupported tree type: ' . $tree['type']);
- break;
- }
- }//static function renderTree($tree)
+ }//function testParseNested()
@@ -157,6 +148,7 @@
self::removeLevel($tree['operand1']);
self::removeLevel($tree['operand2']);
}
- }
-}
+ }//static function removeLevel(&$tree)
+
+}//class testSparqlParserTests extends UnitTestCase
?>
\ No newline at end of file
Modified: trunk/rdfapi-php/test/unit/Sparql/SparqlTestHelper.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/SparqlTestHelper.php 2007-06-21 14:48:58 UTC (rev 462)
+++ trunk/rdfapi-php/test/unit/Sparql/SparqlTestHelper.php 2007-06-21 15:52:53 UTC (rev 463)
@@ -67,5 +67,66 @@
return true;
}//public static resultCheckSort($table, $result)
+
+
+ /**
+ * Helper method that creates a sparql filter string from the
+ * given filter tree.
+ */
+ static function renderTree($tree)
+ {
+ if (!is_array($tree) || !isset($tree['type'])) {
+ return 'Parser is broken';
+ }
+ $negation = isset($tree['negated']) ? '!' : '';
+ switch ($tree['type']) {
+ case 'equation':
+ return $negation . '(' . self::renderTree($tree['operand1'])
+ . ' ' . $tree['operator'] . ' '
+ . self::renderTree($tree['operand2']) . ')';
+ case 'value':
+ return $negation . $tree['value'];
+ case 'function':
+ return $negation . $tree['name'] . '('
+ . implode(
+ ', ',
+ array_map(
+ array('self', 'renderTree'),
+ $tree['parameter']
+ )
+ ) . ')';
+ default:
+ var_dump($tree);
+ throw new Exception('Unsupported tree type: ' . $tree['type']);
+ break;
+ }
+ }//static function renderTree($tree)
+
+
+
+ /**
+ * renders the result part of a query object as a string
+ */
+ static function renderResult(Query $query)
+ {
+ $s = '';
+ foreach ($query->getResultPart() as $gp) {
+ //dumpGp:
+ $s .= 'GP #' . $gp->getId();
+ if ($gp->getOptional() !== null) $s .= ' optionalTo(' . $gp->getOptional() . ')';
+ if ($gp->getUnion() !== null) $s .= ' unionWith(' . $gp->getUnion() . ')';
+ if ($gp->getSubpatternOf() !== null) $s .= ' subpatternOf(' . $gp->getSubpatternOf() . ')';
+ if (count($gp->getConstraints()) > 0)$s .= ' filter(' . count($gp->getConstraints()) . ')';
+ $s .= "\n";
+ if ($gp->getTriplePatterns()) {
+ foreach ($gp->getTriplePatterns() as $tp) {
+ $s .= ' ' . $tp->getSubject() . ', ' . $tp->getPredicate()
+ . ', ' . $tp->getObject() . "\n";
+ }
+ }
+ }
+ return $s;
+ }//static function renderResult($query)
+
}//class SparqlTestHelper
?>
\ No newline at end of file
Modified: trunk/rdfapi-php/test/unit/Sparql/SparqlTests_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/SparqlTests_test.php 2007-06-21 14:48:58 UTC (rev 462)
+++ trunk/rdfapi-php/test/unit/Sparql/SparqlTests_test.php 2007-06-21 15:52:53 UTC (rev 463)
@@ -210,7 +210,6 @@
function testFilterTestcases()
{
foreach($_SESSION['sparql_filter_tests'] as $name) {
-echo $name['query'] . "\n";
$_SESSION['test']= $name['query']." test";
$parser = new SparqlParser();
$graphset = ModelFactory::getDatasetMem('Dataset1');
@@ -222,7 +221,11 @@
$q = $parser->parse($qs);
$engine = SparqlEngine::factory();
$t = $engine->queryModel($graphset, $q, false);
- $this->assertTrue(SparqlTestHelper::resultCheck($t,$result));
+ $bOk = SparqlTestHelper::resultCheck($t,$result);
+ $this->assertTrue($bOk);
+ if (!$bOk) {
+ echo $name['query'] . "\n";
+ }
}
}
@@ -231,7 +234,6 @@
function testArqTestcases()
{
foreach($_SESSION['sparql_arq_tests'] as $name) {
-echo $name['query'] . "\n";
$_SESSION['test']= $name['query']." test";
$parser = new SparqlParser();
$graphset = ModelFactory::getDatasetMem('Dataset1');
@@ -243,10 +245,15 @@
$q = $parser->parse($qs);
$engine = SparqlEngine::factory();
$t = $engine->queryModel($graphset, $q,false);
- if($t instanceof MemModel)
- $this->assertTrue($t->equals($result));
- else
- $this->assertTrue(SparqlTestHelper::resultCheck($t,$result));
+ if ($t instanceof MemModel) {
+ $bOk = $t->equals($result);
+ } else {
+ $bOk = SparqlTestHelper::resultCheck($t,$result);
+ }
+ $this->assertTrue($bOk);
+ if (!$bOk) {
+ echo $name['query'] . "\n";
+ }
}
}
}
Copied: trunk/rdfapi-php/test/unit/Sparql/casesParserFilter.php (from rev 447, trunk/rdfapi-php/test/unit/Sparql/filterCases.php)
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/casesParserFilter.php (rev 0)
+++ trunk/rdfapi-php/test/unit/Sparql/casesParserFilter.php 2007-06-21 15:52:53 UTC (rev 463)
@@ -0,0 +1,406 @@
+<?php
+/**
+* Filter parser tests
+*/
+$GLOBALS['testSparqlParserTestsFilter'] = array(
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+SELECT ?s, ?o
+{ ?s foaf:name ?o . FILTER (?s = ?o)}
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '=',
+ 'operand1' => array('type' => 'value', 'value' => '?s', 'quoted' => false),
+ 'operand2' => array('type' => 'value', 'value' => '?o', 'quoted' => false)
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+SELECT ?s, ?o
+{ ?s foaf:name ?o . FILTER (! bound(?s))}
+EOT
+,
+ array(
+ 'negated' => true,
+ 'type' => 'function',
+ 'name' => 'bound',
+ 'parameter' => array(
+ array('type' => 'value', 'value' => '?s', 'quoted' => false)
+ ),
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+SELECT ?s, ?o
+{ ?s foaf:name ?o . FILTER(?date < xsd:dateTime("2005-01-01T00:00:00Z"))}
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '<',
+ 'operand1' => array('type' => 'value', 'value' => '?date', 'quoted' => false),
+ 'operand2' => array(
+ 'type' => 'function',
+ 'name' => 'xsd:dateTime',
+ 'parameter' => array(
+ array(
+ 'type' => 'value',
+ 'value' => '2005-01-01T00:00:00Z',
+ 'quoted' => true
+ )
+ )
+ )
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+SELECT ?mbox1
+{ ?name1 foaf:mbox ?mbox1 . FILTER ( (?mbox1 = ?mbox2) && (?name1 != ?name2) )}
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '&&',
+ 'operand1' => array(
+ 'type' => 'equation',
+ 'operator' => '=',
+ 'operand1' => array('type' => 'value', 'value' => '?mbox1', 'quoted' => false),
+ 'operand2' => array('type' => 'value', 'value' => '?mbox2', 'quoted' => false)
+ ),
+ 'operand2' => array(
+ 'type' => 'equation',
+ 'operator' => '!=',
+ 'operand1' => array('type' => 'value', 'value' => '?name1', 'quoted' => false),
+ 'operand2' => array('type' => 'value', 'value' => '?name2', 'quoted' => false)
+ )
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+SELECT ?mbox1
+{ ?name1 foaf:mbox ?mbox1 . FILTER ( ?mbox1 = ?mbox2 && ?name1 != ?name2 )}
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '&&',
+ 'operand1' => array(
+ 'type' => 'equation',
+ 'operator' => '=',
+ 'operand1' => array('type' => 'value', 'value' => '?mbox1', 'quoted' => false),
+ 'operand2' => array('type' => 'value', 'value' => '?mbox2', 'quoted' => false)
+ ),
+ 'operand2' => array(
+ 'type' => 'equation',
+ 'operator' => '!=',
+ 'operand1' => array('type' => 'value', 'value' => '?name1', 'quoted' => false),
+ 'operand2' => array('type' => 'value', 'value' => '?name2', 'quoted' => false)
+ )
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+SELECT ?mbox1
+{ ?name1 foaf:mbox ?mbox1 . FILTER regex(str(?mbox), "@work.example")}
+EOT
+,
+ array(
+ 'type' => 'function',
+ 'name' => 'regex',
+ 'parameter' => array(
+ array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array('type' => 'value', 'value' => '?mbox', 'quoted' => false)
+ )
+ ),
+ array(
+ 'type' => 'value',
+ 'value' => '@work.example',
+ 'quoted' => true
+ )
+ ),
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+SELECT ?mbox1
+{ ?name1 foaf:mbox ?mbox1 . FILTER str(str(str(str(?mbox))))}
+EOT
+,
+ array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'value',
+ 'value' => '?mbox',
+ 'quoted' => false
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+PREFIX : <http://example.org/things#>
+SELECT ?x
+WHERE
+ { ?x :p ?v .
+ FILTER (?v = 1.0)
+ }
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '=',
+ 'operand1' => array('type' => 'value', 'value' => '?v', 'quoted' => false),
+ 'operand2' => array('type' => 'value', 'value' => '1.0', 'quoted' => false),
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+PREFIX : <http://example.org/ns#>
+SELECT ?a
+WHERE
+ { ?a :p ?v .
+ FILTER (?v) .
+ }
+EOT
+,
+ array(
+ 'type' => 'value',
+ 'value' => '?v',
+ 'quoted' => false
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX a: <http://www.w3.org/2000/10/annotation-ns#>
+PREFIX dc: <http://purl.org/dc/elements/1.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+
+SELECT ?annot
+WHERE { ?annot a:annotates <http://www.w3.org/TR/rdf-sparql-query/> .
+ ?annot dc:created ?date .
+ FILTER ( xsd:dateTime(?date) < xsd:dateTime("2005-01-01T00:00:00Z") )
+ }
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '<',
+ 'operand1' => array(
+ 'type' => 'function',
+ 'name' => 'xsd:dateTime',
+ 'parameter' => array(
+ array('type' => 'value', 'value' => '?date', 'quoted' => false),
+ )
+ ),
+ 'operand2' => array(
+ 'type' => 'function',
+ 'name' => 'xsd:dateTime',
+ 'parameter' => array(
+ array(
+ 'type' => 'value',
+ 'value' => '2005-01-01T00:00:00Z',
+ 'quoted' => true
+ )
+ )
+ )
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+
+SELECT ?p, ?o
+ { ?s ?p ?o . FILTER (!!!isLiteral(?o)). }
+EOT
+,
+ array(
+ 'negated' => true,
+ 'type' => 'function',
+ 'name' => 'isLiteral',
+ 'parameter' => array(
+ array('type' => 'value', 'value' => '?o', 'quoted' => false)
+ ),
+ )
+ ),
+
+ array(
+<<<EOT
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+PREFIX : <http://example.org/ns#>
+SELECT ?a
+WHERE { ?a :p ?v . FILTER ( ! ?v ) . }
+EOT
+,
+ array(
+ 'negated' => true,
+ 'type' => 'value',
+ 'value' => '?v',
+ 'quoted' => false
+ )
+ ),
+/**/
+ array(
+<<<EOT
+PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
+PREFIX : <http://example.org/ns#>
+SELECT ?a
+WHERE { ?a :p ?v . FILTER ("true"^^xsd:boolean && ?v) .}
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '&&',
+ 'operand1' => array(
+ 'type' => 'value',
+ 'value' => 'true',
+ 'quoted' => true,
+ 'datatype' => 'http://www.w3.org/2001/XMLSchema#boolean'
+ ),
+ 'operand2' => array('type' => 'value', 'value' => '?v', 'quoted' => false),
+ )
+ ),
+ array(
+<<<EOT
+SELECT *
+WHERE
+ { ?x ?y ?z .
+ FILTER ( str(?z) = str("value"@en) ) .
+ }
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '=',
+ 'operand1' => array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'value',
+ 'value' => '?z',
+ 'quoted' => false
+ )
+ )
+ ),
+ 'operand2' => array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'value',
+ 'value' => 'value',
+ 'quoted' => true,
+ 'language' => 'en'
+ )
+ )
+ )
+ )
+ ),
+ array(
+<<<EOT
+SELECT * WHERE
+ { ?x ?y ?z .
+ FILTER ( str(?x) = str(<http://rdf.hp.com/r-1>) ) .
+ }
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '=',
+ 'operand1' => array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'value',
+ 'value' => '?x',
+ 'quoted' => false
+ )
+ )
+ ),
+ 'operand2' => array(
+ 'type' => 'function',
+ 'name' => 'str',
+ 'parameter' => array(
+ array(
+ 'type' => 'value',
+ 'value' => '<http://rdf.hp.com/r-1>',
+ 'quoted' => false
+ )
+ )
+ )
+ )
+ ),
+ array(
+<<<EOT
+SELECT DISTINCT ?Res
+WHERE {
+?Res rdf:type ?_v1 FILTER (?Res = <ldap://ldap.seerose.biz/dc=biz,dc=seerose,ou=People>)
+}
+ORDER BY ?Res
+EOT
+,
+ array(
+ 'type' => 'equation',
+ 'operator' => '=',
+ 'operand1' => array('type' => 'value', 'value' => '?Res', 'quoted' => false),
+ 'operand2' => array(
+ 'type' => 'value',
+ 'value' => '<ldap://ldap.seerose.biz/dc=biz,dc=seerose,ou=People>',
+ 'quoted'=> false
+ )
+ )
+ ),
+);
+?>
\ No newline at end of file
Added: trunk/rdfapi-php/test/unit/Sparql/casesParserNested.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/casesParserNested.php (rev 0)
+++ trunk/rdfapi-php/test/unit/Sparql/casesParserNested.php 2007-06-21 15:52:53 UTC (rev 463)
@@ -0,0 +1,146 @@
+<?php
+/**
+* Nested queries parser test
+* While the result format might seem a bit strange, it helps
+* us to debug the results easily and spot what doesn't work at which place.
+*
+* @author Christian Weiske <cw...@cw...>
+*/
+$GLOBALS['testSparqlParserTestsNested'] = array(
+ array(<<<EOT
+SELECT ?name ?mbox
+WHERE
+{
+ ?a ?b ?c
+ {
+ {
+ ?g ?h ?i .
+ {
+ {?person <some://typ/e> 'asd'}
+ UNION
+ {?person3 <some://typ/es2> 'three'}
+ }
+ }
+ UNION
+ {?person2 <some://typ/es> '2'}
+ }
+ ?d ?e ?f
+}
+EOT
+ , <<<EOT
+GP #0
+ ?a, ?b, ?c
+ ?d, ?e, ?f
+ ?person2, Resource("some://typ/es"), Literal("2")
+GP #2 unionWith(0)
+ ?a, ?b, ?c
+ ?d, ?e, ?f
+ ?g, ?h, ?i
+ ?person, Resource("some://typ/e"), Literal("asd")
+GP #6 unionWith(0)
+ ?a, ?b, ?c
+ ?d, ?e, ?f
+ ?g, ?h, ?i
+ ?person3, Resource("some://typ/es2"), Literal("three")
+
+EOT
+ ),
+
+ /////next\\\\\
+ array( <<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+PREFIX rdfs: <http://www.w3.org/1999/02/22-rdf-syntax-nss#>
+SELECT DISTINCT ?Res ?Attr ?Val
+WHERE
+{
+ {
+ ?Res rdf:type ?_v1 .
+ {
+ ?Res foaf:name ?_v2 FILTER regex(?_v2,"^Alexander Loeser$", "i")
+ }
+ UNION
+ {
+ ?Res rdfs:label ?_v3 FILTER regex(?_v3,"^Alexander Loeser$", "i")
+ }
+ }
+ ?Res ?Attr ?Val
+}
+ORDER BY ?Res
+EOT
+ , <<<EOT
+GP #0 filter(1)
+ ?Res, ?Attr, ?Val
+ ?Res, Resource("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"), ?_v1
+ ?Res, Resource("http://www.w3.org/1999/02/22-rdf-syntax-nss#label"), ?_v3
+GP #1 unionWith(0) filter(1)
+ ?Res, ?Attr, ?Val
+ ?Res, Resource("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"), ?_v1
+ ?Res, Resource("http://xmlns.com/foaf/0.1/name"), ?_v2
+
+EOT
+ ),
+
+ /////next\\\\\
+ array( <<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
+
+SELECT ?name ?mbox
+WHERE
+ {
+ { ?person rdf:type foaf:Person } .
+ OPTIONAL { ?person foaf:name ?name } .
+ OPTIONAL {?person foaf:mbox ?mbox} .
+ }
+ UNION
+ {
+ { ?person2 rdf:kind foaf:Person } .
+ OPTIONAL {?person2 <asdf> ?mbox. ?person2 rdf:laughs ?atyou } .
+ }
+EOT
+ , <<<EOT
+GP #1
+ ?person, Resource("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"), Resource("http://xmlns.com/foaf/0.1/Person")
+GP #2 optionalTo(1)
+ ?person, Resource("http://xmlns.com/foaf/0.1/name"), ?name
+GP #3 optionalTo(1)
+ ?person, Resource("http://xmlns.com/foaf/0.1/mbox"), ?mbox
+
+EOT
+ ),
+
+ /////next\\\\\
+ array( <<<EOT
+PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+SELECT DISTINCT ?value
+WHERE {
+ {?s ?p ?value . FILTER (isIRI(?value)). OPTIONAL { ?s ?p ?value} }
+UNION {?s ?value ?o . FILTER (isIRI(?value)) }
+UNION {?value ?p ?o . FILTER (isIRI(?value)) }
+ }
+EOT
+ , <<<EOT
+GP #1 filter(1)
+ ?s, ?p, ?value
+GP #2 optionalTo(1)
+ ?s, ?p, ?value
+GP #3 unionWith(1) filter(1)
+ ?s, ?value, ?o
+GP #4 unionWith(3) filter(1)
+ ?value, ?p, ?o
+
+EOT
+ ),
+
+/*
+
+ /////next\\\\\
+ array( <<<EOT
+EOT
+ , <<<EOT
+EOT
+ ),
+*/
+);
+?>
\ No newline at end of file
Deleted: trunk/rdfapi-php/test/unit/Sparql/filterCases.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/filterCases.php 2007-06-21 14:48:58 UTC (rev 462)
+++ trunk/rdfapi-php/test/unit/Sparql/filterCases.php 2007-06-21 15:52:53 UTC (rev 463)
@@ -1,406 +0,0 @@
-<?php
-/**
-* Filter parser tests
-*/
-$GLOBALS['testSparqlParserTestsFilter'] = array(
- array(
-<<<EOT
-PREFIX foaf: <http://xmlns.com/foaf/0.1/>
-SELECT ?s, ?o
-{ ?s foaf:name ?o . FILTER (?s = ?o)}
-EOT
-,
- array(
- 'type' => 'equation',
- 'operator' => '=',
- 'operand1' => array('type' => 'value', 'value' => '?s', 'quoted' => false),
- 'operand2' => array('type' => 'value', 'value' => '?o', 'quoted' => false)
- )
- ),
-
- array(
-<<<EOT
-PREFIX foaf: <http://xmlns.com/foaf/0.1/>
-PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
-SELECT ?s, ?o
-{ ?s foaf:name ?o . FILTER (! bound(?s))}
-EOT
-,
- array(
- 'negated' => true,
- 't...
[truncated message content] |
|
From: <cw...@us...> - 2007-08-13 14:12:39
|
Revision: 513
http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=513&view=rev
Author: cweiske
Date: 2007-08-13 07:12:38 -0700 (Mon, 13 Aug 2007)
Log Message:
-----------
Script to run any unit tests from cmdline.
Ability to select different output renderer
Modified Paths:
--------------
trunk/rdfapi-php/test/unit/EarlReporter.php
trunk/rdfapi-php/test/unit/sparqlParserTests.php
Added Paths:
-----------
trunk/rdfapi-php/test/unit/runAnyTest.php
Modified: trunk/rdfapi-php/test/unit/EarlReporter.php
===================================================================
--- trunk/rdfapi-php/test/unit/EarlReporter.php 2007-08-13 13:51:30 UTC (rev 512)
+++ trunk/rdfapi-php/test/unit/EarlReporter.php 2007-08-13 14:12:38 UTC (rev 513)
@@ -6,6 +6,7 @@
* @see http://www.w3.org/2001/sw/DataAccess/tests/earl
*/
require_once SIMPLETEST_INCLUDE_DIR . 'simpletest.php';
+require_once SIMPLETEST_INCLUDE_DIR . 'reporter.php';
require_once RDFAPI_INCLUDE_DIR . 'model/MemModel.php';
require_once RDFAPI_INCLUDE_DIR . 'syntax/N3Serializer.php';
Added: trunk/rdfapi-php/test/unit/runAnyTest.php
===================================================================
--- trunk/rdfapi-php/test/unit/runAnyTest.php (rev 0)
+++ trunk/rdfapi-php/test/unit/runAnyTest.php 2007-08-13 14:12:38 UTC (rev 513)
@@ -0,0 +1,58 @@
+<?php
+/**
+* Executes any given simpletest case.
+* Simply pass the filename
+*/
+if (!@include_once(dirname(__FILE__) . '/../config.php')) {
+ die('Make a copy of test/config.php.dist, change it and save it as test/config.php');
+}
+
+if ($argc <= 1 || $argv[1] == '--help') {
+ echo <<<EOT
+Run any simpletest files.
+ Usage: php runAnyTest.php [--earl] file(s)
+
+ --earl Generate report in EARL format
+ --help Show this help screen
+
+
+EOT;
+ exit(1);
+}
+
+$files = array();
+$reportClass = 'TextReporter';
+array_shift($argv);
+
+foreach ($argv as $option) {
+ if ($option == '--earl') {
+ require_once dirname(__FILE__) . '/EarlReporter.php';
+ $reportClass = 'EarlReporter';
+ } else {
+ //file?
+ if (!file_exists($option)) {
+ echo "File $option does not exist\n";
+ exit(2);
+ }
+ $files[] = $option;
+ }
+}
+
+require_once SIMPLETEST_INCLUDE_DIR . 'unit_tester.php';
+require_once SIMPLETEST_INCLUDE_DIR . 'reporter.php';
+require_once 'show_passes.php';
+require_once RDFAPI_INCLUDE_DIR . 'RdfAPI.php';
+
+$_SESSION['passes'] = 0;
+$_SESSION['fails'] = 0;
+
+$test_sparql = new GroupTest('some RDF API for PHP tests');
+foreach ($files as $file) {
+ $test_sparql->addTestFile($file);
+}
+
+//$test_sparql->run(new ShowPasses());
+$test_sparql->run(new $reportClass());
+
+
+?>
\ No newline at end of file
Modified: trunk/rdfapi-php/test/unit/sparqlParserTests.php
===================================================================
--- trunk/rdfapi-php/test/unit/sparqlParserTests.php 2007-08-13 13:51:30 UTC (rev 512)
+++ trunk/rdfapi-php/test/unit/sparqlParserTests.php 2007-08-13 14:12:38 UTC (rev 513)
@@ -6,7 +6,6 @@
require_once SIMPLETEST_INCLUDE_DIR . 'unit_tester.php';
require_once SIMPLETEST_INCLUDE_DIR . 'reporter.php';
-require_once dirname(__FILE__) . '/EarlReporter.php';
require_once 'show_passes.php';
require(RDFAPI_INCLUDE_DIR . 'RdfAPI.php');
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cw...@us...> - 2007-08-13 15:43:15
|
Revision: 514
http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=514&view=rev
Author: cweiske
Date: 2007-08-13 08:17:42 -0700 (Mon, 13 Aug 2007)
Log Message:
-----------
Updating dawg2 tests
Earl reporting works now.
Modified Paths:
--------------
trunk/rdfapi-php/test/unit/EarlReporter.php
trunk/rdfapi-php/test/unit/Sparql/Dawg2Helper.php
trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php
trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php
trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php
Modified: trunk/rdfapi-php/test/unit/EarlReporter.php
===================================================================
--- trunk/rdfapi-php/test/unit/EarlReporter.php 2007-08-13 14:12:38 UTC (rev 513)
+++ trunk/rdfapi-php/test/unit/EarlReporter.php 2007-08-13 15:17:42 UTC (rev 514)
@@ -215,14 +215,6 @@
new Resource($this->currentTestName)
));
-/*
- [ a earl:Assertion;
- earl:assertedBy _8:chime;
- earl:result [ a earl:TestResult;
- earl:outcome earl:pass];
- earl:subject <http://rdflib.net>;
- earl:test _7:dawg-graph-02].
-*/
$this->currentTestName = null;
}//function addTest($bPass)
Modified: trunk/rdfapi-php/test/unit/Sparql/Dawg2Helper.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/Dawg2Helper.php 2007-08-13 14:12:38 UTC (rev 513)
+++ trunk/rdfapi-php/test/unit/Sparql/Dawg2Helper.php 2007-08-13 15:17:42 UTC (rev 514)
@@ -115,7 +115,7 @@
'PREFIX mf: <http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#>
PREFIX qt: <http://www.w3.org/2001/sw/DataAccess/tests/test-query#>
PREFIX dawgt: <http://www.w3.org/2001/sw/DataAccess/tests/test-dawg#>
- SELECT ?name ?queryFile ?dataFile ?resultFile WHERE {
+ SELECT ?test ?name ?queryFile ?dataFile ?resultFile WHERE {
?test rdf:type mf:QueryEvaluationTest.
?test mf:name ?name.
?test dawgt:approval dawgt:Approved.
@@ -128,6 +128,7 @@
$dirname = dirname($strCollectionFile) . '/';
$arTests = array();
+ $prefix = self::getPrefix($strCollectionFile);
//this is a bug in SparqlEngine and should be fixed
if ($res === false) {
@@ -135,11 +136,16 @@
}
foreach ($res as $test) {
+ $name = $test['?test']->uri;
+ if (substr($name, 0, 7) !== 'http://') {
+ $name = $prefix . $name;
+ }
$arTests[] = array(
- 'title' => $test['?name']->label,
- 'data' => $dirname . $test['?dataFile']->uri,
- 'query' => $dirname . $test['?queryFile']->uri,
- 'result' => $dirname . $test['?resultFile']->uri,
+ 'earl:name' => $name,
+ 'title' => $test['?name']->label,
+ 'data' => $dirname . $test['?dataFile']->uri,
+ 'query' => $dirname . $test['?queryFile']->uri,
+ 'result' => $dirname . $test['?resultFile']->uri,
);
}
@@ -154,7 +160,7 @@
'PREFIX mf: <http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#>
PREFIX qt: <http://www.w3.org/2001/sw/DataAccess/tests/test-query#>
PREFIX dawgt: <http://www.w3.org/2001/sw/DataAccess/tests/test-dawg#>
- SELECT ?name ?queryFile ?type WHERE {
+ SELECT ?test ?name ?queryFile ?type WHERE {
?test rdf:type ?type.
?test mf:name ?name.
?test dawgt:approval dawgt:Approved.
@@ -165,6 +171,7 @@
$dirname = dirname($strCollectionFile) . '/';
$arTests = array();
+ $prefix = self::getPrefix($strCollectionFile);
//this is a bug in SparqlEngine and should be fixed
if ($res === false) {
@@ -176,10 +183,15 @@
} else {
$type = 'syntax-negative';
}
+ $name = $test['?test']->uri;
+ if (substr($name, 0, 7) !== 'http://') {
+ $name = $prefix . $name;
+ }
$arTests[] = array(
- 'title' => $test['?name']->label,
- 'query' => $dirname . $test['?queryFile']->uri,
- 'type' => $type
+ 'earl:name' => $name,
+ 'title' => $test['?name']->label,
+ 'query' => $dirname . $test['?queryFile']->uri,
+ 'type' => $type
);
}
@@ -188,6 +200,17 @@
+ protected static function getPrefix($strFile)
+ {
+ return 'http://www.w3.org/2001/sw/DataAccess/tests/'
+ . substr(
+ $strFile,
+ strpos($strFile, 'w3c-dawg2/') + 10
+ );
+ }//protected static function getPrefix($strFile)
+
+
+
/**
* Executes a SPARQL query on the data written in an
* file containing N3-formatted RDF data
Modified: trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php 2007-08-13 14:12:38 UTC (rev 513)
+++ trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php 2007-08-13 15:17:42 UTC (rev 514)
@@ -97,6 +97,12 @@
$_SESSION['test'] = $title . ' test';
$e = null;
+ if (isset($name['earl:name'])) {
+ //fix some weird issue with simpletest
+ $earlname = $name['earl:name'];
+ $this->signal('earl:name', $earlname);
+ }
+
if ($fileData != null && $fileData != $strLastDataFile) {
//re-use database if not changed
list($database, $dbModel) = $this->prepareDatabase();
Modified: trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php 2007-08-13 14:12:38 UTC (rev 513)
+++ trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php 2007-08-13 15:17:42 UTC (rev 514)
@@ -162,7 +162,7 @@
}
continue;
}
- $this->signal('earl:name', $test['title']);
+ $this->signal('earl:name', $test['earl:name']);
$qs = file_get_contents(SPARQL_TESTFILES . $test['query']);
Modified: trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php 2007-08-13 14:12:38 UTC (rev 513)
+++ trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php 2007-08-13 15:17:42 UTC (rev 514)
@@ -1,2176 +1,2514 @@
<?php
/**
-* automatically created by create-dawg2.php on 2007-08-12 16:52
+* automatically created by create-dawg2.php on 2007-08-13 16:53
*/
$_SESSION['sparql_dawg2_tests'] = array (
- 0 =>
+ 0 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#spoo-1',
'title' => 'Basic graph pattern - spoo',
'data' => 'w3c-dawg2/data-r2/basic/data-6.ttl',
'query' => 'w3c-dawg2/data-r2/basic/spoo-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/spoo-1.srx',
),
- 1 =>
+ 1 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-1',
'title' => 'Basic - Prefix/Base 1',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-1.srx',
),
- 2 =>
+ 2 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-2',
'title' => 'Basic - Prefix/Base 2',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-2.srx',
),
- 3 =>
+ 3 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-3',
'title' => 'Basic - Prefix/Base 3',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-3.srx',
),
- 4 =>
+ 4 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-4',
'title' => 'Basic - Prefix/Base 4',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-4.srx',
),
- 5 =>
+ 5 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-5',
'title' => 'Basic - Prefix/Base 5',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-5.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-5.srx',
),
- 6 =>
+ 6 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-1',
'title' => 'Basic - List 1',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-1.srx',
),
- 7 =>
+ 7 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-2',
'title' => 'Basic - List 2',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-2.srx',
),
- 8 =>
+ 8 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-3',
'title' => 'Basic - List 3',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-3.srx',
),
- 9 =>
+ 9 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-4',
'title' => 'Basic - List 4',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-4.srx',
),
- 10 =>
+ 10 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-1',
'title' => 'Basic - Quotes 1',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-1.srx',
),
- 11 =>
+ 11 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-2',
'title' => 'Basic - Quotes 2',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-2.srx',
),
- 12 =>
+ 12 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-3',
'title' => 'Basic - Quotes 3',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-3.srx',
),
- 13 =>
+ 13 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-4',
'title' => 'Basic - Quotes 4',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-4.srx',
),
- 14 =>
+ 14 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-1',
'title' => 'Basic - Term 1',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-1.srx',
),
- 15 =>
+ 15 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-2',
'title' => 'Basic - Term 2',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-2.srx',
),
- 16 =>
+ 16 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-3',
'title' => 'Basic - Term 3',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-3.srx',
),
- 17 =>
+ 17 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-4',
'title' => 'Basic - Term 4',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-4.srx',
),
- 18 =>
+ 18 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-5',
'title' => 'Basic - Term 5',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-5.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-5.srx',
),
- 19 =>
+ 19 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-6',
'title' => 'Basic - Term 6',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-6.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-6.srx',
),
- 20 =>
+ 20 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-7',
'title' => 'Basic - Term 7',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-7.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-7.srx',
),
- 21 =>
+ 21 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-8',
'title' => 'Basic - Term 8',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-8.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-8.srx',
),
- 22 =>
+ 22 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-9',
'title' => 'Basic - Term 9',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-9.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-9.srx',
),
- 23 =>
+ 23 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#var-1',
'title' => 'Basic - Var 1',
'data' => 'w3c-dawg2/data-r2/basic/data-5.ttl',
'query' => 'w3c-dawg2/data-r2/basic/var-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/var-1.srx',
),
- 24 =>
+ 24 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#var-2',
'title' => 'Basic - Var 2',
'data' => 'w3c-dawg2/data-r2/basic/data-5.ttl',
'query' => 'w3c-dawg2/data-r2/basic/var-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/var-2.srx',
),
- 25 =>
+ 25 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-001',
'title' => 'dawg-triple-pattern-001',
'data' => 'w3c-dawg2/data-r2/triple-match/data-01.ttl',
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-01.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-01.ttl',
),
- 26 =>
+ 26 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-002',
'title' => 'dawg-triple-pattern-002',
'data' => 'w3c-dawg2/data-r2/triple-match/data-01.ttl',
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-02.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-02.ttl',
),
- 27 =>
+ 27 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-003',
'title' => 'dawg-triple-pattern-003',
'data' => 'w3c-dawg2/data-r2/triple-match/data-02.ttl',
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-03.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-03.ttl',
),
- 28 =>
+ 28 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-004',
'title' => 'dawg-triple-pattern-004',
'data' => 'w3c-dawg2/data-r2/triple-match/dawg-data-01.ttl',
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-04.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-04.ttl',
),
- 29 =>
+ 29 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-01',
'title' => 'open-eq-01',
'data' => 'w3c-dawg2/data-r2/open-world/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-01.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-01-result.srx',
),
- 30 =>
+ 30 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-02',
'title' => 'open-eq-02',
'data' => 'w3c-dawg2/data-r2/open-world/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-02.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-02-result.srx',
),
- 31 =>
+ 31 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-03',
'title' => 'open-eq-03',
'data' => 'w3c-dawg2/data-r2/open-world/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-03.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-03-result.srx',
),
- 32 =>
+ 32 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-04',
'title' => 'open-eq-04',
'data' => 'w3c-dawg2/data-r2/open-world/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-04.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-04-result.srx',
),
- 33 =>
+ 33 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-05',
'title' => 'open-eq-05',
'data' => 'w3c-dawg2/data-r2/open-world/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-05.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-05-result.srx',
),
- 34 =>
+ 34 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-06',
'title' => 'open-eq-06',
'data' => 'w3c-dawg2/data-r2/open-world/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-06.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-06-result.srx',
),
- 35 =>
+ 35 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-07',
'title' => 'open-eq-07',
'data' => 'w3c-dawg2/data-r2/open-world/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-07.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-07-result.srx',
),
- 36 =>
+ 36 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-08',
'title' => 'open-eq-08',
'data' => 'w3c-dawg2/data-r2/open-world/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-08.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-08-result.srx',
),
- 37 =>
+ 37 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-09',
'title' => 'open-eq-09',
'data' => 'w3c-dawg2/data-r2/open-world/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-09.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-09-result.srx',
),
- 38 =>
+ 38 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-10',
'title' => 'open-eq-10',
'data' => 'w3c-dawg2/data-r2/open-world/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-10.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-10-result.srx',
),
- 39 =>
+ 39 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-11',
'title' => 'open-eq-11',
'data' => 'w3c-dawg2/data-r2/open-world/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-11.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-11-result.srx',
),
- 40 =>
+ 40 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-12',
'title' => 'open-eq-12',
'data' => 'w3c-dawg2/data-r2/open-world/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-12.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-12-result.srx',
),
- 41 =>
+ 41 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-1',
'title' => 'date-1',
'data' => 'w3c-dawg2/data-r2/open-world/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/date-1.rq',
'result' => 'w3c-dawg2/data-r2/open-world/date-1-result.srx',
),
- 42 =>
+ 42 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-2',
'title' => 'date-2',
'data' => 'w3c-dawg2/data-r2/open-world/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/date-2.rq',
'result' => 'w3c-dawg2/data-r2/open-world/date-2-result.srx',
),
- 43 =>
+ 43 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-3',
'title' => 'date-3',
'data' => 'w3c-dawg2/data-r2/open-world/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/date-3.rq',
'result' => 'w3c-dawg2/data-r2/open-world/date-3-result.srx',
),
- 44 =>
+ 44 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-4',
'title' => 'date-4',
'data' => 'w3c-dawg2/data-r2/open-world/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/date-4.rq',
'result' => 'w3c-dawg2/data-r2/open-world/date-4-result.srx',
),
- 45 =>
+ 45 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-cmp-01',
'title' => 'open-cmp-01',
'data' => 'w3c-dawg2/data-r2/open-world/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-cmp-01.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-cmp-01-result.srx',
),
- 46 =>
+ 46 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-cmp-02',
'title' => 'open-cmp-02',
'data' => 'w3c-dawg2/data-r2/open-world/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/open-cmp-02.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-cmp-02-result.srx',
),
- 47 =>
+ 47 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#nested-opt-1',
'title' => 'Nested Optionals - 1',
'data' => 'w3c-dawg2/data-r2/algebra/two-nested-opt.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/two-nested-opt.rq',
'result' => 'w3c-dawg2/data-r2/algebra/two-nested-opt.srx',
),
- 48 =>
+ 48 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#nested-opt-2',
'title' => 'Nested Optionals - 2',
'data' => 'w3c-dawg2/data-r2/algebra/two-nested-opt.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/two-nested-opt-alt.rq',
'result' => 'w3c-dawg2/data-r2/algebra/two-nested-opt-alt.srx',
),
- 49 =>
+ 49 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#opt-filter-1',
'title' => 'Optional-filter - 1',
'data' => 'w3c-dawg2/data-r2/algebra/opt-filter-1.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/opt-filter-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/opt-filter-1.srx',
),
- 50 =>
+ 50 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#opt-filter-2',
'title' => 'Optional-filter - 2 filters',
'data' => 'w3c-dawg2/data-r2/algebra/opt-filter-2.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/opt-filter-2.rq',
'result' => 'w3c-dawg2/data-r2/algebra/opt-filter-2.srx',
),
- 51 =>
+ 51 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#opt-filter-3',
'title' => 'Optional-filter - scope of variable',
'data' => 'w3c-dawg2/data-r2/algebra/opt-filter-3.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/opt-filter-3.rq',
'result' => 'w3c-dawg2/data-r2/algebra/opt-filter-3.srx',
),
- 52 =>
+ 52 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-place-1',
'title' => 'Filter-placement - 1',
'data' => 'w3c-dawg2/data-r2/algebra/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/filter-placement-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-placement-1.srx',
),
- 53 =>
+ 53 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-place-2',
'title' => 'Filter-placement - 2',
'data' => 'w3c-dawg2/data-r2/algebra/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/filter-placement-2.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-placement-2.srx',
),
- 54 =>
+ 54 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-place-3',
'title' => 'Filter-placement - 3',
'data' => 'w3c-dawg2/data-r2/algebra/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/filter-placement-3.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-placement-3.srx',
),
- 55 =>
+ 55 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-nested-1',
'title' => 'Filter-nested - 1',
'data' => 'w3c-dawg2/data-r2/algebra/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/filter-nested-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-nested-1.srx',
),
- 56 =>
+ 56 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-nested-2',
'title' => 'Filter-nested - 2',
'data' => 'w3c-dawg2/data-r2/algebra/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/filter-nested-2.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-nested-2.srx',
),
- 57 =>
+ 57 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-scope-1',
'title' => 'Filter-scope - 1',
'data' => 'w3c-dawg2/data-r2/algebra/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/filter-scope-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-scope-1.srx',
),
- 58 =>
+ 58 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#join-scope-1',
'title' => 'Join scope - 1',
'data' => 'w3c-dawg2/data-r2/algebra/var-scope-join-1.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/var-scope-join-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/var-scope-join-1.srx',
),
- 59 =>
+ 59 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/bnode-coreference/manifest.ttl#dawg-bnode-coref-001',
'title' => 'dawg-bnode-coreference',
'data' => 'w3c-dawg2/data-r2/bnode-coreference/data.ttl',
'query' => 'w3c-dawg2/data-r2/bnode-coreference/query.rq',
'result' => 'w3c-dawg2/data-r2/bnode-coreference/result.ttl',
),
- 60 =>
+ 60 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/optional/manifest#dawg-optional-001',
'title' => 'One optional clause',
'data' => 'w3c-dawg2/data-r2/optional/data.ttl',
'query' => 'w3c-dawg2/data-r2/optional/q-opt-1.rq',
'result' => 'w3c-dawg2/data-r2/optional/result-opt-1.ttl',
),
- 61 =>
+ 61 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/optional/manifest#dawg-optional-002',
'title' => 'Two optional clauses',
'data' => 'w3c-dawg2/data-r2/optional/data.ttl',
'query' => 'w3c-dawg2/data-r2/optional/q-opt-2.rq',
'result' => 'w3c-dawg2/data-r2/optional/result-opt-2.ttl',
),
- 62 =>
+ 62 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/optional/manifest#dawg-union-001',
'title' => 'Union is not optional',
'data' => 'w3c-dawg2/data-r2/optional/data.ttl',
'query' => 'w3c-dawg2/data-r2/optional/q-opt-3.rq',
'result' => 'w3c-dawg2/data-r2/optional/result-opt-3.ttl',
),
- 63 =>
+ 63 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/optional-filter/manifest#dawg-optional-filter-001',
'title' => 'OPTIONAL-FILTER',
'data' => 'w3c-dawg2/data-r2/optional-filter/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/optional-filter/expr-1.rq',
'result' => 'w3c-dawg2/data-r2/optional-filter/expr-1-result.ttl',
),
- 64 =>
+ 64 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/optional-filter/manifest#dawg-optional-filter-002',
'title' => 'OPTIONAL - Outer FILTER',
'data' => 'w3c-dawg2/data-r2/optional-filter/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/optional-filter/expr-2.rq',
'result' => 'w3c-dawg2/data-r2/optional-filter/expr-2-result.ttl',
),
- 65 =>
+ 65 =>
array (
+ 'earl:name' => 'http://www.w3.org/2...
[truncated message content] |
|
From: <cw...@us...> - 2007-08-13 16:35:57
|
Revision: 518
http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=518&view=rev
Author: cweiske
Date: 2007-08-13 09:35:51 -0700 (Mon, 13 Aug 2007)
Log Message:
-----------
test for NoNSPrefix
add n3Serializer test to allTests
Modified Paths:
--------------
trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php
trunk/rdfapi-php/test/unit/allTests.php
Modified: trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php 2007-08-13 16:14:17 UTC (rev 517)
+++ trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php 2007-08-13 16:35:51 UTC (rev 518)
@@ -130,5 +130,68 @@
$this->assertTrue($mod->containsAll($mod2), 'Original model should contain all triples of loaded model');
$this->assertTrue($mod2->containsAll($mod), 'Loaded model should contain all triples of original model');
}
+
+
+
+ function testNoNSPrefix()
+ {
+ $mod = new MemModel();
+ $mod->add(new Statement(
+ new Resource("http://example.org/foo"),
+ new Resource("http://example.org/bar"),
+ new Resource("mailto:fr...@ex...")
+ ));
+
+ $ser = new N3Serializer();
+ $ser->addNoNSPrefix('mailto:');
+ $str = $ser->serialize($mod);
+
+ $this->assertTrue(strpos($str, '<http://example.org/>') > 0);
+ $this->assertTrue(strpos($str, '@prefix') !== false);
+ $this->assertTrue(strpos($str, ':foo') > 0);
+ $this->assertTrue(strpos($str, ':bar') > 0);
+ $this->assertTrue(strpos($str, '<mailto:fr...@ex...>') > 0);
+
+ //test if it can be loaded
+ $par = new N3Parser();
+ $mod2 = $par->parse2model($str, false);
+ //var_dump($str, $mod2->triples);
+
+ $this->assertEqual($mod->size(), $mod2->size(), 'Original model size and loaded model size should equal');
+ $this->assertTrue($mod->containsAll($mod2), 'Original model should contain all triples of loaded model');
+ $this->assertTrue($mod2->containsAll($mod), 'Loaded model should contain all triples of original model');
+ }
+
+
+
+ function testNoNSPrefix2()
+ {
+ $mod = new MemModel();
+ $mod->add(new Statement(
+ new Resource("http://example.org/foo"),
+ new Resource("http://example.org/bar"),
+ new Resource("mailto:fr...@ex...")
+ ));
+
+ $ser = new N3Serializer();
+ $ser->addNoNSPrefix('http://example.org/');
+ $ser->addNoNSPrefix('mailto:');
+ $str = $ser->serialize($mod);
+
+ $this->assertTrue(strpos($str, '@prefix') === false);
+ $this->assertTrue(strpos($str, '<http://example.org/foo>') > 0);
+ $this->assertTrue(strpos($str, '<http://example.org/bar>') > 0);
+ $this->assertTrue(strpos($str, '<mailto:fr...@ex...>') > 0);
+
+ //test if it can be loaded
+ $par = new N3Parser();
+ $mod2 = $par->parse2model($str, false);
+ //var_dump($str, $mod2->triples);
+
+ $this->assertEqual($mod->size(), $mod2->size(), 'Original model size and loaded model size should equal');
+ $this->assertTrue($mod->containsAll($mod2), 'Original model should contain all triples of loaded model');
+ $this->assertTrue($mod2->containsAll($mod), 'Loaded model should contain all triples of original model');
+ }
+
}
?>
\ No newline at end of file
Modified: trunk/rdfapi-php/test/unit/allTests.php
===================================================================
--- trunk/rdfapi-php/test/unit/allTests.php 2007-08-13 16:14:17 UTC (rev 517)
+++ trunk/rdfapi-php/test/unit/allTests.php 2007-08-13 16:35:51 UTC (rev 518)
@@ -110,6 +110,7 @@
$test_syntax = &new GroupTest('Syntax tests');
$test_syntax->addTestFile(RDFAPI_TEST_INCLUDE_DIR. 'test/unit/Syntax/n3Parser_test.php');
+$test_syntax->addTestFile(RDFAPI_TEST_INCLUDE_DIR. 'test/unit/Syntax/n3Serializer_test.php');
$test_syntax->addTestFile(RDFAPI_TEST_INCLUDE_DIR. 'test/unit/Syntax/rdf_Parser_tests.php');
$test_syntax->addTestFile(RDFAPI_TEST_INCLUDE_DIR. 'test/unit/Syntax/rdf_Serializer_tests.php');
//$test_syntax->addTestFile(RDFAPI_TEST_INCLUDE_DIR. 'test/unit/rdf/rdf_test_cases.php');
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cw...@us...> - 2007-08-16 09:55:03
|
Revision: 535
http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=535&view=rev
Author: cweiske
Date: 2007-08-16 02:55:00 -0700 (Thu, 16 Aug 2007)
Log Message:
-----------
Don't rely on blanknodecounter being 0 - happens when running multiple tests
Modified Paths:
--------------
trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php
trunk/rdfapi-php/test/unit/allTests.php
Modified: trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php 2007-08-16 09:45:20 UTC (rev 534)
+++ trunk/rdfapi-php/test/unit/Syntax/n3Serializer_test.php 2007-08-16 09:55:00 UTC (rev 535)
@@ -216,8 +216,7 @@
$mod2 = $par->parse2model($str, false);
$this->assertEqual($mod->size(), $mod2->size(), 'Original model size and loaded model size should equal');
- $this->assertTrue($mod->containsAll($mod2), 'Original model should contain all triples of loaded model');
- $this->assertTrue($mod2->containsAll($mod), 'Loaded model should contain all triples of original model');
+ $this->compareModelsIgnoringBlankNodes($mod, $mod2);
}
Modified: trunk/rdfapi-php/test/unit/allTests.php
===================================================================
--- trunk/rdfapi-php/test/unit/allTests.php 2007-08-16 09:45:20 UTC (rev 534)
+++ trunk/rdfapi-php/test/unit/allTests.php 2007-08-16 09:55:00 UTC (rev 535)
@@ -110,7 +110,6 @@
$test_model->run(new $runnerClass());
-
// =============================================================================
// *************************** package Syntax **********************************
// =============================================================================
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cw...@us...> - 2007-10-09 16:24:13
|
Revision: 544
http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=544&view=rev
Author: cweiske
Date: 2007-10-09 09:24:08 -0700 (Tue, 09 Oct 2007)
Log Message:
-----------
Update readme, don't be verbose on testing when debugging is not enabled
Modified Paths:
--------------
trunk/rdfapi-php/test/unit/README.txt
trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php
trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php
trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php
trunk/rdfapi-php/test/unit/runAnyTest.php
Modified: trunk/rdfapi-php/test/unit/README.txt
===================================================================
--- trunk/rdfapi-php/test/unit/README.txt 2007-10-09 16:01:43 UTC (rev 543)
+++ trunk/rdfapi-php/test/unit/README.txt 2007-10-09 16:24:08 UTC (rev 544)
@@ -7,19 +7,32 @@
The test use the "Simple Test" testing framework, which is
similar to JUnit.
-For running the tests you have to
+For running the tests you have to
1. Install the "Simple Test" testing framework
- into the document root of your web server.
+ into the document root of your web server.
Simple test can be downloaded from:
- http://sourceforge.net/projects/simpletest/
+ http://sourceforge.net/projects/simpletest/
-2. Now copy the "unit" folder to /rdfapi/test/
-
-3. Make sure that "simple Test" and RAP is included correctly in
+2. Copy the simpletest folder to the right location so that
+ your directory layout is the following:
+ /some/root/path/
+ rdfapi-php/
+ api/
+ doc/
+ netapi/
+ test/
+ tools/
+ simpletest/
+ simpletest.php
+
+3. Make sure that "simple Test" and RAP is included correctly in
allTest.php and in
- showPasses.php
+ showPasses.php
4. To run the tests execute allTest.php
-
-In allTest.php you can also comment out all tests that you do not want to execute.
+
+In allTest.php you can also comment out all tests that you do not want to execute.
+
+To run single test files, use runAnyTest.php:
+ php runAnyTest.php Syntax/n3Parser_test.php
Modified: trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php 2007-10-09 16:01:43 UTC (rev 543)
+++ trunk/rdfapi-php/test/unit/Sparql/SparqlDbTests_test.php 2007-10-09 16:24:08 UTC (rev 544)
@@ -149,7 +149,7 @@
//normal query failed to be parsed
$this->assertTrue(false, 'Query failed to be parsed');
if (!isset($GLOBALS['debugTests'])) {
- echo ' ' . $title . "\n";
+ //echo ' ' . $title . "\n";
} else {
echo Console_Color::convert('%RTest failed: ' . $title . "%n\n");
if (isset($e)) {
@@ -182,7 +182,7 @@
if (!$bOk) {
if (!isset($GLOBALS['debugTests'])) {
- echo ' ' . $title . "\n";
+ //echo ' ' . $title . "\n";
} else {
echo Console_Color::convert('%RTest failed: ' . $title . "%n\n");
if ($e != null) {
Modified: trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php 2007-10-09 16:01:43 UTC (rev 543)
+++ trunk/rdfapi-php/test/unit/Sparql/SparqlParserTests_test.php 2007-10-09 16:24:08 UTC (rev 544)
@@ -157,7 +157,9 @@
$parser = new SparqlParser();
foreach ($_SESSION['sparql_dawg2_tests'] as $test) {
-echo $test['title'] . "\n";
+ if (isset($GLOBALS['debugTests']) && $GLOBALS['debugTests']) {
+ echo $test['title'] . "\n";
+ }
//use syntax tests only
if (!isset($test['type']) ||
($test['type'] != 'syntax-positive' &&
@@ -190,7 +192,6 @@
*/
protected function runQueryParseTest($strQuery, $parser, $strType, $title)
{
-//echo $title . "\n";
$bException = false;
try {
$parser->parse($strQuery);
@@ -207,9 +208,7 @@
}
if (!$bOk) {
- if (!isset($GLOBALS['debugTests'])) {
- echo ' ' . $title . "\n";
- } else {
+ if (isset($GLOBALS['debugTests']) && $GLOBALS['debugTests']) {
echo Console_Color::convert('%RTest failed: ' . $title . "%n\n");
if (isset($e)) {
echo $e->getMessage() . "\n";
Modified: trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php
===================================================================
--- trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php 2007-10-09 16:01:43 UTC (rev 543)
+++ trunk/rdfapi-php/test/unit/Sparql/cases_dawg2.php 2007-10-09 16:24:08 UTC (rev 544)
@@ -1,209 +1,225 @@
<?php
/**
-* automatically created by create-dawg2.php on 2007-08-13 16:53
+* automatically created by create-dawg2.php on 2007-10-09 18:11
*/
$_SESSION['sparql_dawg2_tests'] = array (
0 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#spoo-1',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#bgp-no-match',
+ 'title' => 'Non-matching triple pattern',
+ 'data' => 'w3c-dawg2/data-r2/basic/data-7.ttl',
+ 'query' => 'w3c-dawg2/data-r2/basic/bgp-no-match.rq',
+ 'result' => 'w3c-dawg2/data-r2/basic/bgp-no-match.srx',
+ ),
+ 1 =>
+ array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#prefix-name-1',
+ 'title' => 'Prefix name 1',
+ 'data' => 'w3c-dawg2/data-r2/basic/data-6.ttl',
+ 'query' => 'w3c-dawg2/data-r2/basic/prefix-name-1.rq',
+ 'result' => 'w3c-dawg2/data-r2/basic/prefix-name-1.srx',
+ ),
+ 2 =>
+ array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#spoo-1',
'title' => 'Basic graph pattern - spoo',
'data' => 'w3c-dawg2/data-r2/basic/data-6.ttl',
'query' => 'w3c-dawg2/data-r2/basic/spoo-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/spoo-1.srx',
),
- 1 =>
+ 3 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-1',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#base-prefix-1',
'title' => 'Basic - Prefix/Base 1',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-1.srx',
),
- 2 =>
+ 4 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-2',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#base-prefix-2',
'title' => 'Basic - Prefix/Base 2',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-2.srx',
),
- 3 =>
+ 5 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-3',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#base-prefix-3',
'title' => 'Basic - Prefix/Base 3',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-3.srx',
),
- 4 =>
+ 6 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-4',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#base-prefix-4',
'title' => 'Basic - Prefix/Base 4',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-4.srx',
),
- 5 =>
+ 7 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#base-prefix-5',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#base-prefix-5',
'title' => 'Basic - Prefix/Base 5',
'data' => 'w3c-dawg2/data-r2/basic/data-1.ttl',
'query' => 'w3c-dawg2/data-r2/basic/base-prefix-5.rq',
'result' => 'w3c-dawg2/data-r2/basic/base-prefix-5.srx',
),
- 6 =>
+ 8 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-1',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#list-1',
'title' => 'Basic - List 1',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-1.srx',
),
- 7 =>
+ 9 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-2',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#list-2',
'title' => 'Basic - List 2',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-2.srx',
),
- 8 =>
+ 10 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-3',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#list-3',
'title' => 'Basic - List 3',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-3.srx',
),
- 9 =>
+ 11 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#list-4',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#list-4',
'title' => 'Basic - List 4',
'data' => 'w3c-dawg2/data-r2/basic/data-2.ttl',
'query' => 'w3c-dawg2/data-r2/basic/list-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/list-4.srx',
),
- 10 =>
+ 12 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-1',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#quotes-1',
'title' => 'Basic - Quotes 1',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-1.srx',
),
- 11 =>
+ 13 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-2',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#quotes-2',
'title' => 'Basic - Quotes 2',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-2.srx',
),
- 12 =>
+ 14 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-3',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#quotes-3',
'title' => 'Basic - Quotes 3',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-3.srx',
),
- 13 =>
+ 15 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#quotes-4',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#quotes-4',
'title' => 'Basic - Quotes 4',
'data' => 'w3c-dawg2/data-r2/basic/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/basic/quotes-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/quotes-4.srx',
),
- 14 =>
+ 16 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-1',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-1',
'title' => 'Basic - Term 1',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-1.srx',
),
- 15 =>
+ 17 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-2',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-2',
'title' => 'Basic - Term 2',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-2.srx',
),
- 16 =>
+ 18 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-3',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-3',
'title' => 'Basic - Term 3',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-3.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-3.srx',
),
- 17 =>
+ 19 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-4',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-4',
'title' => 'Basic - Term 4',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-4.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-4.srx',
),
- 18 =>
+ 20 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-5',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-5',
'title' => 'Basic - Term 5',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-5.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-5.srx',
),
- 19 =>
+ 21 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-6',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-6',
'title' => 'Basic - Term 6',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-6.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-6.srx',
),
- 20 =>
+ 22 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-7',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-7',
'title' => 'Basic - Term 7',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-7.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-7.srx',
),
- 21 =>
+ 23 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-8',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-8',
'title' => 'Basic - Term 8',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-8.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-8.srx',
),
- 22 =>
+ 24 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#term-9',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#term-9',
'title' => 'Basic - Term 9',
'data' => 'w3c-dawg2/data-r2/basic/data-4.ttl',
'query' => 'w3c-dawg2/data-r2/basic/term-9.rq',
'result' => 'w3c-dawg2/data-r2/basic/term-9.srx',
),
- 23 =>
+ 25 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#var-1',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#var-1',
'title' => 'Basic - Var 1',
'data' => 'w3c-dawg2/data-r2/basic/data-5.ttl',
'query' => 'w3c-dawg2/data-r2/basic/var-1.rq',
'result' => 'w3c-dawg2/data-r2/basic/var-1.srx',
),
- 24 =>
+ 26 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest.ttl#var-2',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/basic/manifest#var-2',
'title' => 'Basic - Var 2',
'data' => 'w3c-dawg2/data-r2/basic/data-5.ttl',
'query' => 'w3c-dawg2/data-r2/basic/var-2.rq',
'result' => 'w3c-dawg2/data-r2/basic/var-2.srx',
),
- 25 =>
+ 27 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-001',
'title' => 'dawg-triple-pattern-001',
@@ -211,7 +227,7 @@
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-01.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-01.ttl',
),
- 26 =>
+ 28 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-002',
'title' => 'dawg-triple-pattern-002',
@@ -219,7 +235,7 @@
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-02.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-02.ttl',
),
- 27 =>
+ 29 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-003',
'title' => 'dawg-triple-pattern-003',
@@ -227,7 +243,7 @@
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-03.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-03.ttl',
),
- 28 =>
+ 30 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/triple-match/manifest#dawg-triple-pattern-004',
'title' => 'dawg-triple-pattern-004',
@@ -235,7 +251,7 @@
'query' => 'w3c-dawg2/data-r2/triple-match/dawg-tp-04.rq',
'result' => 'w3c-dawg2/data-r2/triple-match/result-tp-04.ttl',
),
- 29 =>
+ 31 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-01',
'title' => 'open-eq-01',
@@ -243,7 +259,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-01.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-01-result.srx',
),
- 30 =>
+ 32 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-02',
'title' => 'open-eq-02',
@@ -251,7 +267,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-02.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-02-result.srx',
),
- 31 =>
+ 33 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-03',
'title' => 'open-eq-03',
@@ -259,7 +275,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-03.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-03-result.srx',
),
- 32 =>
+ 34 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-04',
'title' => 'open-eq-04',
@@ -267,7 +283,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-04.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-04-result.srx',
),
- 33 =>
+ 35 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-05',
'title' => 'open-eq-05',
@@ -275,7 +291,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-05.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-05-result.srx',
),
- 34 =>
+ 36 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-06',
'title' => 'open-eq-06',
@@ -283,7 +299,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-06.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-06-result.srx',
),
- 35 =>
+ 37 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-07',
'title' => 'open-eq-07',
@@ -291,7 +307,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-07.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-07-result.srx',
),
- 36 =>
+ 38 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-08',
'title' => 'open-eq-08',
@@ -299,7 +315,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-08.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-08-result.srx',
),
- 37 =>
+ 39 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-09',
'title' => 'open-eq-09',
@@ -307,7 +323,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-09.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-09-result.srx',
),
- 38 =>
+ 40 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-10',
'title' => 'open-eq-10',
@@ -315,7 +331,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-10.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-10-result.srx',
),
- 39 =>
+ 41 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-11',
'title' => 'open-eq-11',
@@ -323,7 +339,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-11.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-11-result.srx',
),
- 40 =>
+ 42 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-eq-12',
'title' => 'open-eq-12',
@@ -331,23 +347,15 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-eq-12.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-eq-12-result.srx',
),
- 41 =>
+ 43 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-1',
- 'title' => 'date-1',
- 'data' => 'w3c-dawg2/data-r2/open-world/data-3.ttl',
- 'query' => 'w3c-dawg2/data-r2/open-world/date-1.rq',
- 'result' => 'w3c-dawg2/data-r2/open-world/date-1-result.srx',
- ),
- 42 =>
- array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-2',
'title' => 'date-2',
'data' => 'w3c-dawg2/data-r2/open-world/data-3.ttl',
'query' => 'w3c-dawg2/data-r2/open-world/date-2.rq',
'result' => 'w3c-dawg2/data-r2/open-world/date-2-result.srx',
),
- 43 =>
+ 44 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-3',
'title' => 'date-3',
@@ -355,7 +363,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/date-3.rq',
'result' => 'w3c-dawg2/data-r2/open-world/date-3-result.srx',
),
- 44 =>
+ 45 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#date-4',
'title' => 'date-4',
@@ -363,7 +371,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/date-4.rq',
'result' => 'w3c-dawg2/data-r2/open-world/date-4-result.srx',
),
- 45 =>
+ 46 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-cmp-01',
'title' => 'open-cmp-01',
@@ -371,7 +379,7 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-cmp-01.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-cmp-01-result.srx',
),
- 46 =>
+ 47 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/open-world/manifest#open-cmp-02',
'title' => 'open-cmp-02',
@@ -379,15 +387,31 @@
'query' => 'w3c-dawg2/data-r2/open-world/open-cmp-02.rq',
'result' => 'w3c-dawg2/data-r2/open-world/open-cmp-02-result.srx',
),
- 47 =>
+ 48 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#join-combo-1',
+ 'title' => 'Join operator with OPTs, BGPs, and UNIONs',
+ 'data' => 'w3c-dawg2/data-r2/algebra/join-combo-graph-2.ttl',
+ 'query' => 'w3c-dawg2/data-r2/algebra/join-combo-1.rq',
+ 'result' => 'w3c-dawg2/data-r2/algebra/join-combo-1.srx',
+ ),
+ 49 =>
+ array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#join-combo-2',
+ 'title' => 'Join operator with Graph and Union',
+ 'data' => 'w3c-dawg2/data-r2/algebra/join-combo-graph-2.ttl',
+ 'query' => 'w3c-dawg2/data-r2/algebra/join-combo-2.rq',
+ 'result' => 'w3c-dawg2/data-r2/algebra/join-combo-2.srx',
+ ),
+ 50 =>
+ array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#nested-opt-1',
'title' => 'Nested Optionals - 1',
'data' => 'w3c-dawg2/data-r2/algebra/two-nested-opt.ttl',
'query' => 'w3c-dawg2/data-r2/algebra/two-nested-opt.rq',
'result' => 'w3c-dawg2/data-r2/algebra/two-nested-opt.srx',
),
- 48 =>
+ 51 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#nested-opt-2',
'title' => 'Nested Optionals - 2',
@@ -395,7 +419,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/two-nested-opt-alt.rq',
'result' => 'w3c-dawg2/data-r2/algebra/two-nested-opt-alt.srx',
),
- 49 =>
+ 52 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#opt-filter-1',
'title' => 'Optional-filter - 1',
@@ -403,7 +427,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/opt-filter-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/opt-filter-1.srx',
),
- 50 =>
+ 53 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#opt-filter-2',
'title' => 'Optional-filter - 2 filters',
@@ -411,7 +435,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/opt-filter-2.rq',
'result' => 'w3c-dawg2/data-r2/algebra/opt-filter-2.srx',
),
- 51 =>
+ 54 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#opt-filter-3',
'title' => 'Optional-filter - scope of variable',
@@ -419,7 +443,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/opt-filter-3.rq',
'result' => 'w3c-dawg2/data-r2/algebra/opt-filter-3.srx',
),
- 52 =>
+ 55 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-place-1',
'title' => 'Filter-placement - 1',
@@ -427,7 +451,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/filter-placement-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-placement-1.srx',
),
- 53 =>
+ 56 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-place-2',
'title' => 'Filter-placement - 2',
@@ -435,7 +459,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/filter-placement-2.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-placement-2.srx',
),
- 54 =>
+ 57 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-place-3',
'title' => 'Filter-placement - 3',
@@ -443,7 +467,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/filter-placement-3.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-placement-3.srx',
),
- 55 =>
+ 58 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-nested-1',
'title' => 'Filter-nested - 1',
@@ -451,7 +475,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/filter-nested-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-nested-1.srx',
),
- 56 =>
+ 59 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-nested-2',
'title' => 'Filter-nested - 2',
@@ -459,7 +483,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/filter-nested-2.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-nested-2.srx',
),
- 57 =>
+ 60 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#filter-scope-1',
'title' => 'Filter-scope - 1',
@@ -467,7 +491,7 @@
'query' => 'w3c-dawg2/data-r2/algebra/filter-scope-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/filter-scope-1.srx',
),
- 58 =>
+ 61 =>
array (
'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/algebra/manifest#join-scope-1',
'title' => 'Join scope - 1',
@@ -475,23 +499,55 @@
'query' => 'w3c-dawg2/data-r2/algebra/var-scope-join-1.rq',
'result' => 'w3c-dawg2/data-r2/algebra/var-scope-join-1.srx',
),
- 59 =>
+ 62 =>
array (
- 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/bnode-coreference/manifest.ttl#dawg-bnode-coref-001',
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/bnode-coreference/manifest#dawg-bnode-coref-001',
'title' => 'dawg-bnode-coreference',
'data' => 'w3c-dawg2/data-r2/bnode-coreference/data.ttl',
'query' => 'w3c-dawg2/data-r2/bnode-coreference/query.rq',
'result' => 'w3c-dawg2/data-r2/bnode-coreference/result.ttl',
),
- 60 =>
+ 63 =>
array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/optional/manifest#dawg-optional-complex-1',
+ 'title' => 'Complex optional semantics: 1',
+ 'data' => 'w3c-dawg2/data-r2/optional/complex-data-1.ttl',
+ 'query' => 'w3c-dawg2/data-r2/optional/q-opt-complex-1.rq',
+ 'result' => 'w3c-dawg2/data-r2/optional/result-opt-complex-1.ttl',
+ ),
+ 64 =>
+ array (
+ 'earl:name' => 'http://www.w3.org/2001/sw/DataAccess/tests/data-r2/optional/manifest#dawg-optional-complex-2',
+ 'title' => 'Complex optional semantics: 2',
+ 'data' => 'w3c-dawg2/data-r2/optional/complex-data-2.ttl',
+ 'query' => 'w3c-dawg2/data-r2/optional/q-opt-complex-2.rq',
+ 'result' => 'w3c-dawg2/data-r2/optional/result-opt-complex-2.ttl',
+ ),
+ 65 =>
+ array (
+ ...
[truncated message content] |