From: <fu...@us...> - 2007-11-27 13:06:17
|
Revision: 553 http://rdfapi-php.svn.sourceforge.net/rdfapi-php/?rev=553&view=rev Author: fusel2k Date: 2007-11-27 05:06:14 -0800 (Tue, 27 Nov 2007) Log Message: ----------- [fix] bnode output works correctly now 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-23 09:12:11 UTC (rev 552) +++ trunk/rdfapi-php/api/sparql/SparqlEngineDb/ResultRenderer/JSON.php 2007-11-27 13:06:14 UTC (rev 553) @@ -33,7 +33,10 @@ case 'select': case 'select distinct': $results = $this->createFromRecords($arRecordSets, $strResultForm); - $strCode = json_encode(array('head' => array('vars'=>$ResultVarsTemp),'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': @@ -90,17 +93,25 @@ $node = array(); foreach ($arResultVars as $ResultVar) { $nodeType = $value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_is']]; - if ($type == 'r' || $type === null ) { + if ($nodeType == 'r') { $node[substr($ResultVar,1)] = array('type'=> 'uri','value'=>$value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_value']]); } if ($value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_is']] == 'l') { - $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']]; + $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[substr($ResultVar,1)] = $this->getLiteral($literalValue,$literalLang,$literalType); } + + if ($nodeType === 'b') { + $literalValue = $value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_value']]; + $node[substr($ResultVar,1)] = array ('type'=>'bnode' ,'value'=>$value[$arVarAssignments[$ResultVar][0].'.'.$arVarAssignments[$ResultVar]['sql_value']]); + } } $results[]=$node; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |