Creative Commons Licence

ArcGIS SOS Adapter - Contributor documentation

Here you can find the information you need in order to add or improve features for the SOS Client for ArcGIS desktop.

Contributor Set-up

The language used for the adapter is C# targeting NET Framework 3.5 and the current features are being tested in ArcGIS for Desktop 10 and 10.1.

The development environment:
  • WIndows Vista Business 32 bit service pack 2
  • ArcGIS Desktop 10 service pack 5 (you can use the ).
  • ArcObjects SDK for NET Framework 10.0
  • SharpDevelop 4.3
  • TortoiseSVN 1.7
The adapter was ran sucessfuly in:
  • Windows 7 Home edition 64 bit
  • ArcGIS Desktop 10.1

Code Checkout

You can find the latest code here:

Create a SharpDevelop project

  • SharpDevelop.
  • TortoiseSVN.
  • ArcGIS Desktop 10 or 10.1.
  • ArcObjects SDK for NET Framework 10 or 10.1.
The process is quite simple:
  • Using Tortoise SVN checkout the code to your hard drive (for example "...\Documents\SharpDevelop Projects\ArcGIS-SOS-Adapter\trunk\" is a good place).
  • Open SharpDevelop and open the solution file "...\Documents\SharpDevelop Projects\ArcGIS-SOS-Adapter\trunk\arcgis-sos-adapter.sln".
  • Compile the solution.
  • Register the ArcGIS Components using the ESRIRegAsm utility:
    • arcgis-sos-adapter-gui.dll
    • ArcgisSosGetObservations.dll
Open a command window (as administrator) and find the utility. In ArcGIS 10, the ESRIRegAsm utility is at:

C:\Program Files\Common Files\ArcGIS\bin

An example registration command for ArcGIS 10 would be:
ESRIRegAsm.exe /p:desktop "c:\Users\alber\Documents\SharpDevelop Projects\ArcGIS-SOS-Adapter\trunk\arcgis-sos-adapter-gui\bin\Debug\arcgis-sos-adapter-gui.dll"
ESRIRegAsm.exe /p:desktop "c:\Users\alber\Documents\SharpDevelop Projects\ArcGIS-SOS-Adapter\trunk\ArcgisSosGetObservations\bin\Debug\ArcgisSosGetObservations.dll"

Common compiling problems

The most common error when compiling the solution are:
  • DLL registration fails: This is due to lack of privileges for replacing the compiled DLLs. WORKAROUND: Run your IDE as administrator.
  • The system connot find some files: The installer project is not able to find the needed files to build the installer. WORKAROUND: Build the whole solution a couple of times, eventually it finds the files.
  • ArcMap.exe does not exist: This is because the location of this file (and some others) differs among ArcGIS 10 and 10.1.
  • An enumeration member is not found: Some enumerations changed among ArcGIS Desktop 10 and 10.1. Be careful when using ArcObjects enumerations and please try to keep the compability. Updating ArcGIS Desktop cost money!.
  • The GUI and the GeoProcessing Tool are missing in ArcMap and ArcCatalog: The components are not registered with ArcGIS. Probably you forgot to use the ESRIRegAsm utility.


Solution structure

  • 52N-arcgis-sos-adapter: Solution folder.
  • arcgis-sos-adapter: Adapter's core components.
    • Config: Loging and SRS axis swap configuration files.
    • Exceptions: Classes for handling exceptions.
    • GeoDatabase: Classes representing the GeoDB and its tables.
    • geoDBModel: XML GeoDB schema.
    • Install: Self registration classes.
    • Manual: Manual files.
    • Models: Classes representing the XML elements of the responses to "GetCapabilities" and "GetObservation" requests.
    • Properties: Assembly information.
    • Toolbox: Contains a toolbox with some complementary GpTools.
    • Utils: Utility classes.
    • Xml
      • GetCapabilitiesResponse: Example responses.
      • GetObservation: Example request and responses.
      • Model: XML model of an agnostic SOS Capabilities document.
      • Xslt: Xml transformation file.
  • arcgis-sos-adapter-gui: Project containing the adapter's GUI related stuff.
    • Config: Logging and default SOS server urls.
    • Gui: ArcGIS graphic user interface classes.
    • Install: Self registration classes.
    • Properties: Assembly information.
    • Resources: Icons and logos.
  • ArcgisSosGetObservations: Project containing the GetObservation GeoProcessing tool stuff.
    • Config: Logging configuration
    • Properties: Assembly information.
  • InstallAgSosAdapter: Project containing the adapter's installer.
  • testing:Project containing some NUnit code classes.


Previous and actual version bugs


Active developers

  • Matthes Rieke


  • Alber Sanchez



Creative Commons Licence
This work is licensed under a Creative Commons Attribution 3.0 Unported License.
Topic revision: r5 - 11 Jun 2013, EikeJuerrens
Legal Notice | Privacy Statement

This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Wiki? Send feedback