MODULE XhtmlWriters;
(**
	project	= "BlackBox"
	organization	= "www.oberon.ch"
	contributors	= "Oberon microsystems"
	version	= "System/Rsrc/About"
	copyright	= "System/Rsrc/About"
	license	= "Docu/BB-License"
	changes	= "
	- YYYYMMDD, nn, ...
	"
	issues	= "
	- ...
	"

**)

	CONST prettyPrint* = FALSE; preserve* = TRUE;

	TYPE
		Error* = POINTER TO RECORD 
			pos*: INTEGER;
			msg*: ARRAY 80 OF CHAR
		END;

		Writer* = POINTER TO ABSTRACT RECORD END;

	PROCEDURE (wr: Writer) Error* (): Error, NEW, ABSTRACT;
	PROCEDURE (wr: Writer) Ln*, NEW, ABSTRACT;
	PROCEDURE (wr: Writer) Comment* (IN comment: ARRAY OF CHAR), NEW, ABSTRACT;
	PROCEDURE (wr: Writer) Instruction* (IN piTarget, instruction: ARRAY OF CHAR), NEW, ABSTRACT;
	PROCEDURE (wr: Writer) DocType* (IN rootName, pubidLiteral, sysidLiteral: ARRAY OF CHAR), NEW, ABSTRACT;
	PROCEDURE (wr: Writer) StartTag* (IN elem: ARRAY OF CHAR; preserve: BOOLEAN), NEW, ABSTRACT;
	PROCEDURE (wr: Writer) Attr* (IN name, value: ARRAY OF CHAR), NEW, ABSTRACT;
	PROCEDURE (wr: Writer) Data* (IN data: ARRAY OF CHAR), NEW, ABSTRACT;
	PROCEDURE (wr: Writer) EndTag*, NEW, ABSTRACT;

END XhtmlWriters.
