pub enum AgsiObservationExpHole {
Variant0(AgsiObservationExpHoleVariant0),
Variant1(AgsiObservationExpHoleVariant1),
}Expand description
An agsiObservationExpHole object provides geometry and common metadata for a single exploratory hole (borehole, trial pit, CPT etc.). Further data can be provided using embedded agsiDataPropertyValue objects if required. Embedded agsiObservationColumn objects may be used to provide a representation of the geology encountered in hole. A link to a supporting data file can be provided using an embedded agsiDataPropertyFromFile object.
JSON schema
{
"description": "An agsiObservationExpHole object provides geometry and common metadata for a single exploratory hole (borehole, trial pit, CPT etc.). Further data can be provided using embedded agsiDataPropertyValue objects if required. Embedded agsiObservationColumn objects may be used to provide a representation of the geology encountered in hole. A link to a supporting data file can be provided using an embedded agsiDataPropertyFromFile object. ",
"type": "object",
"anyOf": [
{
"required": [
"holeID",
"topCoordinate",
"verticalHoleDepth"
]
},
{
"required": [
"holeID",
"profileCoordinates"
]
}
],
"properties": {
"agsiDataPropertyFromFile": {
"description": "An embedded agsiDataPropertyFromFile object, which may be used to reference an external supporting data file.",
"type": "object",
"$ref": "#/$defs/agsiDataPropertyFromFile"
},
"agsiDataPropertyValue": {
"description": "Array of embedded agsiDataPropertyValue objects. May be used for additional hole metadata or for profiles of test results for this hole, e.g. SPT vs depth/elevation.",
"type": "array",
"items": {
"$ref": "#/$defs/agsiDataPropertyValue"
}
},
"agsiObservationColumn": {
"description": "Array of embedded agsiObservationColumn objects which are typically used to represent geology within the hole, but can also be used for other data. ",
"type": "array",
"items": {
"$ref": "#/$defs/agsiObservationColumn"
}
},
"date": {
"description": "Date of exploration. Recommend using start date for holes that take more than one day.",
"type": "string",
"format": "date",
"example": "2018-05-23"
},
"holeID": {
"description": "Identifier that is unique across the project for exploratory holes. Not necessarily the same as the original hole ID (see holeName). If used, identifiers for holeID should be unique within the AGSi file. ",
"type": "string",
"example": "A/BH01"
},
"holeName": {
"description": "Current name or ID of the exploratory hole for general use.",
"type": "string",
"example": "BH01"
},
"holeType": {
"description": "Type of exploratory hole. Recommend using code from AGS format ABBR code list, e.g. CP+RC, with project specific codes defined using agsProjectCode. Alternatively, short description may be provided, e.g. cable percussion borehole with rotary follow on.",
"type": "string",
"example": "CP+RC"
},
"holeUUID": {
"description": "Universal/global unique identifier (UUID) for the hole. This is optional and is not referenced anywhere else in the schema, but it may be beneficial to include this to help with data control and integrity. Other attributes should be used for IDs specific to the producer and/or client (see below).",
"type": "string",
"example": "523ad9ed-4f75-4a55-b251-c566a8b998bd"
},
"profileCoordinates": {
"description": "Coordinates of the line of the exploratory hole (3D, including elevation), i.e. top, bottom and intermediate changes in direction if required. Input as ordered list of coordinate tuples starting at the top. Used for holes that are not vertical, or not straight. May be used for straight vertical holes as alternative to topCoordinate and verticalHoleDepth.",
"type": "array",
"items": {
"$ref": "#/$defs/coordinateTuple"
},
"example": [
[
1275.5,
2195.0,
15.25
],
[
1275.5,
2195.0,
-9.75
]
]
},
"remarks": {
"description": "Additional remarks, if required.",
"type": "string",
"example": "Original name on logs: BH1"
},
"topCoordinate": {
"description": "Coordinates of the top of the exploratory hole (3D, including elevation) as a coordinate tuple.",
"type": "array",
"$ref": "#/$defs/coordinateTuple",
"example": [
1275.5,
2195.0,
15.25
]
},
"verticalHoleDepth": {
"description": "Final depth of exploratory hole for vertical holes only. For non-vertical or non-straight holes use profileCoordinates instead.",
"type": "number",
"example": 25
}
},
"additionalProperties": false
}Variants§
Variant0(AgsiObservationExpHoleVariant0)
Variant1(AgsiObservationExpHoleVariant1)
Trait Implementations§
Source§impl Clone for AgsiObservationExpHole
impl Clone for AgsiObservationExpHole
Source§fn clone(&self) -> AgsiObservationExpHole
fn clone(&self) -> AgsiObservationExpHole
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AgsiObservationExpHole
impl Debug for AgsiObservationExpHole
Source§impl<'de> Deserialize<'de> for AgsiObservationExpHole
impl<'de> Deserialize<'de> for AgsiObservationExpHole
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<&AgsiObservationExpHole> for AgsiObservationExpHole
impl From<&AgsiObservationExpHole> for AgsiObservationExpHole
Source§fn from(value: &AgsiObservationExpHole) -> Self
fn from(value: &AgsiObservationExpHole) -> Self
Converts to this type from the input type.
Source§impl From<AgsiObservationExpHoleVariant0> for AgsiObservationExpHole
impl From<AgsiObservationExpHoleVariant0> for AgsiObservationExpHole
Source§fn from(value: AgsiObservationExpHoleVariant0) -> Self
fn from(value: AgsiObservationExpHoleVariant0) -> Self
Converts to this type from the input type.
Source§impl From<AgsiObservationExpHoleVariant1> for AgsiObservationExpHole
impl From<AgsiObservationExpHoleVariant1> for AgsiObservationExpHole
Source§fn from(value: AgsiObservationExpHoleVariant1) -> Self
fn from(value: AgsiObservationExpHoleVariant1) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for AgsiObservationExpHole
impl RefUnwindSafe for AgsiObservationExpHole
impl Send for AgsiObservationExpHole
impl Sync for AgsiObservationExpHole
impl Unpin for AgsiObservationExpHole
impl UnsafeUnpin for AgsiObservationExpHole
impl UnwindSafe for AgsiObservationExpHole
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more