Viper 2で学ぶXMLデータベース最新事情
Viper 2で学ぶXMLデータベース最新事情(4)

“XML DBのプロ”を認定する資格試験に挑戦だ!


日本アイ・ビー・エム
中林 紀彦
2008/2/15

結果は……

 70%の正解率で不合格でした。80%の合格率まではあと数問だったのですが、実践中心の学習では限界があったようです。

反省会&特訓メニュー

 受験後、Kさんは再受験が無料のプログラム(2008年2月6日まで)があることを知っていたので、再受験に向けて早速、試験問題やこれまでの学習方法などを振り返って特訓メニューを作りました。

 XMLデータベース試験ということもあり、XPathやXQueryを中心に学習してきましたが、XMLの定義や構造など、XPathとXQuery以外の分野からの出題も比較的多く、その部分で失点していたので、もう一度、出題範囲や適用される仕様などを見直してみました。

 意外に見落としがちですが、試験ガイドに具体的な試験範囲があり、非常に参考になります。

 あらためてそれぞれのセクションに書かれている項目を見直してみると、実際の試験の対象がよく反映されていることに気付きました。また、

に関しても、「DOM Level2」の仕様も含まれていたり、「XQueryエラーコード、エラーメッセージもXQuery 1.0の標準に従います」などと注意書きがあったりと、この2つの情報も含めて学習範囲と内容を見直しました。

追加学習資料

 『XMLマスター教科書 ベーシックV2』の教科書を利用して、セクション3のXML DB操作時の考慮点にあるDTDやXML Schemaに関する部分を徹底的に学習することにしました。もちろん、XMLマスター教科書 プロフェッショナル(データベース)のXML Schemaに関連する部分についても細部まで目を通して頭に入れるようにしました。また、W3CのXQuery 1.0の仕様についても目を通すことにしました。

再受験(試験の傾向と対策)

 さていよいよ再受験です。特訓メニューでXML Schemaの基本と応用に関する部分を徹底的に学習し、XQueryの仕様にも目を通していたことが得点アップにつながり、正解率80%をクリアし、見事合格できました。

@ITの読者限定:セクション別の傾向と対策

 さて特訓の成果が実って合格できたKさんですが、読者の皆さんの学習の参考になるように、4つのセクション別の傾向と対策を簡単にまとめてみましたので、ぜひ参考にしてください。

  • XMLデータのデータベース化に関する概要
    XMLデータベースに関する常識的な内容も問われますが、XQueryの仕様に関する細かな知識が要求される問題なども出題されます。

    対策:XQueryの仕様について、特にXQueryの処理モデルで使われるコンテキスト(静的コンテキスト、動的コンテキスト)の定義を、先に提示した学習資料などでしっかり頭に入れておきましょう。動的コンテキストについては、DB2のマニュアル「動的コンテキストおよびフォーカス(DB2 XQuery)」にも記述があります。また、XDM(XQuery 1.0 and XPath 2.0 Data Model)についての理解を深めておくと、次の“XQuery、XPath式”のセクションでXQueryを解く際に役立つと思います。

  • XQuery、XPath式
    このセクションは高いレベルの総合力が要求されます。XQueryの問題などは、複合問題(ユーザー定義関数+比較式など)が多く、また、用意された選択肢も違いを見分けることが難しいものもあり、知識と実践力が問われます。

    対策:個々の関数(fn:data()、fn:string()、fn:name()など)や軸、比較式、量化式、typeswitch表現式、演算子(union、intersect、except)を押さえておくことと、さらにこれらが複合して出題されるケースを想定した実践も、できればやっておいた方がよいでしょう。また、エラー・コードやエラー・メッセージも“適用される仕様”に記載がありますので、実践的な学習の中で故意に間違ったXQueryを実行してみるのもよいと思います。

  • XMLデータベースの操作
    このセクションでは、XMLデータベースにおいて空白やCDATAセクション、特殊文字がどのように扱われるか、また、XQueryインジェクションについて出題されます。

    対策:XPath、DOM level2、Infosetなどのドキュメント・モデルで空白やCDATAセクション、特殊文字がどのように扱われるかを、整理してまとめておくとよいでしょう。

  • XMLデータ構造の設計
    このセクションでは、XML Schemaの応用問題が比較的多く出題されます。

    対策:XML Schemaでの名前空間の定義、データの一意性、スキーマの変更・拡張についてよく学習しておく必要があります。特にスキーマの変更・拡張については、include、import、redefineを使ってできることや、それぞれの違いについて整理しておくと役立つでしょう。

学習資料

 以下に、受験に役立つ資料をまとめましたので参考にしてください。

基本となる教科書
XMLマスター教科書 プロフェッショナル(データベース)
試験範囲全般をカバーしていて、内容も詳しく解説してあるのでまずはこの1冊を読破すること。この本にはサンプルとなるXMLやXML Schemaファイルが付属するので、実践的な学習にも利用できる。
参考書
DBマガジン「XMLマスター実践講座」
『XMLマスター教科書 プロフェッショナル(データベース)』には載っていない細かい内容が含まれる回もあるので、できれば目を通しておいた方がよい。また、『XMLマスター教科書 プロフェッショナル(データベース)』と併せて読むことで、多面的な理解が深まる。
XMLマスター教科書 ベーシックV2
DTDやXML Schemaの基礎的な部分の復習に役立つ。もちろん、プロフェッショナル試験ではこの内容に加えて応用的な部分も必要になる。
XML逆引きクイックリファレンス XML 1.0(3rd Edition)対応
XMLに関する技術を広くカバーしているので、参考書的に利用できる。XMLに関する書籍はほかにもあるので、手持ちのものでも大丈夫。
XQuery 1.0: An XML Query Language(W3C)
英文でかなり長文なので、すべてを読破する必要はないが、“2.1 Expression Context”と“2.2 Processing Model”の部分、“Appendices F Error Conditions”の部分はできれば一読しておいた方がよい。“Error Conditions”については、DB2 9.5のマニュアルに日本語訳がある。
実践学習
IBM developerWorks Japan:「XMLマスター・プロフェッショナル(データベース)学習ガイド:XPathやXQueryの実行環境を準備する」
実践力を問われる試験なので、実際に動かしながら身に付けるのが一番、実力につながる。練習問題にはなかったような複合問題も出題されるので、以下の例のように自分でXQueryを作成しながら慣れるのもよい。

<店舗>
  <アイテム>
    <商品 id="10101">横浜Tシャツ(長袖)</商品>
    <価格>1000</価格>
    <サイズ>S</サイズ>
    <サイズ>M</サイズ>
    <サイズ>L</サイズ>
    <色>黒</色>
    <色>赤</色>
    <色>青</色>
    <素材>コットン</素材>
    <生産国>中国</生産国>
    <輸入国>アメリカ</輸入国>
  </アイテム>
  <アイテム>
    <商品 id="10102">横浜TシャツA(半袖)</商品>
    <価格>1000</価格>
    <セール>800</セール>
    <サイズ>M</サイズ>
    <サイズ>L</サイズ>
    <色>白</色>
    <色>赤</色>
    <色>青</色>
  </アイテム>
</店舗>
XML文書(sample.xml)

xquery
for $doc in db2-fn:xmlcolumn("XMLTABLE.XMLDOC")/アイテム
let $s_size := ($doc//サイズ)
let $color := ($doc//色)
where some $a in $s_size satisfies $a = "S"
return 
element ret {$doc/* except $color}
XQuery

 さて4回にわたってXMLデータベースについて連載してきましたが、いかがだったでしょうか? XMLデータベースは過去のものでも、未来のものでもなく、まさにいますぐ活用できる技術です。皆さんもぜひXMLデータベースを使ってみてください。(連載完)

  3/3  

 Index
連載:Viper 2で学ぶXMLデータベース最新事情(4)
 “XML DBのプロ”を認定する資格試験に挑戦だ!
  Page 1
・XMLマスター:プロフェッショナル(データベース)とは
  Page 2
・試験に向けての勉強方法は?
・いざ受験! 90分の試験時間は思ったよりも短い
Page 3
・結果は……
・再受験(試験の傾向と対策)


Viper 2で学ぶXMLデータベース最新事情


@IT Special

- PR -

TechTargetジャパン

Database Expert フォーラム 新着記事
  • 「実行プラン」を理解すると、パフォーマンス問題の解決能力が一気に向上する (2017/3/27)
     本連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「実行プランの重要性」を解説します
  • ゼロから理解する「Oracle RAC」 (2017/3/24)
     本連載では、データベースの基本から、障害対策やチューニングといった実践に即したTipsまでを幅広く解説します。今回は、Oracle Databaseのクラスタリング機能である「Oracle Real Application Clusters(Oracle RAC)」の基礎と仕組みを解説します
  • Hadoopで処理を実装してみる──Hadoop Streamingでの処理、script-runner.jarの使い方 (2017/3/21)
     実際にHadoopで処理を実装していきながら「Hadoopは、誰にだって扱える」を体感しましょう。今回は、「MapperやReducerから特定のファイルを参照」「Hadoop Streamingでの処理」「script-runner.jarの使い方」など、Hadoopで処理を実装する初歩の手順を解説します
  • PL/SQLとは何か (2017/3/14)
     本連載は、「PL/SQL(Procedure Language/Structured Query Language)」を理解し、活用していくための実践講座です。初回は「PL/SQLの特徴とプログラムの基本構造」を解説します
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る

ホワイトペーパーTechTargetジャパン

注目のテーマ

Database Expert 記事ランキング

本日月間
ソリューションFLASH