XInclude é um mecanismo genérico para mesclagem de documentos XML, escrevendo tags de inclusão no documento "principal" para incluir automaticamente outros documentos ou suas partes. O documento resultante torna-se um único XML Information Set composto. O mecanismo XInclude pode ser usado para incorporar o conteúdo a partir de quaisquer arquivos XML ou arquivos de texto não-XML.
Por exemplo, incluindo o arquivo de texto licença.txt:
Este documento é publicado sob a Licença de Documentação Livre da GNU
em um documento XHTML:
<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:xi="http://www.w3.org/2001/XInclude">
<head>...</head>
<body>
...
<p><xi:include href="licença.txt" parse="text"/></p>
</body>
</html>
fornece:
<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:xi="http://www.w3.org/2001/XInclude">
<head>...</head>
<body>
...
<p>Este documento é publicado sob a Licença de Documentação Livre da GNU</p>
</body>
</html>
O mecanismo é similar à tag <object> do HTML (que é específica para a linguagem de marcação HTML), mas o mecanismo XInclude trabalha com qualquer formato XML, como SVG e XHTML.