Краткая информация
Схема набора данных.
Обсуждение
Каждый выходной параметр типа класса пространственных объектов, таблица, растр или рабочая область имеет объект Schema. Только у выходных классов пространственных объектов, таблиц, растров и рабочих областей есть объект схемы, у других типов его нет. Объект Schema создается для вас при проверке инструмента геообработки. К схеме осуществляется доступ через объект 'параметр', и устанавливаются правила для описания выходных данных инструмента. После установки правил схемы в процессе проверки код внутренней проверки геообработки проверяет установленные правила и обновляет описание выходных данных.
Свойства
| Свойство | Описание | Тип данных | 
| additionalChildren (чтение и запись)  | Список Python с базами данных, добавляемыми в схему рабочей области.  | String | 
| additionalFields (чтение и запись)  | Указывает дополнительные поля для свойства fields. Помимо полей, добавленных при применении, в выходные данные можно добавить дополнительные поля.  | Field | 
| cellSize (чтение и запись)  | Установите размер ячейки, используемый, если значение cellSizeRule равно AsSpecified.  | Double | 
| cellSizeRule (чтение и запись)  | Определяет размер ячейки выходного набора растровых данных или сеток. 
  | String | 
| clone (чтение и запись)  | Если значение равно True, создается точная копия (клон) описания первого влияющего параметра. Значением по умолчанию является False.  | Boolean | 
| extent (чтение и запись)  | Установите экстент, используемый, если значение extentRule равно AsSpecified. Можно задать экстент в виде строки, разделенной пробелами, или объекта списка Python с четырьмя значениями. Последовательность такова: xmin, ymin, xmax, ymax.  | Extent | 
| extentRule (чтение и запись)  | Указывает, как осуществляется управление свойством экстента. 
  | String | 
| featureType (чтение и запись)  | Если значением featureTypeRule является AsSpecified, значение FeatureType используется для указания типа объекта выходных данных. 
  | String | 
| featureTypeRule (чтение и запись)  | Этот параметр определяет тип объекта выходного класса объектов. Это правило не влияет на выходные растровые данные или таблицы. 
  | String | 
| fieldsRule (чтение и запись)  | Определяет, какие поля будут у выходного класса объектов или таблицы. 
  | String | 
| geometryType (чтение и запись)  | Установите этот тип геометрии (Точка, Мультиточка, Полилиния или Полигон), если значение geometryTypeRule равно AsSpecified.  | String | 
| geometryTypeRule (чтение и запись)  | Этот параметр определяет тип геометрии (например, точка или полигон) выходного класса объектов. 
  | String | 
| rasterFormatRule (чтение и запись)  | Определяет формат выходных растровых данных, GRID или Img. По умолчанию используется Img, т. е. формат ERDAS IMAGINE.  | String | 
| rasterRule (чтение и запись)  | Определяет тип данных (integer или float) в выходных растровых данных. 
  | String | 
| type (только чтение)  | Тип схемы: объект, таблица, растр или контейнер (для наборов данных рабочих областей и объектов).  | String | 
Пример кода
В классе ToolValidator задайте схему выходного параметра в качестве первого входного параметра.
def initializeParameters(self):
    # Set the dependencies for the output and its schema properties. The two 
    # input parameters are feature classes.
    self.params[2].parameterDependencies = [0, 1]
    # Feature type, geometry type, and fields all come from the first dependency 
    # (parameter 0), the input features.
    self.params[2].schema.featureTypeRule = "FirstDependency"
    self.params[2].schema.geometryTypeRule = "FirstDependency"
    self.params[2].schema.fieldsRule = "FirstDependency"
    # The extent of the output is the intersection of the input features and 
    # the clip features (parameter 1).
    self.params[2].schema.extentRule = "Intersection"
    returnЗапросите схему выходного параметра конкретного инструмента с помощью функции GetParameterInfo.
import arcpy
toolname = "Buffer_analysis"
parameter_index = 1
# Get the schema of the tool parameter
schema = arcpy.GetParameterInfo(toolname)[parameter_index].schema
properties = ['additionalChildren', 'additionalFields', 'cellSize',
              'cellSizeRule', 'clone', 'extent', 'extentRule',
              'featureType', 'featureTypeRule', 'fieldsRule',
              'geometryType', 'geometryTypeRule', 'rasterFormatRule',
              'rasterRule', 'type']
# Walk through all schema properties and print out the value
for prop in properties:
    try:
        val = eval("schema." + prop)
        print("{:<18} : {}".format(prop, val))
    except (NameError, RuntimeError):
        # Properties unsupported by the parameter datatype will be ignored
        pass