Skip to main content
 
developerworks > Community >  Dashboard > DB2 XML > ... > BootCamps > BootCampsUK
developerWorks
Log In   View a printable version of the current page.
Overview New to Forums Wikis
BootCampsUK
Added by db2xml42, last edited by db2xml42 on May 17, 2010  (view change)
Labels: 
(None)

pureXML Bootcamp in London UK - 27-28 April, 2010

Overview

Location: IBM London Southbank - Directions
Register: Closed
Contact: malaika@us.ibm.com if you have any questions
Q&A and Photos from London bootcamp: Q&A and photos from London bootcamps
Q&A and Photos from other bootcamps: Q&A and photos from other bootcamps


Outline Agenda for the Bootcamp

Note the event is focused on XML end-to-end architectures, XML storage, indexing and manipulation through XPath and SQL/XML - and so is suitable for all platforms. XQuery is covered as well as platform specific and cross-platform performance hints and tips.

Day 1

  • Welcome - agenda; Brief introduction
  • XML storage presentation and lab
  • Query part 1 presentation and lab
  • Indexing presentation and lab
  • Application development parts 1 & 2

Day 2

  • Schema Management
  • Query part 2 presentation and lab
  • Best practices, optimization and pitfalls presentation and lab
  • Application development part 3
  • Bootcamp wrap up; summary, Q&A

Prerequisite Sessions to Attend The pureXML Bootcamp

Prior to attending the bootcamp, please review the prerequisite information.

Agenda Outline for the Prerequisite Call:

You may also like to listen to this pureXML introduction too. The playback has options to play from the server or to download a self-extracting set of files with the recording and player. Please feel free to forward the pureXML introduction replay to your co-workers.


pureXML Devotees

You can find out more about pureXML Devotees here - where you can also get yourself added to the pureXML Devotees mailing list.


Photos from the London Bootcamp - April 2010







Questions and Answers from the Bootcamp in London April 2010

Bootcamp Scripts

  • Question: Some of you asked about the bootcamp scripts?
  • Reply: You can find the scripts and labs from an earlier bootcamp here

Inserting and loading non-well-formed XML

  • Question: What happens if I insert non-well formed XML?
  • Answer: With load, the non-well-formed XML will go into the exception file. With insert, the non-well-formed XML will be rejected and the insert will fail.

Application programmer awareness of XML across pages on disk

  • Question: Do application programmers need to be aware of XML that is split by DB2 across pages? Does the programmer need to do something special?
  • Answer: No - the DB2 regions index handles access to the pieces of an XML document scattered across the database pages transparently to the prgrammer - to ensure efficient access. The application designer may want to ask the database administrator to create user defined indexes (XPath indexes) to suit the queries the application programmer will issue - but that is orthogonal to accessing XML that is stored over a number of databases pages.

Shredding XML

  • Question: Why would I continue to shred XML?
  • Answer: There are many reasons to shred XML, e.g., you may:
    • want to populate an existing database that you don't want to (or are not ready to) restructure as XML.
    • want to pull out a few identifiers into relational columns from the XML that form part of a general purpose infrastructure across all tables, e.g. to generate feeds

One XML column in a table

  • Question: Is it good practice to have one XML column in a table?
  • Answer: We often see just one XML column in a table - but occasionally people do split an XML up into multiple columns or have multiple XML columns, e.g.:
    • Some applications are allowed access to one portion of the XML only, so at XML insert, part of the XML is extracted into a separate XML column that everyone can access and the complete XML in placed in another column with restricted access. XMLTABLE is often used to extract portions of XML

Elements and attributes

  • Question: When do I use elements? When do I use attributes?
  • Answer: You can find some advice here : http://xml.coverpages.org/elementsAndAttrs.html - The advice can be summarised by the editor's note: John Cowan provides an excellent summary|, ending with Michael Kay says: Beginners always ask this question. Those with a little experience express their opinions passionately. Experts tell you there is no right answer

Limit string length

  • Question: Can I limit the length of a string in XML Schema?
  • Answer: Yes - Here is an example taken from w3schools where you can see more restriction:
    <xs:element name="password">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:length value="8"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:element>

Text Search

  • Question: Can I use text search with DB2 pureXML?
  • Answer: Yes - see the text search section of the bootcamp presentation pdf - omnifind

Data Power

CICS and DB2 pureXML

Universal Services for DB2 zOS and LUW

SYSXMLSTRINGS on DB2 zOS

  • Question: Where is SYSXMLSTRINGS cached?
  • Answer: In the DB2 key 7 memory area - its memory is from the DBM1 address space, above the bar

docproperty and schemaproperty on DB2 zOS

  • Question: With z/OS, when we talk about registering an XML Schema what do :docproperty and :schemaproperty mean? Also, what does the last parameter (0) of the XSR_COMPLETE stored procedure mean?
  • Answer: From the DB2 Information Center http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/topic/com.ibm.db29.doc.xml/db2z_sp_xsraddschemadoc.htm
    • docproperty - An input parameter of type BLOB(5M) that indicates the properties for the XML schema document being added. This parameter can have a NULL value; otherwise, the value is an XML document.
  • Answer: From: http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/topic/com.ibm.db29.doc.xml/db2z_sp_xsrcomplete.htm
    • schemaproperties - An input argument of type BLOB(5M) that specifies properties, if any, associated with the XML schema. The value for this argument is either NULL, if there are no associated properties, or an XML document representing the properties for the XML schema.
    • The last parameter (0) of the XSR_COMPLETE stored procedure means: isusedfordecomposition - An input parameter of type integer that indicates if an XML schema is to be used for decomposition. If an XML schema is to be used for decomposition, this value should be set to 1; otherwise, it should be set to zero. XML schema decomposition is deprecated.

DB2 pureXML on zOS and Ziip & Zaap

DB2 pureXML locks on zOS

  • Question: How does locking work with XML data? Is there a new lock type for XML, what's the locking granularity and are all the standard isolation levels available? etc
  • Answer: XML document level locking is new type
    • For non-data-sharing: There is no lock on the page or row on the XML table space
    • For data sharing: There is P-lock at row level for insert/update
  • For readers, there is only XML document level locking
  • Uncommited Read (UR) readers need to acquire the XML document lock in order to read the document because there is no longer any lock on the row
  • All the standard isolations are available.
  • Here is XML locking in one chart

Client Query

Derivatives and pureXML

pureXML documentation and information sources