An embedded XML Database: Oracle Berkeley DB XML
There is more to life than RDBMS
Posted in Developer, 18th July 2007 11:31 GMT
Free whitepaper – Dell PowerEdge servers product guide
Using the Command Shell
The dbxml shell may be started with the dbxml command:
C:/>dbxml
The following prompt gets displayed:
dbxml>
Berkeley DB XML commands may be specified at the dbxml command prompt. Let’s first create a container to store XML documents using the createContainer command:
dbxml>createContainer catalog.dbxml
A node storage container with nodes indexed gets created and opened (see Figure 3):

The BDB XML database is just a .dbxml file created in the directory in which the dbxml command was issued.
Adding XML Documents
Next, we’ll add XML documents to the container, using the putDocument command. For example, add an XML document that represents a catalog entry:
dbxml>putDocument catalog1 '<catalog title="Oracle Magazine" publisher="Oracle Publishing"> … </catalog>' s
Single quotes are used for any command parameters that span multiple lines or contain spaces. The character ‘s’ used to terminate the command indicates that the XML document is added using a string.

Similarly add another catalog ‘catalog2’. The XML documents added may be retrieved with the getDocuments command:
dbxml>getDocuments
The documents retrieved may be output to stdout with the print command:
dbxml>print

Querying XML Documents with Xquery
XQuery queries retrieve subsets of data similarly to the use of SELECT statement in SQL. Each query has two parts; the first part identifies the set of documents to be queried using an XQuery navigation function such as collection() or doc(). The collection() function is used to navigate to a container. The doc() function may be used to navigate to a specified XML document in a container. As an example of a query select all the article titles in the catalog.dbxml container using the query command:
dbxml>query 'collection("catalog.dbxml")/catalog/journal/article/title/text()'
To output the results of the query use the print command:
dbxml>print Using Bind Variables From Application Express to XE
Next page: Modifying XML Documents
Free whitepaper – Total cost of ownership of Dell, HP and IBM blade solutions

Analyst Keynote: The Register Agile Data Center Summit
10 Strategies for Choosing a Midmarket ERP Solution
Enabling The Agile Data Center
Buyer's Guide: ERP Systems
Sun's surviving staff hit with 'motivation' missive
Ubuntu's Karmic Koala bares fangs at Windows 7
Change your views: OS X tags exploited
Sun preps cell-phone Java plan for netbooks