NAME

Template::Semantic::Document - Template::Semantic Result object

SYNOPSIS

my $res = Template::Semantic->process('template.html', {
    'title, h1' => 'foo',
});

my $res = Template::Semantic->process('template.html', {
    ...
})->process({
    ...
})->process({
    ...
});

print $res;
print $res->as_string; # same as avobe

METHODS

$res = $res->process( \%vars )

Process again to the result and returns Template::Semantic::Document object again. So you can chain

my $res = Template::Semantic->process(...)->process(...)
"$res" (stringify)

Calls as_string() internally.

$html = $res->as_string( %options )

Returns the result as XHTML/XML.

  • is_xhtml => bool

    Default value is true. Even if DTD is not defined in the template, outputs as XHTML. When sets is_xhtml false, skip this effect.

    my $res = $ts->process(\<<END);
    <div>
        <img src="foo" />
        <br />
        <textarea></textarea>
    </div>
    END
    ;
    
    print $res;
    # <div>
    #     <img src="foo" />
    #     <br />
    #     <textarea></textarea>
    # </div>
    
    print $res->as_string(is_xhtml => 0);
    # <div>
    #     <img src="foo"/>
    #     <br/>
    #     <textarea/>
    # </div>
$dom = $res->dom()
my $res  = Template::Semantic->process($template, ...);
my $dom  = $res->dom;
my $root = $dom->documentElement; # get root element

Gets the result as XML::LibXML::Document.

SEE ALSO

Template::Semantic, XML::LibXML::Document

AUTHOR

Naoki Tomita <tomita@cpan.org>