Skip to content

Considerar separador alternativo al "|" en atributo specific-use del <xref> #10

Description

@albertomoyano

Contexto

El PR #3 introdujo el atributo specific-use="modo|prefijo|sufijo" en <xref ref-type="bibr"> para preservar el modo de cita Pandoc y los textos accesorios. El delimitador entre las tres partes es el carácter |.

Problema

Si el prefijo o el sufijo contienen literalmente el carácter |, el parseo posterior en el XSLT se rompe: el split por | produce más de tres partes y los valores quedan mal asignados.

Probabilidad

Muy baja en textos académicos reales. Es difícil que alguien escriba [ver | @key] o [@key, p. 5 | parte A]. Pero la posibilidad existe y es trazable.

Opciones a evaluar

  1. Mantener el | y documentar la restricción en el código y en una nota técnica.
  2. Escapar el | en el filtro Lua (por ejemplo \|) y desescapar en el XSLT.
  3. Usar un separador no imprimible como &#x1F; (Unit Separator, U+001F), que es prácticamente imposible de teclear o pegar accidentalmente desde un editor de texto.
  4. Cambiar el modelo y descomponer en atributos separados (por ejemplo specific-use="modo" más atributos custom para prefijo y sufijo en otro namespace).

La opción 3 es la más robusta sin sumar lógica de escape. La 4 es la más limpia semánticamente pero requiere más cambios en el XSLT consumer.

Prioridad sugerida

Baja. Es un edge case teórico que no se ha observado en producción.

Referencias

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions