xdoc-rs 0.1.1

Declarative XML engine for Rust
Documentation
# Documentacion por feature

Cada feature tiene su propio archivo. Este documento es el indice para navegar
la documentacion funcional de la libreria.

`Feature` aqui significa area funcional de la libreria, no un flag de
`Cargo.toml [features]`. La crate no expone feature flags publicos todavia.

| Quieres... | Lee | Implementacion principal |
| --- | --- | --- |
| Entender el arbol XML, nombres, namespaces y errores | [core.md]core.md | `src/core/*` |
| Crear XML con API Rust explicita | [builder.md]builder.md | `src/builder/mod.rs` |
| Partir XML grande en componentes reutilizables | [component.md]component.md | `src/component/mod.rs` |
| Escribir XML con sintaxis tipo tags | [macros.md]macros.md | `src/macros/mod.rs`, `crates/xdoc-macros/*` |
| Convertir `Document` a XML string | [writer.md]writer.md | `src/writer/mod.rs` |
| Leer XML externo con limites seguros | [parser.md]parser.md | `src/parser/mod.rs` |
| Consultar nodos, atributos y textos | [query.md]query.md | `src/query/mod.rs` |
| Convertir un XML en otro XML | [transform.md]transform.md | `src/transform/mod.rs` |
| Validar estructura con contratos propios | [schema.md]schema.md | `src/schema/mod.rs` |
| Configurar limites y politicas seguras | [security.md]security.md | `src/security/mod.rs` |
| Canonicalizar, firmar o verificar XML | [signature.md]signature.md | `src/signature/*` |
| Crear fixtures, goldens y roundtrip tests | [testing.md]testing.md | `src/testing/mod.rs`, `tests/*`, `fuzz/*` |
| Usar comandos desde terminal | [cli.md]cli.md | `crates/xdoc-cli/src/main.rs` |

## Rutas de aprendizaje

Construccion declarativa:

1. [builder.md]builder.md
2. [component.md]component.md
3. [macros.md]macros.md
4. [writer.md]writer.md

XML existente:

1. [parser.md]parser.md
2. [query.md]query.md
3. [schema.md]schema.md
4. [transform.md]transform.md

Firma:

1. [writer.md]writer.md
2. [parser.md]parser.md
3. [query.md]query.md
4. [signature.md]signature.md

Pruebas y herramientas:

1. [testing.md]testing.md
2. [cli.md]cli.md
3. [files.md]files.md

## Relacion entre features

```text
core
  |
  +-- builder -- component -- macros
  |
  +-- writer
  |
  +-- parser
  |
  +-- query -- schema
  |        \-- transform
  |
  +-- signature
  |
  +-- testing
```

Regla de diseno: las features del motor no conocen dominios. Las reglas de
negocio viven fuera de `xdoc` y usan estas piezas por configuracion.