\i load_topology-4326.sql
\i load_features.sql
+\i more_features.sql
--- Puntual single element {
--- } Puntual single-element
---- Puntual multi element (TODO) {
+--- Puntual multi element {
+
+SELECT feature_name||'-noprefix', topology.AsGML(feature, '')
+ FROM features.traffic_signs
+ WHERE feature_name IN ('N1N2N3');
+
--- } Puntual multi-element
--- Lineal single element {
'', 15, 2, 'visited'::regclass) FROM features.city_streets
WHERE feature_name IN ('R1');
+-- N1N6N14 visits N1,(N6),(N14)
+SELECT feature_name||'-visited', topology.AsGML(feature,
+ '', 15, 2, 'visited'::regclass) FROM features.traffic_signs
+ WHERE feature_name IN ('N1N6N14')
+ ORDER BY feature_name;
+
-- P2 visits E7,E17,E18,E13,E20,E19
-- N17,N18,(N13),N10,N9,(N14),N17
-- P1 visits E22,E21,E6,(E19),(E20),E12
-- Output in GML2
SELECT feature_name||'-gml2' as name, topology.AsGML(feature,'',0,2,NULL,'',2)
FROM features.city_streets
+ WHERE feature_name IN ('R1', 'R2', 'R3', 'R4' )
UNION
SELECT feature_name||'-gml2', topology.AsGML(feature,'',0,2,NULL,'',2)
FROM features.traffic_signs
+ WHERE feature_name IN ('S1', 'S2', 'S3', 'S4' )
ORDER BY name;
--- } GML2 output
S3-customprefix|<cstm:TopoPoint><cstm:directedNode><cstm:Node cstm:id="N6"><cstm:pointProperty><cstm:Point srsName="urn:ogc:def:crs:EPSG::4326"><cstm:pos srsDimension="2">57 33</cstm:pos></cstm:Point></cstm:pointProperty></cstm:Node></cstm:directedNode></cstm:TopoPoint>
S4-customprefix|<cstm:TopoPoint><cstm:directedNode><cstm:Node cstm:id="N4"><cstm:pointProperty><cstm:Point srsName="urn:ogc:def:crs:EPSG::4326"><cstm:pos srsDimension="2">20 37</cstm:pos></cstm:Point></cstm:pointProperty></cstm:Node></cstm:directedNode></cstm:TopoPoint>
S4-latlon|<TopoPoint><directedNode><Node id="N4"><pointProperty><Point srsName="EPSG:4326"><pos>37 20</pos></Point></pointProperty></Node></directedNode></TopoPoint>
+N1N2N3-noprefix|<TopoPoint><directedNode><Node id="N1"><pointProperty><Point srsName="urn:ogc:def:crs:EPSG::4326"><pos srsDimension="2">8 30</pos></Point></pointProperty></Node></directedNode><directedNode><Node id="N2"><pointProperty><Point srsName="urn:ogc:def:crs:EPSG::4326"><pos srsDimension="2">25 30</pos></Point></pointProperty></Node></directedNode><directedNode><Node id="N3"><pointProperty><Point srsName="urn:ogc:def:crs:EPSG::4326"><pos srsDimension="2">25 35</pos></Point></pointProperty></Node></directedNode></TopoPoint>
R3-vanilla|<gml:TopoCurve><gml:directedEdge><gml:Edge gml:id="E25"><gml:directedNode orientation="-"><gml:Node gml:id="N21"/></gml:directedNode><gml:directedNode><gml:Node gml:id="N22"/></gml:directedNode><gml:curveProperty><gml:Curve srsName="urn:ogc:def:crs:EPSG::4326"><gml:segments><gml:LineStringSegment><gml:posList srsDimension="2">9 35 13 35</gml:posList></gml:LineStringSegment></gml:segments></gml:Curve></gml:curveProperty></gml:Edge></gml:directedEdge></gml:TopoCurve>
R4-vanilla|<gml:TopoCurve><gml:directedEdge><gml:Edge gml:id="E3"><gml:directedNode orientation="-"><gml:Node gml:id="N2"/></gml:directedNode><gml:directedNode><gml:Node gml:id="N3"/></gml:directedNode><gml:curveProperty><gml:Curve srsName="urn:ogc:def:crs:EPSG::4326"><gml:segments><gml:LineStringSegment><gml:posList srsDimension="2">25 30 25 35</gml:posList></gml:LineStringSegment></gml:segments></gml:Curve></gml:curveProperty></gml:Edge></gml:directedEdge></gml:TopoCurve>
R3-noprefix|<TopoCurve><directedEdge><Edge id="E25"><directedNode orientation="-"><Node id="N21"/></directedNode><directedNode><Node id="N22"/></directedNode><curveProperty><Curve srsName="urn:ogc:def:crs:EPSG::4326"><segments><LineStringSegment><posList srsDimension="2">9 35 13 35</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge></TopoCurve>
S1-visited|<TopoPoint><directedNode><Node id="N14"><pointProperty><Point srsName="EPSG:4326"><pos>21 14</pos></Point></pointProperty></Node></directedNode></TopoPoint>
S3-visited|<TopoPoint><directedNode xlink:href="#N6" /></TopoPoint>
R1-visited|<TopoCurve><directedEdge><Edge id="E9"><directedNode orientation="-"><Node id="N15"/></directedNode><directedNode xlink:href="#N14" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>9 14 21 14</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge orientation="-"><Edge id="E10"><directedNode orientation="-"><Node id="N13"/></directedNode><directedNode xlink:href="#N14" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>35 14 21 14</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge></TopoCurve>
+N1N6N14-visited|<TopoPoint><directedNode><Node id="N1"><pointProperty><Point srsName="EPSG:4326"><pos>8 30</pos></Point></pointProperty></Node></directedNode><directedNode xlink:href="#N6" /><directedNode xlink:href="#N14" /></TopoPoint>
P2-visited|<TopoSurface><directedFace><Face id="F4"><directedEdge orientation="-"><Edge id="E7"><directedNode orientation="-" xlink:href="#N17" /><directedNode><Node id="N18"/></directedNode><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>21 22 35 22</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge><Edge id="E17"><directedNode orientation="-" xlink:href="#N13" /><directedNode xlink:href="#N18" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>35 14 35 22</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge orientation="-" xlink:href="#E10" /><directedEdge orientation="-" xlink:href="#E19" /></Face></directedFace><directedFace><Face id="F7"><directedEdge xlink:href="#E10" /><directedEdge><Edge id="E18"><directedNode orientation="-"><Node id="N10"/></directedNode><directedNode xlink:href="#N13" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>35 6 35 14</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge><Edge id="E13"><directedNode orientation="-" xlink:href="#N9" /><directedNode xlink:href="#N10" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>21 6 35 6</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge orientation="-" xlink:href="#E20" /></Face></directedFace></TopoSurface>
P1-visited|<TopoSurface><directedFace><Face id="F3"><directedEdge orientation="-"><Edge id="E6"><directedNode orientation="-"><Node id="N16"/></directedNode><directedNode><Node id="N17"/></directedNode><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>9 22 21 22</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge><Edge id="E19"><directedNode orientation="-" xlink:href="#N14" /><directedNode xlink:href="#N17" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>21 14 21 22</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge xlink:href="#E9" /><directedEdge orientation="-"><Edge id="E21"><directedNode orientation="-" xlink:href="#N15" /><directedNode xlink:href="#N16" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>9 14 9 22</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge></Face></directedFace><directedFace><Face id="F6"><directedEdge orientation="-" xlink:href="#E9" /><directedEdge><Edge id="E20"><directedNode orientation="-"><Node id="N9"/></directedNode><directedNode xlink:href="#N14" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>21 6 21 14</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge><Edge id="E12"><directedNode orientation="-"><Node id="N8"/></directedNode><directedNode xlink:href="#N9" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>9 6 21 6</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge orientation="-"><Edge id="E22"><directedNode orientation="-" xlink:href="#N8" /><directedNode xlink:href="#N15" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>9 6 9 14</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge></Face></directedFace></TopoSurface>
P3-visited-idprefix|<TopoSurface><directedFace><Face id="cd-F5"><directedEdge orientation="-"><Edge id="cd-E8"><directedNode orientation="-" xlink:href="#cd-N18" /><directedNode><Node id="cd-N19"/></directedNode><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>35 22 47 22</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge><Edge id="cd-E15"><directedNode orientation="-"><Node id="cd-N12"/></directedNode><directedNode xlink:href="#cd-N19" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>47 14 47 22</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge><Edge id="cd-E11"><directedNode orientation="-" xlink:href="#cd-N13" /><directedNode xlink:href="#cd-N12" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>35 14 47 14</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge orientation="-" xlink:href="#cd-E17" /></Face></directedFace><directedFace><Face id="cd-F8"><directedEdge orientation="-" xlink:href="#cd-E11" /><directedEdge><Edge id="cd-E16"><directedNode orientation="-"><Node id="cd-N11"/></directedNode><directedNode xlink:href="#cd-N12" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>47 6 47 14</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge><Edge id="cd-E14"><directedNode orientation="-" xlink:href="#cd-N10" /><directedNode xlink:href="#cd-N11" /><curveProperty><Curve srsName="EPSG:4326"><segments><LineStringSegment><posList>35 6 47 6</posList></LineStringSegment></segments></Curve></curveProperty></Edge></directedEdge><directedEdge orientation="-" xlink:href="#cd-E18" /></Face></directedFace></TopoSurface>