--- rdf.api.inc.cvs 2009-03-01 22:46:20.000000000 +0100 +++ rdf.api.inc 2009-03-01 22:47:17.000000000 +0100 @@ -796,12 +796,14 @@ foreach ($data as $subject => $predicates) { foreach ($predicates as $predicate => $objects) { $qnames = array($predicate); - foreach($objects as $object) { - $qnames[] = $object; + foreach (is_array($objects) ? $objects : array($objects) as $object) { + if (rdf_is_valid_uri((string)$object)) { + $qnames[] = $object; + } } - foreach($qnames as $qname) { + foreach ($qnames as $qname) { list($prefix, ) = explode(':', rdf_uri_to_qname($qname)); - if (!isset($result[$prefix]) && isset($namespaces[$prefix])) { + if ($prefix != '_' && !isset($result[$prefix]) && isset($namespaces[$prefix])) { $result[$prefix] = $namespaces[$prefix]; } }