¿Existe una forma en .Net para generar mediante programación un DTD a partir de un archivo XML existente?

StackOverflow https://stackoverflow.com/questions/216900

  •  03-07-2019
  •  | 
  •  

Pregunta

He estado buscando en el espacio de nombres System.Xml, pero no veo nada que pueda admitir esto. ¿Alguien sabe si está integrado en .Net o tendría que obtener una biblioteca de terceros para hacerlo?

NOTA: desearía que fuera tan simple como generar un xsd, pero eso no sirve para mi situación específica.

¿Fue útil?

Solución

Sería muy fácil de hacer, pero muy difícil hacerlo útil.

DTD es una gramática. Es trivial generar una gramática que genere solo el archivo XML dado y ningún otro. Esto es, por supuesto, inútil en la práctica. Lo que probablemente necesites es crear una gramática que genere archivos " como este " ;, y este es un problema difícil de AI.

Editar: este problema se conoce como " Inducción de gramática " o " Inferencia gramatical " ;.

Otros consejos

No estoy seguro de la DTD pero puede generar archivos XSD a partir de un archivo xml usando Xsd.exe . Normalmente vive en el siguiente directorio:

C: \ Archivos de programa \ Microsoft Visual Studio 8 \ SDK \ v2.0 \ Bin \ xsd.exe

Bueno, xsd.exe debería poder conseguirte un xsd. Para el lado de dtd, xmlpad3 afirma poder hacer esto (y es gratis). No lo he intentado, así que no puedo responder por ello.

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