Des standards du web et de leur évolution Un survol non technique et non exhaustif des initiatives au W3C Fabien Gandon Décembre 2006
HTTP/D HTML URL - URI Le puzzle du web…
1991 – navigateur sous NeXTStep W3C créé en 1994 1990 – TB Lee propose le World Wide Web au CERN HTML, HTTP, navigateur : point de jonction 1991 – navigateur sous NeXTStep W3C créé en 1994 Une couche applicative au dessus d'Internet: HTML 1.0 (1992) http://www.w3.org/History/19921103-hypertext/hypertext/WWW/MarkUp/MarkUp.html Uniform Resource Locator (URL): RFC 1738 Dec. 1994 HTML 2.0: RFC 1866 Novembre 1995 HTTP 1.0: RFC 1945 in Mai 1996 HTML 3.2 Recommandation 1997 (1996) Normaliser les extensions les plus courantes Tableaux, texte autour images, applets, indices/exposants Evolutions suivantes (Scripts, Stylesheets) WD / LC / CR / PR / REC Historique
HTTP/D XML HTML URL - URI DTD - XML Schema Another brick in the…
Web structuré (la famille XML) Extensible Markup Language 1.0 Rec. 1998 XML 1.0 (Fourth Edition) W3C Recommendation 16 August 2006 XML 1.1 (Second Edition), W3C Recommendation, 16 August 2006 Un format textuel d'échange de données structurées Standard pour définir des langages balisés <user><id>fgandon</id><home>/fg</home></user> Structurer présenter : données et structures vs. affichage ou traitement Web structuré accessible comme Base de Données Format non propriétaire et ouvert (interop., pérennité) Traitements automatiques & distribuables; API dispo. Famille de langages de représentation et manipulation MathML, CML, SVG, XMI, P3P, XACML, SAML, SMIL, BPML… Web structuré (la famille XML)
Accéder au XML depuis vos programmes Développement accéléré: structure et parseurs Lecture événementielle: SAX parseur à la volée Charger le XML comme un arbre: API DOM Document Object Model Level 3 W3C Recommendation 7 April 2004 Méthodes d’échange d’XML performantes Efficient XML Interchange Measurements Note W3C Working Draft 18 July 2006 Métriques & critères (compact, fidélité, efficacité) DTD / Schéma: standardiser et échanger structures Une DTD définit les balises autorisées, leurs attributs et leur enchaînement <!DOCTYPE post_it SYSTEM "post_it.dtd"> XML Schema est son successeur: une syntaxe XML et des extensions (datatypes, types complexes, etc.) xsi:schemaLocation="http://myfirm.com/post_it.xsd" Accéder au XML depuis vos programmes
XML Schéma Part 0: Primer Second Edition W3C Recommendation 28 October 2004 Part 1: Structures Second Edition W3C Recommendation 28 October 2004 Part 2: Datatypes Second Edition W3C Recommendation 28 October 2004 Une syntaxe XML & Modularité Contraintes sur structure (namespaces, éléments, attributs, cardinalité ) et contenu (datatypes et types prédéfinis, entités, notations, expressions régulières) Notion de type et héritage pour définitions éléments, attributs, et datatypes (extension & restriction) Valeurs par défaut des éléments et des attributs Spécification partielle (élément / attribut quelconque) En cours: XML Schema 1.1 Part 2: Datatypes W3C Working Draft 17 February 2006, Part 1: Structures W3C Working Draft 31 August 2006 Simplicité, version, contrainte de cooccurrence. XML Schema
Exemples de types <simpleType name="may_date"> <restriction base="date"> <pattern value="\d{4}-05-\d{2}"/> </restriction> </simpleType> <complexType name="order_type" mixed="true"> <choice> <element ref="n:address"/> <sequence> <element ref="n:email" minOccurs="0" maxOccurs="unbounded"/> <element ref="n:phone"/> </sequence> </choice> <attribute name="id" type="unsignedInt" use="required"/> </complexType> COPYRIGHT © 2000-2003 ANDERS MØLLER & MICHAEL I. SCHWARTZBACH <complexType name="car"> <complexContent> <extension base="n:vehicle"> <sequence> <element name="wheel" minOccurs="3" maxOccurs="4"/> </sequence> </extension> </complexContent> </complexType> Exemples de types
XHTML™ 2.0 W3C Working Draft 26 July 2006 XHTML™ 1.0: Extensible HyperText Markup Language Recommendation 2000, Revision 2002 Reformulation de HTML 4 en XML 1.0 (bien formé) Construit au-dessus d’XML: bénéficie des outils XML (parser, valider, transformer, etc.) et mécanismes de modularisation & extension (composer avec d’autres langages) XHTML™ 2.0 W3C Working Draft 26 July 2006 Ne cherche pas la compatibilité ascendante Générique, moins de présentation plus de structure, accessibilité et utilisabilité, moins de scripts, indépendance au terminal Principe de modularisation Modularization of XHTML W3C Recommendation 10 April 2001 Second Edition, W3C Working Draft 18 February 2004 XHTML
Modularisation & extension XHTML-Print W3C Recommendation 20 September 2006 Impression sur des imprimantes aux capacités réduites (mobiles ou sans pilote spécifique) An XHTML + MathML + SVG Profile W3C Working Draft 9 August 2002 XFrames W3C Working Draft 12 October 2005 Extension de XHTML pour la composition de documents dans une fenêtre Différence importante avec les frames: codage des frames dans l’URI <group compose="horizontal"> <group compose="vertical"> <frame xml:id=“logo"/> <frame xml:id=“index"/> </group> <frame xml:id=“content"/> http://example.org/home.xframes#frames(logo=aristote.xhtml,index=start.xhtml,content=welcome.xhtml) Modularisation & extension
Document composé: Web Integration Compound Document, WICD Core 1 Document composé: Web Integration Compound Document, WICD Core 1.0 W3C Working Draft Nov 06 WICD Core 1.0 W3C Working Draft 22 November 2006 WICD Mobile 1.0 W3C Working Draft 22 November 2006 WICD Full 1.0 W3C Working Draft 22 November 2006 Combiner plusieurs formats dans un document (ex: XHTML, SVG, SMIL, XForms). Compound Document Formats (CDF) Working Group Comment combiner ? Quel est le comportement résultant? Document composé
Web Integration Compound Document, WICD Core 1.0 <?xml version="1.0" encoding="iso-8859-1"?> <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml"> <xhtml:body> <xhtml:h1>A Compound Document</xhtml:h1> <xhtml:p>A simple formula using MathML in XHTML.</xhtml:p> <mathml:math xmlns:mathml="http://www.w3.org/1998/Math/MathML"> <mathml:mrow> <mathml:msqrt> <mathml:mn>49</mathml:mn> </mathml:msqrt> <mathml:mo>=</mathml:mo> <mathml:mn>7</mathml:mn> </mathml:mrow> </mathml:math> </xhtml:body> </xhtml:html> Web Integration Compound Document, WICD Core 1.0
Another brick in the… HTTP/D XML HTML URL - URI XSL/T XPath Xpointer XLink DTD - XML Schema XQuery Another brick in the…
Adressage de structures (XPath) XML Path Language 1.0 W3C Recommendation 1999 Langage pour décrire des chemins dans un document XML (sélectionner) Expression de chemins et sélection des éléments: balises, attribut, texte, namespace, instruction, commentaire et racines Fonctions de comparaison et de tests, de calcul, de manipulation de texte et de balises, etc. Axes de navigation: relations entre nœuds (père, frère, descendant, etc.) Retourne un node-set, une string, un booléen, un nombre © W3CSchool Adressage de structures (XPath)
Document: <post_it importance="urgent"> <sujet>billets d’avion</sujet> <date>2005-11-28</date> <message xml:lang="fr">tes billets sont sur mon bureau</message> </post_it> Chemin Valeur /post_it/*[2] <date>2005-11-28</date> /post_it@importance importance="urgent" //*[@lang='fr']/text() tes billets sont sur mon bureau Exemples de XPath
XML Path Language (XPath) 2 XML Path Language (XPath) 2.0 W3C Proposed Recommendation 21 November 2006 Extension: typage plus riche (XSD), opérations sur des types élémentaires, traitement de séquences, itérations sum(for $x in /order/item return $x/price * $x/quantity) if ($widget1/unit-cost < $widget2/unit-cost) then $widget1 else $widget2 every $x in /students/student/name satisfies $x = "Fred" $x intersect /foo/bar * except @exc:foo XPath 2.0
XPointer 1.0 W3C Recommendation 2003 Extension des URL pour pointer sur des éléments d'un document XML même si le fragment est sans ID. Fait une connexion entre XPath et les URL: utilise un fragment XPath à la fin de l’URL Aussi une extension de XPath pour ajouter des fonction pour les URL (ex: obtenir URL précédant le fragment) Exemple: http://www.inria.fr/teams.xml#xpointer(acacia/articles[position()<=10]) XPointer
Exemple de lien externe: XML Linking Language 1.0, W3C Recommendation 2001 La généralisation du concept de lien du HTML Destiné à XML en général pas seulement HTML Plus expressif (destinations multiples, contrôle des déclencheurs, adaptation du comportement, ...) Exemple de lien externe: <a_link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="extended"> <a_resource xlink:type="locator" xlink:href="products.xml#154" xlink:label="prod"/> <a_resource xlink:type="locator" xlink:href="prices.xml#HT23" xlink:label="price"/> <an_arc xlink:type="arc" xlink:from="prod" xlink:to="price"/> </a_link> XLink
XLink dans du XHTML: HLink HLink Link recognition for the XHTML Family W3C Working Draft 13 Sept. 2002 utiliser les XLink dans des liens XHTML <hlink namespace="http://www.example.com/markup" element="redirect" locator="@href" effect="replace" actuate="onLoad"/> (…) <redirect href=“default.xhtml">This page has moved</redirect> HLink
Un langage à la SQL pour XML: XQuery XQuery 1 Un langage à la SQL pour XML: XQuery XQuery 1.0: An XML Query Language W3C Proposed Rec 21 Nov 2006 Utilise XPath 2.0 pour ses expressions (80% spec) Fonctions, constructeurs, variables locales Très lié au monde des bases de données Exemple (W3School) : for $x in doc("books.xml")/bookstore/book where $x/price>30 order by $x/title return $x/title XQuery
Feuilles de styles pour XML: XSL Extensible Stylesheet Language (XSL) Version 1.0 W3C Rec 15 October 2001 Extensible Stylesheet Language (XSL) Version 1.1 W3C Rec 05 December 2006 change marks, bookmarks, multiple flows, graphic scaling, etc. XSL–FO: document formaté (format pivot de publication) <fo:block break-before="page"> <fo:block text-align="center" space-after="8pt" space-before="16pt" space-after.precedence="3">Chapter title </fo:block> (…) XSLT: transformation du XML XML stylesheets (XSL)
XSL Transformations 1.0 W3C Recommendation 1999 Transformation récursive d’un arbre XML source en un arbre XML cible: tester et filtrer, modifier des valeurs, ajouter des éléments, réorganiser (trier), etc. Utilise XPath pour naviguer dans un document XML afin de le transformer par exemple en HTML Les règles XSLT récursives (patrons) sont liées à une expression XPath qui détermine leur activation Boucles, embranchements, opérateurs de tri, constructeurs de nœuds, etc. XSL Transformations (XSLT) Version 2.0 W3C Proposed Recommendation 21 November 2006 Résultat temporaire, plusieurs entrées, plusieurs résultats, grouper des nœuds, fonctions définies dans une feuille, expressions régulières, application de patrons multiples à un même nœud XSLT
Actuellement les instructions de traitement: < Actuellement les instructions de traitement: <?xml-stylesheet type='text/xsl' href='transform2.xsl'?> XML Processing Model Working Group XProc: An XML Pipeline Language W3C Working Draft 17 November 2006 Indiquer des opérations à faire sur un ou plusieurs documents XML (plusieurs entrées et sorties) Indiquer les séquences, l'ordre, etc. ex: décrypter en premier Interne ou externe au document considéré // schéma de traitement Non obligatoire, non unique, ressources non XML etc. XProc
<p:pipeline name="fig2" xmlns:p="http://example <p:input port="doc" sequence="no"/> <p:output port="out" step="xform" source="result"/> <p:choose name="vcheck" step="fig2" source="doc"> <p:when test="/*[@version < 2.0]"> <p:output name="valid" step="val1" source="result"/> <p:step type="p:validate" name="val1"> <p:input port="document" step="fig2" source="doc"/> <p:input port="schema" href="v1schema.xsd"/> </p:step> </p:when> <p:otherwise> <p:output name="valid" step="val2" source="result"/> <p:step type="p:validate" name="val2"> <p:input port="schema" href="v2schema.xsd"/> </p:otherwise> </p:choose> <p:step type="p:xslt" name="xform"> <p:input port="document" step="vcheck" source="valid"/> <p:input port="stylesheet" href="stylesheet.xsl"/> </p:pipeline> Source: XProc: An XML Pipeline Language W3C Working Draft 17 November 2006
Another brick in the… Query SPARQL annotations RDF ontologies RDFS OWL règles inférences HTTP/D XML HTML URL - URI XSL/T XPath Xpointer XLink DTD - XML Schema XQuery Another brick in the…
Le ou la tour des standards du Web sémantique. Les 4 principaux standards du Web sémantique RDF: un modèle de triplets pour décrire et connecter des ressources anonymes ou identifiées par un URI (sujet, prédicat, objet) / graphe orienté étiqueté SPARQL: un langage de requête sur les graphes RDF RDFS est un langage de déclarations et descriptions légères; typage des ressources et de leurs relations subClassOf, subPropertyOf, range, domain OWL: 3 couches d'extension de l'expressivité (logique) Un modèle en couche dans une direction d'extension; RDF sans RDFS, RDFS sans OWL, … Le ou la tour des standards du Web sémantique.
Resource Description Framework Représenter assertions à propos de ressources (Web) ex: doc.html a pour auteur Fabien et parle du Web Les assertions peuvent être décomposées en prédicats binaires / triplets de la forme (sujet, propriété, valeur) ex: (http://inria.fr/doc.html , auteur , urn://~fgandon) (urn://~fgandon , nom , "Fabien") (http://inria.fr/doc.html , sujet , "Web") Les ressources sont identifiées par des URI/URL jointure entre les couches OSI et entre assertions Les triplets forment un graphe: Modèle & syntaxe XML d’annotation pour dire tout sur tout http://inria.fr/doc.html urn://~fgandon auteur "Web" sujet "Fabien" nom Resource Description Framework
SPARQL Query Language for RDF W3C Working Draft 4 October 2006 Langage de requêtes SPARQL Protocol for RDF W3C Candidate Recommendation 6 April 2006 Description (WSDL 2.0) pour soumettre une requête à une serveur distant et récupérer la réponse (binding SOAP) SPARQL Query Results XML Format W3C Candidate Recommendation 6 April 2006 Langage de résultat SPARQL
Requêtes sur les triplets Forme principale en 3 clauses (SQL): PREFIX ugb: <http://www.ugb.sn/dess#> SELECT ?etudiant ?nom FROM http//www.ugb.sn/data.rdf WHERE { ?etudiant ugb:inscrit ?x . ?x ugb:siteweb http//www.ugb.sn . ?etudiant ugb:nom ?nom . ?etudiant ugb:age ?age . FILTER ( ?age > 20 ) } ORDER BY ?nom LIMIT 20 OFFSET 20 Requêtes sur les triplets
Appel SPARQL PREFIX dc: <http://purl.org/dc/elements/1.1/> SELECT ?book ?who WHERE { ?book dc:creator ?who } GET /sparql/?query=EncodedQuery HTTP/1.1 Host: www.example User-agent: my-sparql-client/0.1 HTTP/1.1 200 OK Date: Fri, 06 May 2005 20:55:12 GMT Server: Apache/1.3.29 (Unix) PHP/4.3.4 DAV/1.0.3 Connection: close Content-Type: application/sparql-results+xml <?xml version="1.0"?> <sparql xmlns="http://www.w3.org/2005/sparql-results#"> <head> <variable name="book"/> <variable name="who"/> </head> <results distinct="false" ordered="false"> <result> <binding name="book"><uri>http://www.example/book/book5</uri></binding> <binding name="who"><bnode>r29392923r2922</bnode></binding> </result> … Appel SPARQL
RDF Schema: ontologies légères Nommer et définir un vocabulaire conceptuel consensuel et faire des inférences élémentaires Nommer les classes de ressources existantes Nommer les relations qui existent entre ces classes et donner leur signature Liens hiérarchiques entre classes et entre propriétés Donner un URI aux concepts qui vous sont importants Proche mais différent des modèles objets: propriétés en dehors des classes, multi-instanciation, héritage multiple classes et propriétés, inférences positives monotones, conjonctives Squelette taxonomique d'une ontologie S RDF Schema: ontologies légères
OWL: Ontologies lourdes OWL sur une restriction de RDF/S OWL Lite / DL / Full Logiques de description Vérification, classification, identification Définition de classes (énumération, union, intersection, complément, disjonction, restriction valeur et cardinalité des propriétés) Caractérisation des propriétés (symétrique, transitive, fonctionnelle, inversement fonctionnelle, inverse) Gestion des équivalences, versions, documenter OWL: Ontologies lourdes
Un certain nombre d’outils/implémentations déjà disponibles (http://esw.w3.org/topic/SemanticWebTools): C, C++, Java, PHP, Javascript, Python, Perles, C#, Ruby, Prolog, … Plus de 17 Triple Stores (Jena, Oracle Spatial 10g, etc.) Plus de 28 outils de développement (Altova, Top Quandrant, Protégé, etc.) Beaucoup de livres: http://esw.w3.org/topic/SwBooks Les schémas ne sont pas forcément à créer mais parfois à traduire (ex: normes) ou parfois même déjà disponibles (ex: INSEE) SW Pratique
Exemple des données de l’INSEE
Proposer gratuitement des contrats flexibles de droit d'auteur pour diffuser des créations. Générer des contrats (schéma) <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <Work rdf:about=""> <license rdf:resource="http://creativecommons.org/licenses/by/2.0/fr/"/> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> </Work> <License rdf:about="http://creativecommons.org/licenses/by/2.0/fr/"> <permits rdf:resource="http://web.resource.org/cc/Reproduction"/> <permits rdf:resource="http://web.resource.org/cc/Distribution"/> <requires rdf:resource="http://web.resource.org/cc/Notice"/> <requires rdf:resource="http://web.resource.org/cc/Attribution"/> <permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/> </License> </rdf:RDF> Creative Commons
Proposer gratuitement des contrats flexibles de droit d'auteur pour diffuser des créations. Générer des contrats (schéma) Filtrer la recherche Points importants Petit mais puissant Pas d'inférence Pour l'humain Application réelle (Google, Yahoo, flickr, musées, éditeurs, etc.) Creative Commons
Simple Knowledge Organization System SKOS Core Guide 2nd W3C Public Working Draft 2 November 2005 SKOS Core Vocabulary Specification 2nd W3C Public Working Draft 2 Nov 2005 Publishing a Thesaurus on the Semantic Web W3C Working Draft 17 May 2005 Représenter et partager des classifications, des glossaires, des thésaurus, des folksonomies, etc. SKOS
GRDDL, Microformats, RDFa GRDDL (Gleaning Resource Descriptions from Dialects of Languages) - s’intégrer au web actuel Gleaning Resource Descriptions from Dialects of Languages W3C Working Draft 24 Oct. 2006 GRDDL Primer W3C Working Draft 2 October 2006 GRDDL Use Cases: Scenarios of extracting RDF data from XML documents W3C Working Draft 2 October 2006 Déclarer qu’un document contient des données Lier une transformation (en particulier en XSLT) pour extraire ces données (en particulier en RDF/XML) XHTML & XML dialectes (ex: spreadsheet) Utilisable aussi avec : Microformats ex: RDFa ex: <span class="tel"> <span class="type">home</span>: <span class="value">+1.415.555.1212</span> </span> <h1 property="dc:title">Vacation in the South of France</h1> GRDDL, Microformats, RDFa
(GRDDL) Gleaning Resource Descriptions from Dialects of Languages, test cases
(GRDDL) Gleaning Resource Descriptions from Dialects of Languages, test cases
SweetWiki
En cours sur le web sémantique RIF: Rules Interchange Format RIF Use Cases and Requirements W3C Working Draft 10 July 2006 Format d'échange de règles sur le web Interopérabilité des systèmes à base de règles Règles pour le web sémantique ex: ?person author ?doc ?doc rdf:type PhDThesis ?doc concern ?topic ?person expertIn ?topic ?person rdf:type PhD author PhDThesis ?doc Person ?person concern Topic ?topic PhD ?person expertIn En cours sur le web sémantique
SW Best Practices and Deployment Working Group Notes: “Best Practice Recipes for Publishing RDF Vocabularies” “Defining N-ary relations” “Representing Classes As Property Values” “Representing "value partitions" and "value sets"” “XML Schema Datatypes in RDF and OWL” … et plus avec le SW Deployment Working Group Bonnes pratiques
Another brick in the… confident-ialité sécurité Query SPARQL annotations RDF ontologies RDFS OWL règles inférences HTTP/D XML HTML URL - URI XSL/T XPath Xpointer XLink DTD - XML Schema XQuery Another brick in the…
Générateur étiquettes (ex: ICRA) Platform for Internet Content Selection Rating Services and Rating Systems 1.1 Rec. 1996 PICS Label Distribution Label Syntax and Communication Protocols 1.1 Rec. 1996 Protéger les enfants de certains contenus <meta http-equiv="pics-label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" labels for "http://mm.256.com/" generic true ratings (cz 1 la 1 lb 1 lc 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" labels for "http://mm.256.com/" generic true ratings (n 0 s 0 v 0 l 4) )' /> Générateur étiquettes (ex: ICRA) PICS Rating Vocabularies in XML/RDF Note 2000 Web et enfants (PICS)
La Confidentialité: P3P The Platform for Privacy Preferences 1.0 (P3P1.0) Specification W3C Recommendation 16 April 2002 The Platform for Privacy Preferences 1.1 (P3P1.1) Specification, W3C Working Group Note 13 November 2006 P3P
P3P/XML encoding (cred. L. Cranor) <POLICIES xmlns="http://www.w3.org/2002/01/P3Pv1"> <POLICY discuri="http://p3pbook.com/privacy.html" name="policy"> <ENTITY> <DATA-GROUP> <DATA ref="#business.contact-info.online.email">privacy@p3pbook.com </DATA> ref="#business.contact-info.online.uri">http://p3pbook.com/ <DATA ref="#business.name">Web Privacy With P3P</DATA> </DATA-GROUP> </ENTITY> <ACCESS><nonident/></ACCESS> <STATEMENT> <CONSEQUENCE>We keep standard web server logs.</CONSEQUENCE> <PURPOSE><admin/><current/><develop/></PURPOSE> <RECIPIENT><ours/></RECIPIENT> <RETENTION><indefinitely/></RETENTION> <DATA ref="#dynamic.clickstream"/> <DATA ref="#dynamic.http"/> </STATEMENT> </POLICY> </POLICIES> Example 3.1 of the spec P3P/XML encoding (cred. L. Cranor)
Web Security Context W3C WORKING GROUP NOTE 20 NOVEMBER 2006 XML Encryption Syntax and Processing W3C RECOMMENDATION 10 DECEMBER 2002 Comment encrypter des données (arbitraires, élément XML ou contenu) et représenter le résultat en XML XML-Signature Syntax and Processing W3C RECOMMENDATION 12 FEBRUARY 2002 Signer des données: intégrité, authentification, identité XML Key Management Specification (XKMS 2.0) W3C RECOMMENDATION 28 JUNE 2005 Enregistrement et distribution des clefs publiques Web Security Context W3C WORKING GROUP NOTE 20 NOVEMBER 2006 Représentation des contextes de sécurité Présentation des informations à l’utilisateur Authorizing Read Access to XML Content Using the <?access-control?> Processing Instruction 1.0 W3C WORKING DRAFT 17 MAY 2006 Quels domaines peuvent accéder au contenu d’un site XML & la sécurité
Another brick in the… confident-ialité sécurité Query SPARQL annotations RDF ontologies RDFS OWL règles inférences HTTP/D XML HTML URL - URI XSL/T service composition description schémas annotation services applications services web WSDL SOAP XPath Xpointer XLink DTD - XML Schema XQuery Another brick in the…
HTML 2.0 contenait déjà des formulaires Dans la deuxième moitié des années 90 le Web intègre de plus en plus de services (documents dynamiques) Développement des CGI (C, C++, Shell, Perl, etc.) Common Gateway Interface, lancé à chaque appel Origine: extension des serveurs pour moteurs de recherche Maintenant: extension applicative STDIN / STDOUT PHP, ASP (VBScript),etc. En Java: Servlet, JSP Navigateur Serveur CGI Requête HTTP Réponse HTTP Paramètres HTML Form C, Perl, etc. Web dynamique (CGI)
Un web d'intégration d'applications Demande grandissante d'intégration vs. hétérogénéité & systèmes légataires accumulés De plus en plus de logiciels: outils, langages, etc. De plus en plus de sources, bases, etc. De plus en plus de matériel. Distribution des applications nécessaires à une tâches Service Web : interface programmatique sur le web Accessible à travers les protocoles du Web Décrite dans un document XML (WSDL) Invoquée et répondant avec des messages XML (SOAP) Un web d'intégration d'applications
XML Protocol Working Group (premier groupe) Enveloppe XML & traitement pour le transport de données Sérialisations de structures (ex: graphes) et optimisation XML-binary Optimized Packaging W3C Recommendation 25 January 2005 SOAP Message Transmission Optimization Mechanism W3C Rec 25 January 2005 Cas particulier de binding (HTTP) Web Services Addressing Working Group Web Services Addressing 1.0 – Core W3C Recommendation 9 May 2006 Web Services Addressing 1.0 - SOAP Binding W3C Recommendation 9 May 2006 Adressage indépendant du mode de transport Entête des messages et routage, réponses et erreurs Documentation des points d'accès Web Services Description Working Group (WSDL) Message: définitions des types de données échangées. Description des séquences d'opérations permises Relier aux différents protocoles (Binding) Web Services Activity
WSDL 1.0: Décrire des services <message name="getPriceRequest"> <part name="title" type="xs:string"/> </message> <message name="getPriceResponse"> <part name="price" type="xs:decimal"/> <portType name="pricingBooks"> <operation name="getPriceForTitle"> <input message="getPriceRequest"/> <output message="getPriceResponse"/> </operation> </portType> <binding type="pricingBooks" > <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> <operation> <soap:operation soapAction="http://shp.com/getPrice"/> (…) </binding> WSDL 1.0: Décrire des services
SOAP 1.0: Invoquer des services POST /InStock HTTP/1.1 Host: www.stock.org Content-Type: application/soap+xml; charset=utf-8 Content-Length: 175 <soap:Envelope (…)> <soap:Body xmlns:ex="(…)"> <ex:getPriceRequest> <ex:title>Weaving the Web</ex:title> </ex:getPriceRequest> </soap:Body> </soap:Envelope> HTTP/1.1 200 OK Content-Type: application/soap; charset=utf-8 Content-Length: 159 <ex:getPriceResponse> <ex:price>10.20</ex:price> </ex:getPriceResponse> SOAP 1.0: Invoquer des services
WSDL Recommendations WSDL et SOAP Rec Web Services Description Language (WSDL) Version 2.0 Part 0: Primer W3C Candidate Recommendation 27 March 2006 Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language W3C Candidate Recommendation 27 March 2006 Web Services Description Language (WSDL) Version 2.0 Part 2: Adjuncts W3C Candidate Recommendation 27 March 2006 Web Services Description Language (WSDL) Version 2.0 SOAP 1.1 Binding W3C Working Draft 27 March 2006 Web Services Description Language (WSDL) Version 2.0: RDF Mapping W3C Working Draft 27 March 2006 Recommendations SOAP Version 1.2 Part 0: Primer W3C Recommendation 24 June 2003 SOAP Version 1.2 Part 1: Messaging Framework W3C Rec 24 June 2003 SOAP Version 1.2 Part 2: Adjuncts W3C Recommendation 24 June 2003 SOAP Version 1.2 Specification Assertions & Test Collection W3C Rec 24 June 03 XML-binary Optimized Packaging W3C Recommendation 25 January 2005 SOAP Message Transmission Optimization Mechanism W3C Rec 25 January 2005 Resource Representation SOAP Header Block Rec 25 January 2005 WSDL et SOAP Rec
Web Services Choreography WS Choreography Model Overview W3C Working Draft 24 March 2004 Web Services Choreography Description Language Version 1.0 W3C Candidate Rec Nov 2005 Web Services Choreography Description Language: Primer W3C Working Draft 19 June 2006 Séquence et conditions d'échanges pair-à-pair Description partagée ; contrat ; pas un contrôle central Web Services Activity
XML Databinding Basic XML Schema Patterns for Databinding Version 1 XML Databinding Basic XML Schema Patterns for Databinding Version 1.0 W3C Working Draft 22 Nov. 2006 Advanced XML Schema Patterns for Databinding Version 1.0 W3C Working Draft 22 Nov. 2006 XML Schema Patterns for Common Data Structures Ver. 1.0 W3C Working Draft 12 May 2006 Documenter les patterns de structures de données récurrentes ; indépendamment des langages Recueil: http://www.w3.org/2002/ws/databinding/patterns/6/09/ ex: String Value, Boolean Value, Decimal Value, Null Value, Default Value, Enumeration, Collection, Vector XPath pour les extraire d’un document <xs:simpleType name="Beatle"> <xs:restriction base="xs:string"> <xs:enumeration value="John"/> <xs:enumeration value="Paul"/> <xs:enumeration value="George"/> <xs:enumeration value="Stuart"/> <xs:enumeration value="Pete"/> <xs:enumeration value="Ringo"/> </xs:restriction> </xs:simpleType> .//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/ XML Databinding
Web Services Policy Web Services Policy 1 Web Services Policy Web Services Policy 1.5 – Primer W3C Working Draft 18 October 2006 Web Services Policy 1.5 – Attachment W3C Working Draft 17 November 2006 Web Services Policy 1.5 – Framework - W3C Working Draft 17 November 2006 Capacités et pré-requis d’un service web (ex: sécurité) (01) <wsp:Policy xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy" xmlns:wsp="http://www.w3.org/2006/07/ws-policy" > (02) <wsp:ExactlyOne> (03) <wsp:All> (04) <sp:SignedParts/> (05) <sp:Body/> (06) </sp:SignedParts/> (07) </wsp:All> (08) <wsp:All> (09) <sp:EncryptedParts/> (10) <sp:Body/> (11) </sp:EncryptedParts/> (12) </wsp:All> (13) </wsp:ExactlyOne> (14) </wsp:Policy> Web Services Policy
Services web sémantiques Semantic Annotations for Web Services Description Language (SAWSDL) Annotation sémantique des descriptions de services en utilisant les mécanismes d’extension de WSDL 2.0 Semantic Annotations for WSDL W3C WORKING DRAFT 28 SEPTEMBER 2006 Semantic Annotations for WSDL - Usage Guide W3C WORKING DRAFT 28 SEPTEMBER 2006 Considérer les services comme un autre type de ressources et les annoter. Annoter le service, les opérations, les entrées / sorties Relier les entrées/sorties de plusieurs services pour composer leurs traitements et créer des applications Requester Provider Registry find register execute Services web sémantiques
SAWSDL Draft example <wsdl:description (…) <wsdl:types> <xs:schema elementFormDefault="qualified"> (…) <xs:element name="OrderResponse" type="confirmation" /> <xs:simpleType name="confirmation" sawsdl:modelReference="http://www.example.org/purchaseorder#OrderConfirmation"> <xs:restriction base="xs:string"> <xs:enumeration value="Confirmed" /> <xs:enumeration value="Pending" /> <xs:enumeration value="Rejected" /> </xs:restriction> </xs:simpleType> </xs:schema> </wsdl:types> <wsdl:interface name="Order" sawsdl:modelReference="http://example.org/products/electronics"> <wsdl:operation name="order" pattern="http://www.w3.org/2006/01/wsdl/in-out" sawsdl:modelReference="http://www.example.org/purchaseorder#RequestPurchaseOrder"> <wsdl:input element="OrderRequest" /> <wsdl:output element="OrderResponse" /> </wsdl:operation> </wsdl:interface> </wsdl:description> SAWSDL Draft example
Exemple de composition Phone of Secretary Phone Name name phone name employee secretary Exemple de composition
Another brick in the… confident-ialité sécurité Query SPARQL annotations RDF ontologies RDFS OWL règles inférences multimédia multimodal HTTP/D XML HTML URL - URI XSL/T service composition description schémas annotation services applications services web WSDL SOAP XPath Xpointer XLink DTD - XML Schema XQuery Another brick in the…
HTML 4.0 Dec. 1997 & HTML 4.01 Recom. 1999 Éléments (ABBR, ACRONYM, BDO, BUTTON, COL, COLGROUP, DEL, FIELDSET, FRAME, FRAMESET, IFRAME, INS, LABEL, LEGEND, NOFRAMES, NOSCRIPT, OBJECT, OPTGROUP, PARAM, SPAN, TBODY, TFOOT, THEAD, Q.) Encourage les Stylesheets (CSS) (Début séparation) Introduit les Frames (beurk !) Généralise objets multimédias (Applets Objects) Mécanismes d’inclusion des scripts (indép. langage) Extension tableaux (structure, taille) (rendu incrémental) Amélioration des formulaires (label, scripts, fieldset, etc.) Internationalisation et textes multidirectionnels & prise en compte des personnes déficientes (accessibilité universelle) Web multimédia
Cascading Style Sheets, W3C Recommendation 1996 CSS 1, revised 11 Jan 1999 CSS 2, Rec. 12-May-1998, CSS 2.1 W3C Working Draft 06 November 2006 CSS 3 working drafts (>20): Aural, Basic User Interface Module (XForm),... <HTML> <HEAD> <TITLE>title</TITLE> <LINK REL=STYLESHEET TYPE="text/css" HREF="http://style.com/cool" TITLE="Cool"> <STYLE TYPE="text/css"> @import url(http://style.com/basic); H1 { color: blue } </STYLE> </HEAD> <BODY> <H1>Headline is blue</H1> <P STYLE="color: green">While the paragraph is green. </BODY> </HTML> Séparation contenu et présentation, modularité des styles, réutilisation feuilles transversales aux sites Web stylé (CSS)
<ellipse cx="210" cy="45" rx="170" ry="15" style="fill:yellow"/> Scalable Vector Graphics (SVG) : SVG 1.0 Recommendation 2001 SVG 1.1 Recommendation 2003 SVG 1.2 Specification W3C Working Draft 13 April 2005 Graphiques en 2D décrits en XML Trois types d’objets: graphiques vectoriels, images et textes Groupement, styles, transformations, compositions, filtres, masques, modèles Interactif, dynamique, animé Scripts, évènements, et accès au DOM (SVG, XHTML) <ellipse cx="210" cy="45" rx="170" ry="15" style="fill:yellow"/> SVG
SVG dans KmP
Animations et aspects temporels Synchronized Multimedia Integration Language: SMIL 2.1 W3C RECOMMENDATION 13 DECEMBER 2005 Présentations audio-visuelles interactives Intégration et synchronisation d'éléments multimédias Animations et aspects temporels
Timed Text: textes ayant une dimension temporelle Timed Text (TT) Authoring Format 1.0 – Distribution Format Exchange Profile (DFXP) W3C Candidate Recommendation 16 November 2006 Gérer les aspects temporels du texte (ex: sous-titres, karaoké, téléprompteur, etc.) Issu du travail sur SMIL 2 Validité, synchronisation, ordonnancement, etc. Textes temporisés
Web Forms 2.0 W3C Working Draft 21 August 2006 Extension des formulaires HTML 4 / XHTML 1 (HTML5) Compatibilité ascendante, typage simple, validations simples, ajout dynamique de champs, soumission au format XML, initialisation par sources externes, terminaux limités Web Forms
<input type="range" min="-100" max="100" value="0" step="10" name="power" list="powers"> <datalist id="powers"> <option value="0"> <option value="-30"> <option value="30"> </datalist> <input type="datetime" step="120" name="start"> <input type="url" name="location" list="urls"> <datalist id="urls"> <option label="MIME: Format of Internet Message Bodies" value="http://www.ietf.org/rfc/rfc2045"> <option label="HTML 4.01 Specification" value="http://www.w3.org/TR/html4/"> <option label="Form Controls" value="http://www.w3.org/TR/xforms/slice8.html"> <option label="Scalable Vector Graphics (SVG) 1.1 " value="http://www.w3.org/TR/SVG/"> <option label="Feature Sets - SVG 1.1" value="http://www.w3.org/TR/SVG/feature.html"> <option label="The Single UNIX Specification" value="http://www.unix-systems.org/version3/"> </datalist> Exemples Web Forms
Exemples Web Forms (II) <input name="a" type="number" step="any" value="0"> * <input name="b" type="number" step="any" value="0"> = <output name="result" onforminput="value = a.value * b.value">0</output> </p> </form> Exemples Web Forms (II)
Les XForms: nouvelle génération de formulaires XForms: séparation des problèmes (// MVC) Séparation modèle de données, typage, champs, soumission, contenu et interface Actions du formulaire (envois, tests, calculs…) (XML) Les parties visibles / perceptibles du formulaire (XML) Les données qu'il utilise et produit (XML…) Types composés et schémas XML Communication serveur Objectif : intégrable dans tout langage XML (XHTML, SVG, Voice XML, etc.) Adaptation au terminal, form. sur plusieurs pages, données structurées, internationalisation, etc. Les XForms: nouvelle génération de formulaires
XForms 1.0 (Second Edition) W3C Recommendation 14 March 2006 XForms 1.1 W3C Working Draft 03 November 2006 Ajoute des modes de soumission, des traitements, des accesseurs, de nouveaux types, de nouvelles fonctions, <xforms:model> <xforms:instance> <ecommerce xmlns=""> <method/> <number/> <expiry/> </ecommerce> </xforms:instance> <xforms:submission action="http://example.com/submit" method="post" id="submit" includenamespaceprefixes=""/> </xforms:model> <select1 ref="method"> <label>Select Payment Method:</label> <item> <label>Cash</label> <value>cash</value> </item> <label>Credit</label> <value>cc</value> </select1> <input ref="number"> <label>Credit Card Number:</label> </input> <input ref="expiry"> <label>Expiration Date:</label> <submit submission="submit"> <label>Submit</label> </submit> Exemple XForm
XML Binding Language (XBL) 2.0 W3C Working Draft 7 September 2006 Faire correspondre des comportements à des éléments (scripts, réponses à des événements, CSS, modèles de contenu) <xbl:xbl xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:data="http://example.com/data-language"> <xbl:binding element="data|grid"> <xbl:template> <xbl:div class="caption" xbl:inherits="xbl:text=title"/> <xbl:div class="outer-table"> <xbl:div class="columns"> <xbl:content includes="data|column"> <data:column/> <xbl:/content> <xbl:/div> <xbl:div class="rows"> <xbl:content includes="data|heading"/> <xbl:div class="body"> <xbl:content includes="data|row:not([hidden])"/> <xbl:/template> ... XML Binding Language
Multi-média et Multimodal Multimodal Interaction Activity Sélectionner le mode d'interaction le plus approprié Adapter l'interface (contexte, utilisateur, terminal…) Entrées ex: clavier, parole, écriture manuelle, etc. Sorties: écran, synthèse vocale, vibreurs, Braille, etc. EMMA: Extensible MultiModal Annotation ML W3C Last Call Working Draft 12 September 2005 Représenter et structurer les entrées de l'utilisateur Analyse fournit par systèmes de traitement du signal Annoter les entrées avec leur interprétation (résultat de la reconnaissance, fiabilité, options possibles) Et aussi: Multimodal Architecture and Interfaces W3C Working Draft 14 April 2006 Common Sense Suggestions for Developing Multimodal User Interfaces W3C Working Group Note 11 September 2006 Multimodal Application Developer Feedback W3C Working Group Note 14 April 2006 Multi-média et Multimodal
Voice Browser Activity Accéder au web sur son téléphone (voix et clavier) Voice XML: décrire un dialogue audio qui mélange: synthèse, reconnaissance et clavier numérique Voice Extensible Markup Language 2.1 W3C Working Draft 15 Sep 2006 Speech Recognition Grammar Specification (SRGS ): reconnaissance des entrées (voix et clavier) SRGS W3C Recommendation 16 March 2004 Speech synthesis specification (SSML): messages préenregistrés, synthèse vocale et musique SSML Version 1.0 W3C Recommendation 7 September 2004 Pronunciation Lexicons: informations phonétiques Pronunciation Lexicon Specification (PLS) 1.0 W3C Working Draft 26 Oct 2006 Semantic Interpretation for Speech Recognition: annotations de grammaires d'extraction de la sémantique SISR 1.0 W3C Working Draft 3 November 2006 Call Control (CCXML): contrôle des appels CCXML Version 1.0 W3C Working Draft 22 November 2006 State Chart XML (SCXML): langage de contrôle State Machine Notation for Control Abstraction W3C Working Draft 24 Jan 2006 Voice Browser Activity
Pronunciation Lexicon Specification W3C Working Draft 26 Oct 2006
Call Control CCXML 1.0 W3C Working Draft 22 November 2006 <?xml version="1.0" encoding="UTF-8"?> <ccxml version="1.0" xmlns="http://www.w3.org/2002/09/ccxml"> <eventprocessor> <transition event="connection.alerting" name="evt"> <log expr="'The number called is' + evt.connection.remote + '.'"/> <if cond="evt.connection.remote == 'tel:+18315551234'"> <log expr="'Go away! we do not want to answer the phone.'"/> <reject/> <else/> <log expr="'We like you! We are going to answer the call.'"/> <accept/> </if> </transition> <transition event="connection.connected"> <log expr="'Call was answered,Time to disconnect it.'"/> <disconnect/> <transition event="connection.disconnected"> <log expr="'Call has been disconnected. Ending CCXML Session.'"/> <exit/> </eventprocessor> </ccxml> Call Control CCXML 1.0 W3C Working Draft 22 November 2006
W3C VoiceXML 2.0 Rec 16 March 2004 <?xml version="1.0"?> <vxml version="2.0"> <menu> <prompt> Say one of: <enumerate/> </prompt> <choice next="http://www.sports.example/start.vxml"> Sports </choice> <choice next="http://www.weather.example/intro.vxml"> Weather <choice next="http://www.news.example/news.vxml"> News <noinput>Please say one of <enumerate/></noinput> </menu> </vxml> A dialog might proceed as follows: Computer: Say one of: Sports; Weather; News. Human: Astrology Computer: I did not understand what you said. (a platform-specific default message.) Human: Sports Computer: (proceeds to http://www.sports.example/start.vxml) W3C VoiceXML 2.0 Rec 16 March 2004
Initiative Rich Web Clients API standards pour des applications exécutées du côté du client API d’appels clients au serveur (en particulier pour les scripts) The XMLHttpRequest Object W3C Working Draft 27 September 2006 API d’accès aux fenêtres et aux autres documents Window Object 1.0 W3C Working Draft 07 April 2006 API de sélection et chargement d’un fichier File Upload W3C Working Draft 18 October 2006 Web Application Formats Working Group Spécification des applications exécutées sur le client Langages pour ces applications et leurs interfaces Couvrir les différents terminaux (station ou mobile) Langages déclaratifs d'interfaces (ex: XUL) Widgets 1.0 W3C Working Draft 9 November 2006 Petites applications clientes permettant de visualiser et/ou modifier des données à distance Packaging, manifeste, API/interface script Ex: montres, affichage d’un cours d’action, brèves, jeu, météo, Clients riches
Ink Markup Language (InkML) W3C Working Draft 23 October 2006 Représenter l’écriture manuscrite, les dessins à main levée, gestes, signatures, etc. sur des systèmes électroniques <ink> <trace> 10 0, 9 14, 8 28, 7 42, 6 56, 6 70, 8 84, 8 98, 8 112, 9 126, 10 140, 13 154, 14 168, 17 182, 18 188, 23 174, 30 160, 38 147, 49 135, 58 124, 72 121, 77 135, 80 149, 82 163, 84 177, 87 191, 93 205 </trace> <trace> 130 155, 144 159, 158 160, 170 154, 179 143, 179 129, 166 125, 152 128, 140 136, 131 149, 126 163, 124 177, 128 190, 137 200, 150 208, 163 210, 178 208, 192 201, 205 192, 214 180 </trace> <trace> 227 50, 226 64, 225 78, 227 92, 228 106, 228 120, 229 134, 230 148, 234 162, 235 176, 238 190, 241 204 </trace> <trace> 282 45, 281 59, 284 73, 285 87, 287 101, 288 115, 290 129, 291 143, 294 157, 294 171, 294 185, 296 199, 300 213 </trace> <trace> 366 130, 359 143, 354 157, 349 171, 352 185, 359 197, 371 204, 385 205, 398 202, 408 191, 413 177, 413 163, 405 150, 392 143, 378 141, 365 150 </trace> </ink> InkML
Web Accessibility Initiative Web Accessibility Initiative (WAI) Web 3.0 : le Web accessible à tous ? Guides et ressources pour améliorer l'accessibilité Web Content Accessibility Guidelines 2.0 W3C Working Draft 27 April 2006 Authoring Tool Accessibility Guidelines 2.0 W3C Working Draft 23 November 2005 User Agent Accessibility Guidelines 1.0 W3C Recommendation 17 December 2002 Evaluation and Report Language (EARL) 1.0 Schema W3C Working Draft 27 Sept. 2006 EARL: Vocabulaire standard pour représenter résultats d’évaluation indépendamment d’une plateforme. Beaucoup d’outils : http://www.w3.org/WAI/ER/tools/Overview.html Web Accessibility Initiative
Interopérabilité internationale Modèles de caractères pour les textes du Web Character Model for the World Wide Web 1.0: Fundamentals W3C Rec. 15 Feb 2005 manipulations interoperable de texte sur le Web Internationalisation des services Web Requirements for the Internationalization of Web Services W3C Working Group Note, 16 November 2004 Interopérabilité internationale
Another brick in the… mobilité ubiquité confident-ialité sécurité Query SPARQL annotations RDF ontologies RDFS OWL règles inférences multimédia multimodal HTTP/D XML HTML URL - URI XSL/T service composition description schémas annotation services applications services web WSDL SOAP XPath Xpointer XLink DTD - XML Schema XQuery Another brick in the…
Mobile Web Initiative Device Independence Faciliter l'accès au web sur des terminaux mobiles Consortium d'acteurs du monde mobile pour normaliser l'accès au web sur les différentes plateformes Mobile Web Best Practice (MWBP) Working Group: pratiques de conception sites web accessibles sur mobiles Device Description Working Group (DDWG): données et services de description des terminaux Device Independence CC/PP (Composite Capabilities/Preference Profiles) W3C Recommendation 15 January 2004 Capacités du terminal et préférences de l'utilisateur Le web bouge…
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ccpp="http://www.w3.org/2002/11/08-ccpp-schema#" xmlns:ex="http://www.example.com/schema#"> <rdf:Description rdf:about="http://www.example.com/profile#MyProfile"> <ccpp:component> <rdf:Description rdf:about="http://www.example.com/profile#TerminalHardware"> <rdf:type rdf:resource="http://www.example.com/schema#HardwarePlatform" /> <ex:displayWidth>320</ex:displayWidth> <ex:displayHeight>200</ex:displayHeight> </rdf:Description> </ccpp:component> <rdf:Description rdf:about="http://www.example.com/profile#TerminalSoftware"> <rdf:type rdf:resource="http://www.example.com/schema#SoftwarePlatform" /> <ex:name>EPOC</ex:name> <ex:version>2.0</ex:version> <ex:vendor>Symbian</ex:vendor> <rdf:Description rdf:about="http://www.example.com/profile#TerminalBrowser"> <rdf:type rdf:resource="http://www.example.com/schema#BrowserUA" /> <ex:name>Mozilla</ex:name> <ex:version>5.0</ex:version> <ex:htmlVersionsSupported> <rdf:Bag> <rdf:li>3.2</rdf:li> <rdf:li>4.0</rdf:li> </rdf:Bag> </ex:htmlVersionsSupported> </rdf:RDF> CC/PP en RDF
S’adapter aux terminaux Sélection du contenu en contexte Content Selection for Device Independence (DISelect) 1.0 W3C Working Draft 10 October 2006 <p>The flooding was quite extensive.</p> <p sel:expr="dcn:cssmq-width('px') > 200"> <object src="image1" sel:selid="artimg42"/> </p> <p>Many people were evacuated from their homes.</p> Delivery Context: Interfaces (DCI) Accessing Static and Dynamic Properties W3C Candidate Recommendation 19 October 2006 API d’accès à la hiérarchies des propriétés caractérisant le terminal, sa configuration, les préférences de l’utilisateur et l’environnement. (+ ECMA Script Binding) Device Independent Authoring Language (DIAL) W3C Working Draft 16 May 2006 S’adapter aux terminaux
Another brick in the… mobilité ubiquité confident-ialité sécurité Query SPARQL annotations RDF ontologies RDFS OWL règles inférences multimédia multimodal HTTP/D XML HTML URL - URI XSL/T service composition description schémas annotation services applications services web WSDL SOAP XPath Xpointer XLink DTD - XML Schema XQuery Another brick in the…
Quelques phrases de conclusion Le web 3.0 … … un media modifiable ( le contenu, les services, les liens, les vues, les interfaces, etc.) … paradigmes de programmation abstraits & déclaratifs, … programmation orientée services et modèles … une immense machine virtuelle … un Model – View – Controller à l’échelle du Web Chantiers: sécurité, confidentialité, qualité, traçabilité, confiance, ergonomie, etc. Un web de communautés multiples où chacun a ses rôles, ses données, ses services, etc. Un lieu de rencontre: présence partage, collaboration, T. Berners-Lee, RuleML kickoff, 2005 Quelques phrases de conclusion
Sources, références et pointeurs W3C documents at http://www.w3.org Tutorials on Semantic Web Technologies by Ivan Herman W3C Tutorials: http://www.w3.org/2002/03/tutorials W3C 10th Anniversary http://www.w3.org/2004/Talks/w3c10-Overview/ W3School: http://www.w3schools.com/ XML Revolution: http://www.brics.dk/~amoeller/XML/index.html O’Reilly XML.com http://www.xml.com/