Mark Shinwell
Mark Shinwell has been on expo in the following years:
Expo | Logbook mentions | Survex trips |
---|---|---|
1999 | 6 | 5 |
2000 | 11 | 8 |
2001 | 5 | 7 |
2002 | 5 | 1 |
2003 | 13 | 8 |
2004 | 6 | 1 |
2005 | 2 | 2 |
2006 | 9 | 7 |
2007 | 2 | 0 |
2008 | 0 | 0 |
2010 | 1 | 1 |
2011 | 0 | 0 |
2012 | 0 | 0 |
2013 | 0 | 0 |
2014 | 0 | 0 |
2016 | 0 | 0 |
2018 | 2 | 0 |
2023 | 1 | 0 |
2024 | 1 | 0 |
Surveys done
Wallets and surveys mentioning Mark ShinwellMark Shinwell.
open Core
type xml =
| Element of Xmlm.tag * xml list
| Data of string
(*
let rec dump_xml = function
| Element (((_, name), _attrs), xmls) ->
Printf.eprintf "Element %s:\n" name;
dump_xmls xmls;
Printf.eprintf "Element %s ends.\n" name
| Data d -> Printf.eprintf "Data %s\n" d
and dump_xmls xmls =
List.iter xmls ~f:dump_xml
*)
let input_xml file =
let chan = In_channel.create file in
let el tag children = Element (tag, children) in
let data str = Data str in
try
let input = Xmlm.make_input (`Channel chan) in
let _dtd, xml = Xmlm.input_doc_tree ~el ~data input in
In_channel.close chan;
xml
with Xmlm.Error ((line, column), error) ->
Printf.eprintf "XML parsing error (line %d, column %d): %s\n"
line column
(Xmlm.error_message error);
failwith "Cannot parse GPX file"