/** * @see SMWDISerializer::getSerializedQueryResult * @since 1.7 * @return array */ public function serializeToArray() { return SMWDISerializer::getSerializedQueryResult($this); }
/** * Basic SMW JSON layer * * This is a convenience layer which is eliminating some overhead from the * standard SMW JSON * * @since 1.8 * * @return array */ public function getBasicSerialization() { $results = array(); $printRequests = array(); foreach ($this->results->getPrintRequests() as $printRequest) { $printRequests[$printRequest->getLabel()] = array('label' => $printRequest->getLabel(), 'typeid' => $printRequest->getTypeID()); } foreach ($this->results->getResults() as $diWikiPage) { $result = array(); foreach ($this->results->getPrintRequests() as $printRequest) { $serializationItems = array(); $resultAarray = new SMWResultArray($diWikiPage, $printRequest, $this->results->getStore()); if ($printRequest->getMode() === SMWPrintRequest::PRINT_THIS) { $dataItems = $resultAarray->getContent(); $fulltext = SMWDISerializer::getSerialization(array_shift($dataItems)); $result += array('label' => $fulltext["fulltext"]); } else { $serializationItems = array_map(array('SMWDISerializer', 'getSerialization'), $resultAarray->getContent()); $type = $printRequest->getTypeID(); $items = array(); foreach ($serializationItems as $item) { if ($type == "_wpg") { $items[] = $item["fulltext"]; } else { $items[] = $item; } } $result[$printRequest->getLabel()] = $items; } } $results[$diWikiPage->getTitle()->getFullText()] = $result; } return array('printrequests' => $printRequests, 'results' => $results, 'rows' => $this->count); }