Advertisement
Guest User

Untitled

a guest
Aug 1st, 2015
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. open FSharp.Data
  2. type Record = {
  3. voivoship: Option<int>;
  4. district: Option<int>;
  5. community: Option<int>;
  6. rozd: Option<int>;
  7. name: Option<string>;
  8. addinf: Option<string>
  9. }
  10.  
  11. let emptyRecord = {
  12. voivoship = Option.None;
  13. district = Option.None;
  14. community = Option.None;
  15. rozd = Option.None;
  16. name = Option.None;
  17. addinf = Option.None;
  18. }
  19.  
  20. type InputXml = XmlProvider<"Terc.xml">
  21.  
  22. let mapColumn state (column:InputXml.Col) =
  23. match column.Name with
  24. |"WOJ" -> {state with voivoship = column.Number}
  25. |"POW" -> {state with district = column.Number}
  26. |"GMI" -> {state with community = column.Number}
  27. |"RODZ" -> {state with rozd = column.Number}
  28. |"NAZWA" -> {state with name = column.String}
  29. |"NAZDOD" -> {state with addinf = column.String}
  30. |_->state
  31.  
  32.  
  33.  
  34. let mapRow (row:InputXml.Row) =
  35. row.Cols |> Array.fold mapColumn emptyRecord
  36.  
  37. let tercs = InputXml.GetSample()
  38. let mappedData = tercs.Rows |> Array.map mapRow
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement