Tutorial: Performing web editing using data from an enterprise geodatabase
Web-based editing allows a larger group of people to add to and improve on your data. These include field-workers, analysts in other departments of your company, or perhaps even crowdsourced volunteers who may be able to make valuable contributions to your data given a simple editing interface.
In this tutorial, you'll create an enterprise geodatabase for the purposes of managing shoreline bird sightings submitted by volunteers on the web. The process of performing web editing is actually the final step of larger workflow. This tutorial will demonstrate how to do the following:
Set up an enterprise geodatabase using a database platform such as PostgreSQL, SQL Server, and Oracle.
Author a map document that supports web editing. This involves designing the map document to be compliant with the feature service. The feature service allows users to add and edit bird sightings in your enterprise geodatabase over the web. This is a key component to any web editing workflow.
Prepare your enterprise geodatabase for publishing to ArcGIS Server. This involves connecting to ArcGIS Server and registering your database with the server.
Publish your map document as a map service with the Feature Access capability enabled. This creates a feature service endpoint through which clients, such as a web application, can access and edit the bird sightings in your map.
Consume the feature service in a web application. In this tutorial, you'll use the ArcGIS.com map viewer to quickly edit, update, and delete bird sightings in your map.
Before beginning this tutorial
If you've just installed ArcGIS Server, consider reading the following before you begin this tutorial:
- For details on how to configure your ArcGIS Server site, see the Getting started after install section of the help.
- If you are new to enterprise geodatabases and database management, see A quick tour of administering geodatabases.
- If you don't have any prior experience with feature services, see What is a feature service?
Set up an enterprise geodatabase
Feature services require an enterprise (ArcSDE) geodatabase. That's because enterprise geodatabases are designed to be edited simultaneously by multiple users, which is the situation you'll encounter in this tutorial. ArcSDE supports a variety of database platforms, such as PostgreSQL, SQL Server, and Oracle.
For the purposes of this tutorial, you'll need to set up an empty enterprise geodatabase to store the features you create and edit. If you've already installed a database platform compliant with ArcSDE and have an empty geodatabase set up, skip ahead to the next section. If you don't, you'll need to create a new enterprise geodatabase by installing an appropriate database platform on your machine. Before doing so, make sure that your operating system and license level of ArcGIS Server and ArcGIS for Desktop support the database platform you want to install. For more information on system and licensing requirements, see the ArcGIS 10.1 for Server functionality matrix or contact your Esri representative.
The following topics describe the installation process for each database platform. They also include links to ancillary topics that describe how to create a new enterprise geodatabase and properly configure it for use within your organization. Once you have installed the appropriate database platform and created a new geodatabase, move on to the next section in this tutorial.
Create a new database user
Once you've created an empty enterprise geodatabase, you'll need to create a new database user to manage your edits. To do this, you'll need to first connect to your database, create a new database user, then reconnect to the database as the new user.
Connect to the database and create a new user
- In ArcCatalog or the Catalog window in ArcMap, expand the Database Connections folder and double-click Add Database Connection .
- On the Database Connection dialog box, choose the type of database with which you want to connect from the Database Platform drop-down list.
- Enter the appropriate database properties and authentication credentials to connect to the database. If you need help, see Database connections in ArcGIS for Desktop to learn how to enter the correct information to connect to your database.
- Click OK. The connection to your database appears in the Database Connections node .
- Right-click your new database connection and choose Administration > Add User. This launches the Create Database User geoprocessing tool.
- On the Create Database User dialog box, enter a new database user name and database user password, for example, User: editor, Password: tutorial.
- Click OK. The new user is created in the database.
Reconnect to the database as the new user
- Remaining in ArcCatalog or the Catalog window in ArcMap, expand the Database Connections folder and double-click Add Database Connection .
- On the Database Connection dialog box, enter the authentication credentials for the new user you created in the previous section.
- Click OK. You are now connected to the database as the new user.
- In the Database Connections folder , delete the first connection you established to your database. This will help eliminate confusion when specifying your database connection file later in the tutorial.
Author a map document to support feature services and web editing
After you've set up your enterprise geodatabase, you can begin the work of authoring a map document to support the feature service you'll use for web editing.
In this section of the tutorial, you will do the following:
- Create an attribute domain to enforce data integrity
- Create a feature class to represent bird sightings
- Create feature attachments so users can add external media to their bird sightings
- Define layer renderer and symbology
- Add a basemap for context
- Add bird sightings to your map
To get started, follow the steps in the sections below.
Create an attribute domain
To enforce data integrity when editing, you'll configure an attribute domain to limit the sightings added to your database to a few specific bird types.
- Start ArcMap, open a new empty map document, then save the map document. The map document does not have to be saved in a location that is visible to the account running ArcGIS Server.
- In the Catalog window, expand the Database Connections folder .
- Right-click your database connection and choose Properties .
- On the Database Properties dialog box, click the Domains tab.
- In the Domain Name field, click the first cell and type Type.
- In the Description column next to the domain name, click the first cell and type Bird Type.
- In the Domain Properties section, click the cell next to Field Type and choose Long Integer.
- Click the cell next to Domain Type and choose Coded Values.
- In the Coded Values section, click the first cell under Code and type 0.
- In the Description column next to the code, click the first cell and type Alcid/Pelagic.
- Enter the remaining bird types in the Coded Values section from the list below:
Code
Description
1
Diving Bird
2
Gull/Tern
3
Raptor
4
Shorebird
5
Wading Bird
6
Waterfowl
7
Unknown
- Click OK.
Create a feature class
In this section of the tutorial, you'll create a point feature class that will represent the various types of birds in your bird sightings geodatabase. This includes defining the spatial reference of the feature class and assigning your domain to a new field in the feature class table. To get started, follow these steps:
- In the Catalog window, right-click your database connection and choose New > Feature Class.
- On the New Feature Class dialog box, type shoreline_birdsightings in the Name field.
- From the Type drop-down list, choose Point Features. Click Next.
- In the coordinate system search box, type web mercator (auxiliary sphere) and click Search .
- In the results list, choose WGS 1984 Web Mercator (auxiliary sphere). This is the same coordinate system used by ArcGIS Online and will allow you to seamlessly overlay your feature service with ArcGIS basemap services. Click Next.
- In the XY Tolerance panel, accept the defaults and click Next.
- In the Configuration Keyword panel, accept the defaults and click Next.
- In the Field Properties panel, in the Field Name column, click the cell below SHAPE and type TYPE.
- In the Data Type column, click the cell below Geometry and choose Long Integer.
- Edit the properties of the field by clicking the cell to the right of Domain and choosing Type. This specifies that the field will only accept the values defined in the Type domain you created earlier in the tutorial.
- In the Field Name column, click the cell below the TYPE field and type COMMENTS.
- Specify the data type of the COMMENTS field to be Text.
- Click Finish.
Your feature class is created and added to the table of contents automatically.
Create feature attachments
In this section, you'll add feature attachments to your feature class. An attachment is a media file, such as an image, PDF, or video, that can be associated with a feature when it is created or edited. For example, when a user adds a shoreline bird sighting to the database, they can attach a photograph of the bird for additional context. When the feature is clicked, the attachment is displayed.
- In the Catalog window, expand the connection to your enterprise geodatabase.
- Right-click the shoreline_birdsightings feature class and choose Manage > Create Attachments.
ArcMap adds a new table to contain the attached files and a relationship class to manage the link between the features and their attachments.
Define layer renderer and symbology
In this section, you'll define a layer renderer and symbology for the various bird types in your database. The way you symbolize your features is important, since features are displayed on the web using the symbology defined in the map document.
- In the ArcMap table of contents, click List by Drawing Order .
- Right-click the shoreline_birdsightings feature class and click Properties .
- On the Layer Properties dialog box, click the Symbology tab.
- On the Show dialog box, click Categories > Unique values. This specifies that you will use a unique value renderer for all the features in your database.
- In the Value Field drop-down list, choose type.
- Click Add All Values. Each bird type is added to the list.
- Uncheck the check box next to the <all other values> symbol.
- Double-click the symbol next to the Alcid/Pelagic bird type.
- On the Symbol Selector dialog box, type alcid in the search field and click Search .
- Select the Alcid/Pelagic Bird symbol and increase its size to 25.
- Click OK. The symbol is applied to the Alcid/Pelagic bird type.
- Based on the following criteria, use the symbol search to specify the symbology for the remaining bird types:
- When you're finished specifying the symbology, click OK on the Layer Properties dialog box. The symbology is displayed in the ArcMap table of contents.
Bird type | Search criteria | Symbol | Size |
---|---|---|---|
Diving Bird | diving bird | 25 | |
Gull/Tern | tern | 25 | |
Raptor | raptor | 25 | |
Shorebird | shorebird | 25 | |
Wading Bird | wading bird | 25 | |
Waterfowl | waterfowl | 25 | |
Unknown | question mark (In the results list, choose the ESRI_Optimized style.) | 25 |
Add a basemap for context
For context, you'll add a basemap to your map document from ArcGIS Online.
- From the main menu in ArcMap, click File > Add Data > Add Basemap.
- Choose Light Gray Canvas as the basemap and click Add. The basemap is added to your map display.
- Zoom in to an area of interest, for example, a familiar coast or shoreline, and save your map document.
Add features to your map
Now that you've symbolized your features appropriately and added a basemap for context, you'll set up the proper editing environment and add features to your map.
- In ArcMap, display the Editor toolbar by choosing Customize > Toolbars > Editor from the main menu.
- On the Editor toolbar, click Editor > Options.
- On the Editing Options dialog box, click the Versioning tab.
- Since the data in your geodatabase is nonversioned, uncheck Edit a version of the database with the ability to undo and redo. Disabling this option allows you to edit data that is nonversioned.
- Click OK.
- On the Editor toolbar, click Editor > Start Editing. A default feature editing template is created based on the symbology of the editable layers in your map document. You'll use this feature template in the next step to add features to your map.
- On the Editor toolbar, click Create Features .
- In the Create Features window, select a bird type and add it to the map.
- On the Editor toolbar, click Attributes .
- In the Attributes window, add a comment and attachment to the feature you created. You can search the web for a picture of the bird you chose, save it as an image, then add it as an attachment.
- In the table of contents, right-click the shoreline_birdsightings feature class and choose Open Attribute Table.
- In the Table window, verify that your feature and comments are included in the table. Close the table when you are finished.
- Repeat steps 7–12 to add another bird sighting to your map.
- On the Editor toolbar, click Editor > Stop Editing. When prompted to save your edits, click Yes.
- Save your map document.
Prepare your enterprise geodatabase for publishing
Now that you've created and edited your map document, you're ready to prepare your enterprise geodatabase for publishing. To do so, you'll need to do the following:
- Remove the basemap layer
- Connect to ArcGIS Server
- Register your database with the server
To get started, follow the steps in the sections below.
Remove the basemap layer
- In the ArcMap table of contents, right-click the basemap and choose Remove.
- Save your map document.
Connect to ArcGIS Server
- In the Catalog window in ArcMap, expand the GIS Servers node.
- Double-click Add ArcGIS Server .
- Choose Publish GIS services and click Next.
- For Server URL, type the URL of the ArcGIS Server site you want to connect to. The default is http://myserver:6080/arcgis. If you or your server administrator installed the ArcGIS Web Adaptor, the URL will vary depending on the Web Adaptor configuration. See Making a publisher connection to ArcGIS Server in ArcGIS for Desktop for additional URL examples.
- In the Server Type drop-down list, make sure ArcGIS Server is selected.
- For the purposes of this tutorial, accept the default staging folder location.
- If your server administrator has enabled security for your site, enter your user name and password. Click Finish.
A publisher connection to ArcGIS Server is created in the GIS Servers node.
Register your database with ArcGIS Server
Since your map document references data residing in an enterprise geodatabase, you'll need to register the enterprise geodatabase with ArcGIS Server. Registration provides ArcGIS Server knowledge about the location of your enterprise geodatabase and the data referenced by your map document. This helps you validate that you're ready to publish.
- In the Catalog window, right-click your publisher connection to ArcGIS Server and select Server Properties.
- On the ArcGIS Server Properties dialog box, next to the Registered Databases panel, click Add .
- On the Register Database dialog box, enter a unique name for the registered database. Names can be alphanumeric and contain spaces, for example, Shoreline Bird Sightings GDB.
- Next to the Publisher database connection section, click Import.
- On the Browse for a Database Connection dialog box, click the Look in drop-down list and choose Database Connections.
- Select the connection to your database and click Select.
- In the Server database connection section of the Register Database dialog box, make sure the check box next to Same as publisher database connection is enabled. This specifies that both ArcMap users and web users accessing the feature service can view and manipulate the data in the bird sightings geodatabase simultaneously. For more information, see About registering your data with the server.
- Click OK. Your enterprise geodatabase is registered with the server and appears on the Registered Databases dialog box.
- Click OK to close the ArcGIS Server Properties dialog box.
Publish a map service with feature access enabled
Now that you've done the work of preparing your database, you can publish your map document with the Feature Access capability enabled. This creates a feature service endpoint to your map service through which clients, such as a web application, can access and edit the features in your map.
To publish your map document with the Feature Access capability enabled, follow these steps:
- From the main menu in ArcMap, choose File > Share As > Service.
- In the Share as Service window, choose Publish a service. Click Next.
- In the Publish a Service dialog box, choose the publisher connection to ArcGIS Server you set up earlier in the tutorial.
- By default, the name of the map document dictates the service name. Instead of using the default, type Shoreline_BirdSightings. Click Next.
- By default, services are published to the root folder (root) of ArcGIS Server. Accept the default location and click Continue.
The Service Editor dialog box is displayed. Use Service Editor to choose what users can do with your feature service and take fine-grained control of how the server will expose your feature service.
- Click the Capabilities tab.
- By default, mapping and KML are enabled. Choose Feature Access. Enabling this option creates an associated feature service with your map service that allows clients to perform feature editing over the web.
- In the left pane of the Service Editor dialog box, click Feature Access and review the URLs, operations, and properties enabled for your feature service. For the purposes of this tutorial, accept the defaults and continue.
- In the left pane of the Service Editor dialog box, click Item Description and enter the following summary and tags for your service:
- Summary: The Shoreline Bird Sightings feature service allows users to add common shoreline bird sightings to a map, attach photographs to sightings, and input comments.
- Tags: shoreline, bird, sighting
- Click Publish .
Your feature service is published to ArcGIS Server. When the publishing process completes, you are ready to consume your shoreline bird sightings feature service in a web application.
Consume the feature service in a web application
In this section of the tutorial, you'll use the ArcGIS.com map viewer to add, update, and edit features in your bird sightings enterprise geodatabase over the web. The map viewer is hosted on ArcGIS.com and is deployable directly through the ArcGIS Server Service Directory. It does not require any configuration or programming work to get the map viewer up and running.
To get started, follow these steps:
- Open a web browser and navigate to the ArcGIS Server Services Directory. Typically, this is located at http://<server name>:6080/arcgis/rest/services. You can also access the Services Directory by opening the shortcut installed with ArcGIS Server.
- In the services list, click Shoreline_BirdSightings (FeatureServer).
- On the Shoreline_BirdSightings (FeatureServer) page, the bird sightings feature class is listed, as well as the feature service's supported operations. Review these parameters and click View In: ArcGIS.com Map. A new window (or tab) opens, displaying the ArcGIS.com map viewer. The map viewer display is zoomed to the feature you added to your geodatabase previously in the tutorial.
- At the top of the map viewer, click Edit. The bird types you symbolized appear within the Add Features dialog box. Take some time to pan and zoom, add features to the map, delete features, modify feature geometry, and add attachments. You can also switch the basemap layer to more appropriately complement your area of interest.
- Verify that edits to your features are reflected in your enterprise geodatabase. You can do this by switching back to your ArcMap document and refreshing the map display. The features you added to your web map appear in the map display.Tip:
You can also review edits by opening the attribute table of your feature layers in ArcCatalog or the Catalog window in ArcMap.
- Optionally, save the web map.
Further reading
Now that you've successfully tested your feature service using the ArcGIS.com map viewer, you might want to consider how you can use and share your feature service in other ArcGIS clients. For example:
- In ArcGIS Online, you can create a customized web editing application using the ArcGIS.com application templates. These templates can be deployed on your organization's web server. For more information, see the Sharing content section of the ArcGIS.com Help.
- The ArcGIS Viewer for Flex and ArcGIS Viewer for Silverlight are configurable web applications that support web editing. Without programming, you can fully customize these applications to work with your feature service and deploy them on your organization's web server.
- The ArcGIS web APIs for JavaScript, Flex, and Silverlight offer the most advanced web editing capabilities and customization options. If you're comfortable programming using any one of these APIs, you can create a rich editing experience for your users on the web by utilizing a feature service identical to the one you created in this tutorial.
Keep in mind that web-based editing allows external users to add to and improve on your data. By exploring one or all of the ArcGIS clients listed above, you give yourself additional options that can help you tailor your editing scenario for a specific purpose, goal, or organizational strategy.