As documented in the article Oracle Database 10g Express Edition: Not Just for Learners, the main limitations of Oracle Database 10g Express Edition (XE) are often not problematic for development and small business production environments. These limitations include memory, CPU, and disk space limitations as well as a restriction on the number of XE database instances that can run on a single machine and no internal Java Virtual Machine (JVM).
While XE provides general Oracle XML DB support, it does not have its own internal JVM and so cannot support many of the XQuery functions. When trying to use the
XMLQuery()SQL function on an XQuery expression, an error message like the following occurs:
ORA-19114: error during parsing the XQuery expression:
PLS-00201: identifier 'SYS.DBMS_XQUERYINT' must be declared
An Oracle online forum entry confirms that XQuery support is not available in Oracle Database 10g XE. This entry explains why lack of support for an internal JVM negatively impacts XE's ability to support XQuery. Another confirmation of lack of internal Java support (and hence lack of XQuery support) in XE is present in a Laurent Schneider blog entry.
Perhaps the best source of information on what Oracle Database XE supports and doesn't support is its licensing documentation. The Oracle Database Express Edition Licensing Information 10g Release 2 (10.2) features Table 2.2 ("Application Development, Language, and Database Features") that indicates that the XE database does NOT support several features related to the information above. Specifically, this table states there is "no Java support in the database," "no Java Server Pages," and "no Java native compilation." Perhaps most importantly for this blog entry, Table 2.2 also says regarding "XML support in the database": "Yes (no XQuery...)". Finally, it is also worth noting that Database XE 10g Release 2 does not support "Database web services" according to this table.