2023-03-22 19:25:19 +00:00
<!DOCTYPE html>
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" / >
< title > Handbook Troggle Data Model< / title >
< link rel = "stylesheet" type = "text/css" href = "../../css/main2.css" / >
2023-03-22 19:28:06 +00:00
2023-03-22 19:25:19 +00:00
< / head >
2023-03-22 19:29:40 +00:00
2023-03-22 19:28:06 +00:00
2023-03-22 19:25:19 +00:00
< body > < style > body { background : #fff url ( /images/style/bg-system.png ) repeat-x 0 0 } < / style >
2023-03-22 19:29:40 +00:00
< script src = "https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js" > < / script >
< script > mermaid . initialize ( { startOnLoad : true } ) ; < / script >
2023-03-22 19:25:19 +00:00
< h2 id = "tophead" > CUCC Expedition Handbook - troggle< / h2 >
< h1 > Troggle Data Model (python)< / h1 >
< p > Asking ChatGPT to read our data model and produce a Mermad-style diagram produces something it has hallucinated. This is NOT troggle.
< p > < em > Can you look at the data model at https://expo.survex.com/handbook/troggle/datamodel.html and generate the data model in mermaid script in html< / em >
2023-03-22 21:05:57 +00:00
< div class = "mermaid" >
classDiagram
class Cave {
- name: str
- location: str
- description: str
- survey: Survey
- map: Map
- expeditions: List[Expedition]
- survey_teams: List[SurveyTeam]
- entrances: List[Entrance]
- passages: List[Passage]
}
class Survey {
- file: str
- header: Header
- stations: List[SurveyStation]
- fixes: List[SurveyFix]
- flags: List[SurveyFlag]
- teams: List[SurveyTeam]
- instruments: List[SurveyInstrument]
- centerlines: List[SurveyCenterline]
- shots: List[SurveyShot]
- calibrations: List[SurveyCalibration]
- extras: List[SurveyExtra]
- equates: List[SurveyEquate]
}
class Map {
- file: str
- scale: float
- orientation: Orientation
}
class Expedition {
- name: str
- leader: ExpeditionLeader
- members: List[ExpeditionMember]
- equipment: List[ExpeditionEquipment]
}
class ExpeditionLeader {
- name: str
- email: str
- phone: str
}
class ExpeditionMember {
- name: str
- email: str
- phone: str
}
class ExpeditionEquipment {
- name: str
- description: str
}
class SurveyTeam {
- name: str
- members: List[str]
}
class Entrance {
- name: str
- position: EntrancePosition
}
class EntrancePosition {
- easting: float
- northing: float
- altitude: float
- grid_reference: str
- datum: str
}
class Passage {
- name: str
- points: List[PassagePoint]
- sections: List[PassageSection]
}
class PassagePoint {
- name: str
- position: PassagePosition
}
class PassagePosition {
- easting: float
- northing: float
- altitude: float
- grid_reference: str
- datum: str
}
class PassageSection {
- from_point: PassagePoint
- to_point: PassagePoint
- distance: float
- azimuth: float
- inclination: float
}
< / div >
2023-03-22 19:25:19 +00:00
< div class = "mermaid" >
graph LR
Cave --"1"--> Survey
Cave --"1"--> Map
Cave --"0..*"--> Expedition
Cave --"0..*"--> SurveyTeam
Cave --"0..*"--> Entrance
Cave --"0..*"--> Passage
Survey --"0..*"--> SurveyHeader
Survey --"0..*"--> SurveyStation
Survey --"0..*"--> SurveyFix
Survey --"0..*"--> SurveyFlag
Survey --"0..*"--> SurveyTeam
Survey --"0..*"--> SurveyInstrument
Survey --"0..*"--> SurveyCenterline
Survey --"0..*"--> SurveyShot
Survey --"0..*"--> SurveyCalibration
Survey --"0..*"--> SurveyExtra
Survey --"0..*"--> SurveyEquate
Expedition --"1"--> ExpeditionLeader
Expedition --"0..*"--> ExpeditionMember
Expedition --"0..*"--> ExpeditionEquipment
Entrance --"1"--> EntrancePosition
Passage --"0..*"--> PassagePoint
Passage --"0..*"--> PassageSection
< / div >
< div class = "mermaid" >
graph LR
SurveyFile --"1"--> SurveyHeader
SurveyFile --"1"--> SurveyStation
SurveyFile --"1"--> SurveyFix
SurveyFile --"1"--> SurveyFlag
SurveyFile --"1"--> SurveyTeam
SurveyFile --"1"--> SurveyInstrument
SurveyFile --"1"--> SurveyCenterline
SurveyFile --"1"--> SurveyShot
SurveyFile --"1"--> SurveyCalibration
SurveyFile --"1"--> SurveyExtra
SurveyFile --"1"--> SurveyEquate
SurveyHeader --"1"--> SurveyCenterline
SurveyHeader --"1"--> SurveyTeam
SurveyHeader --"1"--> SurveyInstrument
SurveyHeader --"0..*"--> SurveyExtra
SurveyStation --"1"--> SurveyFix
< / div >
< / body >
< / html >
< hr / >
Return to: < a href = "trogarch.html" > Troggle architecture< / a > < br / >
Return to: < a href = "trogintro.html" > Troggle intro< / a > < br / >
Troggle index:
< a href = "trogindex.html" > Index of all troggle documents< / a > < br / >
< hr / >
< / body >
< / html >