Wenn Sie einen Geoverarbeitungs-Task definieren, der Feature- oder Tabelleneingaben aufweist, ist eine der zur Auswahl stehenden Eingabemodus-Optionen im Service-Editor ein Benutzerdefinierter Wert. Wenn Sie diesen Eingabemodus auswählen, wird, wie nachstehend dargestellt, im Bereich Schema eine Liste von Feldern mit Aliasnamen und Typen angezeigt. Diese Liste von Feldern ist dieselbe wie bei dem Layer oder der Tabelle, die Sie als Eingabe für das Werkzeug verwendet haben, welches das Ergebnis erzeugt hat.
Wenn die Ausgabe des Tasks eine Feature-Class oder ein Layer oder eine Tabelle ist, wird im Service-Editor zusätzlich das Schema der Ausgabedaten angezeigt. Wie bei Eingabe-Features und -Tabellen stammt das Schema der Ausgabe aus der vom Werkzeug erstellten Ausgabe.
Clients verwenden das veröffentlichte Schema zum Erstellen von Features oder Zeilen, die an den Task übergeben werden. Entfernen Sie überflüssige Felder, und fügen Sie eine Dokumentation hinzu, sodass Clients verstehen können, welche Felder und Feldwerte für den Task erforderlich sind.
Der Geometrietyp der Feature-Eingabe wird als Teil des Schemas betrachtet, da das Shape-Feld immer in der Feature-Eingabe enthalten ist und sein Feldtyp immer mit dem Geometrietyp übereinstimmt.
Entfernen von Feldern aus einem Eingabeschema
Das Schema kann nicht im Service-Editor geändert werden. Sie müssen das Schema des Eingabe-Layers oder des Datasets ändern, das zum Erstellen des zu veröffentlichenden Ergebnisses verwendet wurde; oder verwenden Sie einen anderen Layer bzw. ein anderes Dataset, um ein neues Ergebnis zu erstellen.
Wenn Sie einen Feature-Layer oder eine Tabellensicht aus dem Inhaltsverzeichnis von ArcMap als Parametereingabe verwendet haben, können Sie mithilfe der unten angegebenen Schritte Felder entfernen.
- Klicken Sie im Service-Editor mit der rechten Maustaste auf den Task und dann auf Entfernen.
- Klicken Sie im Inhaltsverzeichnis von ArcMap mit der rechten Maustaste auf den Layer oder die Tabelle, und wählen Sie Eigenschaften aus.
- Klicken Sie auf die Registerkarte Felder.
- Deaktivieren Sie in der Liste Wählen Sie die sichtbaren Felder aus die Felder, die Sie aus dem Schema entfernen möchten.
- Klicken Sie auf OK.
- Klicken Sie im Service Editor auf Ergebnis hinzufügen, um das in Schritt 1 entfernte Ergebnis hinzuzufügen.
Wenn der Service-Editor das Ergebnis hinzufügt, wird das Schema aus dem soeben geänderten Layer gelesen.
Wenn Sie den Pfad zur Feature-Class oder Tabelle auf der Festplatte als Eingabe für den Werkzeugparameter verwendet haben (statt dem Namen eines Layers oder einer Tabellensicht im Inhaltsverzeichnis), können Sie überflüssige Felder in der Feature-Class oder der Tabelle entfernen (z. B. mit dem Werkzeug Feld löschen) und das Ergebnis erneut freigeben. Sie sollten vor dem Löschen der Felder eine Kopie des Datasets erstellen. Eine bessere Möglichkeit ist das Erstellen eines Feature-Layers der Feature-Class oder einer Tabellensicht der Tabelle, indem Sie sie zu ArcMap hinzufügen, das Schema wie oben beschrieben ändern und das Werkzeug erneut mit dem Layer oder der Tabellensicht als Eingabe ausführen. Anschließend können Sie das neue Ergebnis freigeben.
Hinzufügen von Feldern
Um Felder zum Schema hinzuzufügen, müssen Sie den Service-Editor beenden, die neuen Felder zum Dataset hinzufügen (z. B. mit dem Werkzeug Feld hinzufügen) und ein Ergebnis zur Freigabe erstellen.
Feld-Aliasnamen
Bei einem Feld-Aliasnamen handelt es sich um einen alternativen Namen für ein Feld, der aussagekräftiger und benutzerfreundlicher als der Name des Feldes ist. Clients können den Aliasnamen zum Anzeigen und Bearbeiten verwenden. Der Aliasname kann nicht im Service-Editor geändert werden. Sie müssen den Alias im Dataset ändern, das zum Erstellen des zu veröffentlichenden Ergebnisses verwendet wurde.
- Beenden Sie den Service-Editor.
- Navigieren Sie im Fenster Katalog zum Dataset.
- Klicken Sie mit der rechten Maustaste auf das Dataset, und wählen Sie Eigenschaften aus.
- Klicken Sie auf die Registerkarte Felder.
- Wählen Sie das Feld aus, für das Sie einen Aliasnamen angeben möchten.
- Geben Sie im Abschnitt Feldeigenschaften den Alias für das Feld an.
- Wiederholen Sie dies für die anderen Felder, für die Sie einen Aliasnamen angeben möchten.
- Klicken Sie auf OK.
- Klicken Sie im Fenster Ergebnisse mit der rechten Maustaste auf das Ergebnis, und wählen Sie Freigeben als > Geoverarbeitungsservice aus. Sie müssen das Werkzeug nicht erneut ausführen.
Verwendung von Eingabeschemas durch Clients
Das Schema gibt den standardmäßigen Geometrietyp, Raumbezug und die von den Client-Anwendungen zu verwendenden Attribute an. Wenn Sie in ArcGIS Desktop einen Task verwenden, wird der Geometrietyp erzwungen – Sie können keine Features von einem anderen Geometrietyp angeben, aber es sind unterschiedliche Attribute zulässig.
Web-Clients, die mit ArcGIS API for JavaScript erstellt wurden, können teilweise definierte Feature-Sets für den Task bereitstellen. Wenn der Geometrietyp, der Raumbezug oder Felder im bereitgestellten Feature-Set fehlen, werden diese mit den im veröffentlichten Schema definierten Werten ausgefüllt. Stellt der Client ein vollständig definiertes Feature-Set bereit, wird dies unverändert übernommen.
Dokumentieren der Task-Anforderungen
Falls der Task die Einhaltung des Schemas erfordert, müssen Sie diese Anforderungen für die Clients dokumentieren. Wenn der Task beispielsweise nur mit Punkt-Features funktioniert oder ein bestimmtes Feld erforderlich ist oder bestimmte Feldwerte erwartet werden, dokumentieren Sie diese Anforderungen.
Weitere Informationen zur Dokumentation von Geoverarbeitungsservices und Tasks
Ausgabeschemas
Wenn die Ausgabe des Tasks eine Feature-Class, ein Feature-Layer, eine Tabelle oder eine Tabellensicht ist, wird im Service-Editor das Schema der Ausgabe angezeigt.
Es kommt häufig vor, dass sich dieses Schema je nach bereitgestellter Eingabe ändert – d. h. es ist dynamisch und nicht statisch. Beispiel: Das Werkzeug Near-Tabelle erstellen fügt optional die Felder NEAR_X, NEAR_Y und NEAR_ANGLE zu den Ausgabe-Features hinzu, basierend auf den Werten seiner Parameter Position und Winkel. Der von Ihnen veröffentlichte Task kann ähnlich wie das Werkzeug Near-Tabelle erstellen funktionieren, indem das Ausgabeschema je nach den vom Client eingestellten Parameterwerten unterschiedlich ist. Andere Werkzeuge (und Tasks, die aus diesen Werkzeugen erstellt werden) können abhängig von den vom Client eingestellten Parameterwerten andere Geometrietypen (Punkt, Linie oder Polygon) ausgeben.
Eingabeschemas basierend auf Feature-Sets und Record-Sets
Benutzerdefinierte Modelle und von Ihnen erstellte Skriptwerkzeuge können den Datentyp Feature-Set oder Record-Set für die Eingabeparameter verwenden. Mithilfe eines Feature-Sets können Sie Features interaktiv in ArcMap digitalisieren. Mit einem Record-Set können Sie interaktiv Zeilen zu einer Tabelle hinzufügen. Feature-Set- und Record-Set-Datentypen haben ihr eigenes Schema, das zur Definition des Task-Parameterschemas verwendet wird. Um das Schema des Task-Parameters zu ändern, müssen Sie das in den benutzerdefinierten Werkzeugen verwendete Feature-Set- oder Record-Set-Schema ändern. Weitere Informationen über Feature-Set- und Record-Set-Datentypen finden Sie unter folgenden Links:
ArcGIS Desktop-Clients
Es gibt bestimmte Aspekte eines Schemas, die nur für ArcGIS Desktop-Clients verfügbar sind und nicht für Web-Clients, die auf REST-APIs basieren, z. B. solche, die ArcGIS API for JavaScript verwenden.
Domänen mit codierten Werten
Attributdomänen sind Regeln, die einschränken, welche Werte für das Attributfeld gültig oder zulässig sind. Wenn ein Attributfeld im Schemaquellen-Dataset über eine Attributdomäne mit codierten Werten verfügt, werden diese codierten Werte in einer Dropdown-Liste für den Wert dieses Attributfeldes im Feature Set- oder Record Set-Steuerelement angezeigt.
Weitere Informationen zum Verwenden der Feature-Set- und Record-Set-Steuerelemente in ArcMap
Symbolisierung
Ein Feature-Schema enthält Symbolisierungsinformationen, auf die von ArcMap zugegriffen werden kann und die beim Digitalisieren von Features mit dem Feature-Set-Steuerelement verwendet werden.
Standardwert
Ein Feld in einem Dataset kann einen Standardwert haben, der bei der Erstellung eines Features oder einer Zeile angewendet wird. Führen Sie zum Festlegen eines Standardwerts für ein Feld die folgenden Schritte aus:
- Navigieren Sie im Fenster Katalog zum Dataset.
- Klicken Sie mit der rechten Maustaste auf das Dataset, und wählen Sie Eigenschaften aus.
- Klicken Sie auf die Registerkarte Felder.
- Wählen Sie das Feld aus, für das Sie einen Standardwert angeben möchten.
- Geben Sie im Abschnitt Feldeigenschaften einen Standardwert für das Feld an.
- Klicken Sie auf OK.