• 検索結果がありません。

プロポーザル.key

N/A
N/A
Protected

Academic year: 2021

シェア "プロポーザル.key"

Copied!
21
0
0

読み込み中.... (全文を見る)

全文

(1)

SuperSQLにおける

CSSフレームワークの提案

遠山研究室

M1 越島亮介

(2)

SuperSQLとは

SQLの拡張言語

データベース検索、構造化、

メディア変換を統合する検索言語

関係データベースの出力結果を構造化

多彩なレイアウト表現を実現

結合子(

, ! %)

反復子(

[], []!)

装飾子(

@)

RDB

SQL

HTML

Java

LDAP

XML

Super SQL

(3)

SQL

SuperSQL

SELECT name, dept, grade, tel

FROM student

WHERE ….

GENERATE HTML

[dept! [name! {grade,tel} ]! ],

FROM employee

WHERE ….

name

dept

grade

tel

小室

理工

4

255

伊藤

理工

3

583

田中

経済

3

728

理工

経済

小室

伊藤

田中

4

255

3

583

3

728

フラットな表

構造を自由に表現

様々な出力媒体

(4)

SuperSQLの現状

従来の

Generate HTML

table タグを用いたHTML を生成

一般的な

Webページレイアウトを表現することが困難

Generate HTMLの改良

divタグを用いてHTMLを生成

より幅広い

CSSの適応が可能に

SSQLのみでWebページ全体を生成

header

navigation

content

side

menu

footer

(5)

Generate HTMLの課題

CSSの適用 - 装飾子(@)

シンプルな例

GENERATE HTML

[name ! {grade,tel}

@{color=red}

],

FROM employee

WHERE ….

小室

伊藤

田中

(6)

Generate HTMLの課題

CSSの適用 -クエリが複雑な場合

GENERATE HTML { [{m.title, m.english_title}! image(m.poster, "./poster")! {"公開年", m.release_year}!

{{"制作会社", link(cp.company_name, "Company.ssql", cp.id)}, {"配給会社", link(cd.company_name, "Company.ssql", cd.id)}}! {"作画枚数", m.number_of_drawing,

{"制作費(億円)", m.cost},

{"興行収入(億円)", m.box_office_taking}}!

"主題歌"!{[link(ts.music_title, "Music.ssql", ts.id)],}! "製作"![link(c.company_name, "Company.ssql", c.id)],! "制作メンバー"![rm.role, [link(a.name, "Artist.ssql", a.id)]!]!!

]! } FROM …

(7)

Generate HTMLの課題

@装飾子を使って

CSSスタイリング

(8)

GENERATE HTML {

[{m.title, m.english_title}! image(m.poster, "./poster")! {"公開年", m.release_year}!

{{"制作会社", link(cp.company_name, "Company.ssql", cp.id)}, {"配給会社", link(cd.company_name, "Company.ssql", cd.id)}}! {"作画枚数", m.number_of_drawing,

{"制作費(億円)", m.cost},

{"興行収入(億円)", m.box_office_taking}}!

"主題歌"!{[link(ts.music_title, "Music.ssql", ts.id)],}! "製作"![link(c.company_name, "Company.ssql", c.id)],!

"制作メンバー"![rm.role, [link(a.name, "Artist.ssql", a.id)]!]! ]!

} FROM …

(9)

GENERATE HTML {

[{m.title, m.english_title}! image(m.poster, "./poster")! {"公開年", m.release_year}!

{{"制作会社", link(cp.company_name, "Company.ssql", cp.id)}, {"配給会社", link(cd.company_name, "Company.ssql", cd.id)}}! {"作画枚数", m.number_of_drawing,

{"制作費(億円)", m.cost},

{"興行収入(億円)", m.box_office_taking}}!

"主題歌"!{[link(ts.music_title, "Music.ssql", ts.id)],}! "製作"![link(c.company_name, "Company.ssql", c.id)],!

"制作メンバー"![rm.role, [link(a.name, "Artist.ssql", a.id)]!]! ]!

} FROM …

Generate HTMLの課題

GENERATE HTML{

[{m.title@{width=300, font-weight=bold}, m.english_title@{width=300}}! image(m.poster, "./poster")@{height=350, align=center}!

{"公開年"@{width=100, border = 0, color=#556b2f}, m.release_year@{width=60, border = 0}}!

{{"制作会社"@{width=150, border = 0, color=#556b2f}, link(cp.company_name@{width=150, border = 0}, "Company.ssql", cp.id)},

{"配給会社"@{width=150, border = 0, color=#556b2f}, link(cd.company_name@{width=150, border = 0}, "Company.ssql", cd.id)}}!

{"作画枚数"@{width=100, border = 0, color=#556b2f}, m.number_of_drawing@{width=100,border = 0}, {"制作費(億円)"@{width=120, border = 0, color=#556b2f}, m.cost@{width=80,border = 0}},

{"興行収入(億円)"@{width=120, border = 0, color=#556b2f}, m.box_office_taking@{width=80,border = 0}}}! "主題歌"@{width=610, border = 0, color=#556b2f}!{[link(ts.music_title, "Music.ssql", ts.id)],}!

"製作"@{width=610, border = 0, color=#556b2f}![link(c.company_name, "Company.ssql", c.id)],! "制作メンバー"@{width=610, border = 0, color=#556b2f}!

[rm.role@{width=200, border = 0}, [link(a.name@{width=300}, "Artist.ssql", a.id)]!]! ]!

(10)

GENERATE HTML {

[{m.title, m.english_title}! image(m.poster, "./poster")! {"公開年", m.release_year}!

{{"制作会社", link(cp.company_name, "Company.ssql", cp.id)}, {"配給会社", link(cd.company_name, "Company.ssql", cd.id)}}! {"作画枚数", m.number_of_drawing,

{"制作費(億円)", m.cost},

{"興行収入(億円)", m.box_office_taking}}!

"主題歌"!{[link(ts.music_title, "Music.ssql", ts.id)],}! "製作"![link(c.company_name, "Company.ssql", c.id)],!

"制作メンバー"![rm.role, [link(a.name, "Artist.ssql", a.id)]!]! ]!

} FROM …

Generate HTMLの課題

GENERATE HTML{

[{m.title@{width=300, font-weight=bold}, m.english_title@{width=300}}! image(m.poster, "./poster")@{height=350, align=center}!

{"公開年"@{width=100, border = 0, color=#556b2f}, m.release_year@{width=60, border = 0}}!

{{"制作会社"@{width=150, border = 0, color=#556b2f}, link(cp.company_name@{width=150, border = 0}, "Company.ssql", cp.id)},

{"配給会社"@{width=150, border = 0, color=#556b2f}, link(cd.company_name@{width=150, border = 0}, "Company.ssql", cd.id)}}!

{"作画枚数"@{width=100, border = 0, color=#556b2f}, m.number_of_drawing@{width=100,border = 0}, {"制作費(億円)"@{width=120, border = 0, color=#556b2f}, m.cost@{width=80,border = 0}},

{"興行収入(億円)"@{width=120, border = 0, color=#556b2f}, m.box_office_taking@{width=80,border = 0}}}! "主題歌"@{width=610, border = 0, color=#556b2f}!{[link(ts.music_title, "Music.ssql", ts.id)],}!

"製作"@{width=610, border = 0, color=#556b2f}![link(c.company_name, "Company.ssql", c.id)],! "制作メンバー"@{width=610, border = 0, color=#556b2f}!

[rm.role@{width=200, border = 0}, [link(a.name@{width=300}, "Artist.ssql", a.id)]!]! ]!

} FROM …

詳細なレイアウト表現を実現するクエリは

可読性が低下してしまう

(11)

SuperSQLの現状

Generate HTML

table タグを用いた静的な閲覧専用のHTML を生成

Generate Mobile_HTML5

モバイル向けに特化した

SuperSQLでのWebアプリ

ケーション生成

マルチデバイスに包括的に対応した

Webページ生成機能の必要性

(12)

研究背景

- マルチデバイス対応

PC版とモバイル版のHTMLを管理する手法

"Cross-platform feature matching for web applications."

Proceedings of the 2014 International Symposium on

Software Testing and Analysis. ACM, 2014.

Roy Choudhary, Shauvik, Mukul R. Prasad, and

Alessandro Orso.

“m.Site: efficient content adaptation for mobile

devices.”

Proceedings of the 13th International Middleware

Conference (Middleware ’12)

(13)

研究背景

- マルチデバイス対応

PC版とモバイル版のHTMLを管理する手法

"Cross-platform feature matching for web applications."

Proceedings of the 2014 International Symposium on

Software Testing and Analysis. ACM, 2014.

Roy Choudhary, Shauvik, Mukul R. Prasad, and

Alessandro Orso.

“m.Site: efficient content adaptation for mobile

devices.”

Proceedings of the 13th International Middleware

Conference (Middleware ’12)

Aaron Koehl and Haining Wang

整備の手間の根本的な解決は困難

(14)

研究背景

- マルチデバイス対応

レスポンシブデザイン

ブラウザの横幅に合わせて

CSSを切り替える手法

(15)

研究背景

- マルチデバイス対応

レスポンシブデザイン

HTML/CSS コーディングの構築が複雑に

画面幅に合わせて

CSSを分岐させ、それに対応

するように

HTML側でのクラス指定などをする

Responsive designs in a snap.

Nishant Sinha and Rezwana Karim. 2015.

Proceedings of the 2015 10th Joint Meeting on

Foundations of Software Engineering (ESEC/FSE 2015).

ACM, New York, NY, USA, 544-554.

(16)

研究背景

- レスポンシブデザイン

CSSフレームワーク

Web サイトの骨組みを効率的に作るためのCSS(js)

のパッケージ

用意された

CSSの表記にしたがってHTMLをコー

ディング

(17)

研究背景

- レスポンシブデザイン

LESS/SASS

CSSに変数、ルールの入れ子、関数などの


機能をもたせたメタ言語

コンパイルをすることで

CSSを出力

フレームワークのカスタマイズを容易に

(18)

提案

CSSスタイリングの簡略化

Web サイトの

マルチデバイス対応

SuperSQLのための

CSSフレームワーク機構

(19)

提案

SASS/LESSを用いてレイアウト構成、


UIコンポーネントをモジュール化

メニュー

ボタン、アイコン

ページネーションなど

SSQLクエリ上では、装飾子(@)からUIコン

ポーネントを呼び出し、設定可能に

(20)

提案手法の流れ

RDB SQL HTML Java LDAP XML Super SQL

ooo.ssql

ooo.html

css

コンパイル

class名の

指定

(21)

今後の研究方針

既存の

CSSフレームワークに関する調査

LESS, SASS の検討

レイアウト機構の設計

UIコンポーネントの設計

SSQLのWebページ生成機構への対応

参照

関連したドキュメント

この問題に対処するため、第5版では Reporting Period HTML、Reporting Period PDF 、 Reporting Period Total の3つのメトリックのカウントを中止しました。.

研究計画書(様式 2)の項目 27~29 の内容に沿って、個人情報や提供されたデータの「①利用 目的」

・Microsoft® SQL Server® 2019 Client Access License (10 User)ライセンス証書 オープン価格. オープン価格 Microsoft SQL

In this diagram, there are the following objects: myFrame of the Frame class, myVal of the Validator class, factory of the VerifierFactory class, out of the PrintStream class,

[r]

[r]

◆  鹿島アントラーズ  http://www.so-net.ne.jp/antlers/news/detail/20091224̲16̲2463.html 

電気の流れ 水の流れ 水の流れ(高圧) 蒸気の流れ P ポンプ 弁(開) 弁(閉).