第1章 実世界のモデル化と形式化 3.地物インスタンスの表現

Slides:



Advertisements
Similar presentations
プログラミング言語論 第3回 BNF 記法について(演習付き) 篠埜 功. 構文の記述 プログラミング言語の構文はどのように定式化できるか? 例1 : for ループの中に for ループが書ける。 for (i=0; i
Advertisements

XML ゼミ 独習 XML ~ 第 6 章 XHTML~ 6.1 XHTML の概要 6.2 XHTML の構造 谷津 哲平.
プログラミング言語論 第10回(演習) 情報工学科 木村昌臣   篠埜 功.
エンティティ・リレーションシップ・モデル
相互作用図 FM11010 田中健太.
Chapter3 クラス図(後半)             FM12014 劉鎧誠.
XBRLを使って, 財務分析(2015) 専修大学商学部 高萩栄一郎.
アルゴリズムとプログラミング (Algorithms and Programming)
バリデータ J2EE II 第11回 / 2006年1月19日.
画像展示サイト“Fragments” 『閲覧しやすさ』と『デザイン性』を両立させた Webデザイン
JavaScript プログラミング入門 2006/11/10 神津.
コンパイラ 2011年10月17日
オブジェクト指向プログラミング(4) 静的分析(2)
背景 我々の研究室で開発しているJavaプログラム解析フレ ームワークでは,解析情報はメモリ上に保持される 問題点
クラスその2∽(アドバンス)∽ 福岡工業大学  梶原 大慈       .
JavaによるCAI学習ソフトウェアの開発
HTMLの記述と WWWにおける情報公開 遠藤
第1章 実世界のモデル化と形式化 8.モデルの信頼性
第1章 実世界のモデル化と形式化 1.モデルとその形式表現
第1章 実世界のモデル化と形式化 2.一般地物モデルと応用スキーマ
JSFによるWebアプリケーション開発 第11回
アルゴリズムとデータ構造1 2007年6月12日
第1回 HTML5入門.
ホームページの作り方.
ユースケース図 FM12012 比嘉久登.
XMLゼミ 2.3 XMLのプロローグ 2.4 XMLのタグ 高橋 辰裕.
3-5 クラス図の関係その3 福本研究室 神田 祐輔.
XMLについて 蔡柏東.
3-3 クラス図の関係その2.
クラス図(1) 後半 FM13010 村上 太一.
JSFによるWebアプリケーション開発 第6回
エンタープライズアプリケーション II 第7回 / 2006年7月9日
コンパイラ 2012年10月15日
ユースケース図2-4~ FM11012 中島拓也.
UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日.
SGMLについて 2年8組  原口 文晃.
XMLゼミ 5.1 XML文書と表示 5.2 CSS 5.3 XMLとXSL 高橋 辰裕.
オブジェクト指向モデリング [3] 2003年10月14日.
第10回 2007年6月29日 応用Java (Java/XML).
その他の図 Chapter 7.
プログラミング言語論 第3回 BNF記法について(演習付き)
第11回 2007年7月6日 応用Java (Java/XML).
第1章 実世界のモデル化と形式化 4.空間スキーマ
第1章 実世界のモデル化と形式化 5.時間スキーマ
Windows PowerShell Cmdlet
独習XML 第2章 XML文書の構成要素 2.1 XMLの文字と文字列 2.2 コメント
インラインスクリプトに対するデータフロー 解析を用いた XHTML 文書の構文検証
Javaによる Webアプリケーション入門 第2回
UML関係のTIPS 2008年5月26日 2010年5月16日改訂 海谷 治彦.
独習XML ~第3章 文書と構造~ 3.3 スキーマ 3.3 XML Schema
情報スキル活用 第2週 基礎技術ー2 : Webページの基本形.
エンタープライズアプリケーション II 第9回 / 2006年7月23日
情報スキル活用 第4週 基礎技術-4 : その1(タグのまとめ).
クリアリングハウスと 空間データ交換システムの連携 - メタデータとXML - 平成11年2月10日 (株) NTTデータ 情報科学研究所
XML Schema (1) ソフトウェア特論 第3回 /
XMLゼミ 3.5 DTD M2 正木 裕一.
3-1.文書と構造 3-2.整形式文書と検証済み文書 兒玉 光太郎
1-3 UMLの図(ダイアグラム) コンポーネント図 システムの物理的な構成を表現 ソフトウェアコンポーネントの依存性を表現
プログラミング言語論 第9回 情報工学科 木村昌臣 篠埜 功.
 型推論3(MLの多相型).
項目間の対応関係を用いた XBRL財務報告書自動変換ツールの試作
JavaScriptを含んだHTML文書に対する データフロー解析を用いた構文検証手法の提案
独習XML ~第1章 XMLの基礎~ 1.1 XML文書の基礎 1.2 XMLとHTML
Webページに動きを持たせるJavascript言語について 例題のプログラムを通して体験的に理解することとします。
Action Method の実装 J2EE II 第9回 2004年12月2日.
プログラミング言語論 第10回 情報工学科 篠埜 功.
計算の理論 I -数学的概念と記法- 月曜3校時 大月 美佳.
情報処理Ⅱ 2005年11月25日(金).
JSFによるWebアプリケーション開発 第7回
第3章 関係データベースの基礎 3.1 関係とは 3.2 関係代数.
Presentation transcript:

第1章 実世界のモデル化と形式化 3.地物インスタンスの表現 2011-02-15 第1章 実世界のモデル化と形式化 3.地物インスタンスの表現 太田守重 morishige_ota@kkc.co.jp

ここで学ぶこと 一般地物モデルに従って応用スキーマを作成することができるが、応用スキーマは地物とその構造のモデルにはなっても、インスタンスの表現にはならない。インスタンスを記述するために、ここではXMLが使われる。XMLは拡張マーク付け言語と呼ばれ、自分自身の説明(タグ)を含む「自己記述型言語」である。  ここでは、この講義で使用する一般地物モデルに準拠した、インスタンス表現のための規則(インスタンスモデル)を紹介する。

XML (eXtended Markup Language) マークアップでデータに意味付けし、構造化し、文書化するための規則 マークアップは < と > で区切るシンボルで、タグとよばれる。 データは内容 (content) ともよばれる。 例: <title>算法入門</title> タグで囲まれた情報の単位は要素とよばれる。UMLのクラスをXMLで表現するとき、クラスは要素になる。 例: <道路> ............ </道路> ただし、タグの下に下位の要素が入らないときは、終了タグは省略し、   <道路・・・/> のように表記してもいい。  XMLはeXtended Markup Languageつまり、拡張マーク付け言語のことである。自己記述型のデータを表現するために使われる文法とも言われる。自己記述とは、データに自分自身の意味を付加して説明するという意味である。XMLの場合、その説明はタグと呼ばれる。また、データはタグで説明される内容、またはコンテントと言われる。スライドに示した例では、算法入門というコンテントは何かのタイトルであることが示されている。開始タグと終了タグで囲まれた情報単位のことは、要素と呼ばれる。例えば、「道路」というクラスのインスタンスはスライドに示すように、<道路>というタグで囲まれた要素である。  応用スキーマに従って作られるデータをXML表記することが多いが、それはインスタンスと呼ばれる。また一般的に、XMLの記法で表現されたデータはXML文書と言われる。 以後、この講義で使用するXML文書の記法について解説する。なお、インスタンスは静的なデータなので、「操作」は含まない。

基本データ型をとるクラス属性のXML表現 クラス図で基本データ型をもつ属性は、XMLの属性として表現する。XML属性は、開始タグの中で、属性名=”属性値” という形式で示す。 例: <Abc id=“p01” name=“木下奈保子” position=“課長”/> 属性の型が Sequence<基本データ型> の場合は、カンマで区切られた属性値の列で表現する。 例: <Abc id=“w10” name=“saito,tokuda,utsugi”/> Abc name: String position: String  XMLの記法では、要素は属性をもつことができる。この講義では、例えば、スライドの上の例のように、数字や文字列などの基本データ型をとる属性は、タグのなかでXML属性として表現する。また、クラスの属性が基本データ型をとる値の列の場合は、カンマで区切った属性値の列として表現する。クラスが複数の属性をもつ場合は、要素の開始タグの中に、複数の属性が現れることになる。なお、小要素をもたない要素では終了タグを省略することができる。  すでに述べたが、全てのクラスは、 「ルートクラス」という抽象クラスを継承していると考える。「ルートクラス」は識別子属性idをもつので、応用スキーマに現れる全ての地物クラスのインスタンスはidを保持することになる。なお、idの値は、地物インスタンス集合の中で一意でなければいけない。また、それ以外の符号規則は、ユーザ自身が考えることになる。       Abc name: Sequence<String> ・・・・・・・・・・・・・・・・・・・・

efg: Sequence<Book> 複合データ型をとるクラス属性のXML表現 複合データ型(クラス)をとる属性はXMLの下位要素とし、実際の要素をidrefで参照する。 例: <Abc id=“a01”> <efg idref=“bk01”/> </Abc> <Book id=“bk01” title=算法入門” publish=“2010-10-01”/> 属性の型が Sequence<複合データ型> の場合は、<sequence>…</sequence>の下位要素の列で属性値の列を表現する。 例: <Abc id=“a23”> <sequence> <efg idref=“bk01” /> ………… </sequence> Abc efg: Book Book title: String publish: Date クラスの属性が複合データ型(クラス)をとる場合は、下位の小要素として表現し、実際のインスタンスを参照する。また、属性の型が複合データ型をとる値の列になる場合は、<sequence>タグで囲んだ小要素の列を親要素の中に入れ、それぞれが、実際のインスタンスを参照する。 Abc efg: Sequence<Book>

関連の表現 他の要素への関連は、関連種類を示すタグ (association, aggregation, composition) で囲んで <役割名 相手要素の参照/> で示す。 例: <Abc id=“f98”> <association> <kml idref=“h001”/> </association> </Instance> ............ <Efg id=“h001” .... />  この講義では、他のクラスのインスタンス(要素)への関連は、関連の種類を示すタグで相手の要素の列を囲むことによって、示す。関連の種類は、 association aggregation composition のいずれかである。 Abc Efg kml

多重度をもつ関連 関連する要素の多重度が1以上の場合、関連種類を示すタグで囲んで <役割名 ・・・・/>の列が、その中に入る。 例:<Abc id=“sss”> <aggregation> <kml idref=“n02”/> <kml iderf=“n04”/> ・・・・・ </aggregation> </Instance> <Efg id=“n02” name=“Taro”/> <Efg id=“n04” name=“Hanako”/> 1..* Efg name: String Abc kml 関連する要素の多重度が1以上の場合、idrefの値はカンマで区切られたid値の列になる。

継承 上位のクラスを継承する場合は、継承するプロパティを全て含むため、上位のクラスを指定する。下位のクラスは複数になる可能性がある。 例:EfgがAbcを継承するとき、Efgには継承する属性を入れる。 <Abc id=“abc01” bcg=“o” kml=“p”/> <Efg id=“kk03” bcg=“o” kml=“p” pqr=“q” stu=“r”/> Abc bcg: * kml: * Efg pqr: * stu: * 上位のクラスを継承する場合は、継承するプロパティ(属性、関連、そして継承)を全て含む。継承も継承するとは、より上位のクラスのプロパティも継承するという意味である。 *: 任意のデータ型

地物インスタンスのXML表現 UMLクラス図 建物形状 id=“s001” 建物 名称:本郷ビル 名称:String 使用目的:商用、住居     建物 名称:String 使用目的:Sequence<String> 床面積:Float 形状:曲面 名称:本郷ビル 使用目的:商用、住居 床面積:500 形状:形状データ “s001” 参照 <建物 id=“buil02” 名称=“本郷ビル” 使用目的=“商用,住居” 床面積=“500” > <形状 idref=“s001”/> </建物> ここでは、クラス図で示した地物(建物)の実例(本郷ビル)を含むインスタンス集合のXML文書を示す。インスタンス集合の識別子はis01, その名前は建物調査結果になっている。本郷ビルは、b001というidをもち、直接値として、名称、使用目的、床面積が表現されている。形状は空間属性(曲面)をとるので、そのidrefを保持している。 *)形状など、空間属性の具体的な表現法は「空間スキーマ」で学ぶ。

まとめ 地物インスタンスの表現には、XMLを使用することができる。 ここでは、UMLで記述された、一般地物モデルに従う応用スキーマに準拠するXML文書を作成するための規則を示した。

参考文献 有川正俊、太田守重監修(2007)『GISのためのモデリング入門』ソフトバンククリエイティブ ISO, ISO 19118:2005 – Geographic Information - Encoding