Expatriado (software)

Biblioteca de analizadores sintácticos
Expatriado
Autor(es) original(es)James Clark
Desarrollador(es)Clark Cooper, y otros.
Lanzamiento inicial1998 ; hace 26 años (1998)
Versión estable
2.6.4 [1]  / 7 de noviembre de 2024 ; hace 5 días (7 November 2024)
Repositorio
  • github.com/libexpat/libexpat
Escrito endo
Sistema operativoPortátil
TipoBiblioteca de análisis XML
LicenciaLicencia MIT [2]
Sitio weblibexpat.github.io

Expat es una biblioteca de análisis XML 1.0 orientada a flujos , escrita en C , más precisamente en C99 . [3] Como uno de los primeros analizadores XML de código abierto disponibles , Expat ha encontrado un lugar en muchos proyectos de código abierto. Dichos proyectos incluyen Apache HTTP Server , Mozilla , Perl , Python y PHP . También está enlazado en muchos otros lenguajes.

Nombramiento

Según el creador original, el nombre Expat proviene del hecho de que él era un expatriado en ese momento. [ cita requerida ] El "ex" y el "pa" son para XML y análisis.

Cronología

El desarrollador de software James Clark lanzó la versión 1.0 en 1998 mientras se desempeñaba como líder técnico del Grupo de Trabajo XML en el Consorcio World Wide Web . [ cita requerida ] Clark lanzó dos versiones más, 1.1 y 1.2, antes de entregar el proyecto a un grupo dirigido por Clark Cooper y Fred Drake en 2000. El nuevo grupo lanzó la versión 1.95.0 en septiembre de 2000 y continúa lanzando nuevas versiones para incorporar correcciones de errores y mejoras.

Disponibilidad

GitHub alberga el proyecto Expat. Existen versiones para la mayoría de los [ cuantificar ] sistemas operativos principales [ cita requerida ] .

Despliegue

Para utilizar la biblioteca Expat, los programas primero registran funciones de controlador con Expat. Cuando Expat analiza un documento XML, llama a los controladores registrados a medida que encuentra tokens relevantes en el flujo de entrada. Estos tokens y sus llamadas de controlador asociadas se denominan eventos . Por lo general, los programas registran funciones de controlador para eventos de inicio o detención de elementos XML y eventos de caracteres. Expat proporciona funciones para un manejo de eventos más sofisticado, como declaraciones de espacios de nombres XML , instrucciones de procesamiento y eventos DTD .

Los eventos de análisis de Expat se parecen a los eventos definidos en la API simple para XML (SAX), pero Expat no es un analizador compatible con SAX. Los proyectos que incorporan la biblioteca Expat a menudo crean analizadores SAX y posiblemente DOM sobre Expat. Si bien Expat es principalmente un analizador basado en flujo (push), admite detener y reiniciar el análisis en momentos arbitrarios, lo que también hace que la implementación de un analizador pull sea relativamente fácil.

Referencias

  1. ^ "Versión 2.6.4 · libexpat/libexpat" . Consultado el 8 de noviembre de 2024 .
  2. ^ "COPIANDO". Github . Consultado el 16 de septiembre de 2019 .
  3. ^ Pipping, Sebastian (6 de febrero de 2024). "Se lanzó Expat 2.6.0, incluye correcciones de seguridad". www.xml.com . Consultado el 4 de septiembre de 2024 .
  • Página de inicio del proyecto Expat
  • Usando Expat, Clark Cooper, 1999
Retrieved from "https://en.wikipedia.org/w/index.php?title=Expat_(software)&oldid=1246251706"