Partager via


Attribut Namespace (SSDL)

Dans le modèle EDM (Modèle de données d'entité), l'élément Schema des métadonnées de stockage contient un nom d'espace de noms. Le nom d'espace de noms est utilisé lorsqu'un nom complet est requis pour les déclarations dans le schéma. Le nom d'espace de noms est souvent abrégé à l'aide d'un alias. L'exemple ci-dessous affecte le terme Self à l'attribut Alias du schéma AdventureWorksHRTarget.

<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="AdventureWorksHRTarget"
        Alias="Self"
        xmlns="https://schemas.microsoft.com/ado/2006/04/edm/ssdl">

Il existe une ligne semblable dans le fichier CSDL (Conceptual Schema Definition Language). Les seules différences résident dans les noms affectés à l'attribut Namespace et dans l'URL affectée à l'attribut xmlns.

<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="AdventureWorksHRModel"
        Alias="Self"
        xmlns="https://schemas.microsoft.com/ado/2006/04/edm">

Les noms d'espace de noms utilisés dans ces déclarations répercutent leurs objectifs dans le modèle de données qui est construit. AdventureWorksHRTarget correspond aux métadonnées cibles utilisées par AdventureWorksHRModel pour connecter les types qu'il définit au stockage.

Dans la spécification de mappage, l'élément EntityContainerMapping mappe les deux conteneurs d'entités sans référence à leurs noms namespace. EntityContainer est distinct et indépendant du Schema, bien qu'il soit défini dans le Schema. La spécification de mappage fait référence uniquement à des objets conteneur, comme dans la syntaxe MSL (Mapping Specification Language) suivante : CdmEntityContainer="HumanResources"``StorageEntityContainer="HumanResources".

<?xml version="1.0" encoding="utf-8"?>
<Mapping Space="C-S" 
    xmlns="urn:schemas-microsoft-com:windows:storage:mapping:CS">
  <EntityContainerMapping CdmEntityContainer="HumanResources"
                          StorageEntityContainer="HumanResources">

Alias

L'attribut Alias est utilisé pour raccourcir le nom d'espace de noms dans le reste du schéma. L'exemple ci-dessous affecte la chaîne Self à l'attribut Alias.

<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="AdventureWorksHRModel"
        Alias="Self"
        xmlns="https://schemas.microsoft.com/ado/2006/04/edm">

L'attribut Alias est très utile dans le reste du schéma et améliore la lisibilité, comme le montre la syntaxe ci-dessous.

  <EntityContainer Name="HumanResources">
    <EntitySet Name="Department" EntityType="Self.Department" />
    <EntitySet Name="Employee" EntityType="Self.Employee" />
    <EntitySet Name="EmployeeAddress" EntityType="Self.EmployeeAddress" />

Xmlns

L'exemple précédent contient également un attribut xmlns qui utilise une URL assignée. Cette URL est utilisée dans tous les schémas SSDL.

Voir aussi

Concepts

Schéma conceptuel (CSDL)
Spécification de mappage (MSL)
Modèle complet AdventureWorks (EDM)