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

Langage PHP Discussion :

Création d'une classe php sur base d'un schéma xsd


Sujet :

Langage PHP

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut Création d'une classe php sur base d'un schéma xsd
    Bonjour à tous,

    Il est très rare que je pose une question mais, là, après plus d'une semaine de recherches et d'essais, je viens vous demander de l'aide.

    La question, en soi, est très simple:
    Comment, sous Windows, créer une classe php en partant d'un xsd?

    Je me bats, depuis plus d'une semaine, pour essayer de faire fonctionner les "solutions" trouvées sur le net.
    La majorité des liens renvoient vers https://github.com/goetas/xsd2php ou https://github.com/goetas-webservices/xsd2php.

    J'ai beau essayer de suivre les recommandations de l'auteur, il vient toujours un moment où "ça ne marche pas".
    J'ai compris l'usage du Composer et arrive à "composer" à partir du composer.json fourni.

    Là ou je cale, c'est dans la partie Usage.
    Soit les fichiers invoqués ne sont pas où ils sont censés être, soit les syntaxes utilisées sont destinées à un environnement Linux et, quand il y a un fichier batch, il faut corriger les chemins écrits avec des "/" au lieu de "\".
    Quoi que j'essaie de corriger, je tombe sur de nouvelles erreurs.
    Ce qui n'aide pas, c'est que dans l'arborescence des fichiers, il y a plusieurs "bin" et plusieurs fichiers "xsd2php".

    goetas propose bien une démo fonctionnelle mais elle est basée sur l'interrogation d'un site web qui ne répond plus comme attendu et je ne sais pas comment modifier pour ouvrir mon fichier xsd en local.

    Ma question prend donc plusieurs formes (pistes).
    • Quelqu'un peut-il m'aider à faire fonctionner un des convertisseurs présents sur le net?
    • Existe-t-il un convertisseur qui ne demande pas 36 étapes d'installation et de configuration pour fonctionner?
    • Plus simple: Peut-on trouver une classe "toute faite" correspondant au schéma joint (pain.001.001.03)?

    Je joins un exemple d'xsd que je cherche à transformer en classe php.

    Je tiens à préciser que je débute en php. Je suis développeur VBA et VB.NET et mon but final est de réécrire en php des routines existantes et fonctionnelles en .NET.
    Soyez donc indulgents si je ne comprends pas immédiatement certaines "évidences" pour un développeur php.

    Evidemment, vu le temps déjà passé, je pourrais écrire la classe manuellement mais je ne sais pas comment le faire correctement.

    Donc, si ça inspire quelqu'un de me montrer 2 - 3 exemples de (sous) classes.

    Pour ceux à qui ça parle, voici 2 exemples de ces classes en VB.NET:
    Code vb : 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
    Partial Public Class CustomerCreditTransferInitiationV03
     
        Private grpHdrField As GroupHeader32
     
        Private pmtInfField() As PaymentInstructionInformation3
     
        '''<remarks/>
        Public Property GrpHdr() As GroupHeader32
            Get
                Return Me.grpHdrField
            End Get
            Set
                Me.grpHdrField = value
            End Set
        End Property
     
        '''<remarks/>
        <System.Xml.Serialization.XmlElementAttribute("PmtInf")>  _
        Public Property PmtInf() As PaymentInstructionInformation3()
            Get
                Return Me.pmtInfField
            End Get
            Set
                Me.pmtInfField = value
            End Set
        End Property
    End Class

    Code vb : 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
    Partial Public Class ActiveOrHistoricCurrencyAndAmount
     
        Private ccyField As String
     
        Private valueField As Decimal
     
        '''<remarks/>
        <System.Xml.Serialization.XmlAttributeAttribute()>  _
        Public Property Ccy() As String
            Get
                Return Me.ccyField
            End Get
            Set
                Me.ccyField = value
            End Set
        End Property
     
        '''<remarks/>
        <System.Xml.Serialization.XmlTextAttribute()>  _
        Public Property Value() As Decimal
            Get
                Return Me.valueField
            End Get
            Set
                Me.valueField = value
            End Set
        End Property
    End Class

    J'aimerais avoir la traduction de ces classes en php.
    Je joins aussi la classe VB (zippée) si ça peut aider.

    Un très grand merci d'avance
    Fichiers attachés Fichiers attachés
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

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

Discussions similaires

  1. Quelle techno pour faire une IHM pour appli php sur base sql server
    Par droliprane dans le forum Général Conception Web
    Réponses: 2
    Dernier message: 01/02/2016, 00h40
  2. Création d'une classe de base pour les ChildWindow
    Par Mozofeuk dans le forum Silverlight
    Réponses: 4
    Dernier message: 15/11/2011, 14h42
  3. [MySQL] comprendre une connexion php sur une base SQL
    Par gillot007 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/12/2008, 13h53

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