IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XML/XSL et SOAP Discussion :

Signification des élements dans DOCTYPE


Sujet :

XML/XSL et SOAP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 154
    Points : 72
    Points
    72
    Par défaut Signification des élements dans DOCTYPE
    Bonjour à toutes et à tous,

    J'ai une question qui me taraude l'esprit, lorsque je déclare une doctype, j'ai du mal a comprendre la signification de tout les termes : par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    	"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
    Je sais que : web-app, va représenter la racine de mon document xml, mais pourquoi a t-on deux séries de texte entre guillemet et a quoi correspondent ils ? pour être plus clair, pourquoi a t-on :

    • "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    • "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"


    Si je ne me trompe pas, "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd" doit indiquer l'adresse ou se situe la DTD, mais a quoi sert l'inscription suivante "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" ?

    Merci par avance.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par top_eagle Voir le message
    Si je ne me trompe pas, "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd" doit indiquer l'adresse ou se situe la DTD, mais a quoi sert l'inscription suivante "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" ?
    C'est un identifiant, disons un genre de nom. Il identifie de manière unique la DTD qui valide les descripteurs de webapp J2EE version 2.2. Il ne dit pas où la trouver, c'est juste un nom. Par exemple, moi je suis la seule chose de l'Univers qui s'appelle "thelvin". Ça ne te dit pas où on peut me trouver, mais quand on te parle de "thelvin", tu sais qu'on te parle de moi.

    En principe, un DOCTYPE pourrait être identifié juste par l'URI de sa DTD, c'est ce qu'on appelle son identifiant système (avec emploi du mot-clé SYSTEM quand on n'indique que lui, sans doute parce que c'est un identifiant dédié aux systèmes internes,) par opposition à l'identifiant PUBLIC.
    Je ne sais pas trop à quoi c'est censé servir d'avoir les deux. Le seul intérêt que je trouve à l'identifiant public, c'est qu'il ne suit pas de règle et ne dépend pas de la notion d'URI, et survivra à la mort des URI.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 154
    Points : 72
    Points
    72
    Par défaut
    Merci pour ta réponse

  4. #4
    Membre émérite
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Points : 2 371
    Points
    2 371
    Par défaut
    Bonjour Thelvin,

    en fait, la chaîne "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    a un équivalent URI, qui est définit par des règles.

    Je ne sais pas trop à quoi c'est censé servir d'avoir les deux.
    En fait, c'est tout bête, l'identifiant public permet d'aller chercher le DTD sur le réseau,
    tandis que l'identifiant système permet d'aller chercher le DTD sur le système.

    On indique dans le DOCTYPE les deux identifiants
    car le DTD peut ne plus être disponible sur le réseau à l'adresse indiquée (n'habite plus à http://.../my.dtd), ou le réseau peut ne plus fonctionner
    et alors il existe une solution de replie : l'identifiant système. Un programme appelé "catalogue" récupère cet identifiant, le repère dans un catalogue qui indique où se trouve la DTD dans l'arborescence du système.
    Article : Installation de Cocoon
    Je ne réponds pas aux MP à caractère technique.

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par polymorphisme Voir le message
    en fait, la chaîne "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    a un équivalent URI, qui est définit par des règles.
    Ça aurait été plus sympa de dire lesquelles.

    Citation Envoyé par polymorphisme Voir le message
    On indique dans le DOCTYPE les deux identifiants
    car le DTD peut ne plus être disponible sur le réseau à l'adresse indiquée (n'habite plus à http://.../my.dtd), ou le réseau peut ne plus fonctionner
    et alors il existe une solution de replie : l'identifiant système. Un programme appelé "catalogue" récupère cet identifiant, le repère dans un catalogue qui indique où se trouve la DTD dans l'arborescence du système.
    L'URI seule est déjà un identifiant et traité comme tel : Unified Resource Identifier. Elle peut servir aussi de locator, très bien, mais elle est en soi un identifiant, présent dans ce même catalogue, et je ne vois donc toujours pas l'intérêt d'en avoir un deuxième.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre émérite
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Points : 2 371
    Points
    2 371
    Par défaut
    Bonjour,

    Ça aurait été plus sympa de dire lesquelles.
    Bien franchement, je n'ai plus ça en tête.

    Par exemple, avec DocBook, on a l'identifiant public : -//OASIS//DTD DocBook XML V4.1.2//EN qui se transforme en l'Urn (c'est plus large que URI en fait)
    urn:publicid:-:OASISTD+DocBook+XML+V4.1.2:EN.

    L'URI seule est déjà un identifiant et traité comme tel : Unified Resource Identifier.
    Tout à fait. Je n'ai pas creusé la notion de catalogue à fond, mais il me semble que
    l'URN restera stable, tandis que l'URI pourrait changer dans le temps. Dans tous les cas,
    les deux sont utiles. J'espère approfondir la question avant la fin de l'année.
    Article : Installation de Cocoon
    Je ne réponds pas aux MP à caractère technique.

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par polymorphisme Voir le message
    Par exemple, avec DocBook, on a l'identifiant public : -//OASIS//DTD DocBook XML V4.1.2//EN qui se transforme en l'Urn (c'est plus large que URI en fait)
    urn:publicid:-:OASISTD+DocBook+XML+V4.1.2:EN.
    Moui, bon, c'est un format souvent adopté, mais XML ne met aucune contrainte là-dessus, l'identifiant public peut avoir la forme qu'on veut, il faut juste faire un effort pour assurer son unicité.

    Par ailleurs, URI est un concept qui regroupe URL, URN, et ce qu'on peut imaginer entre les deux. URN est donc moins large qu'URI. Ce sont des identifiants basés sur des noms, alors qu'une URI peut aussi être basée sur un chemin localisant, qu'il soit réel ou imaginaire.

    Citation Envoyé par polymorphisme Voir le message
    Tout à fait. Je n'ai pas creusé la notion de catalogue à fond, mais il me semble que
    l'URN restera stable, tandis que l'URI pourrait changer dans le temps.
    Disons qu'en théorie et utilisé comme spécifié, c'est pas censé. Mais je reconnais qu'en pratique, c'est une autre histoire.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Signification des icones dans Microsoft SSMS
    Par Baquardie dans le forum Administration
    Réponses: 2
    Dernier message: 08/03/2010, 22h06
  2. Relier des élements dans une listbox
    Par Thrud dans le forum Windows Presentation Foundation
    Réponses: 8
    Dernier message: 06/01/2010, 14h34
  3. Réponses: 17
    Dernier message: 27/11/2008, 19h35
  4. comment ajouter des élements dans une liste ?
    Par ryoussef19 dans le forum VC++ .NET
    Réponses: 5
    Dernier message: 15/06/2007, 16h02
  5. Réponses: 4
    Dernier message: 09/05/2006, 11h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo