PBDOM_DOCUMENT:
AddContent method
Description
Allows
you to add a new PBDOM_OBJECT into the current PBDOM_DOCUMENT
object.
Syntax
1 |
<span>pbdom_document_name</span>.AddContent(pbdom_object <span>pbdom_object_ref</span>) |
Argument |
Description |
---|---|
pbdom_document_name |
The name of a PBDOM_DOCUMENT |
pbdom_object_ref |
The PBDOM_OBJECT to add |
Return Values
PBDOM_OBJECT. The return value is the newly modified PBDOM_DOCUMENT
object returned as a PBDOM_OBJECT.
Throws
EXCEPTION_USE_OF_UNNAMED_PBDOM_OBJECT – The
input PBDOM_OBJECT is nameable, but it currently has no
name.
EXCEPTION_PBDOM_OBJECT_INVALID_FOR_USE – The
input PBDOM_OBJECT object is not associated with a derived
PBDOM_OBJECT class object.
EXCEPTION_INAPPROPRIATE_USE_OF_PBDOM_OBJECT – Adding
the input PBDOM_OBJECT is inappropriate. See description
section below on the valid PBDOM_OBJECTs that can be added
to a PBDOM_DOCUMENT object.
EXCEPTION_PBDOM_OBJECT_ALREADY_HAS_PARENT – If
the PBDOM_OBJECT to be added already has a parent PBDOM_OBJECT.
EXCEPTION_MULTIPLE_ROOT_ELEMENT – If
a PBDOM_ELEMENT is to be added and this document already
has a root element.
EXCEPTION_MULTIPLE_DOCTYPE – If
a PBDOM_DOCTYPE is to be added and this document already
has a DOCTYPE.
Examples
The document pbdom_doc1 is
created with three elements: pbdom_elem_1, pbdom_elem_2,
and pbdom_elem_3. pbdom_elem_2 and pbdom_elem_3 are
set as children of pbdom_element_1. pbdom_doc1.GetRootElement().Detach()
detaches
the root element from pbdom_doc1. pbdom_elem_1 is
added as a child of pbdom_doc1 with pbdom_doc1.AddContent(pbdom_elem_1).
1 |
TRY<br>   PBDOM_ELEMENT pbdom_elem_1<br>   PBDOM_ELEMENT pbdom_elem_2<br>   PBDOM_ELEMENT pbdom_elem_3<br>   PBDOM_DOCUMENT pbdom_doc1<br> <br>   pbdom_doc1 = Create PBDOM_DOCUMENT<br>   pbdom_elem_1 = Create PBDOM_ELEMENT<br>   pbdom_elem_2 = Create PBDOM_ELEMENT<br>   pbdom_elem_3 = Create PBDOM_ELEMENT<br> <br>   pbdom_elem_1.SetName("pbdom_elem_1")<br>   pbdom_elem_2.SetName("pbdom_elem_2")<br>   pbdom_elem_3.SetName("pbdom_elem_3")<br> <br>   pbdom_elem_1.AddContent(pbdom_elem_2)<br>   pbdom_elem_1.AddContent(pbdom_elem_3)<br> <br>   pbdom_doc1.NewDocument("", "", "Root_Element", &<br>      "", "")<br>   pbdom_doc1.GetRootElement().Detach()<br>   pbdom_doc1.AddContent(pbdom_elem_1)<br>CATCH (pbdom_exception ex)<br>   MessageBox("Exception", ex.getMessage())<br>END TRY |
The original root element <Root_Element> has
been detached and replaced by <pbdom_elem_1>.
The document is transformed to:
1 |
<!DOCTYPE Root_Element><br><pbdom_elem_1><br>   <pbdom_elem_2/><br>   <pbdom_elem_3/><br></pbdom_elem_1> |
If the following root element detachment statement is omitted,
an exception is thrown:
pbdom_doc1.GetRootElement().Detach()
Usage
The new PBDOM_OBJECT becomes a child PBDOM_OBJECT
of the current PBCOM_DOCUMENT. The following table lists
the PBDOM_OBJECTs that can be added to a PBDOM_DOCUMENT
object and the restrictions for their addition.
PBDOM_OBJECT |
Restrictions |
---|---|
PBDOM_ELEMENT |
Allowed to be added only if this document currently |
PBDOM_COMMENT |
Any number of PBDOM_COMMENT |
PBDOM_ |
Any number of PBDOM_PROCESSINGINSTRUCTION |
PBDOM_DOCTYPE |
Allowed to be added only if this document currently |