XMLの利用(XMLとXSL)

Similar documents
XMLとXSLT

XML XML (Extensible Markup Language) ISO SGML (Standard Generalized Markup Language) W3C (World Wide Web Consortium) XML 1.0

Webプログラミング演習

スライド 1

XSLT 4-1

XML基礎


橡SPA2000.PDF

■新聞記事

XMLプログラミング(DOM編)

Microsoft PowerPoint - CSS(Cascading Style Sheets)の基本.pptx

<4D F736F F D A957A A A8FEE95F18F88979D DEC90AC E646F63>

合宿事前講座 Web 開発の基本編その 2 情報研究会モブ 薗田海樹 The. H.30 情報研究会 1

Microsoft PowerPoint - 05XMLによるデータの表現.pptx

スタイルシートでデザインを整えよう

VB実用Ⅲ⑩ フリーデータベースⅡ

情報C 4月スクーリング プリント

64bit環境で32bitコンポーネントの利用

情報C 4月スクーリング プリント

構造体

2 / 16 HTML=HyperText Markup Language( ハイパーテキストマークアップランゲージ ) ブラウザ (Chrome) での表示 ソースの表示 ( メモ帳 /TeraPad) HTML <========= =========>

Microsoft PowerPoint - css-3days 互換モード

Microsoft PowerPoint _1b-HTML.pptx

Microsoft PowerPoint - css-3days.ppt [互換モード]

PowerPoint プレゼンテーション


正規表現応用

Microsoft PowerPoint - css-3days 互換モード

3.3 World Wide Web 26

○19.デジタル写真管理情報基準

Lotus Domino XML活用の基礎!

分散情報システム構成法

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

PostgreSQL の XML 機能解説と将来拡張への提言

グラフィックス 目次

PowerPoint プレゼンテーション

Userコントロール

超簡単にWebページを作成

Microsoft PowerPoint - 04WWWとHTML.pptx

Web

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 文字列 文字列リテラル プログラムの中で文字列を表す方法は幾つか有るが 基本的な方法は下記の 2 種で有る 対象と成る文字の集まりをダブルクオーテーション ( " ) で囲うか シングルクオーテーション ( ' ) で囲う PYTHON3 "

Microsoft Word - ECALSDS01_Vr1_5_080305_ja.doc

及び文字列を挿入してはならない 記述例 <?xml version="1.0" encoding="shift_jis"?> 2. スタイルシート適用記述スタイルシート適用記述は 当該 XML 文書のスタイルシートの形式及びファイル名を示す 記述例 <?xml-stylesheet type="te

ホームページ公開方法

目次 概要... 2 フォームレイアウトデザイナー機能の設定... 3 設定したフォームレイアウトデザイナーの確認...14 その他スタイルの設定...15 フォームレイアウトデザイナーをエクスポート...17 フォームレイアウトデザイナーをインポート...18 インポート時の制限事項...19 リ

XML Week Web 2.0 Day (1) SOA2.0 KM2.0? REST API + XSLT Amazon hon. hon.jp API XML Consortium XML ( ) REST(GET)API Amazon.co.jp hon.jp REST

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値

数のディジタル化

DTD Reference Guide

ISコースプロジェクト実習 前期(第1回 ガイダンス)

CSS

6 2 1

経営論集2011_07_小松先生.indd

() < > </ > / HTML SGML HTML 1.1 DTD DTD ( DTD (prolog) )SGML 1. DTD ( ) 2. DTD <!-- DTD-- > <!ELEMENT MAIL - - ((TO,FROM)?,DATE?,BODY) > <!ELEMENT TO

<48746D6C8AEE91628D758DC02E786C73>

(3) 本文を書く 実際にページを開いたときに表示される本文を書いてみましょう から の間に書きます <html > <head > <title > 武のホームページ </title > </head > </html > (4) ページを保存する ここで一度ページを保存してみましょう テキストエ

XML(DOMガイド)

C 資料 電脳梁山泊烏賊塾 構造体 C++ の構造体 初めに 此処では Visual Studio 2017 を起動し 新しいプロジェクトで Visual C++ の Windows デスクトップを選択し Windows コンソールアプリケーションを作成する 定義と変数宣言 C++ に

Web データ管理 JavaScript (1) (4 章 ) 2011/12/7( 水 ) 湘南工科大学講義資料 Web データ管理 (2011) 阿倍 1/21

Web2.0 REST API + XSLT Amazon hon.jp API XML Consortium XML ( ) REST(GET)API hon.jp Amazon.co.jp Google Map Exif to RDF(kanzaki.com) REST +

正規表現概要

052-XML04/fiÁ1-part3-’ÓŠ¹

1/2

ファイル操作-インターネットキャッシュ


コンピュータ中級B ~Javaプログラミング~ 第3回 コンピュータと情報をやりとりするには?

E4X in Firefox nanto_vi (TOYAMA Nao)

kby-1-j - 互換モード

JavaScript カスタマイズ入門 kintone university アプリデザイナープラス JavaScript カスタマイズ入門編演習問題回答 演習問題 第 2 章サンプルで試そう 1 cybozu.com developer network の サンプルで試そう ( 以下 サンプル と

untitled

Web のしくみと応用 ('15) 回テーマ 1 身近なWeb 2 Webの基礎 3 ハイパーメディアとHTML 4 HTMLとCSS 5 HTTP (1) 6 HTTP (2) 7 動的なWebサイト 8 クライアントサイドの技術 回 テーマ 9 リレーショナルデータベース 10 SQL とデータ

Web 設計入門

<4D F736F F D E835A A C98AD682B782E98E77906A89FC92F994C52E646F63>

コンピュータ基礎実習 ( 上級 ) 第 12 週例では <h1> タグが対象であることを意味します セレクタを変えることで見栄えを様々な対象に設定できます プロパティ (property) は設定する見栄え ( スタイル ) の種類のことです 値はプロパティに対する具体的な設定値です この例では文字

フォームとインナー HTML を使って動的にページ内の文章を変更しよう 問題 1. つぎの指示と画面を参考に HTML を組みなさい 仕様 テキストボックスに任意の文字を入力し [ コメント ] ボタンをクリックすると 下部の文章がテキストボックスの内容に置き換わる フォーム名 : f1 テキストボ

6 2 s µ µµµ µµµµ µ µ h µs µ µµµµ µ µ µ s mµµµµµ µµµ µµ µ u m µmµµµµµ µµ µ µ µ µ µ µ µ µ s 1

( 注 )Safari (webkit 系ブラウザ ) と Chrome(webkit にも対応 ) は テキストの輪郭や色を -webkit-text-stroke-width -webkit-text-stroke-color -webkit-text-fill-color のプロパティで描くこ


グラフィックス

4. WIX アタッチエンジン 4. 1 FSDR 処理 システムの Web 資源結合動作であるアタッチ処理について 述べる. アタッチ処理は以下の 4 フェーズに分けられる. この一連の 流れを FSDR 処理とする. Find 処理 Select 処理 Decide 処理 Rewrite 処理

子ボックスや孫ボックスなどに position: absolute; と指定すると それぞれ親ボックスに対する絶対位置で配置できるので親ボックスの上に複数の子ボックスや孫ボックスを重ねて配置することができます トランジションやアニメーションを作成するときに非常に便利なので覚えておきましょう top

ファイル操作

Network Computing の基礎

padding( パディング ) padding プロパティでボックスの内側の余白を指定します この部分の内側には背景 ( 背景色や背景画像 ) を表示できます border( ボーダー ) border プロパティでボックスの境界線を指定します ボーダーには色 太さ 線の種類を指定できます 画像で

websample 1 2 websample index.html

PowerPoint プレゼンテーション

演習室の PC のハードディスクには演習で作成したデータは保管できません 各 PC の ネットワーク接続 ショートカットからメディア情報センターのサーバーにアクセスしてください 演習名 使用するフォルダ 演習 1 Z: Web データ管理 演習 1 演習 2 Z: Web データ管

目次 1 はじめに 利用条件 動作環境 アドインのインストール アドインの操作方法 アドインの実行 Excel CSV の出力 テンプレートの作成 編集 テンプレートのレイアウト変更 特記

ハッシュテーブル

フィルタとは

セマンティックWebの動向とメタデータ

prg.indb

~/WWW-local/compIID (WWW IID ) $ mkdir WWW-local $ cd WWW-local $ mkdir compiid 3. Emacs index.html n (a) $ cd ~/WWW/compIID

XSLT XSLT xsd XSLT XML xsd XPath <xsl:template ]

Web情報システム 第1章~第5章

Microsoft PowerPoint _3a-SEO.pptx

農業・農村基盤図の大字小字コードXML作成 説明書

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版  

競技課題|ホームページ

ppt

Transcription:

XML の利用 XML(Extensible Markup Language) とは XML の基礎知識 XML とは WC(World Wide Web Consortium) で標準化された情報記述言語で有る 情報記述言語には HTML(Hyper Text Markup Language) が有り インターネット上の文書を標準化し世界規模の文書の閲覧を可能に仕たが 固定的なタグしか使用出来ない為 文書表現に柔軟性が無く文書交換に適さ無いと謂う欠点が有る 其処で タグを自由に設定出来る柔軟性の高い情報記述言語と仕て XML が開発された XML では タグを自由に設定する事に依り 明確にデータと仕ての意味を定義する事が可能と成ると共に DTD(Document Type Definition) と謂う文書構造定義に依り 自由に其の構造を決定する事が出来る為 文書の検索等に於ける処理効率も上がる 亦 情報と仕ての XML 文書 ( 文書構造定義 ) と表示手段と仕ての XSL スタイルシート ( 文書修飾言語 ) を明確に分離する事に依り 情報の再利用性 転用性を高めて居る 註 :XSL とは Extensible Stylesheet Language の略で有る HTML でも最近は CSS に依り 文書修飾の機能を分離する試みが為されて来たが 構造と修飾の分離が明示されて居ない HTML に比較して XML+XSL では更に機能を明確に区分する事が出来る 猶 IE 以上の環境が必要で有る 最新版 (XML.0 Second Edition) は http://www.w.org/tr/000/rec-xml000006 で入手する事が出来る XML 宣言 (XML Declaration) XML の基本構造 XML のバージョンと使用する文字コードを記述する 例 :<?xml version=.0 encoding= Shift_JIS?> XML 文書の 行目では必ず <?xml?> 宣言を記述し無ければ成ら無い バージョン情報 エンコーディング宣言は 此の順で指定し 孰れも省略可能で有る スタイルシートの指定を記述する 例 :<?xml-stylesheet type= text/xsl href= wax_texta.xsl?> XML では 表示に関する部分をスタイルシートと仕てデータ本体と切り離す事が出来る為 用途に応じて種々のスタイルシートを XML ファイルと結び付ける事が出来る 文書型宣言 (DTD:Document Type Definition) XML 文書で使用する要素 (element) や属性 (attribute) 等を設定し 構造上の制約を記述する 例 :<!DOCTYPE 文書要素名 [ ]> ( 内部サブセット使用 ) <!DOCTYPE 文書要素名 SYSTEM DTD ファイル > ( 外部サブセット使用 ) DTD は 別ファイルで設定する事 ( 外部サブセットと謂う ) も XML 文書内で設定する事 ( 内部サブセットと謂う ) も両方で設定する事も出来る 故に 内部サブセットと外部サブセットを合わせた物が 其の XML 文書の DTD と成る 但し 内部と外部で重複する定義が有る場合 内部サブセットが優先される DTD は タグを定義する物で有るが 必ずしも XML 文書作成に不可欠の物では無い ブラウザに表示させる丈ならば XML 文書とスタイルシートが有れば充分で 要素や属性等の文書構造定義は必要無い DTD が無い XML 文書を Well-formedXML 文書と呼び DTD が有る XML 文書を ValidXML 文書と呼ぶ XML 本文 要素 属性とデータを記述する

XML の記述例 XML の記述例 内部サブセットの例 (XML ファイル ) <?xml version=.0 encoding= Shift_JIS?> <!DOCTYPE tag [ <!ELEMENT tag (tag, tag)> <!ELEMENT tag (#PCDATA)> <!ATTLIST tag pro CDATA #IMPLIED> <!ELEMENT tag (#PCDATA)> <!ATTLIST tag pro CDATA #IMPLIED> ]> <tag> <tag pro= 属性の値 > tag の内容 </tag> <tag pro= 属性の値 > tag の内容 </tag> </tag> 外部サブセットの例 (XML ファイル ) <?xml version=.0 encoding= Shift_JIS?> <!DOCTYPE tag SYSTEM dtdfile.dtd> <tag> <tag pro= 属性の値 > tag の内容 </tag> <tag pro= 属性の値 > tag の内容 </tag> </tag> 外部サブセットの例 (DTD ファイル ) <!ELEMENT tag (tag, tag)> <!ELEMENT tag (#PCDATA)> <!ATTLIST tag pro CDATA #IMPLIED> <!ELEMENT tag (#PCDATA)> <!ATTLIST tag pro CDATA #IMPLIED>

XML 記述例の解説 拡張可能マークアップ言語宣言 (XML 宣言 ) を行う 文書型宣言 (DOCTYPE 宣言 ) を行う 文書要素が出現する前に文書型の宣言を行う ( 必須では無い ) DOCTYPE 宣言の書式は 下記の通りで有る 内部サブセットの場合 :<!DOCTYPE 要素名 [ 各定義 ]> 外部サブセットの場合 :<!DOCTYPE 要素名 SYSTEM 外部 DTD ファイル名 > 要素型宣言 (Element Type Declaration) を行う 要素型宣言は 其の要素の子供と仕て何の様な名前の要素が何の様な組合せで現れるかと謂う内容モデルを指定する物で 下記の様に記述する <!ELEMENT 要素型子供に関する制約条件 > 内容モデルは(Content Model) 下記の様に分類される 要素内容 (Element Content) 混在内容 (Mixed Content) 空要素 (Empty Content) 任意要素 (Any Content) 要素内容は 或る要素の子供と仕て現れる事が出来るのが要素丈と謂う場合で 要素型( 要素の名前 ) を下記の様に組合わせる 猶 要素丈とは 文字データを含まない事を意味する a b a 要素とb 要素の孰れかが現れる事が出来る a, b a 要素の次にb 要素と謂う順で現れる事が出来る a+ a 要素が 回以上現れる事が出来る a* a 要素が0 回以上現れる事が出来る a? a 要素が0 回または 回現れる事が出来る 混在要素は 或る要素の子供と仕て現れる事が出来るのが要素と文字データと謂う場合で 文字データ丈が現れる場合と 要素も文字データも現れる場合の 種類に分けられる <!ELEMENT 要素型 (#PCDATA)> 文字データ丈の場合 <!ELEMENT 要素型 (#PCDATA 子要素型 )> 文字データと要素の場合此の場合 現れる要素型の順序や回数等に制限を付ける事は出来ない 空要素は 下記の様に記述する <!ELEMENT 要素型 EMPTY> 任意要素は 下記の様に記述する <!ELEMENT 要素型 ANY> 属性リスト宣言 (Attribute List Declaration) を行う 属性リスト宣言は 或る名前の要素が何う謂う名前の属性を持つかを指定する物で 下記の様に記述する <!ATTLIST 要素型属性名属性の型デフォルト宣言 > 属性の型は 下記の 種に大別される 文字型 (String Type) 属性値と仕て任意の文字列を認める型 <!ATTLIST 要素型属性名 CDATA #IMPLIED> トークン化型 (Tokenized Type) 下記の7 種の型 ID IDREF IDREFS NMTOKEN NMTOKENS ENTITY ENTITIES

列挙型 (Enumerated Type) 取り得る値の総てを記述する型 <!ATTLIST 要素型属性名 ( 値 値 値 n) 値 > デフォルト宣言は 基本的にはダブルクォーテーション又はシングルクォーテーションで囲んだデフォルト値を記述する デフォルト値の記述が不要な場合は 属性値が存在し無くても良い場合と属性値を指定する場合との 種類が有り 下記の様に記述する #IMPLIED 属性値が存在し無くても良い場合 #REQUIRED 属性値を指定する場合亦 値固定の場合は 下記の様に記述する #FIXED 其の固定値 値固定の場合 XML 本文を記述する XML 文書の最上位には 必ずルート要素 ( 第一要素 最上位要素とも謂う ) が必要で有り 総ての子要素が 此のルート要素の下に配置される事に成る 例えば 上記の記述例では tag がルート要素で有り 此の下に tag 要素や tag 要素が子要素と仕て配置されて居る XML 文書では 終了タグの省略は許可されず 必ず開始タグで始まり 終了タグで終わらなければ成ら無い エンプティタグの様に終了タグを必要と仕無い場合は 開始タグを /> で閉じる必要が有る 此の様な記述は許可され無い <P> 上記は此の様に記述する <P/> XML 文書では 全要素は正しくネスト構造を構成して居る必要が有る <tag><tag> 此の様な記述は許可され無い </tag></tag> <tag><tag> 上記は此の様に記述する </tag></tag> 各要素名の大文字と小文字は区別される <tag> 此の様な記述は許可され無い </TAG> 属性値はダブルクォーテーション又はシングルクォーテーションで囲まなければ成ら無い <tag pro=> 此の様な記述は許可され無い </tag> <tag pro= > 上記は此の様に記述する </tag> <tag pro= > 此の様に記述しても良い </tag> 上記の XML 文書を IE 以上で実行した場合 ブラウザには上記の XML 文書が 其の侭 表示される 此れは XML 文書が 単成るデータに過ぎず 表示に関する情報は一切含まれて居ないからで有る XML 文書をブラウザ上で整形して表示する為には HTML に変換する XSL スタイルシートが必要と成る

XSL の記述例 XSL の記述例 スタイルシートの例 (XSL ファイル ) <?xml version=.0 encoding= Shift_JIS?> <xsl:stylesheet xmins:xsl= http://www.w.org/tr/wd-xsl > <xsl:template match= / > <HTML> <HEAD> <TITLE>XML </TITLE> <LINK REL= stylesheet TYPE= text/css HREF= cssfile.css /> </HEAD> <BODY> <xsl:apply-template select= tag /> </BODY> </HTML> </xsl:template> <xsl:template match= tag > <TABLE BORDER= > <TR> <TD NOWRAP= nowrap ><xsl:value-of select= tag /><TD> <TD NOWRAP= nowrap ><xsl:value-of select= @pro /><TD> </TR> <TR> <TD NOWRAP= nowrap ><xsl:value-of select= tag /><TD> </TR> </TABEL> </xsl:template> </xsl:stylesheet> <TD NOWRAP= nowrap ><xsl:value-of select= @pro /><TD> 6 7 8 6 7 8 XSL 記述例の解説 拡張可能マークアップ言語宣言 (XML 宣言 ) を行う 各要素が従う文書規則の定義を行う ( 当面此の通りに記述する ) ルート要素に適用するテンプレートを記述する テンプレートとは XML 文書の各要素を何の様に表示するかと謂う規則を定めた物で有る XSL は 常にルート要素のテンプレートを基点に解釈される 通常の HTML を記述する ( 但し エンプティタグは末尾を />とする事に注意) XSL から CSS を呼び出す XSL は XML 文書の各要素を HTML に再配置 ( マッピング ) する為の物で有り 更に高度なスタイルを指定する場合には CSS を使用する事も出来る LINK タグはエンプティタグなので タグの末尾を /> とする必要が有る 別のテンプレートを呼び出す 6 属性値の簡略形は使用出来ない XML(XSL) では 属性を省略形で記述する事は出来ず 必ず属性名 = 属性値の形式で記述する 7 要素内のコンテンツを表示する ダブルクォーテーションで囲んで要素名を指定する 8 要素内の属性値を表示する ダブルクォーテーションで囲んで属性名を指定する( 属性名の頭に @ を付ける )

XSL の記述法 別のテンプレートを呼び出す書式は 下記の通りで有る <xsl:apply-template select= 要素名 /> 要素内のコンテンツを表示する書式は 下記の通りで有る <xsl:value-of select= 要素名 /> 要素内の属性値を表示する書式は 下記の通りで有る <xsl:value-of select= @ 属性名 /> リンクを張る書式は 下記の通りで有る <xsl:element name= a > <xsl:attribute name= href ><xsl:value-of select= URL の要素名 /></xsl:attribute> <xsl:value-of select= アンカーテキストを記した要素名 /> </xsl:element> 画像を表示する書式は 下記の通りで有る <xsl:element name= img > <xsl:attribute name= src ><xsl:value-of select= 画像ファイル名の要素名 />xsl:attribute> <xsl:attribute name= width > 横幅 </xsl:attribute> <xsl:attribute name= height > 縦幅 </xsl:attribute> </xsl:element> 指定した要素名に付いて繰返処理を行う書式 ( ソート無し ) は 下記の通りで有る <xsl:for-each select= 要素名 > 繰返処理 </xsl:for-each> 指定した要素名に付いて繰返処理を行う書式 ( ソート有り ) は 下記の通りで有る <xsl:for-each select= 要素名 order-by= ソートする下層要素名 > 繰返処理 </xsl:for-each> 条件が真の場合に行う処理を記述する書式は 下記の通りで有る <xsl:if test= 比較する要素名 [. 比較演算子比較値 ]> 真の場合の処理 </xsl:if> XSL の比較演算子 XSL の比較演算子 (XSL ではオペレータ記号と謂う ) には 下記の物が有る $eq$ 等しい $ieq$ 等しい ( 大文字と小文字の区別無し ) $ne$ 等しく無い $ine$ 等しく無い ( 大文字と小文字の区別無し ) $lt$ 小さい $ilt$ 小さい ( 大文字と小文字の区別無し ) $le$ 小さいか等しい $ile$ 小さいか等しい ( 大文字と小文字の区別無し ) $gt$ 大きい $igt$ 大きい ( 大文字と小文字の区別無し ) $ge$ 大きいか等しい $ige$ 大きいか等しい ( 大文字と小文字の区別無し ) $and$ 論理積 $or$ 論理和 $not$ 否定 6