XML Validate (R3XMLVALIDATE)¶
Command: R3XMLVALIDATE
Runs a pre-export validation check on a survey plan in the drawing and displays the results in a report dialog. Checks are based on the NSW LRS Digital Plan Validation Rules and R3Survey-specific checks.
Usage¶
- Type
R3XMLVALIDATEat the command line - Select any entity on the plan to validate (parcel, line, point, etc.)
- The validation report dialog opens showing all checks with PASS/FAIL/WARN results
Report dialog¶
The report shows a colour-coded table:
| Result | Colour | Meaning |
|---|---|---|
| PASS | Green | Check passed |
| FAIL | Red | Check failed — must fix before export |
| WARN | Yellow | Warning — review recommended |
| SKIP | Grey | Check not applicable (e.g. compiled plan) |
| ---- | Grey | Not yet implemented |
Buttons:
- Copy — copies the full report as plain text to the clipboard
- Close — dismisses the dialog
Checks performed¶
LRS Rules (NSW Digital Plan Validation)¶
| Rule | Description |
|---|---|
| LRS-2 | Every parcel has geometry (at least one line) |
| LRS-4 | Survey region set (Urban/Rural) |
| LRS-5 | Survey type set (Surveyed/Compiled) |
| LRS-6 | Parcel misclose (1:8000) and area check for lots. Uses legal dimensions (rounded bearings/distances, same as R3LOTEDIT). Checks lots and roads (with ExportRoadArea). Detects legal dimension self-intersection. |
| LRS-8 | Lot area exists — shows legal area (from traverse) and geometric area (from polyline) with difference. Warns if areas differ at 4 significant figures. Shows override area if set. |
| LRS-10 | Part lot areas — checks part lots found and reports count |
| LRS-11 | Date of survey exists and is not a future date |
| LRS-13 | Datum terminals A and B assigned (surveyed plans only) |
| LRS-19 | SCIMS mark count meets pre-SSIR2024 requirements based on lot count |
| LRS-21 | Combined scale factor present (surveyed plans only) |
| LRS-27 | Lot numbers sequential, numeric, multipart consistency |
R3Survey Rules¶
| Rule | Description |
|---|---|
| R3-META | Plan metadata completeness (surveyor, firm, purpose, LGA, parish, county) |
| R3-DESC | Road/Easement/Hydro parcels have descriptions set |
| R3-PREFIX | Parcel name prefixes correct (R for Roads, E for Easements, H for Hydro) |
| R3-CLOSED | All parcels are closed polylines |
| R3-GEOM | No duplicate vertices (zero-length segments) or backtracking legs |
Not yet implemented¶
Rules requiring complex geometry analysis (control traverse loop misclose, datum bearing/distance checks, RM placement rules) and rules requiring SCIMS database access are shown as stubs and will be implemented in future versions.
How it identifies parcels¶
Parcels are identified by:
- XData
Classattribute (Lot, Road, Easement, Hydrography, etc.) - XData
Typeattribute (Road, Easement, Parcel) - Layer name matching against the plan's component layers
Parcels without a Class/Type set and not on a known non-lot layer are treated as lots.
Self-intersection detection¶
LRS-6 builds a legal traverse from the rounded/overridden dimensions (same as R3LOTEDIT) and checks if any non-adjacent legs cross. This detects:
- Line-line crossings
- Line-arc crossings (including major arcs)
- Arc-arc crossings
Adjacent arc-line pairs are also checked since arcs can bulge past the shared vertex.
Crossings are classified as:
- Interior — real geometry problem, reported as FAIL
- Misclose-related — crossing near the start/end junction in long traverses, typically harmless rounding
See also¶
- R3LOTEDIT — lot-level dimension and area review
- R3XMLREPORT — readable text report from exported XML
- Export — NSW LandXML export workflow
- Known Limitations — unsupported scenarios