PL/SQL Packages and Types Reference 10g Release 1 (10.1) Part Number B10802-01 |
|
|
View PDF |
XMLType
is a system-defined opaque type for handling XML data. It as predefined member functions on it to extract XML nodes and fragments.
You can create columns of XMLType
and insert XML documents into it. You can also generate XML documents as XMLType
instances dynamically using the SYS_XMLGEN
and SYS_XMLAGG SQL
functions.
This chapter contains the following topics:
Table 182-1 summarizes functions and procedures of the XMLType
.
Member function. Creates a non-schema based XML document from a schema based instance.
MEMBER FUNCTION CREATENONSCHEMABASEDXML return XMLType deterministic;
Member function. Creates a schema based XMLType
instance from a non-schema based XMLType
value. It uses either the supplied SCHEMA
URL, or the SCHEMALOCATION
attribute of the instance.
MEMBER FUNCTION createSchemaBasedXML( schema IN varchar2 := NULL) return XMLType deterministic;
Parameter | IN / OUT | Description |
---|---|---|
schema |
(IN) |
Optional XMLSchema URL used to convert the value to the specified schema.. |
Static function for creating and returning an XMLType
instance. The string and clob parameters used to pass in the date must contain well-formed and valid XML documents. The options are described in the following table.
Parameter | IN / OUT | Description |
---|---|---|
xmlData
Member function. Checks if the node exists. If the XPath string is NULL
or the document is empty, then a value of 0
is returned, otherwise returns 1
. The options are described in the following table.
Parameter | IN / OUT | Description |
---|---|---|
xpath
(IN) |
The XPath expression to test. | |
nsmap |
(IN) |
Optional namespace mapping. |
Member function. Extracts an XMLType
fragment and returns an XMLType
instance containing the result node(s). If the XPath does not result in any nodes, then returns NULL
. The options are described in the following table.
Parameter | IN / OUT | Description |
---|---|---|
xpath
(IN) |
The XPath expression to apply. | |
nsmap |
(IN) |
Optional prefix to namespace mapping information. |
Member function. Returns a BLOB
containing the serialized XML representation; if the returns is a temporary BLOB
, then it must be freed after use.
MEMBER FUNCTION getBlobVal() RETURN Blob deterministic;
Member function. Returns a CLOB
containing the serialized XML representation; if the returns is a temporary CLOB
, then it must be freed after use.
MEMBER FUNCTION getClobVal() RETURN clob deterministic;
Member function. Returns the namespace of the top level element in the instance. Returns NULL
if the input is a fragment or is a non-schema based instance.
MEMBER FUNCTION getNamespace return varchar2 deterministic;
Member function. Returns a numeric value, formatted from the text value pointed to by the XMLType
instance. The XMLType
must point to a valid text node that contains a numerical value. The options are described in the following table.
MEMBER FUNCTION getNumberVal() RETURN number deterministic;
Member function. Gets the root element of the XMLType
instance. Returns NULL
if the instance is a fragment.
MEMBER FUNCTION getRootElement return varchar2 deterministic;
Member function. Returns the XML Schema URL corresponding to the XMLType
instance, if the XMLType
instance is a schema-based document. Otherwise returns NULL
.
MEMBER FUNCTION getSchemaURL return varchar2 deterministic;
Member function. Returns the document as a string. Returns s string containing the seralized XML representation, or in case of text nodes, the text itself. If the XML document is bigger than the maximum size of the varchar2
, which is 4000
, then an error is raised at run time.
MEMBER FUNCTION getStringVal() RETURN varchar2 deterministic;
Determines if the XMLType
instance corresponds to a well-formed document, or a fragment. Returns 1
or 0
indicating if the XMLType
instance contains a fragment or a well-formed document.
MEMBER FUNCTION isFragment() RETURN number deterministic;
Member function. Determines whether the XMLType
instance is schema-based or not. Returns 1
or 0
depending on whether the XMLType
instance is schema-based.
MEMBER FUNCTION isSchemaBased return number deterministic;
Member function. Checks if the input instance is conformant to a specified schema. Does not change the validation status of the XML instance. If a XML Schema URL is not specified and the xml document is schema based, the conformance is checked against the XMLType
instance's own schema.
member function isSchemaValid( schurl IN VARCHAR2 := NULL, elem IN VARCHAR2 := NULL) return NUMBER deterministic;
Member function. Returns the validation status of the XMLType
instance -- tells if a schema based instance has been actually validated against its schema. Returns 1 if the instance has been validated against the schema, 0
otherwise.
MEMBER FUNCTION isSchemaValidated return NUMBER deterministic;
Member procedure. Validates the XML instance against its schema if it hasn't already been done. For non-schema based documents an error is raised. If validation fails an error is raised; else, the document's status is changed to validated.
MEMBER PROCEDURE schemaValidate( self IF OUT NOCOPY XMLType);
Parameter | IN / OUT | Description |
---|---|---|
self |
(OUT) |
XML instance being validated against the schema. |
Member function. Sets the VALIDATION
state of the input XML instance.
MEMBER PROCEDURE setSchemaValidated( self IF OUT NOCOPY XMLType, flag IN BINARY_INTEGER := 1);
Parameter | IN / OUT | Description |
---|---|---|
self |
(OUT) |
XML instance. |
flag |
(IN) |
0 - |
Member procedure. Converts the XML value to an object type using the XMLSCHEMA
mapping, if available. If a SCHEMA
is not supplied or the input is a non-schema based XML, the procedure uses cannonical mapping between elements and object type attributes.
See Also:
|
MEMBER PROCEDURE toObject( SELF in XMLType, object OUT "<ADT_1>", schema in varchar2 := NULL, element in varchar2 := NULL);
Member function. This member function transforms the XML data using the XSL stylesheet argument and the top-level parameters passed as a string of name=value pairs. If any of the arguments other than the parammap
is NULL
, then a NULL
is returned.
MEMBER FUNCTION transform( xsl IN XMLType, parammap in varchar2 := NULL) RETURN XMLType deterministic;
Parameter | IN / OUT | Description |
---|---|---|
xsl |
(IN) |
The XSL stylesheet describing the transformation |
parammap |
(IN) |
Top level parameters to the XSL - string of name=value pairs |
XMLType
constructor. The options are described in the following table.