% CVSId: $Id: adulau.tex,v 1.1 2003/02/07 17:51:53 adulau Exp adulau $
%
%
%     Copyright (c)  2001,2002,2003  Alexandre Dulaunoy <adulau@foo.be>
%     Permission is granted to copy, distribute and/or modify this document
%     under the terms of the GNU Free Documentation License, Version 1.2
%     or any later version published by the Free Software Foundation;
%     with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
%     A copy of the license is included in the section entitled "GNU
%     Free Documentation License".
\documentclass[%
pdf,
%nocolorBG,
colorBG,
slideColor,
%slideBW,
%draft,
frames
%azure
%contemporain
%nuancegris
%troispoints
%lignesbleues
%darkblue
%alienglow
%autumn
]{prosper}
\usepackage{amsmath}
\usepackage[T1]{fontenc}
\usepackage{pslatex}
\usepackage[french,english]{babel}
%\usepackage{listings}

\begin{document}
\title{Sécurité en ingénierie du Logiciel}
\subtitle{Le cadre des Web Services \\ {\em Partie 3 : Introduction (rapide) à XML}}
\author{Alexandre Dulaunoy}
\email{adulau@foo.be}
\maketitle

\begin{slide}{Agenda}
\begin{itemize}
\item Introduction
\item Structure XML
\item XML dialecte et description
\item Exemples pratiques
\item XML et Services Web
\end{itemize}
\end{slide}

\begin{slide}{Introduction}
XML (eXtensible Markup Language) 
\begin{itemize}
\item Norme W3C http://www.w3.org/XML/Core/\#Publications,
\item Format texte/ascii (dérive de SGML (ISO 8879)) - balises,
\item Représentations de données structurées,
\item Standard et largement utilisé,
\item XHTML (la version XML de HTML),
\item Les standards  autour de XML expriment la  structure, le type de
  stockage, la sécurité, les transformations,...
\end{itemize} 
\end{slide}

\begin{slide}{Structure XML}
<?xml version=''1.0'' standalone=''yes''?>\\
<catalog>\\
 <cd>\\
   <artist>Klaus Schulze</artist>\\
   <title>Cyborg</title>\\
   <year format="yyyy">1973</year>\\
   <style>retro electronic</style>\\
 </cd></catalog>\\
\begin{itemize}
\item L'en-tête permet de définir le format de traitement,
\item La balise 'catalog' permet de définir un élément,
\item Cet élément contient 1 ou plusieurs élément(s),
\item Ces éléments peuvent contenir des éléments avec attributs ('format'),
\end{itemize}
\end{slide}

\begin{slide}{Structure XML : 2}
\begin{itemize}
\item Structure XML est un arbre,
\item un élément de l'arbre est un noeud de l'arbre,
\item un élément peut contenir des données ou des autres éléments,
\item un élément peut contenir des attributs,
\item La syntaxe est définie par le standard mais pas l'ordre...,
\item un élément possède un 'nom' (p.ex. : artist),
\item Vous devez donc prendre en compte la structure de votre arbre.
\end{itemize}
\end{slide}

\begin{slide}{XML dialecte et description}
\begin{itemize}
\item HTML en XML est XHTML,
\item  MathML  est  un  dialecte  XML pour  l'expression  de  formules
  mathématiques,
\item Une enveloppe SOAP utilise un dialecte XML,
\item La  description des dialectes est  aussi en XML  (XML Schema =/=
  DTD),
\item ...
\end{itemize}
\end{slide}

\begin{slide}{XML exemples pratiques}

\end{slide}

\begin{slide}{XML et Services Web}
XML est le format de prédilection pour les services Web (XML-RPC). \\
<?xml version=''1.0'' encoding=''iso-8859-1''?>\\
<methodCall>\\
<methodName>meerkat.getChannelsByCategory</methodName>\\
<params>\\
<param><value><i4>2</i4></value></param>\\
</params>\\
</methodCall>\\
\end{slide}
\begin{slide}{XML et Services Web}
XML est le format de prédilection pour les services Web (SOAP). 
{\tt\tiny
\begin{verbatim}
POST /StockQuote HTTP/1.1
Host: www.stockquoteserver.com
Content-Type: text/xml; charset="utf-8"
Content-Length: nnnn
SOAPAction: "Some-URI"

<SOAP-ENV:Envelope
  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
   <SOAP-ENV:Body>
       <m:GetLastTradePrice xmlns:m="Some-URI">
           <symbol>DIS</symbol>
       </m:GetLastTradePrice>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
\end{verbatim}
}
\end{slide}

\begin{slide}{Q\&R}
\begin{itemize}
\item adulau@foo.be
\item http://www.foo.be/cours/securite-webservices/
\item 3B12 DCC2 82FA 2931 2F5B  709A 09E2 CD49 44E6 CBCD
\end{itemize}
\end{slide}

\end{document}

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t%%% End: 
