
XMLマスターへの道
〜「XMLマスター:ベーシック」試験対策〜
第7回 XMLマスター模擬試験:W3C XML Schema
福内 かおり・木村 達哉
2003/6/21
|
前回「XMLマスター模擬試験:XMLの基本」から「特別編」として、XMLマスターの模擬問題を中心にお届けしています。模擬問題は@ITハイブックスシリーズ『XML技術者認定試験「XMLマスター ラーニングブック」−ベーシック 編−』から抜粋してお届けしていきます。
今回は、第4章「W3C XML Schema」から、W3C XML Schema関連の問題を紹介します。
| 問 題 04-001 W3C XML Schemaの概要 | |
|
(Q) W3C XML SchemaとDTDの違いを述べた次の記述のうち、間違っているものをすべて選択してください。(複数選択)
|
■解説
DTDはXML文書の妥当性を検証するための規則を定義するために策定されましたが、DTDだけでは不十分なケースがいくつか出てきました。W3C XML Schema(WXS)はDTDが持つさまざまな欠点を克服し、2001年5月に勧告しました。
W3C XML Schemaの仕様は、以下の3つで構成されています。
| ● | XML Schema Part0:Primer :XML Schema全体を分かりやすく解説した入門書 |
| ● | XML Schema Part1:Structures :構文についての仕様書 |
| ● | XML Schema Part2:Datatypes :データ型に関する仕様書 |
設問では、属性値に関してはDTDでも若干の制約を用意しています。
ID型は値の一意性に関する制約であるし、列挙型では指定された文字列のいずれか1つのみを記述できます。
DTDと同じ内容をWXSで定義するときは、DTDにて1行で記述されていたものをWXSにて複数行で記述する場合が多く、多くの場合、DTDの記述量より増えます。
■POINT
DTDに対してW3C XML Schemaを比較した特徴をまとめると、以下のようになります。
| ● | 書式がXML形式です。 |
| ● | データ型や制約を定義することができます。 |
| ● | 名前空間に対応しています。 |
| ● | 要素や属性を宣言することと、それらをツリー構造定義の中に配置することを分けて考えます。 |
| ● | 1度定義したものを拡張できます。 |
■正解 C、E
| 問 題 04-002 スキーマ宣言 | |
|
(Q) W3C XML Schema文書の作成方法に関する次の記述のうち、間違っているものを選択してください。(単一選択)
|
■解説
XSDで記述されたXML文書のことを「XML Schema文書」と呼びます。XML Schema文書のルート要素は、名前が「schema」で、その名前空間は、「http://www.w3.org/2001/XMLSchema」というURIです。Schema要素の子孫要素の中で、型の定義、要素宣言、属性宣言などのスキーマ定義言語が記述されます。
XSDの名前空間接頭辞に特に指定はありませんが、以前は「xsd」という文字列を使っているものが多かったのですが、最近では「xs」が慣習的に利用されるようになりました。
■POINT
XML Schema文書のルート要素は必ずschemaです。
■KEYWORD
| ● | XML Schema Definition Language:XSD W3C XML Schema仕様の中で定義されている記述言語はXML Schema Definition Language(XSD)です。WXSにのっとって定義されたスキーマを記述するためのXMLの言語です。 |
| ● | XML Schema文書 XSDで記述されたXML文書のことです。 |
■正解 B
| 問 題 04-003 名前空間の指定 | |
|
(Q) W3C XML Schemaで要素を定義するとき、ある名前空間にその要素を関連付けたいと思います。このとき記述するべき属性に関する次の説明のうち、正しいものを選択してください。(単一選択)
|
■解説
schema要素のtargetNamespace属性に名前空間を記述すれば、トップレベル(schema要素直下の階層)で定義されたものがその名前空間に関連付けられます。
さらに、トップレベルでない要素定義をその名前空間に関連付けるためには、schema要素のelementFormDefault属性に "qualified" を記述します。
[参考]
WXS仕様ではインスタンス文書とスキーマ文書の関連付けを行う方法を特に決めていませんが、ヒントとしてschemaLocatin属性とnoNamespaceSchemaLocation属性が定義されています。
■KEYWORD
| ● | targetNamespace属性 スキーマ定義をする際に対象となる名前空間識別子を指定します。 |
| ● | schemaLocatin属性 名前空間に属するボキャブラリが記述されているスキーマ文書を指します。これはXMLインスタンスのルート要素で指定し、スキーマ文書との関連付けを行います。 |
| ● | noNamespaceSchemaLocation属性 名前空間に属さないボキャブラリが記述されているスキーマ文書を指します。 |
■正解 B
| 問 題 04-004 組み込みデータ型 | |
|
(Q) W3C XML Schemaで用意されているデータ型をすべて選んでください。(複数選択)
|
■解説
WXSでは、宣言とデータ型の定義は切り離されています。どのような内容でもあらかじめ型を定義するか、もしくは組み込み型を使用しなくてはいけません。
XML Schema Part2:Datatype仕様には組み込み型が定義されています。
組み込み型は要素宣言や属性宣言のtype属性を利用して使用することができます。WXSであらかじめ定義されているデータ型には一覧があります(表)。
![]() |
| 表 WXSであらかじめ定義されているデータ型(W3Cより引用)(1) |
![]() |
| 表 WXSであらかじめ定義されているデータ型(W3Cより引用)(2) |
![]() |
| 表 WXSであらかじめ定義されているデータ型(W3Cより引用)(3) |
例)データ型の使用
XMLインスタンスにて
<price>100</price>
XSD記述では
<xs:element name="price" type="int">
組み込み型を制限したり拡張したりして、独自の型を定義することもできます(問題04-005「simpleType」を参照)。
■正解 A、C、E、F
■関連サービス:ITトレメ
ITエンジニアのスキルアップ、キャリアアップを支援するWebサイト「@IT自分戦略研究所」では、XMLマスター:ベーシックの模擬問題が毎日メールで届くサービス「ITトレメ」を提供しています。Webページ上で過去に配信した問題も参照できます。(編集局)
XML技術者認定試験「XMLマスター ラーニングブック」−ベーシック 編−本記事は@ITハイブックスシリーズ「XML技術者認定試験「XMLマスター ラーニングブック」−ベーシック 編−」(技術評論社)から、一部の内容を編集し転載したものです。本書の詳細は「@ITハイブックス」サイトでご覧いただけます。 |
| (8)模擬問題:DOM |
| 連載:XMLマスターへの道 |
ホワイトペーパー(TechTargetジャパン)
- QAフレームワーク:仕様ガイドラインが勧告に昇格 (2005/10/21)
データベースの急速なXML対応に後押しされてか、9月に入って「XQuery」や「XPath」に関係したドラフトが一気に11本も更新された - XML勧告を記述するXMLspecとは何か (2005/10/12)
「XML 1.0勧告」はXMLspec DTDで記述され、XSLTによって生成されている。これはXMLが本当に役立っている具体的な証である - 文字符号化方式にまつわるジレンマ (2005/9/13)
文字符号化方式(UTF-8、シフトJISなど)を自動検出するには、ニワトリと卵の関係にあるジレンマを解消する仕組みが必要となる - XMLキー管理仕様(XKMS 2.0)が勧告に昇格 (2005/8/16)
セキュリティ関連のXML仕様に進展あり。また、日本発の新しいXMLソフトウェアアーキテクチャ「xfy technology」の詳細も紹介する
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |










