The Schema.xml Configuration File
The Schema.xml is akin to a data model translator. The DHFC Client Application utilizes ArcGIS Runtime, but the application requires a data model that does not fully conform with the Runtime parameters. Thus, it is necessary to translate data to and from this specialized data model while interacting with the GIS. The Schema.xml Configuration File informs the data converters how to properly handle this translation process.
The Schema.xml is uploaded and downloaded in Solution Center > DHFC > Schema tab.
The Schema.xml comprises the following tags:
Tag |
Description |
---|---|
<Table> |
Specifies the mapping between a DHFC data model object and feature service layer that corresponds to that object. |
<Field> |
Specifies the mapping between a DHFC data model object property and a field from a feature service layer. |
<Relationship> |
Mapping between a DHFC data model relationship and a one-to-N relationship from the feature service. |
<ManyRelationship> |
Mapping between a DHFC data model relationship and a many-to-N relationship from the feature service. |
<CodedValueDomain> |
Provides a mechanism for defining a mapping between collection of options from the feature service and their corresponding items in the DHFC data model. This enables mapping coded value domains from GIS to enumerations in the DHFC data model or to an arbitrary set of combo-box options for use in the DHFC Attribute Editor. |
As an example, the following code block is a snippet of the Schema.xml showing a variety of tags:
<CodedValueDomain CoaxName="PoleType">
<CodedValueEntry CoaxName="CableOnly" DisplayName="Cable Only" EsriName="0" />
<CodedValueEntry CoaxName="PowerAndPhone" DisplayName="Power and Phone" EsriName="3" />
<CodedValueEntry CoaxName="MidSpan" EsriName="6" />
<CodedValueEntry CoaxName="Demarcation" EsriName="7" />
</CodedValueDomain>
<Table CoaxName="SupportStructureData" EsriDesignName="SupportStructure" EsriBuiltName="SupportStructure">
<Field CoaxName="EsriId" EsriName="OBJECTID" Import="true" />
<Field CoaxName="NetworkId" EsriName="NetworkId" Import="true" />
<Field CoaxName="PoleType" EsriName="PoleType" FriendlyName="Pole Type" Viewable="true" CodedDomainName="PoleType" Import="true" /
<Field CoaxName="Workflow_Status" EsriName="Workflow_Status" Import="true" />
<Relationship CoaxName="RFNodeCoaxPortData" EsriDesignName="SECom.ARCFM.RFNodeCoaxPort" EsriBuiltName="RFNodeCoaxPort" />
</Table>