Domänen in einer Geodatabase in SQL Server
Domänen sind Regeln, die auf ein Feld in einer Business-Tabelle angewendet werden. Sie gewährleisten die Datenintegrität, indem sie dafür sorgen, dass nur die für diese Domäne angegebenen Werte in das Feld eingegeben werden können. Domänen werden für die Geodatabase definiert und können auf mehrere Feature-Classes, Tabellen oder Subtypes angewendet werden.
Sie können zwei Arten von Domänen definieren: Bereichsdomänen und Domänen mit codierten Werten. Bereichsdomänen können nur auf Zahlenfelder angewendet werden. Eine Erklärung von Domänen finden Sie unter Kurzer Überblick über Attributdomänen.
Domänen in ArcGIS Desktop
Der Zugriff auf die Domänen für eine Geodatabase erfolgt im Fenster "Katalog" über das Dialogfeld Eigenschaften: Datenbank. Klicken Sie mit der rechten Maustaste auf die Geodatabase, und klicken Sie dann auf Eigenschaften.
Im vorherigen Beispiel wird die Liste aller Domänen, die für eine Geodatabase definiert sind, oben in dem Dialogfeld angezeigt. In der Liste ist die Domäne Fitting_type ausgewählt. Die angezeigten Werte für Domäneneigenschaften und Codierte Werte beziehen sich auf diese ausgewählte Domäne. Die Domäne Fitting_type ist eine codierte Domäne, wie unter Domäneneigenschaften zu erkennen ist.
Wenn eine Domäne auf einen Subtype angewendet wird, wird dies auf der Registerkarte Subtype des Dialogfelds Eigenschaften: Feature-Class aufgeführt. Klicken Sie mit der rechten Maustaste auf die Feature-Class, und klicken Sie dann auf Eigenschaften.
Die Domäne Fitting_type wird auf das Feld SUBTYPE der Feature-Class Fittings angewendet.
Wenn Sie die Attribute der Feature-Class Fittings in ArcMap bearbeiten, können Sie nur einen der Codes eingeben, der für die Domäne Fitting_type im Feld SUBTYPE angegeben ist.
Domänen in einem SQL Server-DBMS
In der Datenbank werden alle Domänen in der Systemtabelle GDB_ITEMS gespeichert. Ein Feld in der Tabelle GDB_ITEMTYPES identifiziert das Objekt als Domäne.
Domänen in einem XML-Workspace-Dokument
Domänen in XML Workspace-Dokumenten werden in einen Domänen-Tag eingeschlossen.
Im Folgenden ist ein Teil eines XML Workspace-Dokuments dargestellt, das die Definition der Domäne mit codierten Werten Fitting_type enthält:
<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>
Nachfolgend sind die Einträge für eine Bereichsdomäne namens "RotAngle" in einem XML Workspace-Dokument dargestellt:
<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>