2009-11-29 10 views

Respuesta

7

http://www.stylusstudio.com/dtd_generator.html es un software real que implementa un generador DTD.

http://www.pmg.csail.mit.edu/~chmoh/pubs/wecwis.pdf parece un buen documento sobre el tipo de cosas que necesitaría, pero no puedo encontrar (enlaces a) el código actual en ninguna parte del documento hasta el momento.

Aquí hay otro documento sobre esto, una vez más, no hay código para ser encontrado: http://www.softnet.tuc.gr/~minos/Papers/debull03.pdf.

Finalmente, también le sugiero que considere utilizar RELAX NG o Schematron para validar su XML. Esos idiomas son mucho más expresivos, lo que los hace más fáciles de leer y más poderosos en el tipo de cosas que puede validar. (Asegúrese de omitir XML Schema, que generalmente se considera un desastre.)

+1

¡Documento interesante! Lástima que nunca lanzaron el código (de una manera que puedo encontrar :-) – lexu

+1

http://www.hitsw.com/xml_utilites/ promete crear una DTD/esquema a partir de un único archivo XML .. – lexu

+0

RE - RELAX NG o Schematron: veré si existen validadores para el entorno dotNet. ¡Gracias por los consejos! – lexu

1

Altova's XMLSpy tiene un generador de esquemas DTD/XML.

El esquema DTD/XML generado generalmente requiere un pequeño ajuste. Por ejemplo, la herramienta puede enumerar una lista de atributos o elementos, cuando "significó" que permita cualquier valor. Solo le está dando una muestra de su espacio problemático, y tiene que ir de específico a general. Por esa razón, no me doblo demasiado cuando no puede leer mi mente.

Considero que el dtd o esquema generado es un punto de partida. Es mejor que rodarlo a mano desde cero. Er, si estás comenzando con documentos XML existentes, eso es.

Incluso si no va a utilizar el dtd generado, es una buena forma de familiarizarse con la estructura de un conjunto de documentos XML desconocidos.

1

El editor XMLMax creará un XSD a partir de un archivo XML. La versión de prueba gratuita (sin registro/archivo de descarga pequeño) hará esto por usted. Si desea hacer esto en el código, .NET Framework tiene una clase XmlSchemaInference que crea automáticamente un XSD a partir de un archivo xml.

8

Puede usar xsd.exe (parte de visual studio) para generar un esquema XML para un archivo XML dado.

2

aquí es el programa que funcionó para mí DTDGenerator. Necesitas compilarlo con Java, pero funciona bien. Estoy sorprendido por la falta de software libre para un lenguaje que ha existido por mucho tiempo, pero este es gratis bajo la Licencia Pública Mozilla Versión 1.0.

+0

Esta pregunta es bastante antigua, pero aún parece ser relevante. Una respuesta con sugerencias actuales es bienvenida. – lexu

+0

Muchas gracias ... realmente, ¡hay una falta de software libre! ¡¡gracias por tu ayuda!! :) –

Cuestiones relacionadas