Available the ESRI File Geodatabase API in Beta1 version

Editor
Jan 21, 2011 at 11:56 AM

Dear friends,

Since this last night is available the File Geodatabase API in BETA1.

You can download from the following link, using a ESRI Global Account.

http://resources.arcgis.com/content/geodatabases/10.0/file-gdb-download

The problem is that this api is in C++ and I don't know how can I do to use in C# or VB.NET, to incorporate to the DotSpatial project.

How can we do to port the C++ libraries to C# or VB.NET assemblies?

Thanks in advanced.

Francisco J.

Developer
Jan 21, 2011 at 2:01 PM
Edited Jan 21, 2011 at 5:46 PM

You'll need to make a wrapper CLR project and/or use PInvoke (Platform Invoke) to interface between DotSpatial's managed C# (.Net/Mono) code and the unmanaged C++ functionality you want to use in the File Geodatabase API source code or DLL.

If you have access to the source code for the API could potentially use SWIG to automatically generate the PInvoke wrapper for you (depending on the kind of parameters that need to be marshaled between managed and unmanaged code). SWIG is an interface compiler that connects programs written in C and C++ with languages such as Perl, Python, Ruby, and Tcl as well as C#. It works by taking the declarations found in C/C++ header files and using them to generate the wrapper code needed to access the underlying C/C++ code/Native compiled DLL's.

If you don't have access to the source code of the API but you have access to pre-built DLL's then you will need to use platform invoke to import and wrap calls to the unmanaged functions that are embedded in the API's DLL. Some more info on using unmanaged DLL's from C# can be found here.

Good luck - it can get tricky!

Developer
Jan 21, 2011 at 3:40 PM

If you are using something with just a handful of methods that you need to interact with, then an example of "PInvoke" as mentioned above would be:

using System.Runtime.InteropServices;<br/><br/><br/>[DllImport("mylib.dll")]

public
static extern int DoSomething ( int parm1, [MarshalAs(UnmanagedType.Bool)] bool parm2 ); Imports System.Runtime.InteropServices Declare Auto Function DoSomething Lib "mylib.dll" ( _ ByVal parm1 As Integer, _ <MarshalAsAttribute(UnmanagedType.Bool)> _ ByVal parm2 As Boolean ) As Integer

This is the sort of strategy that is used by the Positioning library, though you will find that you will also have to put a bunch of tags related to security in as well.  Sometimes it can't be helped though because you need to interact with dll files that you can't easily create a wrapper for, especially if they are part of System32 or something.

On the complete opposite side of the spectrum, if you have access to the source but are forbidden from using modern programming languages in connection with that source, one option is to open up the source in the original c++ programing library and use the wizard to create a COM wrapper for it.  I've technically never done this but it seems like something that would have a wizard.  In .Net you just turn on a boolean switch to register for COM, so I'm guessing it isn't that hard to register with com from VC6.0 or whatever the source code is.  Once your original C++ code is registered with COM it can be imported into almost anything without requiring the method by method imports as outlined above.  COM is not happy with change, however, and you only get to have one version registered on a machine at any one time.  So if this is a library that is already finished and will not be changing, COM is ok. 

If it is an active development project, but you have a lot of legacy c++ source files, you can start up a Visual C++ project, adding whatever lib references and existing source files you have and then creating a managed C++ library that acts as the go-between.  The strength of this is that your Visual C++ (.Net) project can actually reference C# projects with interfaces or whatever defined in them, and it can also reference your unmanged c++ lib files.  Personally I am not a big fan of the syntax with managed C++, but the trade off is you don't need to modify the syntax of your unmanaged source files. 

I have never used SWIG, so that seems like it's another tool that would work if you have the source.  There may be wizardly things that can happen in Visual C++ .Net that would help you create a wrapper automatically, but I haven't done much Visual C++ programming so I'm not all that sure what you would do exactly.

Ted

 

Developer
Jan 21, 2011 at 6:16 PM

Handy detail Ted - nice. It's great to have an opportunity to discuss Interop related things.

The PInvoke interface may be preferable to Microsoft's Managed C++ interface if portability between both Microsoft Windows and non-Microsoft platforms is required. PInvoke is part of the ECMA/ISO C# specification. It is also better suited for robust production environments due to the Managed C++ flaw called the Mixed DLL Loading Problem.

Some invaluable free Interop tools that have been of great assistance to me in the past are found elsewhere on CodePlex here under the "Managed, Native, and COM Interop Team" project in particular the aptly named P/Invoke Interop Assistant.

COM is limited to Microsoft platforms whereas Swig C# works equally well on non-Microsoft operating systems such as Linux, Solaris and Apple Mac using Mono and Portable.NET.


Editor
Jan 22, 2011 at 9:06 AM
Edited Jan 22, 2011 at 9:08 AM

Dear friends, many thanks.

I downloaded the API files and the source code isn't available, only have the exit functions and methos but it use custom classes for these methods, how can I reference this classes when I call DLLImport in my code and the parameters makes use this custom classes?

I think that it could be useful for interoperability options in DotSpatial.

Thanks in advanced.

Francisco J

Coordinator
Jan 22, 2011 at 2:40 PM

Francisco,

Since this API is new to all of us, you will have to learn it and then teach us! I do believe that an ESRI geodatabase data provider plugin for DotSpatial would be warmly welcome by many.

- Dan
--------
Daniel P. Ames Ph.D.
Idaho State University Dept. of Gesciences
dan.ames@isu.edu
--------
Sent from my Droid

On Jan 22, 2011 3:06 AM, "geofran80" <notifications@codeplex.com> wrote:
> From: geofran80
>
> Dear friends,I downloaded the API files and the source code isn't available, only have the exit functions and methos but it use custom classes for these methods, how can I reference this classes when I call DLLImport in my code and the parameters makes use this custom classes?I think that it could be useful for interoperability options in DotSpatial.Thanks in advanced.Francisco J
>
>
Developer
Jan 24, 2011 at 5:57 AM

If you don't have access to the source header files and the methods you wish to use are embedded in classes then you'll probably need to make a CLR project that wraps all the functionality you need (class instantiations etc) within public methods. You can then call these public CLR methods from your C# code.

Are you sure you the API distribution doesn't include header files?

Editor
Jan 24, 2011 at 6:19 AM
Edited Jan 24, 2011 at 6:20 AM

Dear tidyup,

The header files are available, but I don't find the way to call the functions, because I don't know how can I do to reference the geodatabase object in C# when It is a C++ object class.

 

Here put some sample code of a header file.

//
// GeodatabaseManagement.h
//

/// A set of functions for accessing, creating and deleting file geodatabases.
/// @file GeodatabaseManagement.h

#pragma once

namespace FileGDBAPI
{

class Geodatabase;

/// Creates a new file geodatabase in the specified location.
/// @param[in]    path The location where the geodatabase should be created.
/// @param[out]   geodatabase A reference to the newly-created geodatabase.
/// @return       A long integer indicating whether the method finished successfully.
EXT_FILEGDB_API long CreateGeodatabase(const std::wstring& path, Geodatabase& geodatabase);

/// Opens an existing file geodatabase.
/// @param[in]    path The path of the geodatabase.
/// @param[out]   geodatabase A reference to the opened geodatabase.
/// @return       A long integer indicating whether the method finished successfully.
EXT_FILEGDB_API long OpenGeodatabase(const std::wstring& path, Geodatabase& geodatabase);

/// Closes an open file geodatabase.
/// @param[in]    geodatabase A reference to the geodatabase.
/// @return       A long integer indicating whether the method finished successfully.
EXT_FILEGDB_API long CloseGeodatabase(Geodatabase& geodatabase);

/// Deletes a file geodatabase.
/// @param[in]    path The path of the geodatabase.
/// @return       A long integer indicating whether the method finished successfully.
EXT_FILEGDB_API long DeleteGeodatabase(const std::wstring& path);

};  // namespace FileGDBAPI

 

It will be a pleasure to colaborate with this, but maybe take me some time because I don't have knowledge about C++ interoperability in .NET.

Thanks.

Francisco J.

Developer
Jan 25, 2011 at 5:46 AM
Edited Jan 25, 2011 at 5:46 AM

If you have the headers then you may be able to use SWIG see the tutorial section "SWIG for the truly lazy" but even then it looks like your going to have some problems dealing with the classes returned by reference from the functions you showed in your example above.

There's no simple answer I'm afraid (AFAIK). I think your best bet is to do some background reading, take a look at the MSDN section "Managed Extensions for C++ Migration Guide" and this CodeProject article "Using Unmanaged C++ Libraries (DLLs) in .NET Applications" for a start.


Developer
Jan 25, 2011 at 7:23 PM

This blog may be of interest.

http://blogs.esri.com/Dev/blogs/geodatabase/default.aspx

Developer
Feb 8, 2011 at 8:56 PM

For now, work with this component is governed by this license:

 

ESRI Attribution and License Agreement

<form id="node-agreement-page" action="http://resources.arcgis.com/Resources2010/node/agreement/3193" accept-charset="UTF-8" method="post">

 IMPORTANT-READ CAREFULLY

UNLESS SUPERSEDED BY A SIGNED LICENSE AGREEMENT BETWEEN YOU AND ESRI, ESRI IS WILLING TO LICENSE SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION TO YOU ONLY IF YOU ACCEPT ALL TERMS AND CONDITIONS CONTAINED IN THIS LICENSE AGREEMENT. PLEASE READ THE TERMS AND CONDITIONS CAREFULLY. SOFTWARE, DATA, OR DOCUMENTATION WILL NOT BEGIN DOWNLOADING TO OR INSTALL ONTO YOUR COMPUTER SYSTEM UNTIL YOU HAVE MANIFESTED YOUR ASSENT TO THE TERMS AND CONDITIONS OF THE LICENSE AGREEMENT BY CLICKING "I accept the License Agreement" BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS AS STATED, THEN ESRI IS UNWILLING TO LICENSE SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION TO YOU, AND YOU SHOULD CLICK "I do not accept the License Agreement" BELOW AND RETURN THE PACKAGE TO ESRI OR ITS AUTHORIZED DISTRIBUTOR. SEE http://www.esri.com/legal FOR UPDATED TERMS THAT MAY APPLY TO FUTURE VERSIONS OF SOFTWARE, DATA, WEB SERVICES, AND DOCUMENTATION.

LICENSE AGREEMENT
(E204 04/22/2010)

This License Agreement is between you ("Licensee") and Environmental Systems Research Institute, Inc. ("ESRI"), a California corporation with a place of business at 380 New York Street, Redlands, California 92373-8100 USA.

ARTICLE 1- DEFINITIONS

Definitions. The terms used are defined as follows:

a. "Beta" means any alpha, beta, or prerelease Software, Data, Documentation, or Web Services.
b. "Data" means any ESRI or third-party digital dataset(s) including, but not limited to, geographic vector data coordinates, raster, reports, or associated tabular attributes licensed under this License Agreement.
c. "Documentation" means all printed and digital materials including, but not limited to, help files, user reference documentation, training documentation, or technical information and briefings.
d. "Samples" means sample code, sample applications, add-ons, or sample extensions of Software, Data, Documentation, or Web Services.
e. "Software" means all or any portion of ESRI's proprietary software technology accessed or downloaded from an ESRI authorized Web site or delivered on any media in any format including backups, updates, service packs, patches, hot fixes, or permitted merged copies.
f. "Term License" means license provided for use in a limited time period or on a subscription or transaction basis.
g. "Web Services" means software services or ESRI or third-party data provided by ESRI that perform geographic information system (GIS) functions, tasks, or data services and are accessed over the Internet.

ARTICLE 2- INTELLECTUAL PROPERTY RIGHTS AND RESERVATION OF OWNERSHIP

Software, Data, Web Services, and Documentation are licensed and not sold. ESRI and its licensors own Software, Data, Web Services, and Documentation and all copies, which are protected by United States and applicable international laws, treaties, and conventions regarding intellectual property and proprietary rights including trade secrets. Licensee agrees to use reasonable means to protect Software, Data, Web Services, and Documentation from unauthorized use, reproduction, distribution, or publication. ESRI and its third-party licensors reserve all rights not specifically granted in this License Agreement including the right to change and improve Web Services.

ARTICLE 3- GRANT OF LICENSE

3.1 Grant of License. Subject to the terms of this License Agreement, ESRI grants to Licensee a personal, nonexclusive, nontransferable license solely to

a. Use the type and number of copies of Software, Data, and Documentation and access Web Services (i) for which the applicable license fees have been paid, (ii) for Licensee's own internal use, and (iii) in accordance with Exhibit 1 and the licensed configuration on file as authorized by ESRI or its authorized distributor.
b. Access and use any secure ESRI Web site resources made available to Licensee for Licensee's own internal use, provided that Licensee follows ESRI's terms of use policy specified therein. All password or controlled access information provided by ESRI or its authorized distributor shall be treated as ESRI confidential information.

3.2 Beta License. Licensee may be accepted into a current Beta Testing Program.

a. If Licensee is accepted into the Beta Testing Program, ESRI will provide to Licensee access to Beta and will grant Licensee a personal, nonexclusive, nontransferable, royalty-free Term License to use Beta at the authorized and identified test sites solely for the purpose of testing Beta as delivered, in accordance with the Beta Testing Program guidelines and the terms of this License Agreement. This grant of license is effective from the date Licensee is accepted into the program or date of receipt of any Beta until the date of the commercial release of Software from ESRI Customer Service or the date of termination of the Beta Testing Program for the specific Beta, whichever is sooner.
b. Licensee agrees to provide suggestions or comments regarding performance, usability or effectiveness, bug reports, test reports, or other feedback (collectively, "Feedback") to ESRI with respect to Beta.
c. Licensee grants to ESRI the right to freely use, share, disclose, reproduce, license, distribute and otherwise publicly display and perform any Feedback provided to ESRI by Licensee. Licensee will not provide Feedback that Licensee knows or reasonably should have known contains content subject to license or use restrictions.
d. Beta and Feedback contain confidential information and trade secrets that are proprietary to ESRI. Licensee agrees to use commercially reasonable means (at least as great as those used by Licensee for its own confidential information) to maintain the integrity, confidentiality, and ESRI proprietary rights in Beta and Feedback. Licensee may not share or release Feedback or results of Beta testing with any third party.
e. Beta is subject to change prior to its commercial release or may never be commercially released. Licensee acknowledges that Beta is not suitable or licensed for full use in any production system and accepts all responsibility for use and any results generated.

3.3 Evaluation License. ESRI may from time to time offer Term License(s) for Software, Data, Web Services, or Documentation for Licensee's evaluation only.

3.4 Consultant or Contractor Access. Subject to Section 3.1, ESRI grants Licensee the right to provide access to and use of Software, Data, Web Services, or Documentation to any consultant or contractor of Licensee exclusively for the benefit of Licensee. Licensee shall be solely responsible for compliance by consultants and contractors with this License Agreement. Access to or use of Software, Data, Web Services, and Documentation by consultants or contractors not exclusively for the benefit of Licensee is prohibited.

3.5 Educational Program License. If Licensee has been qualified by ESRI or its authorized distributor to participate in an educational program, the following additional terms apply:

a. Educational Use License. Licensee agrees to use Software, Data, Web Services, and Documentation solely for educational, research, and academic purposes that are noncommercial in nature. Licensee shall not use Software, Data, Web Services, and Documentation for any Administrative Use or profit-generating activities.
b. Administrative Use Term License. Licensee may use the Software, Data, Web Services, and Documentation for administrative activities that are not directly related to instruction or education, such as asset mapping, facilities management, demographic analysis, routing, campus safety, and accessibility analysis ("Administrative Use"). Licensee shall not use the Software, Data, Web Services, or Documentation for any profit-generating activities.

3.6 Grant Program License. If Licensee has been qualified to participate in an ESRI grant program, Licensee may only use the type and number of copies of the Software, Data, Web Services, and Documentation permitted in the ESRI grant document and the licensed configuration on file with ESRI Customer Service, and solely for noncommercial purposes specified in the ESRI grant document. Licensee shall not use the Software, Data, Web Services, and Documentation for any profit-generating activities.

ARTICLE 4- SCOPE OF USE

4.1 Permitted Uses

a. Licensee may install and store Software, Data, and Documentation on electronic storage device(s).
b. Licensee may make one (1) copy of Software, Data, and Documentation for archival purposes. Licensee may make routine computer backups.
c. Licensee may customize Software using any (i) macro or scripting language, (ii) published application programming interface (API), or (iii) source or object code libraries, but only to the extent that such customization is described in Documentation.
d. Licensee may use, copy, or prepare derivative works of Documentation supplied in digital format and thereafter reproduce, display, and redistribute the customized documentation only for Licensee's own internal use. Portions of Documentation supplied in digital format merged with other software and printed or digital documentation are subject to this License Agreement. Licensee shall include the following copyright attribution notice acknowledging the proprietary rights of ESRI and its licensors: "Portions of this document include intellectual property of ESRI and its licensors and are used herein under license. Copyright (c) [Insert the actual copyright date(s) from the source materials] ESRI and its licensors. All rights reserved."

4.2 Uses Not Permitted

a. Except as provided herein, Licensee shall not sell, rent, lease, sublicense, lend, assign, or time-share Software, Data, Web Services, or Documentation. Licensee shall not act as a service bureau or commercial application service provider (ASP) that allows third-party access to Software, Data, Web Services, and Documentation. Licensee shall not use Software, Data, Web Services, or Documentation for a site or service and operate the site or the service for a profit or generate revenue through direct or indirect methods (e.g., advertising or by charging for access to the site or service).
b. Except as provided herein, Licensee shall not redistribute Software, Data, or Web Services to third parties, in whole or in part, including, but not limited to, extensions, components, or DLLs.
c. Licensee shall not reverse engineer, decompile, or disassemble Software, Data, Web Services, or Documentation except to the extent that such activity is expressly permitted by applicable law notwithstanding this restriction.
d. Except to the extent that applicable law prohibits this restriction, Licensee shall not make any attempt to circumvent the technological measure(s) that controls access to or use of Software, Data, Web Services, and Documentation.
e. Except as provided herein, Licensee shall not redistribute Software activation number(s), registration number/license authorization file(s), developer license file(s), or Web Services access codes to third parties.
f. Licensee shall not use Software or Web Services to transfer or exchange any material where such transfer or exchange is prohibited by intellectual property laws or any other applicable laws.
g. Licensee shall not remove or obscure any ESRI or its licensors' patent, copyright, trademark, or proprietary rights notices contained in or affixed to Software, Data, Web Services, or Documentation.
h. Licensee shall not unbundle individual or component parts of Software or Data for independent use.
i. After a reasonable transition period, Licensee shall not use an older version of the Software that Licensee has updated to a newer version. Licensee shall not use more Software licenses at any given time than the total quantity in Licensee's licensed configuration on file with ESRI.

ARTICLE 5- TERM AND TERMINATION

This License Agreement is effective upon acceptance. This License Agreement and any licenses granted hereunder shall continue until (i) such time that Licensee elects in writing to discontinue use of Software, Data, Web Services, or Documentation and terminates the license; (ii) expiration of a Term License; or (iii) either party terminates the license for a material breach that is not cured within ten (10) days of written notice to the other party, except that termination is immediate for a material breach of a nature that is impossible to cure. Upon termination of a license, Licensee shall (i) cease access and use of Web Services and clear Web Services client-side data cache; and (ii) cease use, uninstall, remove, and destroy all Software, Data, and Documentation and any whole or partial copies, modifications, or merged portions in any form and execute and deliver evidence of such actions to ESRI or its authorized distributor.

ARTICLE 6- LIMITED WARRANTIES AND DISCLAIMERS

6.1 Limited Warranties. Except as otherwise provided in this Article 6, ESRI warrants that (i) the unmodified Software will substantially conform to the published Documentation and (ii) media on which the Software, Data, and Documentation are provided will be free from defects in materials and workmanship under normal use and service for a period of ninety (90) days from the date of receipt.

6.2 Data and Web Services Disclaimer. Data and Web Services may contain some nonconformities, defects, errors, or omissions. THE DATA AND WEB SERVICES ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. Without limiting the generality of the preceding sentence, ESRI and its licensors do not warrant that Data and Web Services will meet Licensee's needs or expectations, that the use of Data and Web Services will be uninterrupted, or that all nonconformities can or will be corrected. ESRI and its licensors are not inviting reliance on Data or Web Services, and Licensee should always verify actual Data or Web Services.

6.3 Special Disclaimer. SAMPLES, HOT FIXES, PATCHES, EVALUATION SOFTWARE, AND BETA ARE DELIVERED "AS IS" WITHOUT WARRANTY OF ANY KIND. LICENSEE ASSUMES ALL RISK AS TO THE QUALITY AND PERFORMANCE OF THE SAMPLES, HOT FIXES, PATCHES, EVALUATION SOFTWARE, AND BETA.

6.4 Internet Disclaimer. THE PARTIES EXPRESSLY ACKNOWLEDGE AND AGREE THAT THE INTERNET IS A NETWORK OF PRIVATE AND PUBLIC NETWORKS AND THAT (i) THE INTERNET IS NOT A SECURE INFRASTRUCTURE, (ii) THE PARTIES HAVE NO CONTROL OVER THE INTERNET, AND (iii) NONE OF THE PARTIES SHALL BE LIABLE FOR DAMAGES UNDER ANY THEORY OF LAW RELATED TO THE DISCONTINUANCE OF OPERATION OF ANY PORTION OF THE INTERNET OR POSSIBLE REGULATION OF THE INTERNET THAT MIGHT RESTRICT OR PROHIBIT THE OPERATION OF THE WEB SERVICE.

6.5 General Disclaimer. EXCEPT FOR THE ABOVE EXPRESS LIMITED WARRANTIES, ESRI DISCLAIMS ALL OTHER WARRANTIES OR CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OR CONDITIONS OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, SYSTEM INTEGRATION, AND NONINFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. ESRI DOES NOT WARRANT AND DISCLAIMS THAT SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION WILL MEET LICENSEE'S NEEDS; THAT LICENSEE'S OPERATION OF THE SAME WILL BE UNINTERRUPTED, ERROR FREE, FAULT TOLERANT, OR FAIL SAFE; OR THAT ALL NONCONFORMITIES CAN OR WILL BE CORRECTED. SOFTWARE, DATA, WEB SERVICES, AND DOCUMENTATION ARE NOT DESIGNED, MANUFACTURED, OR INTENDED FOR USE IN ENVIRONMENTS OR APPLICATIONS THAT MAY LEAD TO DEATH, PERSONAL INJURY, OR PHYSICAL PROPERTY/ENVIRONMENTAL DAMAGE. ANY SUCH USE SHALL BE AT LICENSEE'S OWN RISK AND COST.

6.6 Exclusive Remedy. Licensee's exclusive remedy and ESRI's entire liability for breach of the limited warranties set forth in this Article 6 shall be limited, at ESRI's sole discretion, to (i) replacement of any defective media; (ii) repair, correction, or a workaround for Software subject to the ESRI Maintenance Program found at www.esri.com/legal/maintenance.html; or (iii) return of the license fees paid by Licensee for Software or Documentation that does not meet ESRI's limited warranty, provided that Licensee uninstalls, removes, and destroys all copies of Software or Documentation and executes and delivers evidence of such actions to ESRI or its authorized distributor.

ARTICLE 7- LIMITATION OF LIABILITY

7.1 Disclaimer of Certain Types of Liability. ESRI AND ITS LICENSORS SHALL NOT BE LIABLE TO LICENSEE FOR COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOST PROFITS, LOST SALES, OR BUSINESS EXPENDITURES; INVESTMENTS; BUSINESS COMMITMENTS; LOSS OF ANY GOODWILL; OR FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATED TO THIS LICENSE AGREEMENT OR USE OF SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION, HOWEVER CAUSED ON ANY THEORY OF LIABILITY, WHETHER OR NOT ESRI OR ITS LICENSORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.

7.2 General Limitation of Liability. EXCEPT AS PROVIDED IN ARTICLE 8-INFRINGEMENT INDEMNITY, ESRI'S TOTAL CUMULATIVE LIABILITY HEREUNDER, FROM ALL CAUSES OF ACTION OF ANY KIND, INCLUDING, BUT NOT LIMITED TO, CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, BREACH OF WARRANTY, MISREPRESENTATION, OR OTHERWISE, SHALL NOT EXCEED THE AMOUNTS PAID BY LICENSEE FOR SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION PURSUANT TO THIS LICENSE AGREEMENT.

7.3 Applicability of Disclaimers and Limitations. Licensee agrees that the limitations of liability and disclaimers set forth in this License Agreement will apply regardless of whether Licensee has accepted Software, Data, Web Services, or Documentation or any other product or service delivered by ESRI. The parties agree that ESRI has set its fees and entered into this License Agreement in reliance on the disclaimers and limitations set forth herein, that the same reflect an allocation of risk between the parties, and that the same form an essential basis of the bargain between the parties. THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.

ARTICLE 8- INFRINGEMENT INDEMNITY

8.1 ESRI shall defend, indemnify, and hold harmless Licensee from and against any loss, liability, cost, or expense, including reasonable attorneys' fees, which may be incurred by Licensee against any claims, actions, or demands by a third party alleging that Software infringes a U.S. patent, copyright, or trademark, provided

a. Licensee promptly notifies ESRI in writing of the claim;
b. Licensee provides documents clearly describing the allegations of infringement;
c. ESRI has sole control of the defense of any actions and negotiations related to the defense or settlement of any claim; and
d. Licensee cooperates fully in the defense of the claim.

8.2 If Software is found to infringe a U.S. patent, copyright, or trademark, ESRI, at its own expense, may either (i) obtain rights for Licensee to continue using Software or (ii) modify the allegedly infringing elements of Software while maintaining substantially similar software functionality or data/informational content. If neither alternative is commercially reasonable, the infringing item(s) shall be returned to ESRI, the license shall terminate, and Licensee shall uninstall the infringing item(s). ESRI's entire liability shall then be to indemnify Licensee pursuant to Section 8.1 and to refund license fees paid by Licensee for the infringing item(s), prorated on a five (5)-year, straight-line depreciation basis beginning from the initial date of delivery.

8.3 ESRI shall have no obligation to defend Licensee or to pay any resulting costs, damages, or attorneys' fees for any claims or demands alleging direct or contributory infringement of Software by (i) the combination of or integration with a product, process, or system not supplied by ESRI; (ii) material alteration by anyone other than ESRI or contractors acting on behalf of ESRI; (iii) use after Licensee has been notified of possible infringement; or (iv) use after modifications are provided or a return is ordered by ESRI under Section 8.2.

8.4 In no event shall the indemnification set forth in this Article 8 apply to any Samples, Beta, or evaluation software delivered hereunder.

THE FOREGOING STATES THE ENTIRE OBLIGATION OF ESRI WITH RESPECT TO INFRINGEMENT OR ALLEGATION OF INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OF ANY THIRD PARTY.

ARTICLE 9- GENERAL PROVISIONS

9.1 Future Updates. New or updated Software, Data, Web Services, and Documentation shall be governed by the then-current ESRI license terms and conditions included with the deliverable Software, Data, Web Services, or Documentation.

9.2 Export Control Regulations. Licensee expressly acknowledges and agrees that Licensee shall not export, reexport, transfer, or release Software, Data, Web Services, or Documentation, in whole or in part, to (i) any U.S. embargoed country (or to a national or resident of any U.S. embargoed country); (ii) any person on the U.S. Treasury Department's list of Specially Designated Nationals; (iii) any person or entity on the U.S. Commerce Department's Denied Persons List, Entity List, or Unverified List; or (iv) any person or entity where such export or reexport violates any U.S. export control laws or regulations including, but not limited to, the terms of any export license or license exemption and any amendments and supplemental additions to U.S. export laws as they may occur from time to time.

9.3 Taxes and Fees, Shipping Charges. License fees quoted to Licensee are exclusive of any and all taxes or fees, including, but not limited to, sales tax, use tax, value-added tax (VAT), customs, duties, or tariffs, and shipping and handling charges.

9.4 No Implied Waivers. The failure of either party to enforce any provision of this License Agreement shall not be deemed a waiver of the provisions or of the right of such party thereafter to enforce that or any other provision.

9.5 Severability. The parties agree that if any provision of this License Agreement is held to be unenforceable for any reason, such provision shall be reformed only to the extent necessary to make the intent of the language enforceable.

9.6 Successor and Assigns. Licensee shall not assign, sublicense, or transfer Licensee's rights or delegate its obligations under this License Agreement without ESRI's prior written consent, and any attempt to do so without consent shall be void. This License Agreement shall be binding upon the respective successors and assigns of the parties to this License Agreement. Notwithstanding, a government contractor that has acquired Software, Data, Web Services, or Documentation under contract to the government may assign this License Agreement to its government customer upon written notice to ESRI, provided the government customer assents to the terms of this License Agreement.

9.7 Survival of Terms. The provisions of Articles 2, 5, 6, 7, 8, and 9 of this License Agreement shall survive the expiration or termination of this License Agreement.

9.8 Equitable Relief. Licensee agrees that any breach of this License Agreement by Licensee may cause irreparable damage and that, in the event of such breach, in addition to any and all remedies at law, ESRI shall have the right to seek an injunction, specific performance, or other equitable relief in any court of competent jurisdiction without the requirement of posting a bond or undertaking or proving injury as a condition for relief.

9.9 U.S. Government Licensee. Software, Data, Web Services, and Documentation are commercial computer software, commercial data, commercial computer software documentation, and commercial Web Services. This License Agreement contains ESRI's commercial license terms and conditions for such items. The commercial license rights in this License Agreement strictly govern Licensee's use, reproduction, or disclosure of Software, Data, Web Services, and Documentation. No other license terms or conditions shall apply unless expressly agreed in writing by ESRI and Licensee. ESRI Software source code is unpublished, and all rights to Software, Data, Web Services, and Documentation are reserved. In the event any court, arbitrator, or board holds that the Licensee has greater rights to any portion of Software, Data, Web Services, or Documentation under applicable public procurement law, such rights shall extend only to the portions affected.

9.10 Governing Law, Arbitration

a. Licensees in the United States of America, Its Territories, and Outlying Areas. This License Agreement shall be governed by and construed in accordance with the laws of the State of California without reference to conflict of laws principles, except that U.S. federal law shall govern in matters of intellectual property. Except as provided in Section 9.8, any dispute arising out of or relating to this License Agreement or the breach thereof that cannot be settled through negotiation shall be finally settled by arbitration administered by the American Arbitration Association under its Commercial Arbitration Rules. Judgment on the award rendered by the arbitrator may be entered in a court of competent jurisdiction. If Licensee is a U.S. government agency, this License Agreement is subject to the Contract Disputes Act of 1978, as amended (41 U.S.C. 601-613), in lieu of the arbitration provisions of this clause. This License Agreement shall not be governed by the United Nations Convention on Contracts for the International Sale of Goods, the application of which is expressly excluded.
b. All Other Licensees. Except as provided in Section 9.8, any dispute arising out of or relating to this License Agreement or the breach thereof that cannot be settled through negotiation shall be finally settled under the Rules of Arbitration of the International Chamber of Commerce by one (1) arbitrator appointed in accordance with said rules. The language of the arbitration shall be English. The place of the arbitration shall be at an agreed-upon location. This License Agreement shall not be governed by the United Nations Convention on Contracts for the International Sale of Goods, the application of which is expressly excluded. Either party shall, at the request of the other, make available documents or witnesses relevant to the major aspects of the dispute.

9.11 Maintenance. Maintenance for qualifying Software or Data consists of updates and other benefits, such as access to technical support, specified in ESRI's or its distributor's most current applicable software maintenance policy.

9.12 Patents. Licensee may not seek, and may not permit any other user to seek, a patent or similar right worldwide that is based on or incorporates any ESRI technology or services. This express prohibition on patenting shall not apply to Licensee's software and technology except to the extent that ESRI technology or services, or any portion thereof, are a part of any claim or preferred embodiment in a patent application or a similar application.

9.13 Entire Agreement. This License Agreement, including Exhibit 1, constitutes the sole and entire agreement of the parties as to the subject matter set forth herein and supersedes any previous license agreements, understandings, and arrangements between the parties relating to such subject matter. Additional or different terms included with an order or other document shall not be binding on ESRI. Any modification(s) or amendment(s) to this License Agreement must be in writing and signed by each party.

EXHIBIT 1
SCOPE OF USE
(E300 06/28/2010)

The scope of use for the Software, Data, Web Services, and Documentation identified below is described in the applicable footnotes identified in parentheses.

* ArcGIS API for iOS (1, 16, 25, and 33)

ArcGIS Web Mapping (including SharePoint, JavaScript(tm), Adobe(r) Flex(tm), Microsoft(r) Silverlight(tm)/WPF(tm), SOAP, and REST) (6, 33, 35, and 53)

* Web Services

ArcGIS Online Services (6, 25, 33, 34, and 35)

* File Geodatabase API (1 and 16)

1. "Single Use License." Licensee may permit a single authorized end user to install and use the Software, Data, and Documentation on a single computer for use by that end user on the computer on which the Software is installed. Remote access is not permitted. Licensee may permit the single authorized end user to make a second copy for end user's exclusive use on a portable computer as long as only one (1) copy of the Software, Data, and Documentation is in use at any one (1) time. No other end user may use the Software, Data, or Documentation under the same license at the same time for any other purpose.

6. "Term License." License is provided for use for a limited time period or on a subscription or transaction basis.

16. Licensee may deliver applications to its sublicensee(s) provided Licensee uses a written sublicense agreement that protects ESRI's rights in its Software, Data, Web Services, and Documentation to the same extent as the ESRI License Agreement including, but not limited to, the following terms:

a. Sublicensee may not reverse engineer, decompile, or disassemble the ESRI Software, Data, Web Services, or Documentation, except to the extent permitted by applicable law; copy for commercial use; transfer; or assign its rights under the license grant;
b. Sublicensee may not use any ESRI Software, Data, Web Services, or Documentation, in whole or in part, separate from Licensee's executable application; and
c. Third-party dependent or required components are redistributable subject to permission from the owner or author.

25. Use of included third-party owned data shall be subject to the Use of Data Restrictions found athttp://www.esri.com/legal/ for the specific Data accessed. The Use of Data Restrictions may be modified by ESRI from time to time. If a modification is unacceptable to Licensee, Licensee may cancel a subscription upon written notice to ESRI, or discontinue use of the Data or Web Services, as applicable. If Licensee continues to use the Data or Web Services, Licensee will be deemed to have accepted the modification.

33. Licensee's access to and use of Cloud Bundle, ArcGIS Online Services, or Microsoft Bing Maps are conditioned upon Licensee's acceptance of the ESRI Web Site and Service Terms of Use Agreement and the terms and conditions specific to Cloud Bundle, ArcGIS Online Services, or Microsoft Bing Maps found at http://www.esri.com/legal/.

34. Licensee's organization is limited to the number of specified credits, transactions, geography, or number of users as described in the online product description.

35. Licensed end users shall not share the client-side data cache derived from ArcGIS Online Services with other licensed end users or third parties.

53. Deployment license options are as follows:

a. A license for Web applications is per the principal registered unique domain identifier. Domain is the Internet domain name registered with a domain name registrar. For example, in example.com, example.com is the registered unique domain identifier. Similarly, in example.com.xx, where xx is a registered country code, example.com.xx is the registered unique domain identifier.
b. A license for desktop applications or SharePoint is per organization. For the purposes of this license, organization is equivalent to a principal registered unique domain identifier (as described above). For example, desktop applications can be used by any employee of the organization with the principal registered unique domain identifier. There is no limit to the number of applications that can be built and deployed within an organization.

</form>

 

Developer
Feb 11, 2011 at 3:23 AM
Edited Feb 11, 2011 at 4:32 PM
Hi Mudnug,
Item 4.2.b makes it pretty much pointless to pursue this further for use in DotSpatial to my understanding..
On Wed, Feb 9, 2011 at 5:56 AM, mudnug <notifications@codeplex.com> wrote:

From: mudnug

For now, work with this component is governed by this license:

 

ESRI Attribution and License Agreement

<form id="node-agreement-page" action="http://resources.arcgis.com/Resources2010/node/agreement/3193" accept-charset="UTF-8" method="post">

IMPORTANT-READ CAREFULLY

UNLESS SUPERSEDED BY A SIGNED LICENSE AGREEMENT BETWEEN YOU AND ESRI, ESRI IS WILLING TO LICENSE SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION TO YOU ONLY IF YOU ACCEPT ALL TERMS AND CONDITIONS CONTAINED IN THIS LICENSE AGREEMENT. PLEASE READ THE TERMS AND CONDITIONS CAREFULLY. SOFTWARE, DATA, OR DOCUMENTATION WILL NOT BEGIN DOWNLOADING TO OR INSTALL ONTO YOUR COMPUTER SYSTEM UNTIL YOU HAVE MANIFESTED YOUR ASSENT TO THE TERMS AND CONDITIONS OF THE LICENSE AGREEMENT BY CLICKING "I accept the License Agreement" BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS AS STATED, THEN ESRI IS UNWILLING TO LICENSE SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION TO YOU, AND YOU SHOULD CLICK "I do not accept the License Agreement" BELOW AND RETURN THE PACKAGE TO ESRI OR ITS AUTHORIZED DISTRIBUTOR. SEE http://www.esri.com/legal FOR UPDATED TERMS THAT MAY APPLY TO FUTURE VERSIONS OF SOFTWARE, DATA, WEB SERVICES, AND DOCUMENTATION.

LICENSE AGREEMENT
(E204 04/22/2010)

This License Agreement is between you ("Licensee") and Environmental Systems Research Institute, Inc. ("ESRI"), a California corporation with a place of business at 380 New York Street, Redlands, California 92373-8100 USA.

ARTICLE 1- DEFINITIONS

Definitions. The terms used are defined as follows:

a. "Beta" means any alpha, beta, or prerelease Software, Data, Documentation, or Web Services.
b. "Data" means any ESRI or third-party digital dataset(s) including, but not limited to, geographic vector data coordinates, raster, reports, or associated tabular attributes licensed under this License Agreement.
c. "Documentation" means all printed and digital materials including, but not limited to, help files, user reference documentation, training documentation, or technical information and briefings.
d. "Samples" means sample code, sample applications, add-ons, or sample extensions of Software, Data, Documentation, or Web Services.
e. "Software" means all or any portion of ESRI's proprietary software technology accessed or downloaded from an ESRI authorized Web site or delivered on any media in any format including backups, updates, service packs, patches, hot fixes, or permitted merged copies.
f. "Term License" means license provided for use in a limited time period or on a subscription or transaction basis.
g. "Web Services" means software services or ESRI or third-party data provided by ESRI that perform geographic information system (GIS) functions, tasks, or data services and are accessed over the Internet.

ARTICLE 2- INTELLECTUAL PROPERTY RIGHTS AND RESERVATION OF OWNERSHIP

Software, Data, Web Services, and Documentation are licensed and not sold. ESRI and its licensors own Software, Data, Web Services, and Documentation and all copies, which are protected by United States and applicable international laws, treaties, and conventions regarding intellectual property and proprietary rights including trade secrets. Licensee agrees to use reasonable means to protect Software, Data, Web Services, and Documentation from unauthorized use, reproduction, distribution, or publication. ESRI and its third-party licensors reserve all rights not specifically granted in this License Agreement including the right to change and improve Web Services.

ARTICLE 3- GRANT OF LICENSE

3.1 Grant of License. Subject to the terms of this License Agreement, ESRI grants to Licensee a personal, nonexclusive, nontransferable license solely to

a. Use the type and number of copies of Software, Data, and Documentation and access Web Services (i) for which the applicable license fees have been paid, (ii) for Licensee's own internal use, and (iii) in accordance with Exhibit 1 and the licensed configuration on file as authorized by ESRI or its authorized distributor.
b. Access and use any secure ESRI Web site resources made available to Licensee for Licensee's own internal use, provided that Licensee follows ESRI's terms of use policy specified therein. All password or controlled access information provided by ESRI or its authorized distributor shall be treated as ESRI confidential information.

3.2 Beta License. Licensee may be accepted into a current Beta Testing Program.

a. If Licensee is accepted into the Beta Testing Program, ESRI will provide to Licensee access to Beta and will grant Licensee a personal, nonexclusive, nontransferable, royalty-free Term License to use Beta at the authorized and identified test sites solely for the purpose of testing Beta as delivered, in accordance with the Beta Testing Program guidelines and the terms of this License Agreement. This grant of license is effective from the date Licensee is accepted into the program or date of receipt of any Beta until the date of the commercial release of Software from ESRI Customer Service or the date of termination of the Beta Testing Program for the specific Beta, whichever is sooner.
b. Licensee agrees to provide suggestions or comments regarding performance, usability or effectiveness, bug reports, test reports, or other feedback (collectively, "Feedback") to ESRI with respect to Beta.
c. Licensee grants to ESRI the right to freely use, share, disclose, reproduce, license, distribute and otherwise publicly display and perform any Feedback provided to ESRI by Licensee. Licensee will not provide Feedback that Licensee knows or reasonably should have known contains content subject to license or use restrictions.
d. Beta and Feedback contain confidential information and trade secrets that are proprietary to ESRI. Licensee agrees to use commercially reasonable means (at least as great as those used by Licensee for its own confidential information) to maintain the integrity, confidentiality, and ESRI proprietary rights in Beta and Feedback. Licensee may not share or release Feedback or results of Beta testing with any third party.
e. Beta is subject to change prior to its commercial release or may never be commercially released. Licensee acknowledges that Beta is not suitable or licensed for full use in any production system and accepts all responsibility for use and any results generated.

3.3 Evaluation License. ESRI may from time to time offer Term License(s) for Software, Data, Web Services, or Documentation for Licensee's evaluation only.

3.4 Consultant or Contractor Access. Subject to Section 3.1, ESRI grants Licensee the right to provide access to and use of Software, Data, Web Services, or Documentation to any consultant or contractor of Licensee exclusively for the benefit of Licensee. Licensee shall be solely responsible for compliance by consultants and contractors with this License Agreement. Access to or use of Software, Data, Web Services, and Documentation by consultants or contractors not exclusively for the benefit of Licensee is prohibited.

3.5 Educational Program License. If Licensee has been qualified by ESRI or its authorized distributor to participate in an educational program, the following additional terms apply:

a. Educational Use License. Licensee agrees to use Software, Data, Web Services, and Documentation solely for educational, research, and academic purposes that are noncommercial in nature. Licensee shall not use Software, Data, Web Services, and Documentation for any Administrative Use or profit-generating activities.
b. Administrative Use Term License. Licensee may use the Software, Data, Web Services, and Documentation for administrative activities that are not directly related to instruction or education, such as asset mapping, facilities management, demographic analysis, routing, campus safety, and accessibility analysis ("Administrative Use"). Licensee shall not use the Software, Data, Web Services, or Documentation for any profit-generating activities.

3.6 Grant Program License. If Licensee has been qualified to participate in an ESRI grant program, Licensee may only use the type and number of copies of the Software, Data, Web Services, and Documentation permitted in the ESRI grant document and the licensed configuration on file with ESRI Customer Service, and solely for noncommercial purposes specified in the ESRI grant document. Licensee shall not use the Software, Data, Web Services, and Documentation for any profit-generating activities.

ARTICLE 4- SCOPE OF USE

4.1 Permitted Uses

a. Licensee may install and store Software, Data, and Documentation on electronic storage device(s).
b. Licensee may make one (1) copy of Software, Data, and Documentation for archival purposes. Licensee may make routine computer backups.
c. Licensee may customize Software using any (i) macro or scripting language, (ii) published application programming interface (API), or (iii) source or object code libraries, but only to the extent that such customization is described in Documentation.
d. Licensee may use, copy, or prepare derivative works of Documentation supplied in digital format and thereafter reproduce, display, and redistribute the customized documentation only for Licensee's own internal use. Portions of Documentation supplied in digital format merged with other software and printed or digital documentation are subject to this License Agreement. Licensee shall include the following copyright attribution notice acknowledging the proprietary rights of ESRI and its licensors: "Portions of this document include intellectual property of ESRI and its licensors and are used herein under license. Copyright (c) [Insert the actual copyright date(s) from the source materials] ESRI and its licensors. All rights reserved."

4.2 Uses Not Permitted

a. Except as provided herein, Licensee shall not sell, rent, lease, sublicense, lend, assign, or time-share Software, Data, Web Services, or Documentation. Licensee shall not act as a service bureau or commercial application service provider (ASP) that allows third-party access to Software, Data, Web Services, and Documentation. Licensee shall not use Software, Data, Web Services, or Documentation for a site or service and operate the site or the service for a profit or generate revenue through direct or indirect methods (e.g., advertising or by charging for access to the site or service).
b. Except as provided herein, Licensee shall not redistribute Software, Data, or Web Services to third parties, in whole or in part, including, but not limited to, extensions, components, or DLLs.
c. Licensee shall not reverse engineer, decompile, or disassemble Software, Data, Web Services, or Documentation except to the extent that such activity is expressly permitted by applicable law notwithstanding this restriction.
d. Except to the extent that applicable law prohibits this restriction, Licensee shall not make any attempt to circumvent the technological measure(s) that controls access to or use of Software, Data, Web Services, and Documentation.
e. Except as provided herein, Licensee shall not redistribute Software activation number(s), registration number/license authorization file(s), developer license file(s), or Web Services access codes to third parties.
f. Licensee shall not use Software or Web Services to transfer or exchange any material where such transfer or exchange is prohibited by intellectual property laws or any other applicable laws.
g. Licensee shall not remove or obscure any ESRI or its licensors' patent, copyright, trademark, or proprietary rights notices contained in or affixed to Software, Data, Web Services, or Documentation.
h. Licensee shall not unbundle individual or component parts of Software or Data for independent use.
i. After a reasonable transition period, Licensee shall not use an older version of the Software that Licensee has updated to a newer version. Licensee shall not use more Software licenses at any given time than the total quantity in Licensee's licensed configuration on file with ESRI.

ARTICLE 5- TERM AND TERMINATION

This License Agreement is effective upon acceptance. This License Agreement and any licenses granted hereunder shall continue until (i) such time that Licensee elects in writing to discontinue use of Software, Data, Web Services, or Documentation and terminates the license; (ii) expiration of a Term License; or (iii) either party terminates the license for a material breach that is not cured within ten (10) days of written notice to the other party, except that termination is immediate for a material breach of a nature that is impossible to cure. Upon termination of a license, Licensee shall (i) cease access and use of Web Services and clear Web Services client-side data cache; and (ii) cease use, uninstall, remove, and destroy all Software, Data, and Documentation and any whole or partial copies, modifications, or merged portions in any form and execute and deliver evidence of such actions to ESRI or its authorized distributor.

ARTICLE 6- LIMITED WARRANTIES AND DISCLAIMERS

6.1 Limited Warranties. Except as otherwise provided in this Article 6, ESRI warrants that (i) the unmodified Software will substantially conform to the published Documentation and (ii) media on which the Software, Data, and Documentation are provided will be free from defects in materials and workmanship under normal use and service for a period of ninety (90) days from the date of receipt.

6.2 Data and Web Services Disclaimer. Data and Web Services may contain some nonconformities, defects, errors, or omissions. THE DATA AND WEB SERVICES ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. Without limiting the generality of the preceding sentence, ESRI and its licensors do not warrant that Data and Web Services will meet Licensee's needs or expectations, that the use of Data and Web Services will be uninterrupted, or that all nonconformities can or will be corrected. ESRI and its licensors are not inviting reliance on Data or Web Services, and Licensee should always verify actual Data or Web Services.

6.3 Special Disclaimer. SAMPLES, HOT FIXES, PATCHES, EVALUATION SOFTWARE, AND BETA ARE DELIVERED "AS IS" WITHOUT WARRANTY OF ANY KIND. LICENSEE ASSUMES ALL RISK AS TO THE QUALITY AND PERFORMANCE OF THE SAMPLES, HOT FIXES, PATCHES, EVALUATION SOFTWARE, AND BETA.

6.4 Internet Disclaimer. THE PARTIES EXPRESSLY ACKNOWLEDGE AND AGREE THAT THE INTERNET IS A NETWORK OF PRIVATE AND PUBLIC NETWORKS AND THAT (i) THE INTERNET IS NOT A SECURE INFRASTRUCTURE, (ii) THE PARTIES HAVE NO CONTROL OVER THE INTERNET, AND (iii) NONE OF THE PARTIES SHALL BE LIABLE FOR DAMAGES UNDER ANY THEORY OF LAW RELATED TO THE DISCONTINUANCE OF OPERATION OF ANY PORTION OF THE INTERNET OR POSSIBLE REGULATION OF THE INTERNET THAT MIGHT RESTRICT OR PROHIBIT THE OPERATION OF THE WEB SERVICE.

6.5 General Disclaimer. EXCEPT FOR THE ABOVE EXPRESS LIMITED WARRANTIES, ESRI DISCLAIMS ALL OTHER WARRANTIES OR CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OR CONDITIONS OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, SYSTEM INTEGRATION, AND NONINFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. ESRI DOES NOT WARRANT AND DISCLAIMS THAT SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION WILL MEET LICENSEE'S NEEDS; THAT LICENSEE'S OPERATION OF THE SAME WILL BE UNINTERRUPTED, ERROR FREE, FAULT TOLERANT, OR FAIL SAFE; OR THAT ALL NONCONFORMITIES CAN OR WILL BE CORRECTED. SOFTWARE, DATA, WEB SERVICES, AND DOCUMENTATION ARE NOT DESIGNED, MANUFACTURED, OR INTENDED FOR USE IN ENVIRONMENTS OR APPLICATIONS THAT MAY LEAD TO DEATH, PERSONAL INJURY, OR PHYSICAL PROPERTY/ENVIRONMENTAL DAMAGE. ANY SUCH USE SHALL BE AT LICENSEE'S OWN RISK AND COST.

6.6 Exclusive Remedy. Licensee's exclusive remedy and ESRI's entire liability for breach of the limited warranties set forth in this Article 6 shall be limited, at ESRI's sole discretion, to (i) replacement of any defective media; (ii) repair, correction, or a workaround for Software subject to the ESRI Maintenance Program found at www.esri.com/legal/maintenance.html; or (iii) return of the license fees paid by Licensee for Software or Documentation that does not meet ESRI's limited warranty, provided that Licensee uninstalls, removes, and destroys all copies of Software or Documentation and executes and delivers evidence of such actions to ESRI or its authorized distributor.

ARTICLE 7- LIMITATION OF LIABILITY

7.1 Disclaimer of Certain Types of Liability. ESRI AND ITS LICENSORS SHALL NOT BE LIABLE TO LICENSEE FOR COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOST PROFITS, LOST SALES, OR BUSINESS EXPENDITURES; INVESTMENTS; BUSINESS COMMITMENTS; LOSS OF ANY GOODWILL; OR FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATED TO THIS LICENSE AGREEMENT OR USE OF SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION, HOWEVER CAUSED ON ANY THEORY OF LIABILITY, WHETHER OR NOT ESRI OR ITS LICENSORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.

7.2 General Limitation of Liability. EXCEPT AS PROVIDED IN ARTICLE 8-INFRINGEMENT INDEMNITY, ESRI'S TOTAL CUMULATIVE LIABILITY HEREUNDER, FROM ALL CAUSES OF ACTION OF ANY KIND, INCLUDING, BUT NOT LIMITED TO, CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, BREACH OF WARRANTY, MISREPRESENTATION, OR OTHERWISE, SHALL NOT EXCEED THE AMOUNTS PAID BY LICENSEE FOR SOFTWARE, DATA, WEB SERVICES, OR DOCUMENTATION PURSUANT TO THIS LICENSE AGREEMENT.

7.3 Applicability of Disclaimers and Limitations. Licensee agrees that the limitations of liability and disclaimers set forth in this License Agreement will apply regardless of whether Licensee has accepted Software, Data, Web Services, or Documentation or any other product or service delivered by ESRI. The parties agree that ESRI has set its fees and entered into this License Agreement in reliance on the disclaimers and limitations set forth herein, that the same reflect an allocation of risk between the parties, and that the same form an essential basis of the bargain between the parties. THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.

ARTICLE 8- INFRINGEMENT INDEMNITY

8.1 ESRI shall defend, indemnify, and hold harmless Licensee from and against any loss, liability, cost, or expense, including reasonable attorneys' fees, which may be incurred by Licensee against any claims, actions, or demands by a third party alleging that Software infringes a U.S. patent, copyright, or trademark, provided

a. Licensee promptly notifies ESRI in writing of the claim;
b. Licensee provides documents clearly describing the allegations of infringement;
c. ESRI has sole control of the defense of any actions and negotiations related to the defense or settlement of any claim; and
d. Licensee cooperates fully in the defense of the claim.

8.2 If Software is found to infringe a U.S. patent, copyright, or trademark, ESRI, at its own expense, may either (i) obtain rights for Licensee to continue using Software or (ii) modify the allegedly infringing elements of Software while maintaining substantially similar software functionality or data/informational content. If neither alternative is commercially reasonable, the infringing item(s) shall be returned to ESRI, the license shall terminate, and Licensee shall uninstall the infringing item(s). ESRI's entire liability shall then be to indemnify Licensee pursuant to Section 8.1 and to refund license fees paid by Licensee for the infringing item(s), prorated on a five (5)-year, straight-line depreciation basis beginning from the initial date of delivery.

8.3 ESRI shall have no obligation to defend Licensee or to pay any resulting costs, damages, or attorneys' fees for any claims or demands alleging direct or contributory infringement of Software by (i) the combination of or integration with a product, process, or system not supplied by ESRI; (ii) material alteration by anyone other than ESRI or contractors acting on behalf of ESRI; (iii) use after Licensee has been notified of possible infringement; or (iv) use after modifications are provided or a return is ordered by ESRI under Section 8.2.

8.4 In no event shall the indemnification set forth in this Article 8 apply to any Samples, Beta, or evaluation software delivered hereunder.

THE FOREGOING STATES THE ENTIRE OBLIGATION OF ESRI WITH RESPECT TO INFRINGEMENT OR ALLEGATION OF INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OF ANY THIRD PARTY.

ARTICLE 9- GENERAL PROVISIONS

9.1 Future Updates. New or updated Software, Data, Web Services, and Documentation shall be governed by the then-current ESRI license terms and conditions included with the deliverable Software, Data, Web Services, or Documentation.

9.2 Export Control Regulations. Licensee expressly acknowledges and agrees that Licensee shall not export, reexport, transfer, or release Software, Data, Web Services, or Documentation, in whole or in part, to (i) any U.S. embargoed country (or to a national or resident of any U.S. embargoed country); (ii) any person on the U.S. Treasury Department's list of Specially Designated Nationals; (iii) any person or entity on the U.S. Commerce Department's Denied Persons List, Entity List, or Unverified List; or (iv) any person or entity where such export or reexport violates any U.S. export control laws or regulations including, but not limited to, the terms of any export license or license exemption and any amendments and supplemental additions to U.S. export laws as they may occur from time to time.

9.3 Taxes and Fees, Shipping Charges. License fees quoted to Licensee are exclusive of any and all taxes or fees, including, but not limited to, sales tax, use tax, value-added tax (VAT), customs, duties, or tariffs, and shipping and handling charges.

9.4 No Implied Waivers. The failure of either party to enforce any provision of this License Agreement shall not be deemed a waiver of the provisions or of the right of such party thereafter to enforce that or any other provision.

9.5 Severability. The parties agree that if any provision of this License Agreement is held to be unenforceable for any reason, such provision shall be reformed only to the extent necessary to make the intent of the language enforceable.

9.6 Successor and Assigns. Licensee shall not assign, sublicense, or transfer Licensee's rights or delegate its obligations under this License Agreement without ESRI's prior written consent, and any attempt to do so without consent shall be void. This License Agreement shall be binding upon the respective successors and assigns of the parties to this License Agreement. Notwithstanding, a government contractor that has acquired Software, Data, Web Services, or Documentation under contract to the government may assign this License Agreement to its government customer upon written notice to ESRI, provided the government customer assents to the terms of this License Agreement.

9.7 Survival of Terms. The provisions of Articles 2, 5, 6, 7, 8, and 9 of this License Agreement shall survive the expiration or termination of this License Agreement.

9.8 Equitable Relief. Licensee agrees that any breach of this License Agreement by Licensee may cause irreparable damage and that, in the event of such breach, in addition to any and all remedies at law, ESRI shall have the right to seek an injunction, specific performance, or other equitable relief in any court of competent jurisdiction without the requirement of posting a bond or undertaking or proving injury as a condition for relief.

9.9 U.S. Government Licensee. Software, Data, Web Services, and Documentation are commercial computer software, commercial data, commercial computer software documentation, and commercial Web Services. This License Agreement contains ESRI's commercial license terms and conditions for such items. The commercial license rights in this License Agreement strictly govern Licensee's use, reproduction, or disclosure of Software, Data, Web Services, and Documentation. No other license terms or conditions shall apply unless expressly agreed in writing by ESRI and Licensee. ESRI Software source code is unpublished, and all rights to Software, Data, Web Services, and Documentation are reserved. In the event any court, arbitrator, or board holds that the Licensee has greater rights to any portion of Software, Data, Web Services, or Documentation under applicable public procurement law, such rights shall extend only to the portions affected.

9.10 Governing Law, Arbitration

a. Licensees in the United States of America, Its Territories, and Outlying Areas. This License Agreement shall be governed by and construed in accordance with the laws of the State of California without reference to conflict of laws principles, except that U.S. federal law shall govern in matters of intellectual property. Except as provided in Section 9.8, any dispute arising out of or relating to this License Agreement or the breach thereof that cannot be settled through negotiation shall be finally settled by arbitration administered by the American Arbitration Association under its Commercial Arbitration Rules. Judgment on the award rendered by the arbitrator may be entered in a court of competent jurisdiction. If Licensee is a U.S. government agency, this License Agreement is subject to the Contract Disputes Act of 1978, as amended (41 U.S.C. 601-613), in lieu of the arbitration provisions of this clause. This License Agreement shall not be governed by the United Nations Convention on Contracts for the International Sale of Goods, the application of which is expressly excluded.
b. All Other Licensees. Except as provided in Section 9.8, any dispute arising out of or relating to this License Agreement or the breach thereof that cannot be settled through negotiation shall be finally settled under the Rules of Arbitration of the International Chamber of Commerce by one (1) arbitrator appointed in accordance with said rules. The language of the arbitration shall be English. The place of the arbitration shall be at an agreed-upon location. This License Agreement shall not be governed by the United Nations Convention on Contracts for the International Sale of Goods, the application of which is expressly excluded. Either party shall, at the request of the other, make available documents or witnesses relevant to the major aspects of the dispute.

9.11 Maintenance. Maintenance for qualifying Software or Data consists of updates and other benefits, such as access to technical support, specified in ESRI's or its distributor's most current applicable software maintenance policy.

9.12 Patents. Licensee may not seek, and may not permit any other user to seek, a patent or similar right worldwide that is based on or incorporates any ESRI technology or services. This express prohibition on patenting shall not apply to Licensee's software and technology except to the extent that ESRI technology or services, or any portion thereof, are a part of any claim or preferred embodiment in a patent application or a similar application.

9.13 Entire Agreement. This License Agreement, including Exhibit 1, constitutes the sole and entire agreement of the parties as to the subject matter set forth herein and supersedes any previous license agreements, understandings, and arrangements between the parties relating to such subject matter. Additional or different terms included with an order or other document shall not be binding on ESRI. Any modification(s) or amendment(s) to this License Agreement must be in writing and signed by each party.

EXHIBIT 1
SCOPE OF USE
(E300 06/28/2010)

The scope of use for the Software, Data, Web Services, and Documentation identified below is described in the applicable footnotes identified in parentheses.

* ArcGIS API for iOS (1, 16, 25, and 33)

ArcGIS Web Mapping (including SharePoint, JavaScript(tm), Adobe(r) Flex(tm), Microsoft(r) Silverlight(tm)/WPF(tm), SOAP, and REST) (6, 33, 35, and 53)

* Web Services

ArcGIS Online Services (6, 25, 33, 34, and 35)

* File Geodatabase API (1 and 16)

1. "Single Use License." Licensee may permit a single authorized end user to install and use the Software, Data, and Documentation on a single computer for use by that end user on the computer on which the Software is installed. Remote access is not permitted. Licensee may permit the single authorized end user to make a second copy for end user's exclusive use on a portable computer as long as only one (1) copy of the Software, Data, and Documentation is in use at any one (1) time. No other end user may use the Software, Data, or Documentation under the same license at the same time for any other purpose.

6. "Term License." License is provided for use for a limited time period or on a subscription or transaction basis.

16. Licensee may deliver applications to its sublicensee(s) provided Licensee uses a written sublicense agreement that protects ESRI's rights in its Software, Data, Web Services, and Documentation to the same extent as the ESRI License Agreement including, but not limited to, the following terms:

a. Sublicensee may not reverse engineer, decompile, or disassemble the ESRI Software, Data, Web Services, or Documentation, except to the extent permitted by applicable law; copy for commercial use; transfer; or assign its rights under the license grant;
b. Sublicensee may not use any ESRI Software, Data, Web Services, or Documentation, in whole or in part, separate from Licensee's executable application; and
c. Third-party dependent or required components are redistributable subject to permission from the owner or author.

25. Use of included third-party owned data shall be subject to the Use of Data Restrictions found athttp://www.esri.com/legal/ for the specific Data accessed. The Use of Data Restrictions may be modified by ESRI from time to time. If a modification is unacceptable to Licensee, Licensee may cancel a subscription upon written notice to ESRI, or discontinue use of the Data or Web Services, as applicable. If Licensee continues to use the Data or Web Services, Licensee will be deemed to have accepted the modification.

33. Licensee's access to and use of Cloud Bundle, ArcGIS Online Services, or Microsoft Bing Maps are conditioned upon Licensee's acceptance of the ESRI Web Site and Service Terms of Use Agreement and the terms and conditions specific to Cloud Bundle, ArcGIS Online Services, or Microsoft Bing Maps found at http://www.esri.com/legal/.

34. Licensee's organization is limited to the number of specified credits, transactions, geography, or number of users as described in the online product description.

35. Licensed end users shall not share the client-side data cache derived from ArcGIS Online Services with other licensed end users or third parties.

53. Deployment license options are as follows:

a. A license for Web applications is per the principal registered unique domain identifier. Domain is the Internet domain name registered with a domain name registrar. For example, in example.com, example.com is the registered unique domain identifier. Similarly, in example.com.xx, where xx is a registered country code, example.com.xx is the registered unique domain identifier.
b. A license for desktop applications or SharePoint is per organization. For the purposes of this license, organization is equivalent to a principal registered unique domain identifier (as described above). For example, desktop applications can be used by any employee of the organization with the principal registered unique domain identifier. There is no limit to the number of applications that can be built and deployed within an organization.

</form>

 

Read the full discussion online.

To add a post to this discussion, reply to this email (DotSpatial@discussions.codeplex.com)

To start a new discussion for this project, email DotSpatial@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com

 

Developer
Sep 7, 2011 at 4:51 PM

First off, hello dotspatial forum! I know it has been a fair bit of time since the last post, and ESRI has even released a C# API for geodatabase access with v1.1, but the licenses has some similar language.

There is a key point with the above license. In the not permitted uses section, it has the language "Except as provided herein,...". Then at the button you see "Exhibit 1" and then a series of numbered points. My understanding is that the first section is a sort of boiler plate that protects ESRI under all conditions. But Exhibit 1 provides for how one is actually allowed to use the API and provides deployment scenarios. The new license has the same boiler plate, but has this phrase at the end (which supersedes the boiler plate): "Licensee may develop and distribute software or web applications that use the Esri File GeodatabaseAPI to Licensee's end users"

I may be missing something, but that's a pretty open ended statement to have a in a license.