Bind SOM nativo de XFA
El runtime interactivo resuelve las rutas dataRef de bind contra nodos dataset nativos reales; la edición directa, las asignaciones rawValue de script y los valores de formulario ocultos materializados consumen el mismo valor de datos seleccionado
Selectores
| Expresión | Selección |
|---|---|
$data..Detail.Price[1] | El segundo Price bajo un Detail descendiente coincidente |
$data.main.*.Detail[1].Price[1] | Refina las ramas wildcard mediante el sufijo solicitado |
$data.main.*[1].Detail.Price[1] | Restringe la wildcard a su segunda coincidencia de hermano explícita |
$data.main.#dataGroup[1].Detail.Price[1] | Usa la clasificación de grupos del Data DOM nativo antes de indexar hermanos |
$data..Detail[*].Price[1] | Permite que toda ocurrencia Detail coincidente participe en la búsqueda por sufijo |
$data.main.Price\.Tax | Selecciona un elemento XML cuyo nombre literal es Price.Tax |
El atributo xfa:dataNode con namespace controla la clasificación dataGroup y dataValue cuando está presente; en caso contrario, los hijos elemento reales distinguen grupos de valores
Los comentarios, las instrucciones de procesamiento y los nodos de texto ordinarios no participan como elementos de datos
El binding implícito por nombre de campo trata los puntos como parte del nombre XML; las rutas de selector explícitas usan escape con contrabarra para los caracteres literales del selector
Transacciones y persistencia nativa
Una edición con éxito actualiza la hoja del dataset seleccionada y los alias existentes, incluidos los campos ocultos cuyas propiedades value se han materializado; los hermanos no seleccionados y las ocurrencias repetidas conservan sus valores originales
Un fallo de validación, el agotamiento de la operación o el vencimiento del plazo restauran el dataset nativo y los paquetes del formulario byte a byte; el reloj monótono configurado del runtime también gobierna el recorrido del binding
SaveToBytes persiste el XML nativo real en lugar de una vista solo de eventos; reabrir el XDP guardado vuelve a consumir el valor de datos seleccionado
Creación y cobertura restante
Las rutas con nombre deterministas pueden crear elementos de índice cero que falten; una resolución de sufijo fallida o un recorrido interrumpido elimina las asignaciones hechas por esa búsqueda
Las rutas wildcard, descendant, class y [*] seleccionan nodos existentes sin asignar ramas ausentes ambiguas
La especificación dataRef de XFA usa rutas de Data DOM totalmente cualificadas; las rutas de binding relativas existentes siguen siendo una característica de compatibilidad resuelta dentro del contexto de ocurrencia suministrado
Una ruta relativa que no encuentra en una ocurrencia suministrada no busca en otros registros; un binding indirecto sin resolver puede usar el valor de formulario nativo separado de esa ocurrencia sin asignar una ruta de dataset ambigua
Los índices relativos [+n] y [-n] pertenecen a referencias de script no cualificadas y no se aceptan como índices de binding totalmente cualificados
Los selectores de atributos, los predicados generales, todas las operaciones XML estructurales de node-class, la política de asignación de binding global y la validación canónica de valores basada en picture siguen siendo objetivos de cobertura aparte