public function __construct($a = '') { parent::__construct(); $this->a = $a; /* parse the before and after graphs if necessary*/ foreach (array('before', 'after', 'before_rdfxml', 'after_rdfxml') as $rdf) { if (!empty($a[$rdf])) { if (is_string($a[$rdf])) { /** @var \ARC2_RDFParser $parser */ $parser = \ARC2::getRDFParser(); $parser->parse(false, $a[$rdf]); $a[$rdf] = $parser->getSimpleIndex(0); } else { if (is_array($a[$rdf]) and isset($a[$rdf][0]) and isset($a[$rdf][0]['s'])) { //triples array /** @var \ARC2_RDFSerializer $ser */ $ser = \ARC2::getTurtleSerializer(); /** @var string $turtle */ $turtle = $ser->getSerializedTriples($a[$rdf]); /** @var \ARC2_RDFParser $parser */ $parser = \ARC2::getTurtleParser(); $parser->parse(false, $turtle); $a[$rdf] = $parser->getSimpleIndex(0); } } $nrdf = str_replace('_rdfxml', '', $rdf); $this->{$nrdf} = $a[$rdf]; } } $this->__init(); }