Autour de la spécification XML 1.0 il existe une famille de technologies :
- CSS, permet de définir l'affichage d'un document XML.
- XSL 3 parties :
- XSLT, langage évolué pour transformer des documents XML
en des documents sous différents formats de sortie
(XSLT version 1.0 : 16 November 1999, la version 2.0 n'est pas encore une recommandation)
- XPath, langage pour désigner des parties d'un document (s'utilise avec
XSLT et XPointer)
- XSL-FO, langage pour produire un document imprimable
- Xlink pour créer des liens entre fichiers XML
(liens hypertextes unidirectionnels comme en HTML
ou plus complexes)
- XPointer pour pointer sur des parties d'un document XML, un XPointer pointe sur
des éléments de données au sein d'un fichier XML (éléments,
attributs ou contenus).
- XML Base pour définir l'URL de base
d'un document (équivalent de
l'éléement BASE en html)
- DOM Document Object Model, définit des interface
(propriétés et méthodes) pour manipuler des documents
structurés comme XML et HTML à partir d'un langage de programmation.
- namespaces (domaines de noms) pour distinguer les noms utilisés dans
les documents XML.
- XForms pour décrire des formulaires Web
(XForms 1.0 recommandation du 14 octobre 2003).
- XQuery, langage pour extraire des données de documents XML (le but final du
projet est d'interroger des collections de fichiers XML comme on interroge des bases
de données)
- Schemas, alternatives aux DTD qui permettent de décrire un document de manière
plus détaillée (types de données pour les dates, les entiers, ...,
possibilité de donner des bornes aux valeurs). Les schemas XML sont plus proches
des schemas relationnels