Los ejemplos en

http://en.wikipedia.org/wiki/XSLT

o

http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdcatalog&xsltfile=cdcatalog

parecen ser independientes de XML y XSLT archivos. No tienen que estar vinculados? O ¿alguna manera de ponerlos en un mismo archivo? De lo contrario, ¿cómo hace uno para archivo saben cómo chupar en los datos de otro archivo?

InformationsquelleAutor | 2010-08-11

4 Comentarios

  1. 64

    Puede agregar después de la declaración xml

    <?xml-stylesheet type="text/xsl" href="yourxsl.xsl"?>
    • esto es para poner en el XML (datos) archivo? Es esta la única manera, o se puede también decirle a un archivo XSLT para obtener datos a partir de la cual archivo XML, o tener un 3er archivo que incluye un archivo XML con un archivo XSLT?
    • si usted Altova XMLSpy puede agregar, por ejemplo, <?altova_samplexml gallery.clipflair.net/collection/activities.cxml ?> en el <?xml …> cláusula. Usted puede utilizar el URL relativo o absoluto/ruta de allí [el comentario analizador aquí parece que se comían el prefijo http:// de mi url]. Otras herramientas pueden ser similares a la sintaxis. Sería bueno si se podría utilizar algo de la sintaxis estándar en lugar de en el archivo XSL (ya que hay casos como este, donde el archivo XML es remota y no puede tocar)
    • alternativa podría ser la de incluir el archivo XML en otro archivo XML de alguna manera, que especifica la hoja de estilos, pero no estoy seguro si esto es sencillo (puede ser que necesite para especialmente autor el Xpath etc.)
    • Que trabajó para mí en Firefox, pero no muestra nada en Chrome.
  2. 3

    También se puede realizar la transformación en una página html:

    <script type="text/javascript">
      var xml = new ActiveXObject("Microsoft.XMLDOM")
      xml.async = false
      xml.load("some_xml.xml")
      var xsl = new ActiveXObject("Microsoft.XMLDOM")
      xsl.async = false
      xsl.load("some_xsl.xsl")
      document.write(xml.transformNode(xsl))
    </script>
  3. 3

    Un archivo no sabe a «chupar en los datos de» el otro archivo, ya que los archivos no son lo que va a hacer el tratamiento.

    Algún tipo de procesador XSLT va a hacer esto, y la forma en que se dirán en qué trabajar varía de modo que puede manejar diferentes casos de uso.

    En el caso de la prestación de toda la transformación de un documento XML cuando se muestra en un navegador, el procesamiento de instrucciones:

    <?xml-stylesheet type="text/xsl" href="stylesheet.xsl"?>

    (Realmente debería haber sido «text/xml» para el tipo como que el tipo mime de un documento XSL, pero esto fue en el final de la guerra entre navegadores y el navegador de la implementación de la función era a menudo ocurre más rápido que la velocidad de sentido común).

    Si usted es el control de la transformación mediante programación utilizando una biblioteca de algún tipo (hay objetos de javascript del lado cliente y de las bibliotecas en cualquier idioma es probable que usted quiere hacer de este), y luego tienes suficiente control a detalle lo que se transforma por qué. Algunos casos interesantes que aquí se incluyen.

    1. Usted podría incluso tener un documento con un nodo de contenido y un nodo de transformaciones, de elegir y ejecutar la transformación.

    2. Si está ejecutando la misma transformación en múltiples documentos XML, es muy a menudo más eficaz para llamar a algún tipo de «Precompilar()» método o similares, que se lleva un golpe en esa llamada para el beneficio de todas las posteriores transformaciones.

    3. Puede pasar en los valores de parámetros de nivel superior en el XSLT.

  4. 1

    Usted necesita una herramienta externa de la biblioteca o de aplicar una transformación Xslt Xml. Cómo hacerlo depende de su entorno de programación, sin embargo para .Neto de la XslCompiledTransform es la clase que se utiliza para aplicar una transformación Xslt para una pieza de Xml (ya sea un archivo Xml o en la memoria).

    Alternativa, puede utilizar Microsoft herramienta de línea de comandos xslt.exe – usted tendrá que investigar por sí mismo cómo hacer lo mismo en otros lenguajes de programacion /sistemas operativos.

Dejar respuesta

Please enter your comment!
Please enter your name here