createDocumentFragment(); try { $acl = ACL::getAclByTypeName($typeName); $pk = substr($featureId, strpos($featureId, '.') + 1); $item = $acl->buildQuery([ 'cols' => array_keys($acl->getXsdTypes()) ])->getItem($pk); if (!$item) throw new Exception("Object with primary key = '{$pk}' not found"); DBG::log($item, 'array', "testFetchWfs feature found"); foreach ($item as $fieldName => $value) { if (is_scalar($value)) { $tmp->appendXML('

' . $fieldName .': "' . $value . '"

'); } else if (is_array($value)) { $out = '
' . $fieldName .':
'; foreach ($value as $refItem) { if (1 === count($refItem) && !empty($refItem['xlink'])) { $out .= '

- ' . $refItem['xlink'] .':

'; } else { $out .= '

'; foreach ($refItem as $refField => $refValue) { $out .= '- ' . $refField . ': ' . $refValue .'
'; } $out .= '

'; } } $out .= '
'; $tmp->appendXML($out); } } } catch (Exception $e) { $tmp->appendXML('
' . $e->getMessage() . '
'); } return $tmp; // TODO: require