Vue d'ensemble des espaces de noms (LINQ to XML)
Mise à jour : November 2007
Cette rubrique présente les espaces de noms, la classe XName et la classe XNamespace.
Noms XML
Les noms XML constituent souvent une source de complexité dans la programmation XML. Un nom XML est constitué d'un espace de noms XML (également appelé URI d'espace de noms XML) et d'un nom local. Un espace de noms XML est similaire à un espace de noms dans un programme .NET Framework. Il permet de qualifier de manière unique les noms d'éléments et d'attributs. Cela permet d'éviter les conflits de noms entre différentes parties d'un document XML. Lorsque vous avez déclaré un espace de noms XML, vous pouvez sélectionner un nom local qui n'exige d'être unique que dans cet espace de noms.
Les préfixes d'espaces de noms XML constituent un autre aspect des noms XML. Les préfixes XML sont la cause de la plupart de la complexité des noms XML. Ces préfixes vous permettent de créer un raccourci pour un espace de noms XML, ce qui rend le document XML plus concis et plus compréhensible. Toutefois, la signification des préfixes XML dépend de leur contexte, ce qui augmente la complexité. Par exemple, le préfixe XML aw pourrait être associé à un espace de noms XML dans une partie d'une arborescence XML et à un espace de noms XML différent dans une autre partie de l'arborescence XML.
L'un des avantages liés à l'utilisation de LINQ to XML avec C# réside dans le fait que vous n'avez pas à utiliser de préfixes XML. Lorsque LINQ to XML charge ou analyse un document XML, chaque préfixe XML est résolu à son espace de noms XML correspondant. Après cela, lorsque vous travaillez avec un document qui utilise des espaces de noms, vous accédez presque toujours aux espaces de noms par le biais de l'URI d'espace de noms, et non par le biais du préfixe d'espace de noms. Lorsque les développeurs travaillent avec des noms XML dans LINQ to XML, ils travaillent toujours avec un nom XML complet (autrement dit, un espace de noms XML et un nom local). Toutefois, en cas de nécessité, LINQ to XML vous permet de travailler avec les préfixes d'espaces de noms et de les contrôler.
Lors de l'utilisation de LINQ to XML avec Visual Basic et des littéraux XML, vous devez utiliser des préfixes d'espaces de noms lorsque vous travaillez avec des documents dans des espaces de noms.
Dans LINQ to XML, la classe qui représente les noms XML est XName. Les noms XML apparaissent fréquemment dans l'API LINQ to XML, et chaque fois qu'un nom XML est requis vous trouverez un paramètre XName. Toutefois, vous travaillez rarement directement avec un objet XName. XName contient une conversion implicite de chaîne.
Pour plus d'informations, consultez XNamespace et XName.