2015-03-10 3 views
0

Je ne suis pas sûr que ma question soit correcte du point de vue de l'expert EMF. J'étudie le problèmeConvertir la description de modèle de domaine XML en modèle de domaine de type EMF

  1. Je fichier XML qui décrit le modèle de domaine (ensemble de types de données) et correspondu fichier XSD qui peut être utilisé pour la description du modèle de domaine donné de validation
  2. Ce fichier XML peut être modifié par un logiciel tiers . Cette mise à jour est fournie très rarement (une/deux fois en 3-4 mois). Dans ce cas, l'enregistrement modèle de domaine tel que la classe java et reconstruire plus approprié à partir d'autres parties du point d'application de vue

Mon but est de convertir le modèle de domaine XML aux champs électromagnétiques description du modèle de domaine, puis générer un fichier genmodel puis générer modèle de domaine en tant que jeu de classes Java. comment convertir le modèle de domaine xml en description de modèle de domaine EMF automatiquement? J'ai trouvé un moyen facile de créer un fichier ecore à partir de xsd. Est-ce la toute façon de charger mon fichier xml en utilisant une description Ecore et l'enregistrer comme EMF comme modèle pour genearting classe Java comme étape suivante

Nous vous remercions à l'avance Alexander

Répondre

1

Comme vous vous trouvé, vous devez caisse modèle emf hors du schéma. Étapes auxquelles je pouvais penser immédiatement

  1. Créer une ecore hors du schéma.
  2. Générer genmodel.
  3. Générez le modèle, éditez et éditez.
  4. Ouvrez l'éditeur de manifeste de l'éditeur généré et vérifiez quelle est l'extension du fichier d'instance de votre modèle. Ceci est l'extension de fichier avec laquelle votre fichier XML se tiendra
  5. Cliquez avec le bouton droit sur le projet généré et lancez-le comme application eclipse.
  6. Créez un projet et placez votre fichier XML avec la même extension qu'à l'étape 4.
  7. Double-cliquez sur le fichier.

Maintenant, votre fichier xml est chargé dans le modèle emf et affiché dans l'éditeur. Maintenant, c'est votre tâche de construire votre propre interface utilisateur en fonction des besoins de vos clients en utilisant le modèle emf.

Veuillez noter que vous pouvez toujours mettre à jour le fichier de schéma, générer le fichier ecore, mettre à jour le modèle existant. Faites-moi savoir si vous avez besoin de plus d'informations.

+0

Merci pour la réponse, j'ai essayé de faire ces étapes. Ma première question est que je n'ai trouvé aucune information sur l'extension du modèle dans manifaest.mf. Thr prochaine question est quand je charge mon fichier xml à l'éditeur généré, j'obtiens le message d'erreur suivant org.eclipse.emf.ecore.resource.impl.ResourceSetImpl $ 1DiagnosticWrappedException: org.eclipse.emf.ecore.xmi.PackageNotFoundException: Package avec uri 'null' non trouvé. (plateforme: /resource/model-editor/model/types.xml, 1, 13). Je suppose que mon fichier XML n'est pas bien fait. En passant, ce fichier est généré par un logiciel tiers – Alexander

+0

J'ai aussi org.eclipse.emf.ecore.xmi.ClassNotFoundException: La classe 'type-model' est introuvable ou est abstraite. (plateforme: /resource/model-editor/model/types.xmi, 1, 13). J'ai vérifié tous les paquets requis sont exportés et tous les plugins requis sont inclus dans les dépendances – Alexander

+0

http://wiki.eclipse.org/EMF-FAQ#How_do_I_use_EMF_in_standalone_applications_.28such_as_an_ordinary_main.29.3F. Vérifiez le lien. Vous obtiendrez une solution.Si cela ne sert à rien, je vais essayer de trouver la solution après mon bureau –