Subtypes sind Datensätze in einer Tabelle oder Feature-Class, die auf der Grundlage eines Attributfeldes gruppiert wurden. Subtypes werden durch das Erstellen von codierten Werten umgesetzt und müssen daher Feldern des Datentyps "Short Integer" oder "Long Integer" zugeordnet sein. Diese Ganzzahlwerte stellen jeweils ein Feature im Subtype dar. Die folgenden Codes im Subtype "RoadClass" können beispielsweise gültige Klassen in einer Feature-Class für Straßen darstellen:
0 – Ortsstraßen
1 – Nebenstraßen
2 – Hauptstraßen
Jeder Subtype kann eigene Standardwerte aufweisen. Im oben genannten Beispiel kann der Subtype "Ortsstraßen" für das Attribut der Geschwindigkeitsbegrenzung einen Standardwert von 30 km/h, der Subtype "Hauptstraßen" hingegen einen Standardwert von 50 km/h aufweisen. Bei jedem Hinzufügen einer Ortsstraße zur Streets-Feature-Class wird das zugehörige Attribut der Geschwindigkeitsbegrenzung automatisch auf 30 km/h festgelegt. Bei jedem Hinzufügen einer Hauptstraße wird die zugehörige Geschwindigkeitsbegrenzung automatisch auf den Standardwert von 50 km/h festgelegt.
Jeder Subtype kann außerdem über eine eigene Bereichsdomäne oder Domäne mit codierten Attributen für ein gegebenes Feld verfügen. So kann in einer Feature-Class für Hauptleitungen z. B. eine Bereichsdomäne für den Wasserdruck festgelegt werden. Der Subtype, der Übertragungswasserhauptleitungen darstellt, kann einen Druck zwischen 40 und 100 psi aufweisen, der Subtype für Verteilungswasserhauptleitungen einen Druck zwischen 50 und 75 psi.
Jedem Subtype können zudem andere Verbindungs-, Beziehungs- und Topologieregeln zugeordnet sein.
Feature-Class und Subtype
Ein wichtiger Aspekt beim Entwurf einer Geodatabase ist die Entscheidung darüber, wo es angemessen ist Subtypes zu verwenden und wo zusätzliche Feature-Classes notwendig sind. Beachten Sie Folgendes, wenn Sie sich zwischen dem Erstellen von Subtypes und neuen Feature-Classes entscheiden:
- Es empfiehlt sich, dass Sie getrennte Subtypes für eine einzelne Feature-Class oder Tabelle erstellen, wenn Sie Objekte anhand der Standardwerte, Attributdomänen, Konnektivitätsregeln und Beziehungsregeln unterscheiden möchten.
- Wenn Sie Objekte anhand verschiedener Verhaltensweisen, Attribute oder Zugriffsberechtigungen unterscheiden möchten oder danach, ob die Objekte versioniert sind, müssen Sie zusätzliche Feature-Classes erstellen.