p5-rdf-rdfa-api / lib / RDF / RDFa / API / DataParser / RDFa_11.pm

package RDF::RDFa::API::DataParser::RDFa_11;

use 5.010;
use Moose;
use namespace::clean -except => 'meta';
use common::sense;

with 'RDF::RDFa::API::DataParser';

sub parse
{
	my ($self, $domElement, $base) = @_;
	
	my $parser = RDF::RDFa::Parser->new(
		$domElement->ownerDocument,
		$domElement->ownerDocument->documentElement->baseURI,
		RDF::RDFa::Parser::Config->new('xhtml', '1.1'),
		);
	$parser->set_callbacks({
		ontriple => sub {
			my ($parser_again, $elements, $triple) = @_;
			next unless 1; # next unless $elements->{current} is a descendent or equal to $domElement
			
			my $api_triple = RDF::RDFa::API::RDFTriple->fromTrine($triple, $elements);
			$api_triple->dataContext($store->dataContext);
			$self->store->add($api_triple);
		}
	});
	$parser->consume;
}

sub iterate
{
	die "Not implemented yet.\n";
}

1;
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.