Gary MacDougall Ismael Chivite › library › userconf › dev...Building Web Editing Applications...
Transcript of Gary MacDougall Ismael Chivite › library › userconf › dev...Building Web Editing Applications...
-
Building Web Editing Applications with ArcGIS
10.1 for Server Gary MacDougall
Ismael Chivite
-
Agenda
• The basics of Web Editing in ArcGIS Server • Web Editing scenarios • Typical Server Configurations • Q&A
-
iPhone Handhelds
And Tablets
Web Browsers
Desktop
Feature Service
Feature Services in ArcGIS From simple sketching to sophisticated web editing
-
1
What is a Feature Service?
• Added in ArcGIS 10 • Designed for web editing
- Push changes into the geodatabase over the internet
• Also excellent for querying - Fetch geometries and attributes
- Client renders features (Thematic mapping, maptips…)
• Stateless, quick, RESTful service
Geodatabase
Query Geometry Attributes
Feature Service
Client renders features
2
3
How Feature Services work? (Simplified)
4 Add Delete Update
-
What are Feature Templates?
• A shortcut to the things that people edit • Feature Template defines:
- Symbol
- Editable and read-only attributes
- Default values
- Preferred drawing mode
• Authored in ArcMap, used by all clients • Structured data collection with an intuitive
user experience
-
The Services Directory view
• of your Feature Service
Your Map Service
It’s Feature Service
Templates
-
How to create a web editing application?
Prepare your data
and templates
Create Feature Service
Use\Create Application
-
Feature Service Basics Demo
• Authoring the Map and Editing Templates • Publishing the service
• Using it
-
Agenda
• The basics of Web Editing in ArcGIS Server • Web Editing scenarios • Typical Server Configurations • Q&A
-
Web Editing Scenarios
• Attachments • Editor tracking
• Ownership Based Data Access • Handling complex symbology/geometries
• Disable geometry edits • Editing versions
• Sophisticated Web Editing
-
Web Editing Scenarios
• Attachments • Editor tracking
• Ownership Based Data Access • Handling complex symbology/geometries
• Disable geometry edits • Editing versions
• Sophisticated Web Editing
-
Web Editing Scenarios
• Attachments • Editor tracking
• Ownership Based Data Access • Handling complex symbology/geometries
• Disable geometry edits • Editing versions
• Sophisticated Web Editing
-
Feature Service usage web editing patterns I
• Render features in the client (Feature Layer)
• Fetch all at once (Snaphsot mode) • Or as needed (On demand mode)
• Subset of ArcGIS symbology • No more than a few hundred features in
display* • Careful with large polys/polylines • Take advantage of maptips (popups)
1
Geodatabase
Query Delete Add Update
Geometry Attributes
Client renders features
2
3
Render features client-side
* Be smart about using scale dependencies, generalize, filter…
Feature Service
-
Feature Service usage web editing patterns II
• Render features in the server (Map service)
• Refresh map after every update • Features being edited displayed in
client • Through FeatureLayer Selection
mode
• Full symbology • Many and complex features • Use MSDs whenever possible
1
Geodatabase
Get Feature to be updated
& render
Get Map
Feature Service
Commit change
2
3
Map Service
4 Get Map Again
Render features server-side
Rendering features server-side
-
Web Editing Scenarios
• Attachments • Editor tracking
• Ownership Based Data Access • Handling complex symbology/geometries
• Disable geometry edits • Editing versions
• Sophisticated Web Editing
-
Web Editing Scenarios
• Attachments • Editor tracking
• Ownership Based Data Access • Handling complex symbology/geometries
• Disable geometry edits • Editing versions
• Sophisticated Web Editing
-
Editing Widgets in ArcGIS Web Mapping APIs
Template Picker
Template picker and edit toolbar
Attachment editor and Attribute Inspector
Utility objects for speeding up custom editing apps
-
Sophisticated Web Editing
http://maps.esri.com/AGSJS_Demos/CitizenService/SubmitRequest_Naperville.html
-
What is the Geometry Service?
• An ArcGIS Server service for geometry manipulation
• Enhanced in ArcGIS 10 & 10.1: • Offset, Trim/Extend, Reshape, Auto-
Complete • Cut, Difference, Intersect, Union
• REST interface only
• Use in combination with Feature Service • To aid in editing workflows • Cut, Reshape… • Also validating business rules!
Web Browser
Geodatabase
Feature Service
Geometry Service
http://184.72.245.153/Wildfire/http://184.72.245.153/Wildfire/
-
What are Server Object Extensions?
• That’s how you extend ArcGIS Server • With new web services
• To access fine grained ArcObjects • Implement business logic on your server • Accessible via REST and SOAP
• Multiple applications for editing • Validating topology • Rebuilding network datasets • Implementing validation rules
Web Browser
Geodatabase
Feature Service
Your Service
-
The challenge is the user experience
• Adding many tools is an easy and often unnecessary part
• Build focused editing apps • The necessary tools, no more • The workflow drives the design, not the opposite!
• Start by selecting the right client • Do not reinvent the wheel • Do not push the technology beyond its comfort level • Or your users!
• Develop if needed
-
Internet Editing for ArcGIS Desktop tool For sophisticated editing or ‘disconnected’ scenarios
• A Map Service that you can edit from Desktop
Enterprise Geodatabase
ArcGIS Desktop
Check-in/Check-out Geodatabase Replication
-
Summary
• ArcGIS Server 10 features built-in web editing capabilities
• Enabling many exciting applications - Crowd sourcing, geocollaboration, web editing…
• New Feature Service • Out of the box editing clients
- ArcGIS.com Viewer - ArcGIS Viewer for Flex
• ArcGIS Web Mapping APIs • Geometry Service and Server Object Extensions
-
Agenda
• Overview of Editing in ArcGIS • The basics of Web Editing in ArcGIS Server 10 • Advanced Web Editing scenarios • Typical Architectures • Q&A
-
Editing native spatial types in databases
• Feature service against non versioned data • Last-in wins • Changes directly applied on database • Use Spatial Data Server
Web Browser
Geodatabase
Not Versioned Data
Feature Service
-
Versioned editing
• Feature service on a particular ‘web edits session’
• Last-in wins • Updates from feature service validated
before posting to master version • Typical in intranet or ‘safe’ environments
where contributions are not trusted
Web Browser
Geodatabase
Edits on version X
Feature Service
Periodic validation And Post
-
Isolated editing
• Web edits against an isolated geodatabase (in DMZ or off-site deployment)
• Changes validated and synchronized to geodatabase
• Crowd-sourced data (internet)
Web Browser
Contribution Geodatabase
Edits on version X
Feature Service
Periodic validation And Post Replication
Contribution Analysis
Geodatabase
Periodic Synchronization
-
Agenda
• Overview of Editing in ArcGIS • The basics of Web Editing in ArcGIS Server 10 • Advanced Web Editing scenarios • Typical Architectures • Q&A
-
Common questions
• Can I edit geometric networks? • Parcel fabrics and topologies? • XY Event and Route layers? • Where is undo-redo? • Snapping? • Can I edit features with Zs and Ms? • Can I edit a user-defined version? • How are version conflicts handled? • How do I prevent user A from deleting features from
user B? • …
-
Building Web Editing Applications with ArcGIS 10.1 for ServerAgendaSlide Number 3What is a Feature Service?What are Feature Templates?The Services Directory viewHow to create a web editing application?Feature Service Basics DemoAgendaWeb Editing ScenariosWeb Editing ScenariosWeb Editing ScenariosFeature Service usage web editing patterns IFeature Service usage web editing patterns IIWeb Editing ScenariosWeb Editing ScenariosEditing Widgets in ArcGIS Web Mapping APIsSophisticated Web Editing�What is the Geometry Service?What are Server Object Extensions?The challenge is the user experienceInternet Editing for ArcGIS Desktop toolSummaryAgendaEditing native spatial types in databasesVersioned editingIsolated editingAgendaCommon questionsSlide Number 30