Одним из преимуществ хранения ваших данных в базе геоданных является возможность настройки правил, которые управляют редактированием данных. Вы настроите эти правила путем создания нового атрибутивного домена для диаметров отводов водопровода (класс объектов Laterals); создадите подтипы для класса объектов Laterals; и свяжите новый домен, существующие домены и значения по умолчанию с каждым подтипом.
Атрибутивные домены являются правилами, определяющими допустимые значения для поля. Несколько классов объектов и таблиц могут иметь общий домен, который хранится в базе данных. Однако не все объекты в классе объектов или таблице нуждаются в общих атрибутивных доменах.
Например, в сети водопровода предполагается, что только объекты типа hydrant water laterals (трубы для гидрантов) могут иметь давление от 40 до 100 фунтов на квадратный дюйм, в то время как объекты типа service water laterals (сервисные водопроводы) могут иметь давление в пределах от 50 до 75 фунтов на квадратный дюйм. Для применения этого ограничения необходимо использовать атрибутивный домен. Чтобы реализовать правило проверки вам не потребуется создавать отдельные наборы классов для труб гидрантов и сервисных труб, но вам требуется различать их в пределах класса, чтобы назначить им отдельный набор доменов и значений по умолчанию. Это можно осуществить с помощью подтипов.
Для получения дополнительной информации о подтипах и атрибутивных доменах см. Краткий обзор подтипов и Краткий обзор атрибутивных доменов.
Создайте новый атрибутивный домен
Вы создадите новый атрибутивный домен кодированных значений. Этот домен будет описывать набор допустимых значений диаметров для труб в вашем новом классе объектов Laterals.
- Щелкните правой кнопкой мыши базу геоданных Montgomery в окне Каталога и выберите Свойства.
Откроется диалоговое окно Свойства базы данных.
- Прокрутите окно вниз и щелкните закладку Домены.
- Щелкните первое пустое поле в столбце Имя домена и введите LatDiameter в качестве имени нового домена.
- В поле Описание введите Корректные значения диаметров отводов.
- В окне Свойства домена щелкните стрелку раскрывающегося списка Тип поля и выберите Float.
Эта настройка определяет тип данных в поле, которому будет назначен домен.
- Щелкните стрелку ниспадающего списка Тип домена и выберите Кодированные значения.
- Щелкните первое пустое поле в столбце Код на панели Кодированные значения: и введите 13.
- Щелкните поле Описание и введите 13" в качестве описания этого кода.
- Добавьте следующие значения кодов:
Код Описание 10
10"
8
8"
6
6"
4
4"
3
3"
2.25
2 1/4"
2
2"
1.5
1 1/2"
1.25
1 1/4"
1
1"
0.75
3/4"
-9
Неизвестно
- Нажмите OK, чтобы применить изменения и закрыть диалоговое окно Свойства базы данных.
Домен был добавлен в базу геоданных.
Теперь вы укажите свойства домена. Эти свойства включают в себя тип поля, к которому может быть назначен домен, тип домена – диапазон или кодированных значений, правила слияния и разбиения, и допустимые значения для домена.
Интервальный домен описывает допустимый диапазон значений поля, а домен кодированных значений описывает набор допустимых значений поля. В данном случае вы создадите новый домен кодированных значений.
Все домены также имеют настройки правил разбиения и слияния. Когда объект разбивается или сливается, ArcGIS обращается к этим правилам, чтобы определить значения для определенных атрибутов результирующего объекта или объектов.
Введите допустимые значения или коды для домена кодированных значений, и для каждого кода создайте описание его значения, понятное пользователю. Как вы увидите позднее в упражнениях, ArcMap использует понятные другим пользователям описания, а не коды для значений полей объектов, для которых назначены домены кодированных значений.
Создайте подтипы и назначьте значения по умолчанию и домены
Теперь вы создадите подтипы для объектов в классе объектов Laterals и назначите для каждого подтипа значения по умолчанию и домены для полей. При создании подтипов необязательно все объекты труб должны иметь одинаковые значения по умолчанию, домены или правила подключения, с которыми вы познакомитесь дальше в упражнениях.
- Дважды щелкните на наборе классов Water в базе геоданных Montgomery, чтобы открыть его.
- Щелкните правой кнопкой мыши класс объектов Laterals и выберите Свойства.
Откроется диалоговое окно Свойства класса пространственных объектов.
- Перейдите на вкладку Подтипы.
- В раскрывающемся списке Поле подтипа выберите TYPECODE.
- Щелкните поле Описание справа от кода подтипа 0 на панели Подтипы и введите Неизвестно для его описания.
- На панели Значения по умолчанию и домены щелкните поле Значение по умолчанию рядом с полем H_CONFID и введите 0 в качестве его значения по умолчанию.
- Введите 0 в качестве значения по умолчанию для полей DepthBuried и RecordedLength.
- Для полей WNM_TYPE и PWTYPE в качестве значения по умолчанию введите WUNKNOWN.
- Щелкните поле Значение по умолчанию рядом с полем DIAMETER и введите 8 в качестве значения по умолчанию.
- Щелкните раскрывающийся список Домен для поля DIAMETER и выберите LatDiameter, чтобы использовать этот атрибутивный домен по умолчанию для подтипа Unknown.
- Щелкните поле MATERIAL и введите DI в качестве значения по умолчанию.
- Выберите пункт Material в раскрывающемся списке Домен для поля MATERIAL.
- Добавьте следующие подтипы:
Код подтипа Описание 1
Ответвления гидранта
2
Пожарные отводы
3
Сервисные ответвления
- Задайте значения по умолчанию и домены для полей DepthBuried, RecordedLength, DIAMETER, и MATERIAL для каждого из трех новых подтипов таким же образом, как вы сделали это для первого подтипа Unknown.
- Для подтипа Ответвления гидранта (Hydrant laterals) настройте значение по умолчанию для полей WNM_TYPE и PWTYPE как WHYDLIN.
- Для подтипа Пожарные отводы (Fire laterals) настройте значение по умолчанию для полей WNM_TYPE и PWTYPE как WFIRELIN.
- Для подтипа Сервисные ответвления (Service laterals) настройте значения по умолчанию для полей WNM_TYPE и PWTYPE как WSERVICE.
- Щелкните раскрывающийся список Подтип по умолчанию и выберите пункт Сервисные ответвления (Service laterals), чтобы установить его как подтип по умолчанию.
- Нажмите ОК.
Теперь вы настроите поле подтипа для этого класса объектов. Поле подтипа содержит значения, которые указывают на то, к какому подтипу принадлежит объект.
Теперь вы добавите коды подтипов и их описания.
Когда вы добавляете новый подтип, вы назначаете значения по умолчанию и домены для некоторых полей.
Когда, с помощью среды редактирования ArcMap, вы будете добавлять новые объекты в класс объектов, для которого настроены подтипы, в случае, когда вы не укажете целевой подтип, объектам будет присвоен подтип по умолчанию. Когда вы добавите все подтипы в класс объектов, вы можете выбрать подтип по умолчанию из введенных вами подтипов.
Вы добавили поведение к базе геоданных с помощью добавления доменов и создания подтипов.
Теперь вы добавите дополнительное поведение базы геоданных с помощью создания отношений.