I'm building a project consisting of two features; the first one contains, among other things, the following field definition:
<Field ID="{E9821752-3293-4c3f-B377-22ABB7AF2F04}" Name="TruckNo" DisplayName="Truck No" Type="PartIdentifier" Group="Part Request" />
and the second one, the definition
<Field ID="{7A876984-EE88-445a-95A2-0D9B32082EBC}" Name="TruckNo" DisplayName="Truck No" Type="Text" Group="Part Order" />
When I build and deploy both features, it turns out that – surprise – only the first field definition appears in the Sharepoint column list. If I change the internal field name for the second definition to something like "OrderTruckNo", though, both columns appear in Sharepoint. It looks like there's a name clash between them.
What's the purpose of the GUID, then, if each field must have a unique name anyway? And how can I make sure that my features can even be deployed on any given Sharepoint machine, as there's always the possibility that it has some columns with the same names as mine? What am I missing?