---
title: Selectores XML: añadir, reemplazar y eliminar por ejemplo
summary: Leer sel, añadir un atributo e inspeccionar el documento parcheado esperado.
section: scripting
kind: guide
status: example
updated: 2026-10-27
tags: ["X4","modding","xpath","selectors"]
sources: ["https://chemodun.github.io/x4/modding-support/anatomy-of-an-extension/xml-diff-patching/","https://datatracker.ietf.org/doc/html/rfc5261"]
---
## Leer el camino
X4 utiliza un lenguaje se selector restringido en lugar de todo XPath. Compruebe su juego `libraries/diff.xsd`; la aceptación por un editor XPath no prueba la compatibilidad con X4.
| Forma | Significado |
| --- | --- |
| `/items/item` | elementos hijos de la raíz de los elementos |
| `[@id='a']` | Filtro de atributos |
| `/@enabled` | El atributo en sí |
| `//item[@id='a']` | Cualquier profundidad; comprobar la singularidad |
## Aportaciones de aprendizaje
Estos son datos inventados, no un archivo X4:
```xml
```
Parche independiente:
```xml
true
demo
```
## Resultado esperado
```xml
```
`replace` cambia un atributo existente, `add type="@label"` añade uno, y `remove` Suprime b. La final `add` inserta c dentro de los elementos. Esta es una transformación esperada, no una salida de registro o una prueba de juego ejecutada.
## Errores comunes
Compruebe una coincidencia para cada operación. Reemplazar un elemento entero también elimina a sus hijos antiguos. Para agregar un atributo, seleccione el elemento a través de `sel` y nombre el atributo a través de `type`.
No confíes en `contains()`, Unión `|` o expresiones XPath completas arbitrarias. Investigar primero las coincidencias faltantes: `silent` suprime un informe sin fijar la ruta. [un verdadero parche de barco](wiki:editing-parameters) y [compatibilidad](wiki:compatibility).