[gdal-dev] Proposed patch for HUGE GML files (1)

Even Rouault even.rouault at mines-paris.org
Tue Dec 13 05:40:01 EST 2011


Selon a.furieri at lqt.it:

> On Mon, 12 Dec 2011 18:15:07 +0100, Even Rouault wrote
> > > ---
> > > Please see the attached zipfile containing the latest
> > > version of the proposed patch
> >
> > Integrated in svn with a few changes. See
> > http://trac.osgeo.org/gdal/ticket/4380#comment:1 for the details.
> > Please test that I haven't caused regressions.
> >
>
> Hi Even,
>
> thanks a lot for committing my proposed patch
> into the SVN.
>
> I've found a single regression; please see the
> attached gml-regression.diff file.
>
> Comment:
> ========
> pChild->pItem->gmlText does actually contain a very
> complex GML fragment (complete Edge definition),
> looking more or less like this:
> ---------------------------------------
> <Edge gml:id="Edge_35_110631">
>   <directedNode orientation="-">
>     <Node gml:id="Node_1_12918040" />
>   </directedNode>
>   <directedNode>
>     <Node gml:id="Node_1_12918079" />
>   </directedNode>
>   <curveProperty>
>     <LineString srsName="urn:ogc:def:crs:EPSG:3003">
>       <posList srsDimension="2">
>         1656238.08 4694143.96 1656260.36 4694138.56
>       </posList>
>     </LineString>
>   </curveProperty>
> </Edge>
> ---------------------------------------
>
> Using CPLCreateXMLNode(psNewNode, CXT_Text, ...)
> is not at all appropriate in this case, because this
> isn't GML TEXT, it's a complex GML fragment representing
> a full tree of GML nodes (many different types).
>
> Attempting to add a single GML TEXT node will simply
> cause heavy GML corruption, because any "<" will
> be masked as "&lt;" and so on ...

ok, applied in r23562. I thought it was indeed a single text content, not
complex GML content.

Having sample data to add regression will be needed.

What do you think about the xlink1.gml that I mention in the ticket ? Is it
valid to have xlink:href to other documents ?

>
> by Sandro
>






More information about the gdal-dev mailing list