danielebarchiesi@4: rdf = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'; danielebarchiesi@4: $this->nsp = array($this->rdf => 'rdf'); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /* */ danielebarchiesi@4: danielebarchiesi@4: function done() { danielebarchiesi@4: $this->extractRDF(); danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: function extractRDF() { danielebarchiesi@4: $s = $this->getContext(); danielebarchiesi@4: $os = $this->getURLs($this->struct); danielebarchiesi@4: foreach ($os as $o) { danielebarchiesi@4: if ($o != $s) $this->addT($s, 'http://www.w3.org/2000/01/rdf-schema#seeAlso', $o, 'uri', 'uri'); danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: function getContext() { danielebarchiesi@4: if (!isset($this->struct['canonical_mapping'])) return ''; danielebarchiesi@4: foreach ($this->struct['canonical_mapping'] as $k => $v) return $v; danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: function getURLs($struct) { danielebarchiesi@4: $r =array(); danielebarchiesi@4: if (is_array($struct)) { danielebarchiesi@4: foreach ($struct as $k => $v) { danielebarchiesi@4: if (preg_match('/^http:\/\//', $k) && !in_array($k, $r)) $r[] = $k; danielebarchiesi@4: $sub_r = $this->getURLs($v); danielebarchiesi@4: foreach ($sub_r as $sub_v) { danielebarchiesi@4: if (!in_array($sub_v, $r)) $r[] = $sub_v; danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: } danielebarchiesi@4: elseif (preg_match('/^http:\/\//', $struct) && !in_array($struct, $r)) { danielebarchiesi@4: $r[] = $struct; danielebarchiesi@4: } danielebarchiesi@4: return $r; danielebarchiesi@4: } danielebarchiesi@4: danielebarchiesi@4: /* */ danielebarchiesi@4: danielebarchiesi@4: }