I've downloaded the C++ API SDK for reading/writing Geodatabases from:


I don't know much about this file format and how it relates to ArcGIS's internal data format, but I'm trying to understand if it contains styling/color information for the features/layers. Looking through the .html documentation that's included with the API SDK download, I don't see anything about layers, styles, or colors. And this .pdf:


Says "No style information is stored in file Geodatabases."

If that is correct, then why? I thought Geodatabase was Esri's preferred transfer format now? It's surprising that it wouldn't contain even basic style info. Is the idea that styling information is something you use ArcGIS to "lay on top of" the geometry contained in Geodatabases? But if you want to export data for another user, isn't Geodatabase the preferred way? But then you can't give them your styling info?

  • 2
    Yes, it's correct. In the GIS model used by Esri, data is distinct from drawing rules. Symbolization rules are stored in different format(s) and can be used with different data. Drawing order is still another property, of the map itself, which is independent of the data. – Vince Nov 17 '16 at 3:33
  • @Vince, thanks. Do you have any insight into the second part of the question, why they wouldn't include basic styling information in the preferred exchange format? – M Katz Nov 17 '16 at 3:35
  • 1
    They could (in fact, they do, with the Data & Maps dataset), but it's not part of the database. – Vince Nov 17 '16 at 3:36
  • So if you are writing a 3rd party app that wants to use the Geodatabase API SDK to import Geodatabase, is the understanding that you just don't get style info? Or is there some standard way to find the "Data & Maps" type information for a given Geodatabase? I'm writing such an app and I'm trying to understand if users should expect to be able to bring styled features into my program, or not. (I.e., is there no programmatic way for me to access standard ArcGIS style info from outside ArcGIS itself?) – M Katz Nov 17 '16 at 3:40
  • 1
    There is no such thing as a "standard ArcGIS style". It's not a CAD package. – Vince Nov 17 '16 at 3:41

If you want to transfer styling info for your file geodatabase then that can be done using:

  • Layer file (without data)
  • Layer package (includes data)
  • Map document (without data)
  • Map package (includes data)
  • Okay, thanks. Same question I asked @Vince: Is there a programmatic way for me to access that additional style info? Is there an API? Are the file types open / well known / easy to parse? – M Katz Nov 17 '16 at 3:42
  • 1
    That sounds like one or more different questions. For the focussed Q&A of GIS SE there should be only one question asked per question as per its Tour. – PolyGeo Nov 17 '16 at 3:46
  • 1
    Your question was about the file geodatabase API. It only interacts with data. ArcObjects can do far more, but it's not free. – Vince Nov 17 '16 at 4:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.