1662: END IF;
1663:
1664: WHILE l_totalLen >= l_amount LOOP
1665: DBMS_LOB.READ(l_xmlblob, l_amount, l_offset, l_rawBuffer);
1666: DBMS_LOB.WRITEAPPEND(l_xmlclob, LENGTH(utl_raw.cast_to_varchar2(l_rawBuffer)), utl_raw.cast_to_varchar2(l_rawBuffer));
1667: l_totalLen := l_totalLen - l_amount;
1668: l_offset := l_offset + l_amount;
1669: END LOOP;
1670:
1669: END LOOP;
1670:
1671: IF l_totalLen > 0 THEN
1672: DBMS_LOB.READ(l_xmlblob, l_totalLen, l_offset, l_rawBuffer);
1673: DBMS_LOB.WRITEAPPEND(l_xmlclob, LENGTH(utl_raw.cast_to_varchar2(l_rawBuffer)), utl_raw.cast_to_varchar2(l_rawBuffer));
1674: END IF;
1675:
1676:
1677: RETURN l_xmlclob;