Survex data files¶
Survey data is entered in the form of text files. You can use any text editor you like for this, so long as it has the capability of writing a plain text file in UTF-8 or ASCII encoding. The data format is very flexible; unlike some other cave surveying software, Survex does not require survey legs to be rearranged to suit the computer, and the ordering of instrument readings on each line is fully specifiable. So you can enter your data much as it appears on the survey notes, which is important in reducing the opportunities for transcription errors.
Also all the special characters are user-definable - for example, data items can be separated by spaces and tabs, or commas (e.g. when exporting from a spreadsheet), etc; the decimal point can changed to be a comma (as used in continental Europe), or a slash (sometimes used for clarity in written survey notes), or anything else you care to choose. This flexibility means that it should be possible to read in data from almost any sort of survey data file without much work.
Survex places no restrictions on you in terms of the ordering of survey legs. You can enter or process data in any order and Survex will read it all in before determining how it is connected. You can also use the hierarchical naming so that you do not need to worry about using the same station name twice.
The usual arrangement is to have one file which lists all the others that are
included (e.g., 161.svx). Then cavern 161 will process all your data.
To just process a section use the filename for that section, e.g. cavern
dtime will process the dreamtime file/section of Kaninchenhöhle. To help you
out, if the survey has no fixed points and you are using Survex’s default
unspecified coordinate system, cavern will pick a station and fix it at
(0,0,0) (and print a info message to this effect).
It is up to you what data you put in which files. You can have one file per trip, or per area of the cave, or just one file for the whole cave if you like. On a large survey project it makes sense to group related surveys in the same file or directory.
Readings¶
Blank lines (i.e. lines consisting solely of BLANK characters) are ignored,
except that in interleaved data a blank line ends the current traverse.
The last line in the file need not be terminated by an end of line character.
All fields on a line must be separated by at least one BLANK character.
An OMIT character (default -) indicates that a field is omitted. If the
field is not optional, then an error is given.
Survey Station Names¶
Survex has a powerful system for naming stations. It uses a hierarchy of survey names, similar to the nested folders your computer stores files in. So point 6 in the entrance survey of Kaninchenhöhle (cave number 161) can just be referred to as station 6 in the context of that particular survey, but it has the fully qualified name: 161.entrance.6
This seems a natural way to refer to station names. It also means that it is very easy to include more levels, for example if you want to plot all the caves in the area you just list them all in another file, specifying a new prefix. So to group 3 nearby caves on the Loser Plateau you would use a file like this:
*begin Loser
*include 161
*include 2YrGest
*include 145
*end Loser
The entrance series point mentioned above would now be referred to as: Loser.161.entrance.6
You do not have to use this system at all, and can just give all stations unique identifiers if you like: 1, 2, 3, 4, 5, … 1381, 1382 or AA06, AA07, P34, ZZ6, etc.
Station and survey names may contain any alphanumeric characters and
additionally any characters in NAMES (default _ and -).
Alphabetic characters may be forced to upper or lower case by using the
*case command. Station names may be any length - if you want to only treat
the first few characters as significant you can get cavern to truncate the
names using the *truncate command.
If you have survey data which uses . as part of the station name (for
example, if you use the Toporobot convention of naming stations along a
side passage from station 6 as 6.1, 6.2, 6.3, etc) then
there are two sensible options:
You can change the separator to a different character which you don’t want to use in station names (e.g.
:) and set.as an allowed name character like so:*set separator : *set names ._-Note that the character(s) listed replace those previously allowed, so here we have explicitly list
_and-as still allowed in station names to effectively add..If you want to do this, you should use Survex 1.4.6 or later. 1.4.12 also fixed a bug with survey filtering when loading
.3dfiles which use a separator other than..You can use a different character instead of
.for naming such side-passage stations, e.g.6_1,6_2, etc. This has the advantage of working with older Survex versions.
Anonymous Stations¶
Survex supports the concept of anonymous survey stations, that is survey
stations without a name. Each time an anonymous station name is used it
represents a different point. Currently three types of anonymous station are
supported, referred to by one, two or three separator characters - with the
default separator of ., that means ., .., and ... are anonymous
stations. Their meanings are:
- Single separator (
.by default) An anonymous non-wall point at the end of an implicit splay.
- Double separator (
..by default) An anonymous wall point at the end of an implicit splay.
- Triple separator (
...by default) An anonymous point with no implicit flags on the leg (intended for cases like a disto leg along a continuing passage).
You can map - to .. (for compatibility with data from pocket topo)
using the command:
*alias station - ..
Support for anonymous stations and for *alias station - .. was added in
Survex 1.2.7.
Support for anonymous stations in the cartesian data style was added in
Survex 1.4.10.
Numeric fields¶
Measurements start with an optional PLUS or MINUS character (+
and - by default), and have an optional decimal point (represented by a
DECIMAL character, default: .) which may be embedded, leading or
trailing. No spaces are allowed between the various elements.
All of these are valid examples: +47, 23, -22, +4.5, 1.3, -0.7, +12., 23., -34, +.15, .4, -.05
In formal syntax that’s either:
[<MINUS>|<PLUS>] <integer part> [ <DECIMAL> [ <decimal fraction> ] ]
or
[<MINUS>|<PLUS>] <DECIMAL> <decimal fraction>
Accuracy¶
Accuracy assessments may be provided or defaulted for any survey leg. These
determine the distribution of loop closure errors over the legs in the loop.
See *SD for more information.
Cavern Commands¶
Commands in .svx files are introduced by an asterisk (by default - this can
be changed using the set command).
The commands are documented below in a common format:
Command Name
Syntax
Example
Validity
Description
Caveats
See Also
ALIAS¶
- Syntax
*alias station <alias> <target>*alias station <alias>- Example
*begin parsons_nose *alias station - .. 1 2 12.21 073 -12 2 - 4.33 011 +02 2 - 1.64 180 +03 2 3 6.77 098 -04 *end parsons_nose
- Description
*aliasallows you to map a station name which appears in the survey data to a different name internally. At present, you can only create an alias of-to.., which is intended to support the pocket topo style notation of-being a splay to an anonymous point on the cave wall. You can also unalias-with*alias station -.Aliases are scoped by
*begin/*endblocks - when a*endis reached, the aliases in force at the corresponding*beginare restored.*aliaswas added in Survex 1.2.7.- See Also
*begin,*end
BEGIN¶
- Syntax
*begin <survey>*begin- Example
*begin littlebit 1 2 10.23 106 -02 2 3 1.56 092 +10 *end littlebit
; length of leg across shaft estimated *begin *sd tape 2 metres 9 10 6. 031 -07 *end
- Description
*beginstores the current values of the current settings such as instrument calibration, data format, and so on. These stored values are restored after the corresponding*end. If a survey name is given, this is used inside the*begin/*endblock, and the corresponding*endshould have the same survey name.*begin/*endblocks may be nested to indefinite depth.- See Also
*end,*prefix
CARTESIAN¶
- Syntax
*cartesian grid*cartesian magnetic*cartesian true*cartesian grid <rotation> <units>*cartesian magnetic <rotation> <units>*cartesian true <rotation> <units>- Example
*cartesian magnetic
*cartesian true 90 degrees
- Description
*cartesianspecifies which North cartesian data is aligned to, and can optionally specify an extra rotation to apply. The default is that it’s aligned with True North.Notes on the different North options:
GRIDNorth in the current input coordinate system (as set by e.g.
*cs UTM30). If no input or output coordinate system is set then this is the same asTRUEsince in Survex’s default unspecified coordinate system True North is the same as Grid North.MAGNETICMagnetic North. If using automatically calculated declinations then this will be calculated at the
*datein effect for each cartesian data reading.TRUETrue North. If no input or output coordinate system is set then this is the same as
GRIDsince in Survex’s default unspecified coordinate system True North is the same as Grid North.
*cartesianwas added in Survex 1.4.10. Prior to this cartesian data was documented as aligned with True North, but if an output coordinate system was specified it was actually aligned with this (which was not intended and doesn’t really make sense since changing the output coordinate system would rotate cartesian data by the difference in grid convergence).- See Also
*cs,*data cartesian,*date,*declination
CALIBRATE¶
- Syntax
*calibrate <quantity list> <zero error>*calibrate <quantity list> <zero error> <scale>*calibrate <quantity list> <zero error> <units>*calibrate <quantity list> <zero error> <units> <scale>*calibrate default- Example
*calibrate tape +0.3
- Description
*calibrateis used to specify instrument calibrations, via a zero error and an optional scale factor (which defaults to 1.0 if not specified). Without an explicit calibration the zero error is 0.0 and the scale factor is 1.0.<quantity list>is one or more of:Quantity
Aliases
LENGTHTAPEBEARINGCOMPASSGRADIENTCLINOBACKLENGTHBACKTAPEBACKBEARINGBACKCOMPASSBACKGRADIENTBACKCLINOCOUNTCOUNTERLEFTRIGHTUPCEILINGDOWNFLOORDEPTHEASTINGDXNORTHINGDYALTITUDEDZDECLINATIONThe specified calibration is applied to each quantity in the list, which is handy if you use the same instrument to measure several things, for example:
*calibrate left right up down +0.1
You need to be careful about the sign of the ZeroError. Survex follows the convention used with scientific instruments - the ZeroError is what the instrument reads when measuring a reading which should be zero. So for example, if your tape measure has the end missing, and you are using the 30cm mark to take all measurements from, then a zero distance would be measured as 30cm and you would correct this with:
*CALIBRATE tape +0.3
If you tape was too long, starting at -20cm (it does happen!) then you can correct it with:
*CALIBRATE tape -0.2
Note: ZeroError is irrelevant for Topofil counters and depth gauges since pairs of readings are subtracted.
In the first form in the synopsis above, the zero error is measured by the instrument itself (e.g. reading off the number where a truncated tape now ends) and any scale factor specified applies to it, like so (Scale defaults to 1.0):
Value = ( Reading - ZeroError ) * Scale
In the second form above (supported since Survex 1.2.21), the zero error has been measured externally (e.g. measuring how much too long your tape is with a ruler) - the units of the zero error are explicitly specified and any scale factor is not applied to it:
Value = ( Reading * Scale ) - ZeroError
With the default scale factor of 1.0 the two forms are equivalent, though they still allow you to document how the zero error has been determined.
With older Survex versions, you would specify the magnetic declination (difference between True North and Magnetic North) by using
*calibrate declinationto set an explicit value (with no scale factor allowed). Since Survex 1.2.22, it’s recommended to instead use the new*declinationcommand instead - see the documentation of that command for more details.- See Also
*declination,*units
CASE¶
- Syntax
*case preserve*case toupper*case tolower- Example
*begin bobsbit ; Bob insists on using case sensitive station names *case preserve 1 2 10.23 106 -02 2 2a 1.56 092 +10 2 2A 3.12 034 +02 2 3 8.64 239 -01 *end bobsbit
- Description
*casedetermines how the case of letters in survey names is handled. By default all names are forced to lower case (which gives a case insensitive match), but you can tell cavern to force to upper case, or leave the case as is (in which case2aand2Awill be regarded as different).- See Also
*truncate
COPYRIGHT¶
- Syntax
*copyright <year> <text>*copyright <year1>-<year2> <text>- Example
*begin littlebit *copyright 1983 CUCC 1 2 10.23 106 -02 2 3 1.56 092 +10 *end littlebit
*copyright 1976-2024 "CUCC Expo"
- Validity
valid at the start of a
*begin/*endblock.- Description
*copyrightallows the copyright information to be recorded in a way that can be automatically collated.The date can be specified as a single year or a range of years. Two digit years are not allowed and the end of the range can not be before the start.
The text is expected to identify the copyright holder - typically it will be the name of a person or group. Unless it is a single word you should put double quotes around it.
Prior to Survex 1.4.17 there weren’t any checks of the syntax. Essentially
*copyrightused to be treated like a named comment line.With Survex 1.4.17 and later you’ll get a warning for an empty
*copyright, for an invalid date, or if you open but fail to close double quotes around the text.These diagnostic messages were made warnings to avoid breaking processing of existing datasets which might contain
*copyrightlines which don’t conform with the defined syntax (especially as the format of the date and text fields were not documented prior to 1.4.17).- See Also
*begin
CS¶
- Syntax
*cs <coordinate system>*cs out <coordinate system>- Example
*cs UTM60S *fix beehive 313800 5427953 20
; Output in the coordinate system used in the Totes Gebirge in Austria *cs out custom "+proj=tmerc +lat_0=0 +lon_0=13d20 +k=1 +x_0=0 +y_0=-5200000 +ellps=bessel +towgs84=577.326,90.129,463.919,5.137,1.474,5.297,2.4232"
- Description
*csallows the coordinate systems used for fixed points and for processed survey data to be specified.The “input” coordinate system is set with
*csand you can change it between fixed points if you have some fixed points in different coordinate systems to others.The “output” coordinate system is set with
*cs outand is what the survey data is processed in and the coordinate system used for resultant.3dfile (which means Aven knows how to translate coordinates to allow export to formats such as GPX and KML, and to overlay terrain data and other geodata). The output coordinate system must be in metres with axis order (East, North, Up), so for example*cs out long-latisn’t valid because it isn’t in metres, while*cs out jtskisn’t valid because the axes point West and South.*cswas added in Survex 1.2.14, but handling of fixed points specified with latitude and longitude didn’t work until 1.2.21. Also*fixwith standard deviations specified also didn’t work until 1.2.21.The currently supported coordinate systems are:
EPSG:followed by a positive integer code. EPSG codes cover most coordinate systems in use. The website https://epsg.io/ is a useful resource for finding the EPSG code you want. For example,EPSG:4167is NZGD2000. Supported since Survex 1.2.15.CUSTOMfollowed by a PROJ string (like in the example above).ESRI:followed by a positive integer code. ESRI codes are used by ArcGIS to specify coordinate systems (in a similar way to EPSG codes) and PROJ supports many of them. Supported since Survex 1.2.15.EUR79Z30for UTM zone 30, EUR79 datum. Supported since Survex 1.2.15.IJTSKfor the modified version of the Czechoslovak S-JTSK system where the axes point East and North. Supported since Survex 1.2.15.IJTSK03for a variant of IJTSK. Supported since Survex 1.2.15.JTSKfor the Czechoslovak S-JTSK system. Its axes point West and South, so it’s not supported as an output coordinate system. Supported since Survex 1.2.16.JTSK03for a variant of JTSK. Supported since Survex 1.2.16.LONG-LATfor longitude/latitude. The WGS84 datum is assumed. NB*fixexpects the coordinates in the order x,y,z which means longitude (i.e. E/W), then latitude (i.e. N/S), then altitude. Supported since Survex 1.2.15.OSGB:followed by a two letter code for the UK Ordnance Survey National Grid. The first letter should be ‘H’, ‘N’, ‘O’, ‘S’ or ‘T’; the second any letter except ‘I’. For example,OSGB:SD. Supported since Survex 1.2.15.S-MERCfor the “Web Mercator” spherical mercator projection, used by online map sites like OpenStreetMap, Google maps, Bing maps, etc. Supported since Survex 1.2.15.UTMfollowed by a zone number (1-60), optionally followed by “N” or “S” specifying the hemisphere (default is North). The WGS84 datum is assumed. A potential source of confusion here is the Military Grid Reference System which divides each UTM zone into latitude bands represented by a letter suffix, so here 33S and 33N have different meanings to those in Survex - they are both parts of UTM zone 33, but both are in the Northern hemisphere (33S is around Sicily, 33N around Cameroon). To use such coordinates in Survex, replace suffixes “C” to “M” with “S”, and “N” to “X” with “N”.
By default, Survex works in an unspecified coordinate system (and this was the only option before
*cswas added). However, it’s useful for the coordinate system which the processed survey data is in to be specified if you want to use the processed data in ways which required knowing the coordinate system (such as exporting a list of entrances for use in a GPS). You can now do this by using*cs out.It is also useful to be able to take coordinates for fixed points in whatever coordinate system you receive them in and put them directly into Survex, rather than having to convert with an external tool. For example, you may have your GPS set to show coordinates in UTM with the WGS84 datum, even though you want the processed data to be in some local coordinate system. Someone else may provide GPS coordinates in yet another coordinate system. You just need to set the appropriate coordinate system with
*csbefore each group of*fixcommands in a particular coordinate system.If you’re going to make use of
*cs, then a coordinate system must be specified for everything, so a coordinate system must be in effect for all*fixcommands, and you must set the output coordinate system before any points are fixed.Also, if
*csis in use, then you can’t omit the coordinates in a*fixcommand, and a fixed point won’t be invented if none exists.If you use
*cs outmore than once, the second and subsequent commands are silently ignored - this makes it possible to combine two datasets with different*cs outsettings without having to modify either of them.Something to be aware of with
*csis that altitudes are currently assumed to be “height above the ellipsoid”, whereas GPS units typically give you “height above sea level”, or more accurately “height above a particular geoid”. This is something we’re looking at how best to address, but you shouldn’t need to worry about it if your fixed points are in the same coordinate system as your output, or if they all use the same ellipsoid. For a more detailed discussion of this, please see: https://expo.survex.com/handbook/survey/coord.htm- See Also
*declination auto,*fix
DATA¶
- Syntax
*data <style> <ordering>*data*data default*data ignore- Example
*data normal from to compass tape clino
*data normal station noteall newline compass tape clino
- Description
<style>NORMAL|DIVING|CARTESIAN|TOPOFIL|CYLPOLAR|NOSURVEY|PASSAGE<ordering>ordered list of instruments - which are valid depends on the style.
In Survex 1.0.2 and later,
TOPOFILis simply a synonym forNORMAL, left in to allow older data to be processed without modification. Use the nameNORMALby preference.Most of the styles support two variants - interleaved and non-interleaved. Non-interleaved is “one line per leg”, interleaved has a line for the data shared between two legs (e.g.
STATION:FROM/TO,DEPTH:FROMDEPTH/TODEPTH,COUNT:FROMCOUNT/TOCOUNT). Note that not all readings that can be shared have to be, for example here the to/from station name is shared but the depth gauge readings aren’t:*data diving station newline fromdepth compass tape todepth
In addition, interleaved data can have a
DIRECTIONreading, which can beFfor a foresight orBfor a backsight (meaning the direction of the leg is reversed).In interleaved data, a blank line (one which contains only characters which are set as
BLANK) ends the current traverse so can be used to handle branches in the survey, e.g.:*data normal station newline tape compass clino 1 9.34 087 -05 2 ; single leg up unexplored side passage 4.30 002 +06 3 2 ; and back to the main package 6.29 093 -02 4In data styles which include a
TAPEreading (i.e.NORMAL,DIVING, andCYLPOLARdata styles),TAPEmay be replaced byFROMCOUNT/TOCOUNT(orCOUNTin interleaved data) to allow processing of surveys performed with a Topofil instead of a tape.In Survex 1.2.44 and later, you can use
*datawithout any arguments to keep the currently set data style, but resetting any state. This is useful when you’re entering passage tubes with branches - see the description of thePASSAGEstyle below. (This feature was originally added in 1.2.31, but was buggy until 1.2.44 - any data up to the next*datagets quietly ignored.)- DEFAULT
Select the default data style and ordering (
NORMALstyle, ordering:from to tape compass clino).- IGNORE
Ignores survey data until another
*datacommand sets a different style, or until the end of the enclosing*begin…*endblock. Note that commands are still processed, only survey data is ignored. This is useful if you have some survey data which has been superseded by a better survey of the same passage, but you want to keep the superseded data around, just not process it. Added in Survex 1.4.11.- NORMAL
The usual tape/compass/clino centreline survey. For non-interleaved data the allowed readings are:
FROMTOTAPECOMPASSCLINOBACKTAPEBACKCOMPASSBACKCLINO; for interleaved data the allowed readings are:STATIONDIRECTIONTAPECOMPASSCLINOBACKTAPEBACKCOMPASSBACKCLINO.BACKTAPEwas added in Survex 1.2.25.The
CLINO/BACKCLINOreading is not required - if it is omitted in the*datacommand then the vertical standard deviation is taken to be proportional to the tape measurement for all reading. Alternatively, if the reading is included in the*datacommand then individual clino readings can be given asOMIT(default-) and will be treated in this way, which allows for data where only some clino readings are missing.Examples of style
NORMAL:*data normal from to compass clino tape 1 2 172 -03 12.61 2 3 202 - 8.59 ; clino not recorded
*data normal station newline direction tape compass clino 1 F 12.61 172 -03 2
*data normal from to compass clino fromcount tocount 1 2 172 -03 11532 11873
*data normal station count newline direction compass clino 1 11532 F 172 -03 2 11873
- DIVING
An underwater survey where the vertical information is from a diver’s depth gauge. This style can also be also used for an above-water survey where the altitude is measured with an altimeter.
DEPTHis defined as the altitude (Z) so increases upwards by default. So for a diver’s depth gauge, you’ll need to use*CALIBRATEwith a negative scale factor (e.g.*calibrate depth 0 -1).For non-interleaved data the allowed readings are:
FROMTOTAPECOMPASSCLINOBACKTAPEBACKCOMPASSBACKCLINOFROMDEPTHTODEPTHDEPTHCHANGE(the vertical can be given as readings at each station, (FROMDEPTH/TODEPTH) or as a change along the leg (DEPTHCHANGE)).BACKTAPEwas added in Survex 1.2.25.For interleaved data the allowed readings are:
STATIONDIRECTIONTAPECOMPASSBACKTAPEBACKCOMPASSDEPTHDEPTHCHANGE. The vertical change can be given as a reading at the station (DEPTH) or as a change along the leg (DEPTHCHANGE):*data diving from to tape compass fromdepth todepth 1 2 14.7 250 -20.7 -22.4
*data diving station depth newline tape compass 1 -20.7 14.7 250 2 -22.4
*data diving from to tape compass depthchange 1 2 14.7 250 -1.7
Survex 1.2.20 and later allow an optional
CLINOand/orBACKCLINOreading inDIVINGstyle. At present these extra readings are checked for syntactic validity, but are otherwise ignored. The intention is that a future version will check them against the other readings to flag up likely blunders, and average with the slope data from the depth gauge and tape reading.- CARTESIAN
Cartesian data style allows you to specify the (x,y,z) changes between stations. It’s useful for digitising surveys where the original survey data has been lost and all that’s available is a drawn up version.
*data cartesian from to northing easting altitude 1 2 16.1 20.4 8.7
*data cartesian station newline northing easting altitude 1 16.1 20.4 8.7 2
By default, the North used is True North, but you can specify to use Magnetic or Grid North (in the input coordinate system) with the
*cartesiancommand, and also specify an additional rotation to apply (since Survex 1.4.10).In Survex < 1.4.10, if
*cswas used then cartesian data were incorrectly interpreted as relative to Grid North in the output coordinate system (if*csis not used then Grid North in the default unspecified coordinate system is the same as True North).- CYLPOLAR
A
CYLPOLARstyle survey is very similar to a diving survey, except that the tape is always measured horizontally rather than along the slope of the leg.*data cylpolar from to tape compass fromdepth todepth 1 2 9.45 311 -13.3 -19.0
*data cylpolar station depth newline tape compass 1 -13.3 9.45 311 2 -19.0
*data cylpolar from to tape compass depthchange 1 2 9.45 311 -5.7
- NOSURVEY
A
NOSURVEYsurvey doesn’t have any measurements - it merely indicates that there is line of sight between the pairs of stations.*data nosurvey from to 1 7 5 7 9 11
*data nosurvey station 1 7 5 *data 9 11
- PASSAGE
This survey style defines a 3D “tube” modelling a passage in the cave. The tube joins the survey stations listed in the order listed. It’s permitted to go between survey stations which aren’t directly linked by the centre-line survey. This can be useful - sometimes the centreline will step sideways or up/down to allow a better sight for the next leg and you can ignore the extra station. You can also define tubes along unsurveyed passages, akin to “nosurvey” legs in the centreline data.
This means that you need to split off side passages into separate tubes, and hence separate sections of passage data, starting with a new
*datacommand with no arguments.Simple example of how to use this data style (note the use of
noteallto allow a free-form text description to be given):*data passage station left right up down noteall 1 0.1 2.3 8.0 1.4 Sticking out point on left wall 2 0.0 1.9 9.0 0.5 Point on left wall 3 1.0 0.7 9.0 0.8 Highest point of boulder
Each
*data passagedata block describes a single continuous tube - to break a tube or to enter a side passage you need to have a second block. With Survex 1.2.30 and older, you had to repeat the entire*data passageline to start a new tube, but in Survex 1.2.31 and later, you can just use*datawithout any arguments.For example here the main passage is 1-2-3 and a side passage is 2-4:
*data passage station left right up down noteall 1 0.1 2.3 8.0 1.4 Sticking out point on left wall 2 0.0 1.9 9.0 0.5 Point on left wall opposite side passage 3 1.0 0.7 9.0 0.8 Highest point of boulder ; If you need to be compatible with Survex 1.2.30 or earlier ; you need to repeat the full "*data" command here instead. *data 2 0.3 0.2 9.0 0.5 4 0.0 0.5 6.5 1.5 Fossil on left wall
Survex 1.4.22 and later allow any (or even all) of the dimensions to be omitted from the passage data style, which is equivalent to omitting that dimension from each station. For example, in a maze cave you might use splays to locate the walls and only record up and down dimensions at each station:
*data passage station up down a 0.7 1.4 b 1.2 1.0
Omitting all dimensions allows using this style to record a description of each survey station:
*data passage station noteall 1 Sticking out point on left wall 2 Point on left wall opposite side passage 3 Highest point of boulder
LENGTHis a synonym forTAPE;BEARINGforCOMPASS;GRADIENTforCLINO;COUNTforCOUNTER.The units of each quantity may be set with the
*unitscommand.IGNOREskips a field (it may be used any number of times), andIGNOREALLmay be used last to ignore the rest of the data line.Survex 1.4.22 added support for
NOTEandNOTEALLreadings.NOTEaccepts a double-quoted string which describes the station (the value doesn’t need to be quoted if it is a single word). An omit character (-by default) can be use to indicate there’s no note, which has the same effect as an empty string (""); if you actually want to specify a note that’s exactly-then use quotes, i.e."-").NOTEALLis an alternative toNOTE, which instead takes the rest of the line as the text describing the station. Leading and trailing blanks are not included in the note text. At most oneNOTEorNOTEALLcan be used in a specified style.Since the note describes a station, it can be use when
STATIONcan be (so you can’t put station notes in non-interleaved data, because it’s not clear whether the note is forFROMorTO).Current the notes in
NOTEandNOTEALLaren’t processed further, but the intention is a future version will carry them through so they can be seen in Aven, etc. So currentlyNOTEALLandIGNOREALLboth actually ignore the rest of the line - useNOTEALLwhen the text describes the station andIGNOREALLin other situations.- See Also
*units
DATE¶
- Syntax
*date <date type(s)> <ISO date>*date <date type(s)> <ISO date1> <ISO date2>*date <ISO date>*date <ISO date1> <ISO date2>*date <legacy date>*date <legacy date1>-<legacy date2>- Example
*date explored 1987-06-20 1987-06-28 *date surveyed 1987-07-11
*date explored surveyed 2024-11-29
*date 1976-08
*date 1968
*date 1987.07.27
*date 1985.08.12-1985.08.13
*date 2000.10
- Validity
valid at the start of a
*begin/*endblock.- Description
*datespecifies the date that the survey was done. A range of dates can be specified (e.g. for “surveyed” date, this is useful for overnight or multi-day surveying trips).Date components must be in the order year then month then day. Later components can be omitted to specify the date to the granularity of a month or year (which is sometimes useful for older survey data where the exact date of a survey may no longer be known). Such partial dates are treated as a date range for that whole month or year; if used in a date range, the appropriate extreme of the year or month is used as that end of the range - e.g.
2001 2004-06is from the start of 2001 to the end of June 2004.Survex 1.4.13 added support for date types
exploredandsurveyed(*datewithout a type is assumed to be specifying thesurveyeddate only).Survex 1.4.13 also added support for the ISO date format, where the separator between components is
-. In older versions the separator between components had to be.(with-used between dates in a range). The older date format is still accepted, but we strongly recommend using ISO format dates in new data because it’s a standardised date format.We recommend avoiding two digit years because of the inherent ambiguity, but they are accepted (with a