transformador test online mapeo generate from desde curso crear xml xslt website content-management-system

xml - test - ¿Hay algún punto para crear un sitio usando XSLT



xslt editor (14)

Quiero hacer esto para facilitar la actualización del sitio usando archivos XML simples (en lugar de usar un sistema CMS completo y costoso).

Er, ¿qué? Hay muchos CMS gratuitos y de código abierto.

Lo que Spoulson dijo más arriba sobre la creación de plantillas es el punto. Proporcionar páginas de salida a partir de archivos XML de entrada está bien. Pero eso no te da un CMS. ¿Qué hay de CRUD? ¿Buscar? Listados de la página?

Si su sitio es tan pequeño que todas las actualizaciones relevantes se pueden hacer editando manualmente algunos archivos XML, entonces, ¿por qué no? Vaya por ello. Pero si es así de simple, también podría editar HTML a mano.

¿Esta tecnología sigue siendo popular?

Quiero crear un sitio web que transforme automáticamente los archivos XSLT. Debería funcionar así: cuando un usuario accede al sitio, un único controlador acepta su solicitud y luego encuentra un XML adecuado para él (de acuerdo con la URL solicitada) y lo transforma utilizando su archivo XSL adjunto.

Quiero hacer esto para facilitar la actualización del sitio usando archivos XML simples (en lugar de usar un sistema CMS completo y costoso).

¿Qué dices? ¿buena idea? ¿mala idea? Alguien tiene una recomendación?

¡Gracias!


Como nota al wowarmory.com , wowarmory.com es un buen ejemplo de un sitio de alto tráfico que usa XSLT. De hecho, creo que todo el sitio lo usa.


Conozco algunos portales web grandes que funcionan mucho con XSLT, aquí en Polonia. Usaron porque puede minimizar la cantidad de datos enviados a través de la red.

También trabajé en el proyecto (aplicación Huge HRM) y lo usamos allí para transformar nuestro lenguaje de programación a .NET.

Yo diría que a veces es muy útil.


Eche un vistazo a http://www.umbraco.org/ Es una herramienta gratuita de código abierto CMS que usa XSLT extensivamente para generar páginas.

Para todos aquellos que afirman que XSLT es difícil, diría que no es más difícil que SQL. Hay escenarios que son difíciles, como la agrupación, al igual que en los árboles SQL son difíciles.

Elija la herramienta adecuada para el trabajo correcto y no debería tener ningún problema.


En 2002-2003 hice mucho con XSLT (y algo más en 2006-2007). Su kilometraje en esto variará pero honestamente lo evitaría, por varias razones:

  • La sintaxis es un ceñidor cegador, difícil de aprender, difícil de conseguir y simplemente le da dolor de cabeza. Las plantillas en sí mismas no son tan malas, pero arrojan algunas expresiones XPath gnarly y duele;
  • Para documentos y transformaciones de un tamaño razonable, es relativamente lento. Ya sea que sea lo suficientemente lento como para ser relevante para usted es algo que solo encontrará al comparar su escenario, así que no tome esto como una regla general, más como una advertencia o una advertencia;
  • Los mensajes de error simplemente no son tan útiles y puede ser difícil resolver los problemas. A diferencia de un enfoque más tradicional, no se puede sacar un depurador y pasar por un XSLT;
  • Generar HTML con cualquier lenguaje moderno con sabor a Internet (C #, Java, PHP, Python, Ruby, etc.) es trivial, directo, fácil de registrar y fácil de depurar;
  • Manipular XML es posiblemente más tedioso y produce más código que manipula directamente objetos y los convierte en marcado. Esto, por supuesto, variará según las herramientas que le proporcione el idioma elegido.

El único lugar donde realmente puedo ver que tenga una aplicación para XSLT hoy en día es consumiendo servicios web que producen XML (muchos producen formatos JSON y de consumo más fácil en la actualidad).

E incluso en ese caso, probablemente manipularía el XML directamente con, por ejemplo, JAXB en Java (o tecnologías similares en otros idiomas).

Actualización: Acabo de encontrar The Death of XSLT en Web Frameworks . Por ejemplo:

Por ejemplo: cómo ocultar la fila en la tabla (usando un estilo CSS diferente), basado en alguna CONDICIÓN, con XSLT? Ver:

<tr> <xsl:attribute name="style"> <xsl:choose> <xsl:when test="CONDITION"> <xsl:value-of select="''visibility: visible''"> </xsl:when> <xsl:otherwise> <xsl:value-of select="''visibility: collapse''"> </xsl:otherwise> </xsl:choose> </xsl:attribute> ... </tr>

y ahora lo mismo con JSP 1.x:

<tr style=''visibility:<%=CONDITION ? "collapse" : "visible"%>''> ... </tr>

o con JSP 2.x:

<tr style=''visibility:${CONDITION ? "collapse" : "visible"}''> ... </tr>

resumido por:

Entonces, si comienzas un nuevo proyecto, piénsalo dos veces (o diez veces) antes de saltar a XSLT. Y> si usa Eclipse, incluso puede pensar dos veces antes de usar JSP / JSTL. Velocity o> FreeMarker podrían ser una mejor opción.


En el trabajo, un proyecto en el que estoy usa XSLT y para ser sincero, es un verdadero dolor. Los archivos XSLT reales no son tan difíciles de trabajar, pero tener que crear XML agrega una capa adicional de complejidad. También descubrí que, más allá de las páginas más básicas, el XML tiende a ser muy abultado y desordenado. Entonces, no, no lo recomendaría.


Las respuestas basadas en "la sintaxis es difícil" no son ninguna respuesta en absoluto. UN). Realmente no es, y B). Se supone que eres un programador, solo aprende.

Definitivamente, otras tecnologías están avanzando a un ritmo que XSLT no ha tenido desde 2005, pero sigue siendo una herramienta poderosa que le da un nivel de abstracción que, por ejemplo, los formularios web asp.net no lo hacen, y le permite proporcionar una solución escalable general para serializar trivialmente a una variedad de formatos de salida. Es fácil generar HTML con cualquier idioma dado, ahora es más difícil extenderlo a XML, ahora extenderlo a JSON, ahora extenderlo a CSV.

Y las transformaciones en caché son lo suficientemente rápidas en un entorno que todavía está vinculado a E / S.

OTOH, almacenar datos en XML generalmente no es una buena idea. Mucho mejor para almacenar en un DB / mem y serializar según sea necesario por todas las razones anteriores.



Me gusta la idea. XSL es una herramienta fantástica, pero debes tener ese momento especial de iluminación antes de darte cuenta de lo útil que realmente es. Antes de eso, parece tan regular.

He usado XSL en una variedad de aplicaciones y me ha ahorrado mucho tiempo. Pero obviamente no lo use por el simple hecho de hacerlo.


Me parece una mala idea. Es mucho más fácil usar algo como ASP.NET con el contenido almacenado en una base de datos; luego puedes actualizar el contenido directamente en la base de datos, lo que en sí mismo será más fácil que editar el XML.


Si su plataforma es ASP.NET echa un vistazo a myxsl

XSLT le da la capacidad de crear plantillas discretas, que es IMO, el mejor tipo de creación de plantillas.


XSLT es solo un método de creación de plantillas. También es solo una pieza de un framework MVC completo, donde la creación de plantillas es el componente View. XSLT es una tecnología excelente, pero es lenta y no es la primera opción para crear un sitio web escalable.

Investigue sobre los marcos de MVC para ver cuál le queda mejor. por ejemplo ASP.NET MVC, Ruby on Rails, CakePHP, Catalyst, etc.


xslt es difícil?

Es un trabajo de programadores para abordar problemas complejos y estándares complejos. Hay cosas que son mucho más difíciles y aún se necesitan. Solo sigue haciéndolo y será más fácil cada vez que necesites aprender cosas nuevas.

Xslt es fácil.

¡De Verdad! Hay buenos libros que te enseñan xslt. Simplemente aprende, por ejemplo, rdf / owl (un estándar w3c) y aún puede ser mucho más complejo ...

xslt es lento? Simplemente usa el almacenamiento en caché correcto si puedes. (ok, no siempre es posible ...).

Acabo de leer sobre REST (algún libro o disertación de Roy Fielding) que también es esencial.

Ahora con XProc (xslt piplines) y un pequeño servidor de restauración alrededor de calabash (implementación de Xproc) puede archivar tanto. definitivamente puede ahorrarle tiempo. cualquier dato puede exportarse a XML, hacerse vulnerable a través de REST y transformarse con XProc.


Symphony CMS usa XSLT. Mientras usaba ese CMS, descubrí que los únicos problemas reales que tenía tenían que ver con aprender la sintaxis XSL / XPath, principalmente debido a la falta de buenos tutoriales / documentación. Podría valer la pena darle una oportunidad a Symphony si quiere ver un uso de XSLT relativamente moderno.