Domaines d'une géodatabase stockée dans Oracle
Les domaines sont des règles qui s'appliquent aux champs d'une table métier. Ils imposent l'intégrité des données en n'autorisant que les valeurs spécifiées pour le domaine à entrer dans le champ. Les domaines sont définis par géodatabase et peuvent être appliqués à différentes classes d'entités, tables ou sous-types.
Vous pouvez définir deux types de domaines — les domaines par plage et les domaines à valeur précodée. Les domaines par plage ne peuvent être appliqués qu'aux champs numériques. Pour obtenir des explications sur les domaines, reportez-vous à la rubrique Présentation rapide des domaines attributaires.
Domaines dans ArcGIS for Desktop
Les domaines d'une géodatabase sont accessibles dans la fenêtre Catalogue, par l'intermédiaire de la boîte de dialogue Propriétés de la base de données. Cliquez avec le bouton droit de la souris sur la géodatabase et sélectionnez Propriétés.
Dans l'exemple précédent, la liste de tous les domaines définis pour une géodatabase est affichée en haut de la boîte de dialogue. Le domaine FittingType est sélectionné dans la liste. Les valeurs affichées pour les sections Propriétés du domaine et Valeurs précodées correspondent à ce domaine. Comme l'indiquent les valeurs de la section Propriétés du domaine, le domaine FittingType est un domaine à valeurs précodées.
Lorsqu'un domaine est appliqué à un sous-type, il est répertorié dans l'onglet Sous-type de la boîte de dialogue Propriétés de la classe d'entités. Cliquez avec le bouton droit de la souris sur la classe d'entités et choisissez Propriétés.
Le domaine FittingType est appliqué au champ SUB_TYPE de la classe d'entités Fittings.
Lorsque vous modifiez les attributs de la classe d'entités Fittings dans ArcMap, vous ne pouvez dès lors entrer dans le champ SUB_TYPE que les codes spécifiés pour le domaine FittingType.
Domaines dans une base de données Oracle
Dans la base de données, tous les domaines sont stockés dans la table système GDB_ITEMS. Un champ dans la table GDB_ITEMTYPES identifie l'objet comme domaine.
Domaines dans un document d'espace de travail XML
Dans les documents d'espace de travail XML, les domaines sont délimités par une balise domain.
Voici un extrait d'un document d'espace de travail XML qui contient la définition du domaine de valeurs précodées FittingType :
<Domain xsi:type="esri:CodedValueDomain">
<DomainName>FittingType</DomainName>
<FieldType>esriFieldTypeString</FieldType>
<MergePolicy>esriMPTDefaultValue</MergePolicy>
<SplitPolicy>esriSPTDuplicate</SplitPolicy>
<Description>Valid fitting type codes</Description>
<Owner>RJP</Owner>
<CodedValues xsi:type="esri:ArrayOfCodedValue">
<CodedValue xsi:type="esri:CodedValue">
<Name>Tee</Name>
<Code xsi:type="xs:string">TEE</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Sleeve</Name>
<Code xsi:type="xs:string">SLV</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Reduser</Name>
<Code xsi:type="xs:string">RED</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Expansion joint</Name>
<Code xsi:type="xs:string">EOP</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Cross</Name>
<Code xsi:type="xs:string">CRS</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Bend</Name>
<Code xsi:type="xs:string">BEND</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Cap</Name>
<Code xsi:type="xs:string">CAP</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Coupling</Name>
<Code xsi:type="xs:string">CPL</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Offset</Name>
<Code xsi:type="xs:string">OFF</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Plug</Name>
<Code xsi:type="xs:string">PLG</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Saddle</Name>
<Code xsi:type="xs:string">SDL</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Tap</Name>
<Code xsi:type="xs:string">TAP</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Weld</Name>
<Code xsi:type="xs:string">WLD</Code>
</CodedValue>
<CodedValue xsi:type="esri:CodedValue">
<Name>Riser</Name>
<Code xsi:type="xs:string">RIS</Code>
</CodedValue>
</CodedValues>
</Domain>
Les entrées pour un domaine par plage, RotAngle, dans un document d'espace de travail XML sont indiquées ici :
<Domain xsi:type="esri:RangeDomain">
<DomainName>RotAngle</DomainName>
<FieldType>esriFieldTypeInteger</FieldType>
<MergePolicy>esriMPTDefaultValue</MergePolicy>
<SplitPolicy>esriSPTDuplicate</SplitPolicy>
<Description>Valid rotation angles</Description>
<Owner>RJP</Owner>
<MaxValue xsi:type="xs:double">359</MaxValue>
<MinValue xsi:type="xs:double">0</MinValue>
</Domain>