
MarkLogic 10 Product Documentation
geo:distancegeo:distance(
   $p1 as cts:point,
   $p2 as cts:point,
   [$options as xs:string*]
) as xs:double
Summary
  Returns the distance (in units) between two points.
	  
	  
	
	  
	    | Parameters | 
	  
	
	  
	    | p1 | 
	    
  The first point.
   | 
	  
	  
	    | p2 | 
	    
  The second point.
   | 
	  
	  
	    | options | 
	    
  Options for the operation. The default is ().
   Options include: 
  
     
      - "coordinate-system=string"
 
      - Use the given coordinate system. Valid values are:
        
        - wgs84
 - The WGS84 coordinate system.
 
        - wgs84/double
 - The WGS84 coordinate system at double precision.
 
        - etrs89
 - The ETRS89 coordinate system.
 
        - etrs89/double
 - The ETRS89 coordinate system at double precision.
 
        - raw
 - The raw (unmapped) coordinate system.
 
        - raw/double
 - The raw coordinate system at double precision.
 
         
         
        - "precision=value"
 
        - Use the coordinate system at the given precision. Allowed values:
        
float and double. 
     - "units=value"
 
     - Measure distance and the radii of circles in the specified units.
      Allowed values: 
miles (default), km,
      feet, meters. 
      
    
   | 
	  
	
Usage Notes
  The value of the 
precision option takes precedence over
  that implied by the governing coordinate system name, including the
  value of the 
coordinate-system option. For example, if the
  governing coordinate system is "wgs84/double" and the 
precision
  option is "float", then the operation uses single precision.
See Also
Example
let $sf := cts:point(37, -122)
let $ny := cts:point(40, -73)
return
geo:distance($sf, $ny)
=> 2623.2017796533
    Copyright © 2025 MarkLogic Corporation. MARKLOGIC is a
    registered trademark of MarkLogic Corporation.