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

XSL/XSLT/XPATH XML Discussion :

XML/XSL et POO


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Points : 37
    Points
    37
    Par défaut XML/XSL et POO
    Bonjour,

    Suite a un projet java, je me suis constitué une petite biblioteque personnelle et maintenant je me met au C++ et je me suis dit que ca serait pratique d'avoir mes objet independants de ces deux languages.

    D'ou mon post que je vais tout de suite illustrer avec un exemple qui me sert a develloper mon idée :

    Objet sous forme de fichier XML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <?xml version="1.0" ?>
     
    <obj name='test' >
     
    	<member scope='public' name='id' type='int' value='0'>
    		<attr value='static' />
    		<attr value='const' />
    	</member>
     
    	<member name='x' type='int' value='0' />
    	<member name='y' type='int' value='0' />
     
    	<method return='int' name='getX' param='none' />
    	<method return='int' name='getY' param='none' />
     
    </obj>

    et feuille xsl pour obtenir un fichier cpp ( je ferais pour java plus tard, c'est le principe qui compte pour l'instant ^^) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    <xsl:stylesheet version="1.0" 
                    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
     
    <xsl:template match='obj'>
    class <xsl:value-of select='@name' />
    {
    	public:
    	<xsl:text>
    </xsl:text>
    	<xsl:apply-templates select='member[@scope="public"]'/>
    	<xsl:text>
     
     
    </xsl:text>
    	<xsl:apply-templates select='method' />
     
     
     
     
     
     
    	private:
    	<xsl:text>
    </xsl:text>
    	<xsl:apply-templates select='member[not(@scope)or(@scope="private")]' />
     
     
     
     
    }
    </xsl:template>
     
     
     
    <xsl:template match='member'>
    	<xsl:text>	</xsl:text>
    	<xsl:for-each select='attr'>
    		<xsl:value-of select='@value' />
    		<xsl:text> </xsl:text>
    	</xsl:for-each>
    	<xsl:value-of select='@type' />
    	<xsl:text> </xsl:text>
    	<xsl:value-of select='@name' />
    	<xsl:if test='@value'>
    	<xsl:text> = </xsl:text>
    	<xsl:value-of select='@value' />
    	</xsl:if>
    	<xsl:text>;
    </xsl:text>
    </xsl:template>
     
     
     
    <xsl:template match='method'>
    	<xsl:text>	</xsl:text>
    	<xsl:if test='not(@return)'>
    		<xsl:text>void </xsl:text>
    	</xsl:if>
    	<xsl:value-of select='@return' />
    		<xsl:text> </xsl:text>
    	<xsl:value-of select='@name' />
    		<xsl:text>(</xsl:text>
     
    		<xsl:text>);
    </xsl:text>
     
    </xsl:template>
     
    <xsl:template match='text()' />
     
     
     
    </xsl:stylesheet>
    testé avec xalan (xalan.jar )
    et ca fonctionne !

    edit : le rendu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
     
    class test
    {
    	public:
     
    	static const int id = 0;
     
     
     
    	int getX();
    	int getY();
     
     
     
     
     
     
     
    	private:
     
    	int x = 0;
    	int y = 0;
     
     
     
     
     
    }
    Question simple : qu'en pensez-vous ?

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Points : 37
    Points
    37
    Par défaut
    Je vais reformuler ma question finalement parce que, je ne vous demande pas ce que vous pensez de ma feuille xsl ... 'bravo garcon t'a fait du xsl ' :

    Que pensez vous du fait de développer les objets en POO de manière indépendante avec XML ?

    Faudrait-il une sorte de meta-languge objet qui sert à décrire un objet pour tout langage de programmation ?

    Voila, j’espère que ca sera un peu plus intéressant vu comme ca xD

  3. #3
    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
    "Bravo, tu as fait ce qu'on appelle du XML Binding," alors ?
    Je ne m'y suis pas intéressé en C++, mais en Java il y existe une dizaine de manières normalisées de faire ça.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Points : 37
    Points
    37
    Par défaut
    Justement, d'ou ma deuxieme question !!!

    Le XML est-il suffisant pour servir de createur d'objet ou faudrait il un veritable langage objet ?


    Acesoirement merci de me prendre pour un con ...

    Maintenat, j'attend vraiment plus rien de cette discussion, libre a vous de continuer suprimer, je m'en fout ...

  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 0xNoob Voir le message
    Le XML est-il suffisant pour servir de createur d'objet ou faudrait il un veritable langage objet ?
    Il y a essentiellement deux types d'objets dans un langage objet :
    - Ceux qui ne servent qu'à représenter une information. XML les décrit assez bien... Et on n'a pas besoin d'un langage objet pour eux, une variable structurée est amplement suffisante.
    - ... Euh, les autres. Ceux qui font plus que juste représenter une information. D'une manière ou d'une autre, qui ont un comportement, décrit avec un langage de programmation. XML n'est pas conçu pour ça.

    Citation Envoyé par 0xNoob Voir le message
    Acesoirement merci de me prendre pour un con ...
    Non mais ça va bien la parano ? J'ai fait que reprendre ta propre formule.
    Sans compter que tu avais toi-même prouvé que tu te doutais bien que t'étais pas trop le premier à penser à tout ça, et que tu avais juste l'air de chercher confirmation.

    Avec une susceptibilité pareille, je vois pas comment tu espérais parler de quoi que ce soit sans que quelqu'un vienne te lécher les pieds et louer ton génie.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Points : 37
    Points
    37
    Par défaut
    Bonjour,

    finalement je reviens sur le sujet :p

    ---
    Non mais ça va bien la parano ? J'ai fait que reprendre ta propre formule.
    C'est justement ca le hic, je dis de prendre mes codes comme illustration d'une idée, on me dis "gg t'as fait du XML binding" c-a-d exactement ce que ma 'formule' indique comme genre de reponse surement pas désiré ...
    ---
    bref


    Sinon, je corrige moi même, il ne faut pas parler d'objet mais de 'class' :

    Ce que j'entend par 'veritable langage objet' serait en fait 'langage de classes' plutot car je trouve que les definitions de classes en java et C++ par exemple (mais le reste aussi au final) sont tout de même assez proche pour eventuellement evisager de les uniformiser dans une sorte de languge de description de classes que chaque langage de programmtion objet prendrait comme base pour sa propre gestion des classes.

    Ainsi on pourrait avoir une base de données de classes independantes, car comme mon code le montre, le xml fait que chacun va avoir ca propre syntaxe dans son fichier xml.

    Voila.

    edit :
    mais en Java il y existe une dizaine de manières normalisées de faire ça.
    Justement, une dizaine de facon rien que pour un langage même dominant, je trouve que c'est plutot un problème que de l'efficacité.
    La diversité c'est bien quand ca apporte quelque choses, si c'est pour faire la même chose ...

    ps : je ne suis pas si suceptible que ca ..., je suis pas un genie mais pas idiot enfin pas trop xD

  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 0xNoob Voir le message
    Sinon, je corrige moi même, il ne faut pas parler d'objet mais de 'class' :

    Ce que j'entend par 'veritable langage objet' serait en fait 'langage de classes' plutot car je trouve que les definitions de classes en java et C++ par exemple (mais le reste aussi au final) sont tout de même assez proche pour eventuellement evisager de les uniformiser dans une sorte de languge de description de classes que chaque langage de programmtion objet prendrait comme base pour sa propre gestion des classes.

    Ainsi on pourrait avoir une base de données de classes independantes, car comme mon code le montre, le xml fait que chacun va avoir ca propre syntaxe dans son fichier xml.

    Voila.
    Oui oui c'est bien comme ça que je l'avais compris. Si je devais corriger "attends tu veux dire classes, pas objets, là" à chaque fois qu'il le faudrait, j'aurais pas fini. Et la plupart de mes interlocuteurs, contrairement à toi, ne comprendraient pas du tout ce que je raconte.


    Citation Envoyé par 0xNoob Voir le message
    Justement, une dizaine de facon rien que pour un langage même dominant, je trouve que c'est plutot un problème que de l'efficacité.
    La diversité c'est bien quand ca apporte quelque choses, si c'est pour faire la même chose ...
    Nous sommes bien d'accord -_-°.
    En plus j'ai jamais franchement aimé le XML binding. Mais bon, une pléthore de bibliothèques différentes qui font la même chose, c'est récurrent en Java.

    (Mais bon, du coup c'est pas en en inventant encore une autre qu'on va réduire le problème.) Référence XKCD obligatoire.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Points : 37
    Points
    37
    Par défaut
    (Mais bon, du coup c'est pas en en inventant encore une autre qu'on va réduire le problème.)
    C'est peut-être en plus ce soucis d'uniformisation qui multiplie les pseudo normes xD
    Certains se disent comme moi : faudrait uniformiser ça mais en le faisant dans leur coin ca fait ce dont tu fait allusion.

    Sinon sympa le site

    edit :
    A default de refaire le monde tout de suite, vu que tu es modérateur : pourquoi pas proposer de developper cela sur ce site ?
    Si ca prend bien, peut-être que les professionnels qui utilisent ce site en feront un bon outil voire une vraie norme xD

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 31
    Points : 37
    Points
    37
    Par défaut
    Bon je clos cette discussion car même si par hasard je trouvais des gens pour concretiser cette idée ca ne releverai plus du XML donc hs.

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

Discussions similaires

  1. mise en page (Header and Footer) en XML-XSL.
    Par christine dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 01/03/2004, 16h31
  2. Pd de transformation XML/XSL sur un windows 2000 server US
    Par Sylvain Leray dans le forum XMLRAD
    Réponses: 3
    Dernier message: 24/03/2003, 11h00
  3. XML + XSL + PHP
    Par ZzZerf dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 21/03/2003, 15h54
  4. xml -> xsl -> xml
    Par virgile04 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 10/10/2002, 16h53
  5. Cours en Français sur XML-XSL et XPath
    Par Community Management dans le forum XSL/XSLT/XPATH
    Réponses: 0
    Dernier message: 25/04/2002, 15h46

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