Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
スキマトロン(Schematron)勉強会 / 20150513-xml-Schematron
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
XSPA
May 16, 2016
Technology
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
スキマトロン(Schematron)勉強会 / 20150513-xml-Schematron
スキマトロン(Schematron)勉強会
日時:2016年5月13日 15時から17時
場所:科学技術振興機構 別館4F-H会議室
XSPA
May 16, 2016
More Decks by XSPA
See All by XSPA
J-STAGEの現況と全文XML登載必須化について
xspa2012
0
340
J-STAGE全文XML登載必須化について
xspa2012
0
1.6k
JATS XML初心者実践セミナー_20260116_ Nakanishi Printing Company, Ltd
xspa2012
0
390
J-STAGEの全文XML化推進について_20260116_Japan Science and Technology Agency
xspa2012
0
210
即時オープンアクセス義務化とXML推進_20250729_ Nakanishi Printing Company, Ltd
xspa2012
0
190
J-STAGEの現況とメタデータの重要性_20250729_ Japan Science and Technology Agency
xspa2012
0
180
力任せ法_20250609_ Nakanishi Printing Company, Ltd
xspa2012
0
150
eXtyles3B2-JATS-XML_20250609_komiyama printing co.,Ltd..
xspa2012
0
140
OxygenとAntenna House Formatterで作る_20250609_Antenna House
xspa2012
0
120
Other Decks in Technology
See All in Technology
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
570
大型犬好きによるPugの紹介
yamanoku
1
160
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
330
継続的なAIコスト最適化
bgpat
1
340
WasmをRustにする
sansantech
PRO
0
250
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
580
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
290
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
140
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
160
今さら理解するウェブフォントver.2026
takanorip
3
770
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Facilitating Awesome Meetings
lara
57
7.2k
Technical Leadership for Architectural Decision Making
baasie
3
600
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
540
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
480
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
Practical Orchestrator
shlominoach
192
12k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Transcript
Schematron とは 学術情報XML推進協議会 (XSPA) 時実 象一 2016/5/13 2016/5/13 スキマトロン勉強会 1
Schematron とは • Schematron プログラムは整形式 (well-formed) の XML 文書 •
各要素は「コマンド」 • プログラムは「スキーマ」とも呼ばれる – schema, の他に、specification, rule set, program, pattern set, assertion set, などとも呼ばれる • データの変換はおこなわない • 記述には XPath 1.0 を用いる • プロセッサが必要 (oXygen) 2016/5/13 スキマトロン勉強会 2
Schematron の利用法 • 人がチェックできるようにレポートを出力 (例)「図表のタイトルとキャプションを出力」 • スキーマでチェックできないチェックをおこなう (例)「受理年は 2014 年以降でなくてはならない」
• パターンを発見する – (例)「著者履歴が記載されていない著者の一覧を 出力」 • 要素の値を用語表を用いてチェックする • プログラムの入力と出力を比較する 2016/5/13 スキマトロン勉強会 3
Schematron のテスト例 – 複雑なチェックも可能 • 「図は本文中に引用が必要」 • 「セクション表題の長さは最大450文字」 • 「Lab
Reportの著者の数は最大6名」 • 「引用文献はすべて文中て引用が必要」 • 「図は文中で少なくとも1回、最大5回まで引用」 • 「キーワードは重複してはいけない」 • 「記事の先頭ページは最終ページより小さい、ただし編 集後記は最終ページで始まって、内部ページにつづいて もよい」 • 「出版日は <season> の中以外はISO dates」 • 「抄録は1パラグラフ」 • 「意見欄の筆者は <editor> になる」 2016/5/13 スキマトロン勉強会 4
JATS と Schematron • Schematron を利用すると – JATS XML データの内容の確認ができる
– 人手のチェック作業が大幅に削減できる – 雑誌毎の「ビジネス・ルール」に正しく のっとった製品ができる – 製品の品質が向上する – 学会・著者の満足度が向上する 2016/5/13 スキマトロン勉強会 5
Schematron 実施例 • SAGE • ISO – DTDの管理・更新 • ある航空機・軍需会社
– 数千のルールを表で管理 • ある大出版社 – 雑誌ごとに異なるビジネス・ルールを管理 • 研究助成情報をCrossrefのFunding Informationと照らして チェック (OSA) • QA ツールに利用 (De Gruyter) • 自社 SGML/XML データの JATS 変換に利用 (AIP, Cambridge University Press) • oXgen 上で Schematron によるリアルタイム・チェック / 修正 (le-tex) 2016/5/13 スキマトロン勉強会 6
Schematron の構造 • Assertions テストする内容 • Messages テストの結果の報告 • Rules
テストの集合 • Patterns Rule の集合 • Phases Pattern を実行するタイミ ング 2016/5/13 スキマトロン勉強会 7
Schematron の実行 • Rule – 一連のテストをまとめたもの <?xml version="1.0" encoding="utf-8" ?>
<schema xmlns="http://purl.oclc.org/dsdl/schematron" > <title>Check Sections 12/07</title> <pattern id="section-check"> <rule context="section"> <assert test="title">This section has no title</assert> <assert test="para">This section has no paragraphs</assert> </rule> </pattern> 2016/5/13 スキマトロン勉強会 8
oXgen での Schematron の実行 (1) • デモ用サンプルあり – https://www.oxygenxml.com/demo/Schematron_V alidation.html
2016/5/13 スキマトロン勉強会 9
oXgen での Schematron の実行 (2) • sample.xpr > schematron >
1.5 > tournament – tournament-schema.sch スキマトロン・ルール – Tournament.rng RELAX NG – Tournament.xml サンプル XML – Tournament.xsd W3G XML Schema 2016/5/13 スキマトロン勉強会 10
oXgen での Schematron の実行 (3) 1. XML ファイルを開く 2. 「検証」
> 「次で検証...」 2016/5/13 スキマトロン勉強会 11
oXgen での Schematron の実行 (4) 3. Phase を選択して実行 4. エラーの表示
2016/5/13 スキマトロン勉強会 12
oXgen での Schematron の実行 (5) 5. エラーを右クリック > 「メッセージを 表示」
– Team 要素の個数は @nbrTeams の値と一 致しなくてはならない – <sch:assert test="count(t:Name) = @nbrParticipants">The number of Name elements in <sch:name/> should match the @nbrParticipants attribute.</sch:assert> 2016/5/13 スキマトロン勉強会 13
oXgen での Schematron の実行 (6) 6. XML を修正して Schematron を再実行
– エラー・メッセージは表示されない 2016/5/13 スキマトロン勉強会 14
• このスライドは下記の資料を参考にしていま す。 • Introduction to Schematron. Version 90-1.0 (November
2008), © 2008 Mulberry Technologies, Inc. • Hands On Schematron. Version 3.3 (August 2014). ©2013, 2014 Mulberry Technologies, Inc. 2016/5/13 スキマトロン勉強会 15