Pregunta

He definido un pequeño DSL que está escrito en su mayoría en forma de diferentes tipos de archivos XML en conjunto con algunos archivos de propiedades. Esto funciona muy bien pero me gustaría crear un editor de Eclipse para hacer la edición de estos archivos más fácil para los principiantes (ya tengo un programa de análisis de trabajo).

El archivo XML principal puede hacer referencia a algunos elementos de los archivos .properties y viceversa. El archivo XML principal también puede hacer referencia a otros archivos XML. Ciertas opciones sólo deben estar disponibles en el archivo XML principal basado en el contenido de los archivos .properties y en base a algunos plugins OSGi que se pueden agregar al proyecto DSL (la sintaxis es dinámica dependiendo del contexto). La estructura de la lengua es fijo, sino las opciones disponibles para cada atributo o la elección de los atributos propios cambia en función de los metadatos contenidos en los archivos .jar del plugin.

Preguntas:

¿Tiene xtext apoyar la sintaxis dinámica (cambios de validación en función de factores externos)?
¿Son compatibles con xtext archivos XML / archivos .properties?

Muchas gracias por su ayuda de antemano.

¿Fue útil?

Solución

Por favor lea la xtext documentación .

  

¿Tiene xtext apoyar la sintaxis dinámica (cambios de validación en función de factores externos)?

xtext automáticamente valida la sintaxis utilizando la definición de la gramática. Además, se puede escribir validaciones arbitrarias en Java o cheque.

  

¿son compatibles con xtext archivos XML / archivos .properties?

Si define una gramática para ellos, por supuesto. ;) Ninguno de los dos son demasiado difíciles

.

Otros consejos

No entiendo completamente lo que está después, pero si usted tiene un XSD, he de considerar que convertirla en un modelo Ecore, y luego construir una gramática xtext para eso? O si usted está comenzando desde cero, construir su gramática DSL primero, y luego exportar el ecore como XSD, y el uso de ayudantes que he acaba de publicar en mi http://blog2.vorburger.ch/2012/07/xtext-xml.html ? HTH.

Si usted no tiene que tener XML / XSD, y lo que está después, en esencia, en realidad es más legible que tiene una (por ejemplo JSON-como, pero inflexible?) DSL "genérico" para estructuras de datos limitados por algún tipo de "meta modelo" (decir expresada en Xcore, que es un DSL para un modelo EMF Ecore, que puede importar desde un XSD ..), entonces tal vez mi EMF simple Object notación ESON (ex EFactory) https://github.com/vorburger/efactory es de interés para usted?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top