<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:a="urn:schemas-microsoft-com:office:access" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns:b="urn:schemas-microsoft-com:office:publisher" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc="urn:schemas-microsoft-com:office:odc" xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:q="http://schemas.xmlsoap.org/soap/envelope/" xmlns:D="DAV:" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc="http://schemas.microsoft.com/data/udc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sub="http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec="http://www.w3.org/2001/04/xmlenc#" xmlns:sp="http://schemas.microsoft.com/sharepoint/" xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile" xmlns:wf="http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:mver="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels="http://schemas.openxmlformats.org/package/2006/relationships" xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:Z="urn:schemas-microsoft-com:" xmlns:st="" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
code
        {mso-style-priority:99;
        font-family:"Courier New";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EmailStyle21
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle22
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#993366;}
span.EmailStyle23
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle24
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle25
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle26
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle27
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle28
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle29
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle30
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle31
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle32
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#003300;}
span.EmailStyle33
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle34
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle35
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:olive;}
span.EmailStyle36
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle38
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal><span style='color:teal'>Dan,<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:teal'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:teal'>Interesting that you found this
info. I believe the STPointN definition is similar to what I was proposing
since it depends on the order of output. I was suggesting the same thing just
in different word just applying to FDO.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:teal'>I think adding the NumPoint function
is also interesting and could be useful. I’m worried about the performance of
the nested function compare to a simple “last” argument. So I still think it
would useful to have the “last” point as argument. “1” for the first point is
obvious.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:teal'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:teal'>RF<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:teal'><o:p> </o:p></span></p>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>
fdo-internals-bounces@lists.osgeo.org
[mailto:fdo-internals-bounces@lists.osgeo.org] <b>On Behalf Of </b>Dan Stoica<br>
<b>Sent:</b> Tuesday, November 04, 2008 6:14 PM<br>
<b>To:</b> FDO Internals Mail List<br>
<b>Subject:</b> RE: [fdo-internals] Request review of RFC 28
-AddStart/EndExpressionFunctions<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><span style='color:#1F497D'>I had a look into SqlServer2008
documentation for inspiration. It has a number of interesting functions:<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><strong><span style='font-size:8.0pt;font-family:"Verdana","sans-serif";
color:black'>STStartPoint()</span></strong><span style='color:#1F497D'><o:p></o:p></span></p>
<p style='line-height:140%;vertical-align:top'><strong><span style='font-size:
8.0pt;line-height:140%;font-family:"Verdana","sans-serif";color:black'>STEndPoint()</span></strong><span
style='font-size:8.0pt;line-height:140%;font-family:"Verdana","sans-serif";
color:black'> is the equivalent of <a
href="http://msdn.microsoft.com/en-us/library/bb933844.aspx"
id="ctl00_rs1_mainContentContainer_ctl10">STPointN</a></span><code><span
style='font-size:10.0pt;line-height:140%;color:black'>(x.STNumPoints())</span></code><span
style='font-size:8.0pt;line-height:140%;font-family:"Verdana","sans-serif";
color:black'>.<o:p></o:p></span></p>
<p class=MsoNormal><strong><span style='font-size:8.0pt;font-family:"Verdana","sans-serif";
color:black'>STNumPoints() </span></strong><span style='font-size:8.0pt;
font-family:"Verdana","sans-serif";color:black'>This method counts the points
in the description of a <b>geography</b> instance. Duplicate points are
counted. If this instance is a <b>geometry</b> collection, this method returns
of the total number of points in each of the elements in the collection.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal style='margin-bottom:7.5pt;line-height:140%;vertical-align:
top'><b><span style='font-size:8.0pt;line-height:140%;font-family:"Verdana","sans-serif";
color:black'>STPointN()</span></b><span style='font-size:8.0pt;line-height:
140%;font-family:"Verdana","sans-serif";color:black'> returns the point
specified by <i>expression</i> by ordering all the points in the same order
they would be output: </span><span style='font-size:8.0pt;line-height:140%;
font-family:"Verdana","sans-serif";color:red'>first by <b>geography</b>
instance, then by ring within the instance (if appropriate), and then by point
within the ring. </span><span style='font-size:8.0pt;line-height:140%;
font-family:"Verdana","sans-serif";color:black'>This order is deterministic.<br>
If this method is called with a value less than 1, it throws an <b>ArgumentOutOfRangeException</b>.<br>
If this method is called with a value greater than the number of points in the
instance, it returns null.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>I hope this clarifies a
little the desired behavior for polygons and multi part geometries (</span><span
style='color:red'>see in red</span><span style='color:#1F497D'>).<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>As a minimal number of
functions, I guess these ones will suffice:<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal style='margin-left:.5in'><span style='color:#1F497D'>NumPoints(geom)<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:.5in'><span style='color:#1F497D'>PointX(geom,
N) etc.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Note the expression engine
supports embedded functions, therefore for getting the Start/End points
we can say:<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal style='margin-left:.5in'><span style='color:#1F497D'>PointX(geom,
1) etc.<o:p></o:p></span></p>
<p class=MsoNormal style='margin-left:.5in'><span style='color:#1F497D'>PointX(geom,
NumPoints(geom)) etc.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Dan.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>
fdo-internals-bounces@lists.osgeo.org [mailto:fdo-internals-bounces@lists.osgeo.org]
<b>On Behalf Of </b>Robert Fortin<br>
<b>Sent:</b> Tuesday, November 04, 2008 4:41 PM<br>
<b>To:</b> FDO Internals Mail List<br>
<b>Subject:</b> RE: [fdo-internals] Request review of RFC 28
-AddStart/EndExpressionFunctions<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><span style='color:olive'>Guys,<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:olive'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:olive'>Unless there is standard out there,
we can come up with whatever definition we want as long as it is consistant and
it makes sense.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:olive'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:olive'>The RFC proposes the following:<o:p></o:p></span></p>
<p><span lang=EN style='font-size:10.0pt;font-family:"Verdana","sans-serif";
color:black'>If the provided geometry is a point geometry, the result of the
Start/End functions is the x, y, z values of the point.<br>
If the provided geometry is a multi-point geometry, the result of the Start/End
functions is the x, y, z values of the first point.<o:p></o:p></span></p>
<p><span lang=EN style='font-size:10.0pt;font-family:"Verdana","sans-serif";
color:black'>>> I think Start should be referencing the first point and
End the last point in case of multi-point. <o:p></o:p></span></p>
<p><span lang=EN style='font-size:10.0pt;font-family:"Verdana","sans-serif";
color:black'>If the provided geometry is a line geometry, the result of the
Start/End functions is the x, y, z values of the start and end points of the
first line.<br>
If the provided geometry is a multi-line geometry, the result of the Start/End
functions is the x, y, z values of the start and end points of the first line.<o:p></o:p></span></p>
<p><span lang=EN style='font-size:10.0pt;font-family:"Verdana","sans-serif";
color:black'>>> Same here. Start – first point of first line, End –
last point of last line.<o:p></o:p></span></p>
<p><span lang=EN style='font-size:10.0pt;font-family:"Verdana","sans-serif";
color:black'>If the provided geometry is a polygon geometry, the result of the
Start/End functions is the x, y, z values of the start and end points of the exterior
ring of the polygon.<br>
If the provided geometry is a multi-polygon geometry, the result of the
Start/End functions is the x, y, z values of the start and end points of the
exterior ring of the first polygon.<o:p></o:p></span></p>
<p><span lang=EN style='font-size:10.0pt;font-family:"Verdana","sans-serif";
color:black'>>> Same again. Start – first point of first ring, End
– last point of last ring.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:olive'>But we all know that it is not
valuable to use those on polygon or circle (which is just an arc) but I don’t
want the function to throw an error because a polygon geometry is passed as
input. <o:p></o:p></span></p>
<p class=MsoNormal><span style='color:olive'>Let’s agree on what it should be
and return it.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:olive'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:olive'>RF<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:olive'><o:p> </o:p></span></p>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>
fdo-internals-bounces@lists.osgeo.org
[mailto:fdo-internals-bounces@lists.osgeo.org] <b>On Behalf Of </b>Traian
Stanev<br>
<b>Sent:</b> Tuesday, November 04, 2008 3:15 PM<br>
<b>To:</b> FDO Internals Mail List<br>
<b>Subject:</b> RE: [fdo-internals] Request review of RFC 28
-AddStart/EndExpressionFunctions<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Moreover, what if the geometry
is a circle? </span><span style='font-family:Wingdings;color:#1F497D'>J</span><span
style='color:#1F497D'><o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>
fdo-internals-bounces@lists.osgeo.org
[mailto:fdo-internals-bounces@lists.osgeo.org] <b>On Behalf Of </b>Dan Stoica<br>
<b>Sent:</b> Tuesday, November 04, 2008 3:14 PM<br>
<b>To:</b> FDO Internals Mail List<br>
<b>Subject:</b> RE: [fdo-internals] Request review of RFC 28
-AddStart/EndExpressionFunctions<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><span style='color:#1F497D'>Robert, returning to the
original issue: what is the meaning of PointX(geometry, ‘end’) for a
polygon?<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Dan.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>
fdo-internals-bounces@lists.osgeo.org
[mailto:fdo-internals-bounces@lists.osgeo.org] <b>On Behalf Of </b>Robert
Fortin<br>
<b>Sent:</b> Tuesday, November 04, 2008 2:46 PM<br>
<b>To:</b> FDO Internals Mail List<br>
<b>Subject:</b> RE: [fdo-internals] Request review of RFC 28 -AddStart/EndExpressionFunctions<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><span style='color:#003300'>I think there was plenty of good
idea of how far we can go with these kind of functions. But, trying to go
back to the original issue we were trying to resolve by RFC-28 which is simply
to get the coordinates values for the first and last point…<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#003300'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#003300'>I think Romy has an interesting
proposal that makes the function evolutive over time and avoid over populating
the list of functions with new names each time we think of a new possibility.
It also makes it clear that it is about the points on the geometry and not
computed point as other functions like MidX or CentroidX would be (but
that a matter for another debate).<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#003300'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#003300'>I was thinking of even
rationalizing it further (by adding another enumeration parameter to indicate
x,y and z – we forgot about “m” by the way!) but I think the name of the
function PointX, PointY and PointZ are just clear enough.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#003300'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#003300'>Can we go for that as far as the
RFC is concerned?<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#003300'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#003300'>RF<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#003300'><o:p> </o:p></span></p>
<div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>
fdo-internals-bounces@lists.osgeo.org [mailto:fdo-internals-bounces@lists.osgeo.org]
<b>On Behalf Of </b>Romica Dascalescu<br>
<b>Sent:</b> Tuesday, November 04, 2008 11:27 AM<br>
<b>To:</b> FDO Internals Mail List<br>
<b>Subject:</b> RE: [fdo-internals] Request review of RFC 28
-AddStart/EndExpressionFunctions<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><span style='color:#1F497D'>Hi,<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>A different approach is to
create functions which takes a geometry and an enumeration, this way each
provider can implement all cases or just a few of them, e.g.:<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>PointX(geom, enum)<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>PointY(geom, enum)<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>PointZ(geom, enum)<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Where enum can be: ‘start’,
‘end’, ‘min’, ‘max’, ‘centroid’, …<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>For now we may implement just a
few of them (start, end) and in the future we could implement more cases.<o:p></o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='color:#1F497D'>Romy.<o:p></o:p></span></p>
</div>
</div>
</div>
</body>
</html>