przegląd zastosowań
DESCRIPTION
Przegląd zastosowań. Języki i standardy oparte na XML. Metajęzyk XML: spójna składnia i metodologia definiowania języków, DTD, XML Schema – sposoby definiowania języków. Obszary zastosowań: kodowanie tekstu, kodowanie metainformacji, informacje naukowe, multimedia, programowanie,. - PowerPoint PPT PresentationTRANSCRIPT
11
Przegląd zastosowań
22
Języki i standardy oparte na XML
Metajęzyk XML:
spójna składnia i metodologia definiowania języków,
DTD, XML Schema – sposoby definiowania języków.
Obszary zastosowań:
kodowanie tekstu,
kodowanie metainformacji,
informacje naukowe,
multimedia,
programowanie,
...
33
Zastosowania XML
Kodowanie tekstu:
ISO 12083.
XML DocBook.
Text-Encoding Initiative (TEI).
MIL-STD-38784 (CALS).
HTML / XHTML.
44
Zastosowania XML
Kodowanie metainformacji:
RDF – Resource Description Framework.
CDF – Channel Description Format.
Topic Maps.
RSS – RDF Rich Site Summary.
OCS – Open Content Syndication.
Web Collections using XML.
MCF – Meta Content Framework Using XML.
XMI – XML Metadata Interchange Format – Object Management Group (OMG).
55
Zastosowania XML
Kodowanie informacji naukowych:
MathML – Matematical Markup Language.
CML – Chemical Markup Language.
BSML – Bioinformatic Sequence Markup Language.
BIOML – BIOpolymer Markup Language.
AML – Astronomical Markup Language.
ThML – Theological Markup Language.
GedML – Genealogical Data in XML.
VHG – Virtual Hyperglossary.
OMF – Weather Observation Markup Format.
66
Zastosowania XML
Multimedia:
SVG – Scallable Vector Graphics.
PGML – Precision Graphics Markup Language.
VML – Vector Markup Language.
SMIL – Synchronized Multimedia Integration Language.
VoiceXML.
SABLE – Text-to-Speech Synthesis Markup.
77
Zastosowania XML
Telekomunikacja:
WML – Wireless Markup Language.
DRP – HTTP Distribution and Replication Protocol.
Programowanie:
WIDL – Web Interface Definition Language.
BML – Bean Markup Language.
Java Help API.
CDIF – CASE Data Interchange Format.
UXF – UML eXchange Format.
SWAP – Simple Workflow Access Protocol.
88
DocBook
Przeznaczony do kodowania dokumentacji oprogramowania:
struktura książki,
dodatkowe struktury specyficzne dla dokumentacji oprogramowania.
Status:
DocBook (SGML) – projekt rozpoczęty przez HaL Computer Systems i O'Reilly & Associates,
obecnie zarządzany przez DocBook Technical Committee of OASIS,
równolegle rozwijane wersje SGML i XML (od wersji 4.0).
99
Struktura DocBook
Book (element główny):
BookInfo
(Chapter | Article | Reference | Part) *
Sekcje:
Sect1, ..., Sect5,
Abstract, Sidebar, Warning.
Zawartość tekstowa:
SimPara, Para, FormalPara,
ItemizedList, OrderedList, VariableList, SegmentedList, SimpleList, GlossList.
Informacja techniczna:
ClassName, Command, Email, Filename, Function, Literal, ProductName, UserInput, SGMLTag, ...
1010
DocBook – moduły, dostosowywanie.
Moduły:
EBNF Module (Extended Backus-Naur Form),
HTML Forms Module,
MathML Module,
SVG Module.
Dostosowywanie do własnych potrzeb:
DTD silnie sparametryzowana encjami parametrycznymi,
większość zmian można uzyskać bez modyfikowania standardowych modułów DTD.
1111
DocBook – dodawanie własnego elementu
Fragment DTD:
<!ENTITY % local.tech.char.class ""><!ENTITY % tech.char.class "Action|Application|ClassName|Command|... %local.tech.char.class;">
Dostosowanie:
<!ENTITY % local.tech.char.class "|MethodName"><!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook V3.1//EN">%DocBookDTD;
<!ELEMENT MethodName - - ((%smallcptr.char.mix;)+) > <!ATTLIST MethodName %common.attrib; %classname.role.attrib; %local.classname.attrib; >
1212
Wireless Application Protocol
WAP – Internet przez telefony komórkowe.
Rodzina standardów:
WML – Wireless Markup Language,
WMLScript,
WTLS – Wireless Transport Layer Security,
WSP – Wireless Session Protocol,
WTP – Wireless Transaction Protocol,
...
1313
Schemat komunikacji
Nagłówek HTTP
WMLBramka WAP Serwer WWW
Zapytanie WAP
Zapytanie HTTP
Nagłówek WAP
WML
1414
Język WML
Uwzględnia specyfikę telefonów komórkowych:
małe czarno-białe wyświetlacze,
ograniczone możliwości nawigacji (mało klawiszy, brak myszki),
mała moc obliczeniowa i szybkość transmisji.
Dokument WML:
zbiór kart WML,
proste formatowanie tekstu i grafiki
mechanizmy nawigacji między kartami i dokumentami,
polecenia wywołania skryptów.
1515
Przykład
<?xml version=”1.0”?><!DOCTYPE wml PUBLIC ”-//WAPFORUM//DTD WML 1.1//EN” ”http://www.wapforum.org/DTD/wml_1.1.xml”><wml> <card id=”start” title=”Witamy”> <do type=”accept” label=”Szczegoly”> <go href=”#dalej”/> </do> <p align=”center”>Witamy w<br/> <b>empolis Polska</b></p> </card> <card id=”dalej” title=”Szczegoly”> <p>empolis Polska sp. z o.o.<br/> ul. Plocka 5a<br/>01-231 Warszawa</p> </card></wml>
1616
Narzędzia
Rodzaje dostępnych narzędzi:
emulatory przeglądarek WAP,
środowiska programistyczne.
Status narzędzi:
udostępniane bezpłatnie w Internecie,
bogato udokumentowane.
1717
Narzędzia
Nokia WAP Toolkit:
www.forum.nokia.com
Ericsson WAP IDE:
www.ericsson.com/developerszone/
Emulator przeglądarki WAP:
www.gelon.net
1818
Perspektywy
(Słabnące) wsparcie ze wszystkich stron:
producentów telefonów i narzędzi,
operatorów telefonii komórkowych,
operatorów serwisów WAP.
Potencjalne zastosowania:
informacje o kursach walut,
rozkłady jazdy, rezerwacje biletów,
pogoda,
giełda,
...
1919
Channel Description Format
Inicjatywa Microsoftu.
Kanały:
Specjalne witryny www, opisane plikami CDF.
Pobieranie całych witryn do przeglądania off-line.
Możliwość automatycznego pobierania aktualizacji.
Zawartość kanału prosto na pulpit– Active Desktop.
2020
Zawartość pliku CDF
Metainformacje:
adres strony głównej,
data ostatniej modyfikacji,
maksymalny poziom zagłębienia przy otwieraniu linków,
tytuł i opis zawartości,
plan pobierania uaktualnień,
logo.
Zawartość witryny:
odwołania do poszczególnych stron,
podkanały.
2121
Przykład pliku CDF
<CHANNEL HREF="http://domain/folder/index.html" BASE="http://domain/folder/" LASTMOD="1999-12-17T09:12" PRECACHE="YES" LEVEL="0"> <TITLE>Ala ma kota</TITLE> <ABSTRACT>Stan posiadania Ali</ABSTRACT> <SCHEDULE><INTERVALTIME DAY="14"/></SCHEDULE> <LOGO HREF="ZdjecieAli.gif" STYLE="ICON"/> <ITEM HREF="Ala.html" LEVEL="1"> <TITLE>Ala</TITLE> </ITEM> <ITEM HREF="Kot.html" LEVEL="1"> <TITLE>Kot</TITLE> </ITEM></CHANNEL>
2222
Mathematical Markup Language
Pozwala zapisywać formułyprzy pomocy:
składni prezentacyjnej,
składni semantycznej.
Status języka:
rekomendacja W3C,
nie jest akceptowany przezpopularne przeglądarki,
jest wspomagany przezoprogramowanie, np. Amaya,MathType.
2323
MathML – przykład
Składnia prezentacyjna:
<mrow> <mrow> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo> <mrow> <mn>4</mn> <mo>&invisibletimes;</mo> <mi>x</mi> </mrow> <mo>+</mo> <mn>4</mn> </mrow> <mo>=</mo> <mn>0</mn></mrow>
042 xx
2424
MathML - przykład
Składnia semantyczna:
<apply> <plus/> <apply> <power/> <ci>x</ci> <cn>2</cn> </apply> <apply> <times/> <cn>4</cn> <ci>x</ci> </apply> <cn>4</cn></apply>
042 xx
2525
Chemical Markup Language
Pozwala zapisywać wzory chemiczne, kształty cząsteczek itp.:
spectra and other instrumental output,
crystallography,
organic and inorganic molecules,
physicochemical quantities (including units),
MO calculations,
macromolecules: sequence protein,ligand and sequence.
Rozwijany przez Open MoleculeFoundation.
2626
CML – przykład
<CML:molecule id="test"> <CML:atomArray builtin="elsym"> c c O H H H H H H</CML:atomArray> <CML:atomArray builtin="x2" type="float"> 0 0 0 0 0 -2 -2 2 2</CML:atomArray> <CML:atomArray builtin="y2" type="float"> 0 2 4 -2 6 0 2 0 2</CML:atomArray> <CML:bondArray builtin="atid1"> 1 1 1 1 2 2 2 3</CML:bondArray> <CML:bondArray builtin="atid2"> 2 4 6 8 7 9 3 5</CML:bondArray> <CML:bondArray builtin="order" type="integer"> 1 1 1 1 1 1 1 1 </CML:bondArray></CML:molecule>
2727
2828
SVG
Scalable Vector Graphics
Pozwala opisywać dwuwymiarową grafikę:
kształty wektorowe (złożone z linii prostych i krzywych),
obrazy rastrowe,
tekst,
grupowanie, transformacje, filtry, ...
Status:
SVG 1.0 – rekomendacja W3C,
SVG 1.1 – rekomendacja kandydująca.
2929
SVG - przykład
<svg width="4in" height="3in">
<desc>Niebieskie koło z czerwoną obwódką </desc>
<g>
<circle style="fill: blue; stroke: red"
cx="200" cy="200" r="100"/>
</g>
</svg>
3030
Bean Markup Language
Pomysł:
XML jako język konfiguracji komponentów w Javie (JavaBeans).
Elementy reprezentowane przez język:
obiekty,
atrybuty obiektów,
referencje,
zawieranie obiektów,
powiązania obiektów przez zdarzenia.
Inicjatywa IBM AlphaWorks.
3131
DokumentBML XML
BML Player
Pozwala „wykonywać” pliki BML.
ParserXML
DOM BMLPlayer
3232
JavaRuntime bytecode
JavaClassFile
bytecode KompilatorJavy
Java
BML Compiler
Na podstawie dokumentu BML generuje plik źródłowy w Javie, który jest następnie kompilowany.
DokumentBML XML Parser
XMLDOM BML
CompilerJava
Żródław Javie
3333
Przykład
<bean class="java.awt.Frame"> <property name="title" value="Color Fade Bar"/> <property name="layout"> <bean class="java.awt.BorderLayout"/> </property> <add> <bean class="ColorFadeBean" id="FadeBar"> <property name="width" value="300"/> <property name="height" value="50"/> ... </bean> </add></bean>
3434
Gdzie szukać dalej
DocBook:
DocBook: The Definitive Guide: www.docbook.org
DocBook Technical Committee of OASIS: www.oasis-open.org/docbook
WAP:
WAP Forum: www.wapforum.org
AnywhereYouGo: przewodnik po WML: www.AnywhereYouGo.com
Polska witryna WAP: mobile.net.pl
3535
Gdzie szukać dalej
CDF:
Active Channel Technology:
msdn.microsoft.com/workshop/delivery/channel/ overview/overview.asp
Submission to W3C:
www.w3.org/TR/NOTE-CDFsubmit.html
3636
Gdzie szukać dalej
MathML:
W3C’s Math Home Page
http://www.w3.org/Math
CML:
Strona główna Open Molecule Foundation:
www.xml-cml.org
Wprowadzenie do CML:
ala.vsms.nottingham.ac.uk/ vsms/java/cml
3737
Gdzie szukać dalej
SVG:
W3C Scalable Vector Graphics
www.w3.org/Graphics/SVG/
SVG Central
www.svgcentral.com
BML:
IBM AlphaWorks:
www.alphaWorks.ibm.com/ formula/BML
3838
Zakończenie:Dokąd zmierzamy?
3939
Rodzaje informacji
dostępnośćbezpieczeństwo
szybkośćwierność
dostępnośćzarządzalność
szybkośćdostępność
archiwamateriały
marketingowe,e-commerce
dokumenty biznesowe:faktury, zamówienia
treść jako produkt:publikacje referencyjne dokumentacja techniczna
wysoka wartość
niska wartość
długi czasżycia
krótki czas życia
???HTML
EDI SGML
XML
4040
Trendy
budowaniebaz wiedzy
dotarcie do rynkujakość informacji
handel w Internecie
upowszechnieniezwiększenie szybkości
elastyczność
tworzenie wartościzarządzanie wartościąpublikowanie jeden-do-jednego
wysoka wartość
niska wartość
długi czasżycia
krótki czas życia
??? + XMLHTML XML
EDI XML SGML XML
4141
XML-owa (r)ewolucja
Młoda, dynamicznie się rozwijająca technologia:
zatwierdzanie nowych standardów,
rozwój narzędzi,
ale: istnieją już zastosowania przemysłowe,
wsparcie dla XML-a zaczyna być istotnym czynnikiem przy wyborze oprogramowania.
Wątpliwości, pytania:
czy XML wyprze SGML? HTML?
czy XML Schema wyprze DTD?
czy XML-EDI wyprze EDIFACT?
...?
4242