|
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.
|