---
name: "Embperl::Syntax::HTML"
section: "3pm"
platform: "linux"
package: "libembperl-perl"
version: "2.5.0-17"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/Embperl::Syntax::HTML"
---

# Embperl::Syntax::HTML(3pm)

define the syntax for HTML

## NAME

Embperl::Syntax::HTML - define the syntax for HTML

## SYNOPSIS

## DESCRIPTION

Class derived from Embperl::Syntax to define the syntax for HTML. This class does not add functionalty of it own, it just provides methods add definitions for derived classes to implement their own tags.

## Methods

*Embperl::Syntax::HTML* defines the following methods:

### Embperl::Syntax::HTML -\> new / $self -\> new

Create a new syntax class. This method should only be called inside a constructor of a derived class.

### AddTag ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo, $taginfo, $addsess)

Add a new HTML tag.

- $tagname

  Name of the HTML tag

- $attrs

  List of attributes that should be parsed out.

- $attrsurl

  List of attributes that should be parsed out. Any output inside the attribute value is url escaped.

- $attrsnoval

  List of attributes that should be parsed out and doesn't contain a value.

- $procinfo

  Processor info. See *Embperl::Syntax* for a definition of procinfo.

- $taginfo

  Additional tag definitions. See *Embperl::Syntax* for more infos.

- $addsess

  If set to 1 session id will be added to attributes passed via `$attrsurl`. If set to 2 a hidden input tag with the session id will be added.

### AddTagInside ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Same as AddTag, but tag could be also used inside of another tag.  (e.g. \<sometag \<someothertag\> \> ). This is not HTML or XML compatible, but maybe useful for implementing tagslibs etc. sometimes.

### AddComment ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Add a new HTML comment. Parameters are the same as for `"AddTag"`.

### AddTagBlock ($tagname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Add a new HTML tag with start and end tag (e.g. \<table\> and \</table\>).  Parameters are the same as for `"AddTag"`.

### AddTagWithStart ($tagname, $startname, $attrs, $attrsurl, $attrsnoval, $procinfo)

Add a new HTML tag which is an endtag for another tag. In opposite to `"AddTagBlock"` the end tag can, but need not exists in the source. Parameters are the same as for `"AddTag"`. Addtionaly the name of the starttag must be specified.

## Author

G. Richter (richter at embperl dot org)

## See Also

Embperl::Syntax
