-- package declaration
CREATE OR REPLACE PACKAGE pls IS
-- print whole document (on Web page)
PROCEDURE printXML;
-- print a form which may be used to add a new element
PROCEDURE addElementForm(parent IN NUMBER);
-- perform adding an element as child of the given parent or as root if the parent is 0
PROCEDURE doAddElement(parent IN NUMBER, name IN VARCHAR2, submit IN VARCHAR2);
-- prints a form which may be used to add a new attribute
PROCEDURE addAttributeForm(owner IN NUMBER);
-- adds a attribute of the given element, the owner must be > 0
PROCEDURE doAddAttribute(owner IN NUMBER, name IN VARCHAR2,
value IN VARCHAR2, atype IN VARCHAR2, submit IN VARCHAR2);
-- print a form which may be used to change the attribute's value
PROCEDURE changeAttributeValueForm(id IN NUMBER);
-- change the attribute's value
PROCEDURE doChangeAttributeValue(id IN NUMBER, value IN VARCHAR2, submit IN VARCHAR2);
-- delete everything from Elements and Attributes
PROCEDURE clearXML;
-- delete an element
PROCEDURE doDeleteElement(id IN NUMBER);
-- delete an attribute
PROCEDURE doDeleteAttribute(id IN NUMBER);
-- like attributes:
PROCEDURE addTextForm(parent IN NUMBER);
PROCEDURE doAddText(parent IN NUMBER, value IN VARCHAR2, submit IN VARCHAR2);
PROCEDURE changeTextValueForm(id IN NUMBER);
PROCEDURE doChangeTextValue(id IN NUMBER, value IN VARCHAR2, submit IN VARCHAR2);
PROCEDURE doDeleteText(id IN NUMBER);
END pls;
/