PostGIS  3.4.0dev-r@@SVN_REVISION@@

◆ out_gml_test_geoms_prefix()

static void out_gml_test_geoms_prefix ( void  )
static

Definition at line 551 of file cu_out_gml.c.

552 {
553  /* GML2 - Linestring */
555  "LINESTRING(0 1,2 3,4 5)",
556  "<custom:LineString><custom:coordinates>0,1 2,3 4,5</custom:coordinates></custom:LineString>",
557  NULL, 0, "custom:");
558 
559  /* GML3 - Linestring */
561  "LINESTRING(0 1,2 3,4 5)",
562  "<custom:Curve><custom:segments><custom:LineStringSegment><custom:posList srsDimension=\"2\">0 1 2 3 4 5</custom:posList></custom:LineStringSegment></custom:segments></custom:Curve>",
563  NULL, 0, 0, "custom:");
564 
565 
566  /* GML2 Polygon */
568  "POLYGON((0 1,2 3,4 5,0 1))",
569  "<custom:Polygon><custom:outerBoundaryIs><custom:LinearRing><custom:coordinates>0,1 2,3 4,5 0,1</custom:coordinates></custom:LinearRing></custom:outerBoundaryIs></custom:Polygon>",
570  NULL, 0, "custom:");
571 
572  /* GML3 Polygon */
574  "POLYGON((0 1,2 3,4 5,0 1))",
575  "<custom:Polygon><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">0 1 2 3 4 5 0 1</custom:posList></custom:LinearRing></custom:exterior></custom:Polygon>",
576  NULL, 0, 0, "custom:");
577 
578 
579  /* GML2 Polygon - with internal ring */
581  "POLYGON((0 1,2 3,4 5,0 1),(6 7,8 9,10 11,6 7))",
582  "<custom:Polygon><custom:outerBoundaryIs><custom:LinearRing><custom:coordinates>0,1 2,3 4,5 0,1</custom:coordinates></custom:LinearRing></custom:outerBoundaryIs><custom:innerBoundaryIs><custom:LinearRing><custom:coordinates>6,7 8,9 10,11 6,7</custom:coordinates></custom:LinearRing></custom:innerBoundaryIs></custom:Polygon>",
583  NULL, 0, "custom:");
584 
585  /* GML3 Polygon - with internal ring */
587  "POLYGON((0 1,2 3,4 5,0 1),(6 7,8 9,10 11,6 7))",
588  "<custom:Polygon><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">0 1 2 3 4 5 0 1</custom:posList></custom:LinearRing></custom:exterior><custom:interior><custom:LinearRing><custom:posList srsDimension=\"2\">6 7 8 9 10 11 6 7</custom:posList></custom:LinearRing></custom:interior></custom:Polygon>",
589  NULL, 0, 0, "custom:");
590 
591  /* GML3 Triangle */
593  "TRIANGLE((0 1,2 3,4 5,0 1))",
594  "<custom:Triangle><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">0 1 2 3 4 5 0 1</custom:posList></custom:LinearRing></custom:exterior></custom:Triangle>",
595  NULL, 0, 0, "custom:");
596 
597 
598  /* GML2 MultiPoint */
600  "MULTIPOINT(0 1,2 3)",
601  "<custom:MultiPoint><custom:pointMember><custom:Point><custom:coordinates>0,1</custom:coordinates></custom:Point></custom:pointMember><custom:pointMember><custom:Point><custom:coordinates>2,3</custom:coordinates></custom:Point></custom:pointMember></custom:MultiPoint>",
602  NULL, 0, "custom:");
603 
604  /* GML3 MultiPoint */
606  "MULTIPOINT(0 1,2 3)",
607  "<custom:MultiPoint><custom:pointMember><custom:Point><custom:pos srsDimension=\"2\">0 1</custom:pos></custom:Point></custom:pointMember><custom:pointMember><custom:Point><custom:pos srsDimension=\"2\">2 3</custom:pos></custom:Point></custom:pointMember></custom:MultiPoint>",
608  NULL, 0, 0, "custom:");
609 
610 
611  /* GML2 Multiline */
613  "MULTILINESTRING((0 1,2 3,4 5),(6 7,8 9,10 11))",
614  "<custom:MultiLineString><custom:lineStringMember><custom:LineString><custom:coordinates>0,1 2,3 4,5</custom:coordinates></custom:LineString></custom:lineStringMember><custom:lineStringMember><custom:LineString><custom:coordinates>6,7 8,9 10,11</custom:coordinates></custom:LineString></custom:lineStringMember></custom:MultiLineString>",
615  NULL, 0, "custom:");
616 
617  /* GML3 Multiline */
619  "MULTILINESTRING((0 1,2 3,4 5),(6 7,8 9,10 11))",
620  "<custom:MultiCurve><custom:curveMember><custom:Curve><custom:segments><custom:LineStringSegment><custom:posList srsDimension=\"2\">0 1 2 3 4 5</custom:posList></custom:LineStringSegment></custom:segments></custom:Curve></custom:curveMember><custom:curveMember><custom:Curve><custom:segments><custom:LineStringSegment><custom:posList srsDimension=\"2\">6 7 8 9 10 11</custom:posList></custom:LineStringSegment></custom:segments></custom:Curve></custom:curveMember></custom:MultiCurve>",
621  NULL, 0, 0, "custom:");
622 
623 
624  /* GML2 MultiPolygon */
626  "MULTIPOLYGON(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
627  "<custom:MultiPolygon><custom:polygonMember><custom:Polygon><custom:outerBoundaryIs><custom:LinearRing><custom:coordinates>0,1 2,3 4,5 0,1</custom:coordinates></custom:LinearRing></custom:outerBoundaryIs></custom:Polygon></custom:polygonMember><custom:polygonMember><custom:Polygon><custom:outerBoundaryIs><custom:LinearRing><custom:coordinates>6,7 8,9 10,11 6,7</custom:coordinates></custom:LinearRing></custom:outerBoundaryIs></custom:Polygon></custom:polygonMember></custom:MultiPolygon>",
628  NULL, 0, "custom:");
629 
630  /* GML3 MultiPolygon */
632  "MULTIPOLYGON(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
633  "<custom:MultiSurface><custom:surfaceMember><custom:Polygon><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">0 1 2 3 4 5 0 1</custom:posList></custom:LinearRing></custom:exterior></custom:Polygon></custom:surfaceMember><custom:surfaceMember><custom:Polygon><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">6 7 8 9 10 11 6 7</custom:posList></custom:LinearRing></custom:exterior></custom:Polygon></custom:surfaceMember></custom:MultiSurface>",
634  NULL, 0, 0, "custom:");
635 
636  /* GML3 PolyhedralSurface */
638  "POLYHEDRALSURFACE(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
639  "<custom:PolyhedralSurface><custom:polygonPatches><custom:PolygonPatch><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">0 1 2 3 4 5 0 1</custom:posList></custom:LinearRing></custom:exterior></custom:PolygonPatch><custom:PolygonPatch><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">6 7 8 9 10 11 6 7</custom:posList></custom:LinearRing></custom:exterior></custom:PolygonPatch></custom:polygonPatches></custom:PolyhedralSurface>",
640  NULL, 0, 0, "custom:");
641 
642  /* GML3 Tin */
644  "TIN(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
645  "<custom:Tin><custom:trianglePatches><custom:Triangle><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">0 1 2 3 4 5 0 1</custom:posList></custom:LinearRing></custom:exterior></custom:Triangle><custom:Triangle><custom:exterior><custom:LinearRing><custom:posList srsDimension=\"2\">6 7 8 9 10 11 6 7</custom:posList></custom:LinearRing></custom:exterior></custom:Triangle></custom:trianglePatches></custom:Tin>",
646  NULL, 0, 0, "custom:");
647 
648  /* GML2 - GeometryCollection */
650  "GEOMETRYCOLLECTION(POINT(0 1),LINESTRING(2 3,4 5))",
651  "<custom:MultiGeometry><custom:geometryMember><custom:Point><custom:coordinates>0,1</custom:coordinates></custom:Point></custom:geometryMember><custom:geometryMember><custom:LineString><custom:coordinates>2,3 4,5</custom:coordinates></custom:LineString></custom:geometryMember></custom:MultiGeometry>",
652  NULL, 0, "custom:");
653 
654  /* GML3 - GeometryCollection */
656  "GEOMETRYCOLLECTION(POINT(0 1),LINESTRING(2 3,4 5))",
657  "<custom:MultiGeometry><custom:geometryMember><custom:Point><custom:pos srsDimension=\"2\">0 1</custom:pos></custom:Point></custom:geometryMember><custom:geometryMember><custom:Curve><custom:segments><custom:LineStringSegment><custom:posList srsDimension=\"2\">2 3 4 5</custom:posList></custom:LineStringSegment></custom:segments></custom:Curve></custom:geometryMember></custom:MultiGeometry>",
658  NULL, 0, 0, "custom:");
659 
660  /* GML2 - Nested GeometryCollection */
662  "GEOMETRYCOLLECTION(POINT(0 1),GEOMETRYCOLLECTION(LINESTRING(2 3,4 5)))",
663  "<custom:MultiGeometry><custom:geometryMember><custom:Point><custom:coordinates>0,1</custom:coordinates></custom:Point></custom:geometryMember><custom:geometryMember><custom:MultiGeometry><custom:geometryMember><custom:LineString><custom:coordinates>2,3 4,5</custom:coordinates></custom:LineString></custom:geometryMember></custom:MultiGeometry></custom:geometryMember></custom:MultiGeometry>",
664  NULL, 0, "custom:");
665 
666  /* GML3 - Nested GeometryCollection */
668  "GEOMETRYCOLLECTION(POINT(0 1),GEOMETRYCOLLECTION(LINESTRING(2 3,4 5)))",
669  "<custom:MultiGeometry><custom:geometryMember><custom:Point><custom:pos srsDimension=\"2\">0 1</custom:pos></custom:Point></custom:geometryMember><custom:geometryMember><custom:MultiGeometry><custom:geometryMember><custom:Curve><custom:segments><custom:LineStringSegment><custom:posList srsDimension=\"2\">2 3 4 5</custom:posList></custom:LineStringSegment></custom:segments></custom:Curve></custom:geometryMember></custom:MultiGeometry></custom:geometryMember></custom:MultiGeometry>",
670  NULL, 0, 0, "custom:");
671 
672  /*------------- empty prefixes below ------------------------ */
673 
674  /* GML2 - Linestring */
676  "LINESTRING(0 1,2 3,4 5)",
677  "<LineString><coordinates>0,1 2,3 4,5</coordinates></LineString>",
678  NULL, 0, "");
679 
680  /* GML3 - Linestring */
682  "LINESTRING(0 1,2 3,4 5)",
683  "<Curve><segments><LineStringSegment><posList srsDimension=\"2\">0 1 2 3 4 5</posList></LineStringSegment></segments></Curve>",
684  NULL, 0, 0, "");
685 
686 
687  /* GML2 Polygon */
689  "POLYGON((0 1,2 3,4 5,0 1))",
690  "<Polygon><outerBoundaryIs><LinearRing><coordinates>0,1 2,3 4,5 0,1</coordinates></LinearRing></outerBoundaryIs></Polygon>",
691  NULL, 0, "");
692 
693  /* GML3 Polygon */
695  "POLYGON((0 1,2 3,4 5,0 1))",
696  "<Polygon><exterior><LinearRing><posList srsDimension=\"2\">0 1 2 3 4 5 0 1</posList></LinearRing></exterior></Polygon>",
697  NULL, 0, 0, "");
698 
699 
700  /* GML2 Polygon - with internal ring */
702  "POLYGON((0 1,2 3,4 5,0 1),(6 7,8 9,10 11,6 7))",
703  "<Polygon><outerBoundaryIs><LinearRing><coordinates>0,1 2,3 4,5 0,1</coordinates></LinearRing></outerBoundaryIs><innerBoundaryIs><LinearRing><coordinates>6,7 8,9 10,11 6,7</coordinates></LinearRing></innerBoundaryIs></Polygon>",
704  NULL, 0, "");
705 
706  /* GML3 Polygon - with internal ring */
708  "POLYGON((0 1,2 3,4 5,0 1),(6 7,8 9,10 11,6 7))",
709  "<Polygon><exterior><LinearRing><posList srsDimension=\"2\">0 1 2 3 4 5 0 1</posList></LinearRing></exterior><interior><LinearRing><posList srsDimension=\"2\">6 7 8 9 10 11 6 7</posList></LinearRing></interior></Polygon>",
710  NULL, 0, 0, "");
711 
712  /* GML3 Triangle */
714  "TRIANGLE((0 1,2 3,4 5,0 1))",
715  "<Triangle><exterior><LinearRing><posList srsDimension=\"2\">0 1 2 3 4 5 0 1</posList></LinearRing></exterior></Triangle>",
716  NULL, 0, 0, "");
717 
718 
719  /* GML2 MultiPoint */
721  "MULTIPOINT(0 1,2 3)",
722  "<MultiPoint><pointMember><Point><coordinates>0,1</coordinates></Point></pointMember><pointMember><Point><coordinates>2,3</coordinates></Point></pointMember></MultiPoint>",
723  NULL, 0, "");
724 
725  /* GML3 MultiPoint */
727  "MULTIPOINT(0 1,2 3)",
728  "<MultiPoint><pointMember><Point><pos srsDimension=\"2\">0 1</pos></Point></pointMember><pointMember><Point><pos srsDimension=\"2\">2 3</pos></Point></pointMember></MultiPoint>",
729  NULL, 0, 0, "");
730 
731 
732  /* GML2 Multiline */
734  "MULTILINESTRING((0 1,2 3,4 5),(6 7,8 9,10 11))",
735  "<MultiLineString><lineStringMember><LineString><coordinates>0,1 2,3 4,5</coordinates></LineString></lineStringMember><lineStringMember><LineString><coordinates>6,7 8,9 10,11</coordinates></LineString></lineStringMember></MultiLineString>",
736  NULL, 0, "");
737 
738  /* GML3 Multiline */
740  "MULTILINESTRING((0 1,2 3,4 5),(6 7,8 9,10 11))",
741  "<MultiCurve><curveMember><Curve><segments><LineStringSegment><posList srsDimension=\"2\">0 1 2 3 4 5</posList></LineStringSegment></segments></Curve></curveMember><curveMember><Curve><segments><LineStringSegment><posList srsDimension=\"2\">6 7 8 9 10 11</posList></LineStringSegment></segments></Curve></curveMember></MultiCurve>",
742  NULL, 0, 0, "");
743 
744 
745  /* GML2 MultiPolygon */
747  "MULTIPOLYGON(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
748  "<MultiPolygon><polygonMember><Polygon><outerBoundaryIs><LinearRing><coordinates>0,1 2,3 4,5 0,1</coordinates></LinearRing></outerBoundaryIs></Polygon></polygonMember><polygonMember><Polygon><outerBoundaryIs><LinearRing><coordinates>6,7 8,9 10,11 6,7</coordinates></LinearRing></outerBoundaryIs></Polygon></polygonMember></MultiPolygon>",
749  NULL, 0, "");
750 
751  /* GML3 MultiPolygon */
753  "MULTIPOLYGON(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
754  "<MultiSurface><surfaceMember><Polygon><exterior><LinearRing><posList srsDimension=\"2\">0 1 2 3 4 5 0 1</posList></LinearRing></exterior></Polygon></surfaceMember><surfaceMember><Polygon><exterior><LinearRing><posList srsDimension=\"2\">6 7 8 9 10 11 6 7</posList></LinearRing></exterior></Polygon></surfaceMember></MultiSurface>",
755  NULL, 0, 0, "");
756 
757  /* GML3 PolyhedralSurface */
759  "POLYHEDRALSURFACE(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
760  "<PolyhedralSurface><polygonPatches><PolygonPatch><exterior><LinearRing><posList srsDimension=\"2\">0 1 2 3 4 5 0 1</posList></LinearRing></exterior></PolygonPatch><PolygonPatch><exterior><LinearRing><posList srsDimension=\"2\">6 7 8 9 10 11 6 7</posList></LinearRing></exterior></PolygonPatch></polygonPatches></PolyhedralSurface>",
761  NULL, 0, 0, "");
762 
763  /* GML3 PolyhedralSurface */
765  "TIN(((0 1,2 3,4 5,0 1)),((6 7,8 9,10 11,6 7)))",
766  "<Tin><trianglePatches><Triangle><exterior><LinearRing><posList srsDimension=\"2\">0 1 2 3 4 5 0 1</posList></LinearRing></exterior></Triangle><Triangle><exterior><LinearRing><posList srsDimension=\"2\">6 7 8 9 10 11 6 7</posList></LinearRing></exterior></Triangle></trianglePatches></Tin>",
767  NULL, 0, 0, "");
768 
769  /* GML2 - GeometryCollection */
771  "GEOMETRYCOLLECTION(POINT(0 1),LINESTRING(2 3,4 5))",
772  "<MultiGeometry><geometryMember><Point><coordinates>0,1</coordinates></Point></geometryMember><geometryMember><LineString><coordinates>2,3 4,5</coordinates></LineString></geometryMember></MultiGeometry>",
773  NULL, 0, "");
774 
775  /* GML3 - GeometryCollection */
777  "GEOMETRYCOLLECTION(POINT(0 1),LINESTRING(2 3,4 5))",
778  "<MultiGeometry><geometryMember><Point><pos srsDimension=\"2\">0 1</pos></Point></geometryMember><geometryMember><Curve><segments><LineStringSegment><posList srsDimension=\"2\">2 3 4 5</posList></LineStringSegment></segments></Curve></geometryMember></MultiGeometry>",
779  NULL, 0, 0, "");
780 
781  /* GML2 - Nested GeometryCollection */
783  "GEOMETRYCOLLECTION(POINT(0 1),GEOMETRYCOLLECTION(LINESTRING(2 3,4 5)))",
784  "<MultiGeometry><geometryMember><Point><coordinates>0,1</coordinates></Point></geometryMember><geometryMember><MultiGeometry><geometryMember><LineString><coordinates>2,3 4,5</coordinates></LineString></geometryMember></MultiGeometry></geometryMember></MultiGeometry>",
785  NULL, 0, "");
786 
787  /* GML3 - Nested GeometryCollection */
789  "GEOMETRYCOLLECTION(POINT(0 1),GEOMETRYCOLLECTION(LINESTRING(2 3,4 5)))",
790  "<MultiGeometry><geometryMember><Point><pos srsDimension=\"2\">0 1</pos></Point></geometryMember><geometryMember><MultiGeometry><geometryMember><Curve><segments><LineStringSegment><posList srsDimension=\"2\">2 3 4 5</posList></LineStringSegment></segments></Curve></geometryMember></MultiGeometry></geometryMember></MultiGeometry>",
791  NULL, 0, 0, "");
792 
793 
794 
795 }
static void do_gml2_test_prefix(char *in, char *out, char *srs, int precision, const char *prefix)
Definition: cu_out_gml.c:32
static void do_gml3_test_prefix(char *in, char *out, char *srs, int precision, int is_geodetic, const char *prefix)
Definition: cu_out_gml.c:68

References do_gml2_test_prefix(), and do_gml3_test_prefix().

Referenced by out_gml_suite_setup().

Here is the call graph for this function:
Here is the caller graph for this function: