Export NSW LandXML (R3EXPORTLANDXMLNSW)¶
Command: R3EXPORTLANDXMLNSW
Exports a survey plan from the current drawing to a NSW LandXML 1.2 file conforming to the NSW LRS ePlan CIF Protocol v4.0, suitable for lodgement via the ePlan portal.
Usage¶
- Type
R3EXPORTLANDXMLNSW - Select any entity belonging to the plan to export — a parcel polyline, reference mark line, connection, or any entity on a plan layer
- In the save dialog, choose a location and filename for the
.xmlfile - R3Survey writes the LandXML file and runs schema validation automatically
- Validation results are reported in the command line
The plan is identified from the selected entity's PlanNo XData. If that is not set, R3Survey matches the entity's layer name against known survey plan names. If only one plan exists in the drawing, it is selected automatically.
Prerequisites¶
Before exporting, ensure:
- The plan exists as a survey plan in the drawing (created with
R3PLorR3IMPORTLANDXML) - Plan metadata is complete — surveyor, firm, date, datum, zone, LGA, parish, county, locality, and purpose. See survey plan metadata
- Parcel polylines are on the plan's component layers or carry
PlanNoXData - Parcel attributes (lot number, class, state) are set via
R3PROPERTIES - SCIMS control marks are imported and datum terminals assigned (see SCIMS control marks)
- Observation overrides are set where legal dimensions differ from drawn geometry (see observation overrides)
What is exported¶
CgPoints¶
Every unique vertex across parcels, reference marks, connections, and control traverses is exported as a CgPoint. Coordinates are output as Northing Easting (grid order) to 6 decimal places.
| Attribute | Source |
|---|---|
name |
Sequential number (1, 2, 3, ...) in order of first encounter |
pntSurv |
Point category — control, boundary, reference, sideshot, or traverse. When a point is shared between categories, the highest priority wins |
state |
proposed or existing — follows the parcel state |
oID |
SCIMS mark number (control points only) |
desc |
Datum terminal designation — A or B (control points only) |
Points shared between parcels are deduplicated — each physical vertex appears once.
Control points that coincide with a SCIMS DBPoint on the SCIMS-CTRL layer additionally include an AHD height as a third coordinate value.
Parcels¶
Each parcel polyline is exported as a Parcel element containing a CoordGeom with Line and Curve elements tracing the boundary geometry.
| Attribute | Source |
|---|---|
name |
From LotNo XData (or ParcelName if set). "PT" prefix is stripped for Part lots. |
class |
From Class XData — Lot, Road, Easement, etc. Default: auto-populated from layer component type. |
state |
proposed, existing, or adjoining. Default: proposed |
parcelType |
Auto-detected: Part if lot name starts with "PT", otherwise Single. Multipart parents are generated automatically. |
parcelFormat |
From ParcelFormat XData. Default: Standard |
area |
Computed from polyline geometry (square metres). Written for proposed Lots only. |
desc |
Parcel description — road name, easement description, water body name, etc. Written when populated. |
A Center element (polygon centroid) is included for closed parcels with three or more vertices.
Both straight segments and arc segments (from polyline bulge values) are included in the geometry.
Part lots and multipart parents¶
When multiple polylines have the same lot number with a "PT" prefix (e.g. PT101), R3Survey automatically:
- Strips the "PT" prefix from the lot name
- Sets
parcelType="Part"on each individual parcel - Assigns letter suffixes (A, B, C...) to distinguish the parts
- Generates a Multipart parent element with
parcelType="Multipart"and the summed total area of all parts
The Multipart parent contains nested <Parcels> elements referencing each child by name. This matches the NSW LandXML recipe structure for part lots.
Observations (ReducedObservation / ReducedArcObservation)¶
Every parcel boundary segment becomes a ReducedObservation (straight) or ReducedArcObservation (arc). Observations from reference mark, connection, and control layers are appended in segment order.
Straight segments¶
| Attribute | Source |
|---|---|
azimuth |
Computed from vertex positions, or legal bearing override |
horizDistance |
Computed from vertex positions, or legal distance override |
distanceType |
From override, or plan default. Omitted when Measured (the spec default) |
azimuthType |
From override. Omitted when Measured |
desc |
Segment category — Boundary, Road, Easement, Reference, or Connection |
distanceAccClass |
From override (if set) |
adoptedDistanceSurvey |
Plan number the dimension was adopted from (if set) |
distanceAdoptionFactor |
Combined scale factor (if set) |
A FieldNote child element is included when the Note override is set.
Arc segments¶
| Attribute | Source |
|---|---|
chordAzimuth |
Computed chord bearing, or legal bearing override |
length |
Computed arc length, or legal arc length override |
radius |
Computed from bulge, or legal radius override |
rot |
cw or ccw — derived from bulge sign |
arcType |
From override, or plan default |
Observation types and plan defaults¶
The plan's Survey Type setting controls the default observation type:
| Survey Type | Default distanceType | Default azimuthType |
|---|---|---|
surveyed |
Measured (omitted from XML) |
Measured (omitted) |
compiled |
Compiled |
Compiled |
Per-segment overrides set via R3PROPERTIES take priority over these defaults.
Shared boundary deduplication¶
When two adjacent lots share a boundary segment, both polylines contain that segment. The exporter deduplicates by matching point pairs in both directions (A to B equals B to A). When a duplicate is found, the version with observation overrides is preferred.
Survey header¶
The SurveyHeader and its child elements are populated from the survey plan metadata:
| Element | Source |
|---|---|
SurveyHeader@name |
Plan number (digits only for DP plans) |
SurveyHeader@type |
Survey Type — surveyed or compiled |
SurveyHeader@desc |
Plan Heading |
SurveyHeader@surveyorFirm |
Firm |
SurveyHeader@surveyorReference |
Reference |
Personnel@name |
Surveyor |
PurposeOfSurvey@name |
Purpose |
AdministrativeDate "Date Of Survey" |
Survey date |
AdministrativeDate "Registration Date" |
Registration date (falls back to survey date) |
AdministrativeArea entries |
LGA, Parish, County, Locality, Survey Region |
Coordinate system¶
| Element | Value |
|---|---|
CoordinateSystem@horizontalDatum |
Always Local (per NSW LRS recipe) |
CoordinateSystem@datum |
From plan Datum setting — MGA2020, MGA94, MM, or Local |
CoordinateSystem@verticalDatum |
From plan Vert. Datum (if set) |
CoordinateSystem@desc |
Orientation plan number (when Datum is MM) |
CgPoints@zoneNumber |
MGA zone number (written only for MGA datums) |
Note
The horizontalDatum is always Local because drawing coordinates are in a local (assumed) grid. MGA coordinates for control marks are recorded separately in RedHorizontalPosition elements within the ObservationGroup.
Instrument setups¶
One InstrumentSetup is created for every unique point that appears as the start or end of an observation. Instrument height is always 0.
SCIMS control data (RedHorizontalPosition)¶
For each CgPoint that coincides with a SCIMS control mark on the SCIMS-CTRL layer, a RedHorizontalPosition element is written inside the ObservationGroup:
| Attribute | Source |
|---|---|
latitude |
SCIMS MGA Northing |
longitude |
SCIMS MGA Easting |
horizontalDatum |
MGA2020 |
horizontalFix |
From SCIMS |
class |
SCIMS GDA horizontal class |
positionalUncertainty |
SCIMS positional uncertainty |
currencyDate |
SCIMS retrieval date or GDA date (ISO 8601) |
The link between plan points and SCIMS marks is by coordinate coincidence — the SCIMS DBPoint must be placed at the same position as the corresponding survey plan vertex.
Monuments¶
Monument data is read from XData on reference mark and connection line entities. Each endpoint with monument XData becomes a Monument element:
| Attribute | Source XData key |
|---|---|
type |
StartMonumentType or EndMonumentType (default: Peg) |
state |
StartState or EndState (default: Found) |
originSurvey |
StartOriginSurvey or EndOriginSurvey (omitted for Placed or Not Marked) |
The Monuments block is omitted entirely if no monument data is found in the plan.
Set monument data using the Reference Mark expander in R3PROPERTIES.
Number formatting¶
Distances are exported using your current R3UNITS length precision settings (significant figures, rounding), formatted as plain decimals with no thousands separator and no unit abbreviation. All distances are in metres.
Bearings use the NSW decimal DDD.MMSS format (e.g. 45.3015 = 45 degrees 30 minutes 15 seconds).
Areas are computed in square metres from polyline geometry.
Schema validation¶
After writing the file, R3Survey automatically validates the output against:
- LandXML-1.2.xsd — the base LandXML schema
- NSW ePlan CIF Protocol v4.0 — NSW-specific structure rules
- NSW ePlan CIF Enumerated Types v4.0 — valid values for coded fields
Validation results are reported in the command line:
[VALIDATION] Schema validation PASSED — no errors.— the file is structurally valid[VALIDATION] Schema validation: N error(s):— lists each error with line number[VALIDATION] LandXML-1.2.xsd not found — schema validation skipped.— XSD files not found in the installation
Note
The export file is always written regardless of validation results. Fix any reported errors and re-export as needed. Schema validation checks XML structure — it does not check NSW business rules (misclose, area consistency, etc.).
How parcels are found¶
Polylines are included in the export if they meet either condition:
- The entity has
PlanNoXData matching the selected plan, or - The entity is on the plan's Boundaries component layer (from
R3PLANLAYERSETTINGS)
This means polylines drawn on the correct plan layer are automatically included in the export even without being explicitly tagged with PlanNo XData.
Entities on the plan's Reference Marks, Other (connections), and Control component layers are also included as observations:
| Component layer | Observation desc |
Use for |
|---|---|---|
| Reference Marks | Reference |
Lines from boundary corners to reference marks |
| Other (connections) | Connection |
Lines from SCIMS marks to survey corners |
| Control | Connection |
Lines between SCIMS marks (control traverse) |
See Drawing layers for NSW LandXML export for the full layer setup guide.
See also¶
- NSW Digital Plans overview — end-to-end workflow and plan metadata
- Observation Overrides — setting and checking legal dimension overrides
- Import SCIMS Control Points — importing geodetic control marks
- Survey Plan Setup (R3PL) — creating plans and configuring metadata
- R3PROPERTIES — viewing and editing parcel and observation properties
- LandXML concepts — general LandXML background