From: <fu...@us...> - 2007-11-15 13:45:26
|
Revision: 550 http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=550&view=rev Author: fusel2k Date: 2007-11-15 05:45:22 -0800 (Thu, 15 Nov 2007) Log Message: ----------- [fix] Removed trailing ?- or $-SPARQL variable indentifiers from Output to follow http://www.w3.org/TR/rdf-sparql-json-res/ Modified Paths: -------------- trunk/rdfapi-php/api/sparql/SparqlEngineDb/ResultRenderer/JSON.php Modified: trunk/rdfapi-php/api/sparql/SparqlEngineDb/ResultRenderer/JSON.php =================================================================== --- trunk/rdfapi-php/api/sparql/SparqlEngineDb/ResultRenderer/JSON.php 2007-11-15 13:29:04 UTC (rev 549) +++ trunk/rdfapi-php/api/sparql/SparqlEngineDb/ResultRenderer/JSON.php 2007-11-15 13:45:22 UTC (rev 550) @@ -25,11 +25,15 @@ $this->query = $query; $this->sg = $engine->getSqlGenerator(); $strResultForm = $query->getResultForm(); + + foreach ($this->getResultVars() as $var) + $ResultVarsTemp[] = substr($var,1); + switch ($strResultForm) { case 'select': case 'select distinct': $results = $this->createFromRecords($arRecordSets, $strResultForm); - $strCode = json_encode(array('head' => array('vars'=>$this->getResultVars()),'results'=>array('bindings'=>$results))); + $strCode = json_encode(array('head' => array('vars'=>$ResultVarsTemp),'results'=>array('bindings'=>$results))); //$strCode = str_replace(',{',','.PHP_EOL.'{',$strCode); break; case 'construct': @@ -87,7 +91,7 @@ foreach ($arResultVars as $ResultVar) { $nodeType = $value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_is']]; if ($type == 'r' || $type === null ) { - $node[$ResultVar] = array('type'=> 'uri','value'=>$value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_value']]); + $node[substr($ResultVar,1)] = array('type'=> 'uri','value'=>$value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_value']]); } @@ -95,7 +99,7 @@ $literalType = $value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_type']]; $literalLang = $value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_lang']]; $literalValue = $value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_value']]; - $node[$ResultVar] = $this->getLiteral($literalValue,$literalLang,$literalType); + $node[substr($ResultVar,1)] = $this->getLiteral($literalValue,$literalLang,$literalType); } } $results[]=$node; @@ -144,6 +148,11 @@ $arResultVars = $this->query->getResultVars(); if (in_array('*', $arResultVars)) { $arResultVars = array_keys($this->sg->arVarAssignments); + } else { + $arResultVars = array(); + foreach ($this->query->getResultVars() as $Var) { + $arResultVars[] = (string) $Var; + } } return $arResultVars; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |