Für den Transfer von ESRI-Shape-Daten nutzen Sie den Mapping-Assistenten oder nutzen Sie die erweiterten Möglichkeiten der Mappingdatei, indem Sie ein Mapping manuell herstellen.
ⓘ | Die Mappingtabelle liegt in Form einer XML-Datei vor, welche einem bestimmten Schema entsprechen muss.Die folgenden Kapitel enthalten eine detaillierte Beschreibung dieses XML-Formats. |
⚠ | Durch den Kontext XML versteht sich auch, dass alle folgenden Schreibweisen samt Groß-/Kleinschreibung und Multiplizität exakt der Beschreibung entsprechen müssen. Andernfalls entspricht die Datei nicht einer Mappingtabelle. |
Aufbau
<!-- Dieses Mapping enthält Ausschnitte aus anderen Mappings und zeigt damit nur verschiedene Möglichkeiten auf -->
<?xml version="1.0" encoding="UTF-16"?>
<FdoMapping schemaVersion="1" IsDefaultAttributeMappingEnabled="False">
<!-- Für jeden Objekttyp bzw. Shape-Datei wird ein FeatureTypeMapping erstellt
- FdoFeatureClassName: Name der Shape-Datei. Der Name direkt angegeben werden (z.B: "F02INFL")
oder mittels regulären Ausdrücken. Dadurch kann ein Mapping erstellen, bei dem Shape-Datensätze mit Datum im
Dateinamen einlesen. Ein regulärer Ausdruck beginnt mit "re:"
- FdoGeometry: Geometrie in der Shape-Datei
Mögliche Werte: IPoint, IMultiLineString, ILineString, IPolygon
- ModelTypeName: Name des Objekttyps
- ModelGeometry: Objektklasse
Mögliche Werte: Point, LineString, Area
-->
<FeatureTypeMapping FdoFeatureClassName="re:^.*f02infl" FdoGeometry="ILineString" ModelTypeName="f02infl" ModelGeometry="LineString" FdoGeometryName="Geometry">
<!-- In dieser Sektion werden die Attribute gesetzt
- FdoAttributeName: Name des Attributs in der Shape-Datei
- ModelAttributeName: Name des Attributs beim Objekt. Dabei ist es egal, ob es sich um ein Klassenattribut, Typattribut oder freies Attribut handelt.
- FdoAttributeDatatype:
- Ganzzahl: System.Int16, System.Int32, System.Int64 (siehe [Integral numeric types - C# reference | Microsoft Docs|https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/integral-numeric-types])
- Gleitkomma: System.Single, System.Double (siehe [Floating-point numeric types - C# reference | Microsoft Docs|https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/floating-point-numeric-types])
- System.String
- System.DateTime
- System.Boolean
-->
<AttributeMappings>
<AttributeMapping FdoAttributeName="GKZ" ModelAttributeName="GKZ" />
<AttributeMapping FdoAttributeName="WidCode" ModelAttributeName="WidCode" />
<AttributeMapping FdoAttributeName="WidCode" ModelAttributeName="Widmung">
<!-- Mapping der Attributwerte -->
<ValueList SourceType="System.Int32" DestinationType="System.String">
<Item Source="20012" Destination="Seilbahn/Lift"/>
<Item Source="21011" Destination="Unterirdischer Verlauf von Fließgewässern"/>
<Item Source="23002" Destination="Erdgastransportleitung unterirdisch"/>
<Item Source="23102" Destination="Ölleitung unterirdisch"/>
<Item Source="23202" Destination="Stromleitung oder Kabel oberirdisch"/>
<Item Source="23203" Destination="Stromleitung oder Kabel unterirdisch"/>
</ValueList>
</AttributeMapping>
</AttributeMappings>
<FeatureTypeMapping FdoFeatureClassName="re:^.*GNR$" FdoGeometry="IPoint" ModelTypeName="GNR" ModelGeometry="Area" FdoGeometryName="Geometry">
<AttributeMappings />
<!-- abhängig vom Attributwert wird der passende Objekttyp gesetzt -->
<Classification>
<ValueMapping ModelTypeName="Grundstücksnummer einzeilig" ModelGeometry="Area">
<!-- Filterkriterium -->
<Values>
<Value AttributeName="TYP" AttributeType="System.Int32">1</Value>
</Values>
<AttributeMappings>
<AttributeMapping FdoAttributeName="GNR" ModelAttributeName="Internal~Name" Regex="([^/\n]*)[/]*[^/\n]*" />
<AttributeMapping FdoAttributeName="GNR" ModelAttributeName="Internal~Subname" Regex="[^/\n]*[/]*([^/\n]*)" />
<AttributeMapping FdoAttributeName="KG" ModelAttributeName="Internal~Region" />
<AttributeMapping FdoAttributeName="RSTATUS" ModelAttributeName="Rechtsstatus" />
<AttributeMapping FdoAttributeName="ROT_GNR" ModelAttributeName="#Block0001#RelativeAngle" ConversionKey="d" Operation="valueof(<Value>-100)" />
</AttributeMappings>
</ValueMapping>
<ValueMapping ModelTypeName="Grundstücksnummer zweizeilig" ModelGeometry="Area">
<Values>
<Value AttributeName="TYP" AttributeType="System.Int32">2</Value>
</Values>
<AttributeMappings>
<AttributeMapping FdoAttributeName="GNR" ModelAttributeName="Internal~Name" Regex="([^/\n]*)[/]*[^/\n]*" />
<AttributeMapping FdoAttributeName="GNR" ModelAttributeName="Internal~Subname" Regex="[^/\n]*[/]*([^/\n]*)" />
<AttributeMapping FdoAttributeName="KG" ModelAttributeName="Internal~Region" />
<AttributeMapping FdoAttributeName="RSTATUS" ModelAttributeName="Rechtsstatus" />
<AttributeMapping FdoAttributeName="ROT_GNR" ModelAttributeName="#Block0001#RelativeAngle" ConversionKey="d" Operation="valueof(<Value>-100)" />
</AttributeMappings>
</ValueMapping>
</Classification>
</FeatureTypeMapping>
</FdoMapping>