1

Trying to export a geopackage into an .xtf I run into the following problem:

unexpected geometry type COM.safe.fmeobjects.FMEMultiCurve

The .ili looks like this (simplified for posting here)

CLASS G (ABSTRACT) =
  Identifikator          : MANDATORY 1000 .. 9999;
  Name                   : MANDATORY TEXT*250;
UNIQUE Identifikator;
END G;

CLASS G_Linie EXTENDS G =
  Geometrie              : MANDATORY POLYLINE WITH (STRAIGHTS) VERTEX GeometryCHLV95_V1.Coord2;
END G;

GeometryCHLV95_V1 is a swiss base modul which you can find here: It contains among other things:

Coord2 = COORD
  2460000.000 .. 2870000.000 [m] {CHLV95[1]},
  1045000.000 .. 1310000.000 [m] {CHLV95[2]},
  ROTATION 2 -> 1;

I assume the problems occur because the geopackage contains a multipart-Polyline and POLYLINE does not allow this.

I tried the following:

If I use an FME Deaggregator I run into problems because there is a UNIQUE identificator in the class.

I also tried the class Multiline

STRUCTURE MultiLine =
  Lines: BAG {1..*} OF LineStructure;
END MultiLine;

also part of the base model. I applied it like this:

CLASS G (ABSTRACT) =
  Identifikator          : MANDATORY 1000 .. 9999;
  Name                   : MANDATORY TEXT*250;
UNIQUE Identifikator;
END G;

CLASS G_Linie EXTENDS G =
  Geometrie              : GeometryCHLV95_V1.MultiLine;
END Gefahrenquelle_Linie;

unlike the first 2 tries, this translation runs without errors, but the resulting .xtf file does not contain any Geometrie attribute on the written instances of G.

How do I get mulitpart features in my class?

2 Answers 2

1

There is also a solution without using the PythonCaller. enter image description here

1
  • 1
    As it’s currently written, your answer is unclear. Please edit to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center.
    – Community Bot
    Commented Oct 23, 2021 at 14:30
0

The second model is ok:

CLASS G_Linie EXTENDS G =
  Geometrie              : GeometryCHLV95_V1.MultiLine;
END Gefahrenquelle_Linie;

But you have to move the geometry from the FME features into the list attribute. See here for an example

1
  • Thank you for your answer, this seems to work. But I cannot be 100% sure. If I load the .xtf into QGIS using the INTERLIS plugin, I only see parts of those lines. However the .xtf files shows points that are not displayed in QGIS. I will assume that this is a seperate issue with the plugin and accept your answer.
    – styx
    Commented May 5, 2021 at 19:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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