独習XML ~第3章 文書と構造~ 3.3 スキーマ 3.3 XML Schema

Slides:



Advertisements
Similar presentations
XML ゼミ 独習 XML ~ 第 6 章 XHTML~ 6.1 XHTML の概要 6.2 XHTML の構造 谷津 哲平.
Advertisements

2.5 プログラムの構成要素 (1)文字セット ① ASCII ( American Standard Code for Interchange ) JIS コードと同じ ② EBCDIC ( Extended Binary Coded Decimal for Information Code ) 1.
応用 Java(Java/XML) 第 10 回 2006 年 7 月 14 日 植田龍男. 後半の内容の予定 XPath (6/9) 、 XSLT (6/16) 名前空間 (Namespace) (6/16) XML 文書の妥当性の検証 (6/23) DTD, W3C XML Schema SOAP.
リスト1 DICOMデータの例 000: 010: 020: 030: 040: 050: 060: 070:
Webサービスに関する基本用語 Masatoshi Ohishi / NAOJ & Sokendai
第9回 2007年6月22日 応用Java (Java/XML).
バリデータ J2EE II 第11回 / 2006年1月19日.
RELAX チュートリアル 川口耕介 Swift,Inc..
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
背景 我々の研究室で開発しているJavaプログラム解析フレ ームワークでは,解析情報はメモリ上に保持される 問題点
HTMLの記述と WWWにおける情報公開 遠藤
Microsoft Office 2010 クイックガイド ~Access編~
JSFによるWebアプリケーション開発 第11回
WSDL と JAX-RPC 年10月13日 Webサービス II (第3回) WSDL と JAX-RPC 年10月13日.
SQL J2EE I 第3回 /
Myoungkyu Song and Eli Tilevich 発表者: 石尾 隆(大阪大学)
地理情報システム論 第3回 コンピュータシステムおける データ表現(1)
XMLゼミ 2.3 XMLのプロローグ 2.4 XMLのタグ 高橋 辰裕.
第4回 2007年5月11日 応用Java (Java/XML).
XMLについて 蔡柏東.
タグライブラリ ソフトウェア特論 第6回.
WSDL と JAX-RPC 年10月20日 Webサービス II (第4回) WSDL と JAX-RPC 年10月20日.
2005年10月6日 植田龍男 Webサービス II (第2回) 年10月6日 植田龍男.
SGMLについて 2年8組  原口 文晃.
XMLゼミ 5.1 XML文書と表示 5.2 CSS 5.3 XMLとXSL 高橋 辰裕.
第3回 配列,構造体,ポインタ ~ データ構造について学ぶための基礎~
入出力データ型に透過な Webサービス動的実行システム 松江工業高等専門学校 情報工学科 越田高志 情報処理学会第68回全国大会
Javaによる Webアプリケーション入門 第5回
「ユーザー設定リスト」の作成と削除 ◎ 新しい「リスト」の作成法
第12回 2007年7月13日 応用Java (Java/XML).
ちょっとした練習問題① 配列iroを['R', 'W', 'R', 'R', 'W' , 'W' , 'W']を宣言して、「W」のときの配列の番号をprintfで表示するようなプログラムを記述しなさい。
第10回 2007年6月29日 応用Java (Java/XML).
第2回.リレーショナルデータベース入門 SQL を用いたテーブルへの行の挿入 SQL 問い合わせの発行と評価結果の確認.
第2回.リレーショナルデータベース入門 SQL を用いたテーブルへの行の挿入 SQL 問い合わせの発行と評価結果の確認.
第11回 2007年7月6日 応用Java (Java/XML).
第3回 2007年4月27日 応用Java (Java/XML).
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
資料1-6 平成26年度 第1回技術委員会資料 支援ツール群整備方針
独習XML 第2章 XML文書の構成要素 2.1 XMLの文字と文字列 2.2 コメント
インラインスクリプトに対するデータフロー 解析を用いた XHTML 文書の構文検証
エクセル(6)の目次 「ユーザー設定リスト」の作成と削除 「入力規則」での「リスト」 ユーザー定義による表示形式
ソフトウェア制作論 平成30年10月3日.
Javaによる Webアプリケーション入門 第2回
XMLゼミ 1.3 XML文書の表示 1.4 XMLの役割 1.5 XMLとプログラミング M2 正木 裕一.
エンタープライズアプリケーション II 第9回 / 2006年7月23日
第1章 実世界のモデル化と形式化 3.地物インスタンスの表現
第13回 2007年7月20日 応用Java (Java/XML).
クリアリングハウスと 空間データ交換システムの連携 - メタデータとXML - 平成11年2月10日 (株) NTTデータ 情報科学研究所
XML Schema (1) ソフトウェア特論 第3回 /
~let's take fun when you can do it~
応用Java(Java/XML) 第7回 2006年6月16日 植田龍男.
XMLゼミ 3.5 DTD M2 正木 裕一.
3-1.文書と構造 3-2.整形式文書と検証済み文書 兒玉 光太郎
1-3 UMLの図(ダイアグラム) コンポーネント図 システムの物理的な構成を表現 ソフトウェアコンポーネントの依存性を表現
項目間の対応関係を用いた XBRL財務報告書自動変換ツールの試作
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
拡張可能なアスペクト指向モデリングにおける織り合わせの検証
JavaScriptを含んだHTML文書に対する データフロー解析を用いた構文検証手法の提案
独習XML ~第1章 XMLの基礎~ 1.1 XML文書の基礎 1.2 XMLとHTML
JSPの基本 J2EE I (データベース論) 第8回 /
JSFによるWebアプリケーション開発 第10回
SQL J2EE I (データベース論) 第3回 /
15.1 文字列処理の基本 15.2 文字列処理用ライブラリ関数
2006年10月18日 植田龍男 Webサービス II (第4回) 年10月18日 植田龍男.
プログラミング入門2 第5回 配列 変数宣言、初期化について
情報処理Ⅱ 小テスト 2005年2月1日(火).
SQL データベース論 第11回.
計算機プログラミングI 第5回 2002年11月7日(木) 配列: 沢山のデータをまとめたデータ どんなものか どうやって使うのか
応用Java(Java/XML) 第8回 2005年6月23日 植田龍男.
Presentation transcript:

独習XML ~第3章 文書と構造~ 3.3 スキーマ 3.3 XML Schema ~第3章 文書と構造~ 3.3 スキーマ 3.3 XML Schema 谷津 哲平

スキーマとは さまざまな文書やデータの内容構造を定義したもの(広義) 整形式文書(内容の保証なし) 検証済み文書(構造が厳格) スキーマ文書 XML文書の構造を定義するための方法 DTD (Document Type Definition、文書型定義) XML Schema (XMLスキーマ) RELAX (Regular Language Description for XML) Microsoft XML Schema (XML Data) ※スキーマとXML Schemaは同じではない 有効性を検証した文書(valid XML document)はタグの順序や属性値などが スキーマ文書に定義されているとおりだと保証される

XML Schema 概要 XMLの文書型定義にはDTDが使われてきたが不十分になり、 使い方 musinst.xml XML文書 バリデータ(Validator) or XMLパーサ XML文書を 検証する musinst.xsd XML Schema

Schema 要素 XML Shema を定義するときは schema要素を記述し,その中に スキーマの定義を記述する <xsd:schema xmlns:xsd=“http://www.w3.org/2001/XMLSchema”> (スキーマ定義) </xml:schema>

コメント,要素宣言 XML Schemaのコメント <!-- schema.xsd --> ※XML 文書と同じ XML Schemaの要素宣言(element declaration) <xsd:element name=“楽器” type=“xsd:string”> type属性の値 string(文字列型)であることを示す name属性の値 要素名が「楽器」であることを示している

単純型(simpleType) XML Schemaではデータ型に単純型と複合型がある 単純型 単純型 説明 値の例 string 文字列 Mojiretu positiveInteger 正の整数 1, 126789 integer 整数 -126789, -1, 0, 1 uriReference URL http://www.ibaraki.ac.jp/ decimal 10進数 -10, 0, 123.4, 1000.0 time 時刻 13:20:00.000

単純型のユーザ定義 独自の単純な型を単純型(simpleType)として定義できる ユーザ定義の例 <xsd:simpleType name=“MyType” base=“xsd:string”> <xsd:pattern value=“[A-Z]{2}”/> </xml:simpleType> 「MyType」という単純型を文字列方をベースに A-Zの範囲の大文字の英文字2文字で構成されるpatternと定義 (文字列の形式を指定する要素)

複合型 (complexType) XML文書の構造や複数の要素を含む要素はcomplexTypeを使う 複合型 要素宣言 属性宣言 <?xml version=“1.0” encoding=“UTF-16” ?> <!– schema.xsd --> <xsd:schema xmlns:xsd=“http://www.w3.org/1999/XMLSchema”> <xsd:complexType name=“連絡先”> <xsd:element name=“氏名” type=“xsd:string”> <xsd:attribute name=“CODE” type=“xsd:long”/> <xsd:attribute name=“TEL” type=“xsd:string”/> <xsd:attribute name=“FAX” type=“xsd:string”/> </xsd:element> </xsd:complexType> </xmd:schema> 要素宣言 属性宣言

要素参照,出現回数 要素参照の指定 <xsd:element ref=“Title” minOccurs=“0” /> 出現回数の指定 <xsd:element name=“氏名” type=“xsd:string” minOccurs=“1” /> <xsd:element name=“TEL” type=“xsd:string” /> <xsd:element name=“別名” type=“xsd:string” minOccurs=“0” maxOccurs=“unbounded” /> 要素「氏名」タグが少なくとも1個,要素「TEL」も少なくとも1個 要素「別名」は出現しなくても,いくつ出現してもよい 要素がいくつでもよいとき maxOccurs に“unbounded”を指定する

属性宣言(attribute declaration) 属性の指定 <xsd:attribute name=“CODE” type=“xsd:NMTOKEN”/> 連絡先の<氏名>タグの属性“CODE”を“xsd:NMTOKEN”型の 属性として指定する例

ファセット(facet)[1] 制限を表すもの XML Shema では既存のデータ型の範囲やサイズを制限して 新しいデータ型を定義することができる xsd:length 値の長さを限定する.文字列の場合は文字単位, バイナリーデータの場合はオクテット(8ビット)単位, リストの場合はリスト項目単位で指定. <xsd:length value=”5”> 文字列の場合 5文字という制限になる

ファセット(facet)[2] xsd:minLength 値の長さの最小値を限定する. xsd:maxLength 値の長さの最大値を限定する. 要素名「title」 <xsd:element name="title">         <xsd:simpleType>           <xsd:restriction base="xsd:string">             <xsd:maxLength value=“32" />             <xsd:minLength value=“6" />           </xsd:restriction>         </xsd:simpleType>       </xsd:element> 単純型である 「xsd:string」を元に制限をつける ファセット 最大値32,最小値6 という制限

ファセット(facet)[3] xsd:maxInclusive 値の範囲の最大値を限定する.指定した値は含まれる. <xsd:maxInclusive value=”10”> 10以下 xsd:maxExclusive 値の範囲の最大値を限定する.指定した値は含まれない. <xsd:maxExclusive value=”10”> 10未満

XML Schema の例 (再) 「楽器リスト」は「楽器」要素で構成 「楽器」の個数は無限 「記譜音域」は省略できる 文字型要素 正の整数型要素

課題 ●XML Schema で,要素の内容を1以上10未満に  制約する定義を記述する