diff --git a/index.html b/index.html index a0b836d..3e6fb30 100644 --- a/index.html +++ b/index.html @@ -103,15 +103,13 @@
To explore available services you can use:
-
-View(emodnet_wfs())
To explore available services you can use View()
or your usual way to explore data.frames
.
Specify the service using the service
argument.
+wfs_bio <- emodnet_init_wfs_client(service = "biology") #> Loading ISO 19139 XML schemas... #> Loading ISO 19115 codelists... @@ -129,7 +127,7 @@
Create Service ClientGet WFS Layer info
You can get metadata about the layers available from a service.
-+emodnet_get_wfs_info(service = "biology") #> ✔ WFS client created successfully #> ℹ Service: "https://geo.vliz.be/geoserver/Emodnetbio/wfs" @@ -151,7 +149,7 @@
Get WFS Layer info#> # ℹ 25 more rows #> # ℹ 1 more variable: layer_namespace <chr>
or you can pass a wfs client object.
-+emodnet_get_wfs_info(wfs_bio) #> # A tibble: 35 × 9 #> # Rowwise: @@ -170,7 +168,7 @@
Get WFS Layer info#> # ℹ 25 more rows #> # ℹ 1 more variable: layer_namespace <chr>
You can also get info for specific layers from wfs object:
-+layers <- c("mediseh_zostera_m_pnt", "mediseh_posidonia_nodata") emodnet_get_layer_info(wfs = wfs_bio, layers = layers) @@ -182,14 +180,14 @@
Get WFS Layer info#> 2 emodnet_wfs https://geo.vl… biology mediseh_z… EMOD… "Zoster… WFSF… sf #> # ℹ 1 more variable: layer_namespace <chr>
Finally, you can get details on all available services and layers from the server
-Get WFS layers
You can extract layers directly from a
-wfs
object using layer names. All layers are downloaded assf
objects and output as a list with a named element for each layer requested.+emodnet_get_layers(wfs = wfs_bio, layers = layers) #> $mediseh_zostera_m_pnt #> Simple feature collection with 54 features and 3 fields @@ -229,7 +227,7 @@
Get WFS layers#> 9 mediseh_posidonia_nodata.83 0 2.173447 MULTICURVE (LINESTRING (15.... #> 10 mediseh_posidonia_nodata.84 0 2.817453 MULTICURVE (LINESTRING (15....
You can change the output
-crs
through the argumentcrs
.+emodnet_get_layers(wfs = wfs_bio, layers = layers, crs = 3857) #> ℹ crs transformed to 3857. #> ℹ crs transformed to 3857. @@ -271,7 +269,7 @@
Get WFS layers#> 9 mediseh_posidonia_nodata.83 0 2.173447 MULTICURVE (LINESTRING (169... #> 10 mediseh_posidonia_nodata.84 0 2.817453 MULTICURVE (LINESTRING (169...
You can also extract layers using a WFS service name.
-+emodnet_get_layers( service = "biology", layers = c("mediseh_zostera_m_pnt", "mediseh_posidonia_nodata") @@ -319,7 +317,7 @@
Get WFS layersLayers can also be returned to a single
sf
object through argumentreduce_layers
.
IfTRUE
the function will try to reduce all layers into a singlesf
.If attempting to reduce fails, it will error:
-+emodnet_get_layers( wfs = wfs_bio, layers = layers, @@ -329,7 +327,7 @@
Get WFS layers#> ! Cannot reduce layers. #> ℹ Try again with `reduce_layers = FALSE`
Using
-reduce_layers = TRUE
is also useful for returning ansf
object rather than a list in single layer request.+emodnet_get_layers( service = "biology", layers = c("mediseh_posidonia_nodata"), @@ -373,7 +371,7 @@
Other web servicesEMODnet ERDDAP server
Some EMODnet data are also published in an ERDDAP server. You can access these data in R using the rerddap R package:
-+# install.packages("rerrdap") library(rerddap) #> Registered S3 method overwritten by 'hoardr': @@ -452,7 +450,7 @@
EMODnetWCS: Access
Citation
To cite emodnet.wfs, please use the output from
-citation(package = "emodnet.wfs")
.+citation(package = "emodnet.wfs") #> To cite package 'emodnet.wfs' in publications use: #> diff --git a/pkgdown.yml b/pkgdown.yml index 65d3a14..6b686df 100644 --- a/pkgdown.yml +++ b/pkgdown.yml @@ -5,7 +5,7 @@ articles: articles/ecql_filtering: ecql_filtering.html emodnet.wfs: emodnet.wfs.html articles/request-params: request-params.html -last_built: 2024-11-05T11:05Z +last_built: 2024-11-05T11:22Z urls: reference: https://emodnet.github.io/emodnet.wfs/reference article: https://emodnet.github.io/emodnet.wfs/articles diff --git a/search.json b/search.json index 1357a43..0e88a67 100644 --- a/search.json +++ b/search.json @@ -1 +1 @@ -[{"path":"https://emodnet.github.io/emodnet.wfs/CONTRIBUTING.html","id":null,"dir":"","previous_headings":"","what":"Contributing to emodnet.wfs","title":"Contributing to emodnet.wfs","text":"outlines propose change emodnet.wfs.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/CONTRIBUTING.html","id":"fixing-typos","dir":"","previous_headings":"","what":"Fixing typos","title":"Contributing to emodnet.wfs","text":"can fix typos, spelling mistakes, grammatical errors documentation directly using GitHub web interface, long changes made source file. generally means ’ll need edit roxygen2 comments .R, .Rd file. can find .R file generates .Rd reading comment first line.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/CONTRIBUTING.html","id":"bigger-changes","dir":"","previous_headings":"","what":"Bigger changes","title":"Contributing to emodnet.wfs","text":"want make bigger change, ’s good idea first file issue make sure someone team agrees ’s needed. ’ve found bug, please file issue illustrates bug minimal reprex (also help write unit test, needed).","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/CONTRIBUTING.html","id":"pull-request-process","dir":"","previous_headings":"Bigger changes","what":"Pull request process","title":"Contributing to emodnet.wfs","text":"Fork package clone onto computer. haven’t done , recommend using usethis::create_from_github(\"EMODnet/emodnet.wfs\", fork = TRUE). Install development dependencies pak::pak(), make sure package passes R CMD check running devtools::check(). R CMD check doesn’t pass cleanly, ’s good idea ask help continuing. Create Git branch pull request (PR). recommend using usethis::pr_init(\"brief-description--change\"). Make changes, commit git, create PR running usethis::pr_push(), following prompts browser. title PR briefly describe change. body PR contain Fixes #issue-number. user-facing changes, add bullet top NEWS.md (.e. just first header). Follow style described https://style.tidyverse.org/news.html.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/CONTRIBUTING.html","id":"code-style","dir":"","previous_headings":"Bigger changes","what":"Code style","title":"Contributing to emodnet.wfs","text":"New code follow tidyverse style guide. can use styler package apply styles, please don’t restyle code nothing PR. use roxygen2, Markdown syntax, documentation. use testthat httptest unit tests. Contributions test cases included easier accept.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/CONTRIBUTING.html","id":"collaborators","dir":"","previous_headings":"","what":"Collaborators","title":"Contributing to emodnet.wfs","text":"Regular contributors listed inst/collaborators.txt ensure user-agent used package flags developers.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/LICENSE.html","id":null,"dir":"","previous_headings":"","what":"MIT License","title":"MIT License","text":"Copyright (c) 2021 European Marine Observation Data Network (EMODnet) Biology project Permission hereby granted, free charge, person obtaining copy software associated documentation files (“Software”), deal Software without restriction, including without limitation rights use, copy, modify, merge, publish, distribute, sublicense, /sell copies Software, permit persons Software furnished , subject following conditions: copyright notice permission notice shall included copies substantial portions Software. SOFTWARE PROVIDED “”, WITHOUT WARRANTY KIND, EXPRESS IMPLIED, INCLUDING LIMITED WARRANTIES MERCHANTABILITY, FITNESS PARTICULAR PURPOSE NONINFRINGEMENT. EVENT SHALL AUTHORS COPYRIGHT HOLDERS LIABLE CLAIM, DAMAGES LIABILITY, WHETHER ACTION CONTRACT, TORT OTHERWISE, ARISING , CONNECTION SOFTWARE USE DEALINGS SOFTWARE.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"cql-ecql-query-languages-","dir":"Articles","previous_headings":"","what":"CQL & ECQL Query languages.","title":"EQCL feature filtering","text":"CQL (Common Query Language) plain-text language created OGC Catalog specification. GeoServer adapted easy--use filtering mechanism. GeoServer actually implements powerful extension called ECQL (Extended CQL), allows expressing full range filters OGC Filter 1.1 can encode. ECQL accepted many places GeoServer. GeoServer supports use CQL ECQL WFS requests whenever documentation refers CQL, ECQL syntax can used well. examples provided small subset filtering functionality available Geoserver. Full references examples can found following documentation: ECQL Reference: reference syntax ECQL language. Filter Function Reference: OGC Filter Encoding specification provides generic concept filter function. filter function named function number arguments, can used filter expression perform specific calculations. provides much richer expressiveness defining filters.GeoServer provides many different kinds filter functions, covering wide range functionality including mathematics, string formatting, geometric operations. CQL ECQL Tutorial shows examples defining filters.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"initialise-emodnet-wfs-client","dir":"Articles","previous_headings":"","what":"Initialise EMODnet WFS client","title":"EQCL feature filtering","text":"First, let’s load library start new WFS client emodnet_init_wfs_client.","code":"library(emodnet.wfs) wfs <- emodnet_init_wfs_client(service = \"biology\") #> Loading ISO 19139 XML schemas... #> Loading ISO 19115 codelists... #> ✔ WFS client created successfully #> ℹ Service: \"https://geo.vliz.be/geoserver/Emodnetbio/wfs\" #> ℹ Version: \"2.0.0\""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"inspecting-attributes","dir":"Articles","previous_headings":"","what":"Inspecting attributes","title":"EQCL feature filtering","text":"develop filters, first need information attributes can filter . example, might want know data type range distribution values attributes given layer. Let’s look existing layers.","code":"emodnet_get_wfs_info(wfs) #> # A tibble: 35 × 9 #> # Rowwise: #> data_source service_name service_url layer_name title abstract class format #>
#> 1 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Coral … WFSF… sf #> 2 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Coral … WFSF… sf #> 3 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Cymodo… WFSF… sf #> 4 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 5 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 6 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 7 emodnet_wfs biology https://geo.… mediseh_h… EMOD… \"Haloph… WFSF… sf #> 8 emodnet_wfs biology https://geo.… mediseh_m… EMOD… \"Maërl … WFSF… sf #> 9 emodnet_wfs biology https://geo.… mediseh_m… EMOD… \"Maërl … WFSF… sf #> 10 emodnet_wfs biology https://geo.… mediseh_p… EMOD… \"This d… WFSF… sf #> # ℹ 25 more rows #> # ℹ 1 more variable: layer_namespace "},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"layer-attribute-names","dir":"Articles","previous_headings":"Inspecting attributes","what":"Layer attribute names","title":"EQCL feature filtering","text":"start, might want know names layer’s attributes. functions can also used providing service name instead wfs object.","code":"layer_attributes_get_names(wfs, layer = \"mediseh_zostera_m_pnt\") #> [1] \"id\" \"country\" \"the_geom\" layer_attributes_get_names(service = \"biology\", layer = \"mediseh_zostera_m_pnt\") #> ✔ WFS client created successfully #> ℹ Service: \"https://geo.vliz.be/geoserver/Emodnetbio/wfs\" #> ℹ Version: \"2.0.0\" #> [1] \"id\" \"country\" \"the_geom\""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"layer-attribute-descriptions","dir":"Articles","previous_headings":"Inspecting attributes","what":"Layer attribute descriptions","title":"EQCL feature filtering","text":"type filtering might want apply depend data type attribute. can inspect attribute descriptions (metadata) given layer layer_attribute_descriptions().","code":"layer_attribute_descriptions(wfs, layer = \"mediseh_zostera_m_pnt\") #> name type minOccurs maxOccurs nillable geometry #> 1 id integer 0 1 TRUE FALSE #> 2 country character 0 1 TRUE FALSE #> 3 the_geom Point 0 1 TRUE TRUE"},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"layer-attribute-summaries","dir":"Articles","previous_headings":"Inspecting attributes","what":"Layer attribute summaries","title":"EQCL feature filtering","text":"can get summaries values attribute layer_attributes_summarise(). function basically runs summary() attribute columns layer.","code":"layer_attributes_summarise(wfs, layer = \"mediseh_zostera_m_pnt\") #> gml_id id country #> Length:54 Min. :0 Length:54 #> Class :character 1st Qu.:0 Class :character #> Mode :character Median :0 Mode :character #> Mean :0 #> 3rd Qu.:0 #> Max. :0"},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"inspecting-individual-layer-attributes","dir":"Articles","previous_headings":"Inspecting attributes","what":"Inspecting individual layer attributes","title":"EQCL feature filtering","text":"can also inspect individual attributes , case categorical variables, can give detailed information names distribution categories.","code":"layer_attribute_inspect( wfs, layer = \"mediseh_zostera_m_pnt\", attribute = \"country\" ) #> # A tibble: 7 × 3 #> . n percent #> #> 1 Croazia 4 0.0741 #> 2 Francia 1 0.0185 #> 3 Italia 30 0.556 #> 4 Libia 2 0.0370 #> 5 Slovenia 8 0.148 #> 6 Spagna 8 0.148 #> 7 Tunisia 1 0.0185"},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"layer-attributes-table","dir":"Articles","previous_headings":"","what":"Layer attributes table","title":"EQCL feature filtering","text":"Finally, enable full inspection custom processing attribute data, can download full set attributes data.frame, excluding geometry column. geometries usually largest column, much faster downloading full layer can useful developing attribute filtering rules.","code":"attr_tbl <- layer_attributes_tbl(wfs, layer = \"mediseh_zostera_m_pnt\") attr_tbl #> # A tibble: 54 × 3 #> gml_id id country #> #> 1 mediseh_zostera_m_pnt.1 0 Spagna #> 2 mediseh_zostera_m_pnt.2 0 Spagna #> 3 mediseh_zostera_m_pnt.3 0 Spagna #> 4 mediseh_zostera_m_pnt.4 0 Spagna #> 5 mediseh_zostera_m_pnt.5 0 Spagna #> 6 mediseh_zostera_m_pnt.6 0 Spagna #> 7 mediseh_zostera_m_pnt.7 0 Spagna #> 8 mediseh_zostera_m_pnt.8 0 Francia #> 9 mediseh_zostera_m_pnt.9 0 Italia #> 10 mediseh_zostera_m_pnt.10 0 Italia #> # ℹ 44 more rows"},{"path":[]},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"filtering-categorical-attributes-values-using-text-comparisons","dir":"Articles","previous_headings":"Filtering by attributes","what":"Filtering categorical attributes values using text comparisons","title":"EQCL feature filtering","text":"know values categorical attribute layer, can use filter features returned query. example, let’s say interested results France. previous interrogation attributes associated mediseh_zostera_m_pnt layer, seen attribute country contains country. can use name attribute value require construct eqcl filter pass request using cql_filter argument. shows basic text comparisons can make use equality operator =. want match one value, can use operator instead provide list values compare . example, request France Spain, use following filter: using filter: text comparisons include text pattern matching using operator LIKE. example, request maritime boundaries countries starting S, can use following filter: CQL/ECQL filters can also include filter functions available GeoServer, including multiple string functions greatly increases power CQL expressions. example, can request countries contain l anywhere, including first letter. make request case independent, can turn country names lowercase use like comparison lowercase l:","code":"emodnet_get_layers( wfs, layers = \"mediseh_zostera_m_pnt\", cql_filter = \"country = 'Francia'\" ) #> $mediseh_zostera_m_pnt #> Simple feature collection with 1 feature and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: 4.84864 ymin: 43.37637 xmax: 4.84864 ymax: 43.37637 #> Geodetic CRS: WGS 84 #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.8 0 Francia POINT (4.84864 43.37637) emodnet_get_layers( wfs, layers = \"mediseh_zostera_m_pnt\", cql_filter = \"country IN ('Francia', 'Spagna')\" ) #> $mediseh_zostera_m_pnt #> Simple feature collection with 9 features and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: -4.167154 ymin: 36.71226 xmax: 4.84864 ymax: 43.37637 #> Geodetic CRS: WGS 84 #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.1 0 Spagna POINT (-2.61314 36.71681) #> 2 mediseh_zostera_m_pnt.2 0 Spagna POINT (-3.846598 36.75127) #> 3 mediseh_zostera_m_pnt.3 0 Spagna POINT (-3.957785 36.72266) #> 4 mediseh_zostera_m_pnt.4 0 Spagna POINT (-4.039712 36.74217) #> 5 mediseh_zostera_m_pnt.5 0 Spagna POINT (-4.100182 36.72331) #> 6 mediseh_zostera_m_pnt.6 0 Spagna POINT (-4.167154 36.71226) #> 7 mediseh_zostera_m_pnt.7 0 Spagna POINT (-1.268366 37.55796) #> 8 mediseh_zostera_m_pnt.8 0 Francia POINT (4.84864 43.37637) #> 9 mediseh_zostera_m_pnt.54 0 Spagna POINT (3.291868 42.29132) emodnet_get_layers( wfs, layers = \"mediseh_zostera_m_pnt\", cql_filter = \"country='Francia' OR country='Spagna'\" ) #> $mediseh_zostera_m_pnt #> Simple feature collection with 9 features and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: -4.167154 ymin: 36.71226 xmax: 4.84864 ymax: 43.37637 #> Geodetic CRS: WGS 84 #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.1 0 Spagna POINT (-2.61314 36.71681) #> 2 mediseh_zostera_m_pnt.2 0 Spagna POINT (-3.846598 36.75127) #> 3 mediseh_zostera_m_pnt.3 0 Spagna POINT (-3.957785 36.72266) #> 4 mediseh_zostera_m_pnt.4 0 Spagna POINT (-4.039712 36.74217) #> 5 mediseh_zostera_m_pnt.5 0 Spagna POINT (-4.100182 36.72331) #> 6 mediseh_zostera_m_pnt.6 0 Spagna POINT (-4.167154 36.71226) #> 7 mediseh_zostera_m_pnt.7 0 Spagna POINT (-1.268366 37.55796) #> 8 mediseh_zostera_m_pnt.8 0 Francia POINT (4.84864 43.37637) #> 9 mediseh_zostera_m_pnt.54 0 Spagna POINT (3.291868 42.29132) emodnet_get_layers( wfs = wfs, layers = \"mediseh_zostera_m_pnt\", cql_filter = \"country LIKE 'S%'\", reduce_layers = TRUE ) #> Simple feature collection with 16 features and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: -4.167154 ymin: 36.71226 xmax: 13.73725 ymax: 45.58252 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.1 0 Spagna POINT (-2.61314 36.71681) #> 2 mediseh_zostera_m_pnt.2 0 Spagna POINT (-3.846598 36.75127) #> 3 mediseh_zostera_m_pnt.3 0 Spagna POINT (-3.957785 36.72266) #> 4 mediseh_zostera_m_pnt.4 0 Spagna POINT (-4.039712 36.74217) #> 5 mediseh_zostera_m_pnt.5 0 Spagna POINT (-4.100182 36.72331) #> 6 mediseh_zostera_m_pnt.6 0 Spagna POINT (-4.167154 36.71226) #> 7 mediseh_zostera_m_pnt.7 0 Spagna POINT (-1.268366 37.55796) #> 8 mediseh_zostera_m_pnt.39 0 Slovenia POINT (13.73725 45.56948) #> 9 mediseh_zostera_m_pnt.40 0 Slovenia POINT (13.70701 45.58252) #> 10 mediseh_zostera_m_pnt.41 0 Slovenia POINT (13.71894 45.54535) emodnet_get_layers( wfs = wfs, layers = \"mediseh_zostera_m_pnt\", cql_filter = \"strToLowerCase(country) LIKE '%l%'\", reduce_layers = TRUE ) #> Simple feature collection with 40 features and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: 11.71682 ymin: 33.07783 xmax: 14.4714 ymax: 45.72451 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.9 0 Italia POINT (13.71831 45.70017) #> 2 mediseh_zostera_m_pnt.10 0 Italia POINT (13.16378 45.72451) #> 3 mediseh_zostera_m_pnt.11 0 Italia POINT (13.35982 45.70508) #> 4 mediseh_zostera_m_pnt.12 0 Italia POINT (12.26722 45.25975) #> 5 mediseh_zostera_m_pnt.13 0 Italia POINT (12.31285 45.362) #> 6 mediseh_zostera_m_pnt.14 0 Italia POINT (12.53509 45.53269) #> 7 mediseh_zostera_m_pnt.15 0 Italia POINT (12.48269 45.5065) #> 8 mediseh_zostera_m_pnt.16 0 Italia POINT (12.77334 43.96751) #> 9 mediseh_zostera_m_pnt.17 0 Italia POINT (13.62604 43.50809) #> 10 mediseh_zostera_m_pnt.18 0 Italia POINT (13.46398 43.60892)"},{"path":[]},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"filtering-numeric-variables","dir":"Articles","previous_headings":"Filtering by attributes","what":"Filtering numeric variables","title":"EQCL feature filtering","text":"number additional comparison operators, =, <>, >, >=, <, <= , arithmetic operators +, -, *, / well comparison math functions can used filtering numeric variables. time ’ll use mediseh_posidonia_nodata. can inspect , using interrogative functions get information layer attributes. can see values range 0.23 ~473 mean ~40. Let’s say interested values greater 400. can use operator > create filter: request range can use filter functions .","code":"layer_attributes_get_names( wfs, layer = \"mediseh_posidonia_nodata\" ) #> [1] \"id\" \"km\" \"the_geom\" layer_attribute_inspect( wfs, layer = \"mediseh_posidonia_nodata\", attribute = \"km\" ) #> Min. 1st Qu. Median Mean 3rd Qu. Max. #> 0.2371 6.0306 16.6190 40.1771 42.8958 472.9613 emodnet_get_layers( wfs = wfs, layers = \"mediseh_posidonia_nodata\", cql_filter = \"km > 400\", reduce_layers = TRUE ) #> Simple feature collection with 4 features and 3 fields #> Geometry type: MULTICURVE #> Dimension: XY #> Bounding box: xmin: -1.572609 ymin: 35.24538 xmax: 28.33243 ymax: 38.68017 #> Geodetic CRS: WGS 84 #> gml_id id km the_geom #> 1 mediseh_posidonia_nodata.8 0 456.3759 MULTICURVE (LINESTRING (2.3... #> 2 mediseh_posidonia_nodata.227 0 464.6573 MULTICURVE (LINESTRING (26.... #> 3 mediseh_posidonia_nodata.228 0 472.9613 MULTICURVE (LINESTRING (26.... #> 4 mediseh_posidonia_nodata.229 0 463.8207 MULTICURVE (LINESTRING (27.... emodnet_get_layers( wfs = wfs, layers = \"mediseh_posidonia_nodata\", cql_filter = \"km between 40 and 400\", reduce_layers = TRUE ) #> Simple feature collection with 120 features and 3 fields #> Geometry type: MULTICURVE #> Dimension: XY #> Bounding box: xmin: -2.1798 ymin: 30.26623 xmax: 34.59127 ymax: 45.35511 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id km the_geom #> 1 mediseh_posidonia_nodata.1 0 291.50323 MULTICURVE (LINESTRING (27.... #> 2 mediseh_posidonia_nodata.2 0 75.37950 MULTICURVE (LINESTRING (23.... #> 3 mediseh_posidonia_nodata.4 0 110.34480 MULTICURVE (LINESTRING (19.... #> 4 mediseh_posidonia_nodata.13 0 66.99746 MULTICURVE (LINESTRING (9.1... #> 5 mediseh_posidonia_nodata.5 0 222.44651 MULTICURVE (LINESTRING (8.6... #> 6 mediseh_posidonia_nodata.6 0 58.72822 MULTICURVE (LINESTRING (6.8... #> 7 mediseh_posidonia_nodata.7 0 192.50519 MULTICURVE (LINESTRING (6.4... #> 8 mediseh_posidonia_nodata.10 0 65.74354 MULTICURVE (LINESTRING (-1.... #> 9 mediseh_posidonia_nodata.11 0 138.68819 MULTICURVE (LINESTRING (4.8... #> 10 mediseh_posidonia_nodata.17 0 184.05959 MULTICURVE (LINESTRING (10...."},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"using-or-and-and-statements","dir":"Articles","previous_headings":"Filtering by attributes","what":"Using OR and AND statements","title":"EQCL feature filtering","text":"Filter conditions can also logical combination conditions using , . showed previously use list potential values match attribute . also achieved using statement. example, following query returns features country either Baltic Sea Bulgaria. Let’s say also want restrict features returned shape_length > 1. can include additional condition must met using statement. query returns features country Baltic Sea Bulgaria can see minimum value minimum set filter. ’s filter added country='Bulgaria', features shape_length > 1 returned country also Bulgaria, filter applied shape_length country Baltic Sea. add filter filters, can use parenthesis: Now minimum value indeed 1. However, get features country 'Bulgaria'. ’s single Baltic Sea feature shape_length value smaller 1 filtered . Finally filtering shape_length < 1 returns features shape_length values smaller 1 country values.","code":"wfs <- emodnet_init_wfs_client(service = \"geology_seabed_substrate_maps\") emodnet_get_layers( wfs = wfs, layers = \"seabed_substrate_1m\", cql_filter = \"country='Baltic Sea' OR country='Bulgaria'\", reduce_layers = TRUE ) filter_sf1 <- emodnet_get_layers( wfs = wfs, layers = \"seabed_substrate_1m\", cql_filter = \"country='Baltic Sea' OR country='Bulgaria' AND shape_length>1\", reduce_layers = TRUE ) filter_sf1 unique(filter_sf1$country) min(filter_sf1$shape_length) filter_sf2 <- emodnet_get_layers( wfs = wfs, layers = \"seabed_substrate_1m\", cql_filter = \"(country='Baltic Sea' OR country='Bulgaria') AND shape_length>1\", reduce_layers = TRUE ) min(filter_sf2$shape_length) unique(filter_sf2$country) filter_sf3 <- emodnet_get_layers( wfs = wfs, layers = \"seabed_substrate_1m\", cql_filter = \"(country='Baltic Sea' OR country='Bulgaria') AND shape_length<1\", reduce_layers = TRUE ) max(filter_sf3$shape_length) unique(filter_sf3$country)"},{"path":"https://emodnet.github.io/emodnet.wfs/articles/ecql_filtering.html","id":"advanced-use","dir":"Articles","previous_headings":"Filtering by attributes","what":"Advanced use","title":"EQCL feature filtering","text":"can accomplished using EMODnet WFS services downloading data. emodnet.wfs package built top ows4R library, meaning functionalities package available emodnet.wfs. ows4R returns special type R object called R6. can learn Hadley Wickham’s chapter R6 Objects Advance R book. instance: efficient read large dataset R just later subset part . requires longer waiting times bandwidth usage, large datasets simply possible. instance, occurrences data available EMODnet Biology portal stored one table: approximately 30 millions rows! case, suggest access EMODnet Biology occurrence data download toolbox eurobis R package instead.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/emodnet.wfs.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"Accessing and mapping EMODnet data","text":"package designed make EMODnet vector data layers easily accessible R. package allows users query information download data available EMODnet Web Feature Service (WFS) endpoints directly R working environment. Data managed sf objects currently state---art handling vector spatial data R. package also allows user specify coordinate reference system imported data.","code":""},{"path":[]},{"path":"https://emodnet.github.io/emodnet.wfs/articles/emodnet.wfs.html","id":"installation","dir":"Articles","previous_headings":"Data Product","what":"Installation","title":"Accessing and mapping EMODnet data","text":"can install development version emodnet.wfs GitHub :","code":"pak::pak(\"EMODnet/emodnet.wfs\")"},{"path":"https://emodnet.github.io/emodnet.wfs/articles/emodnet.wfs.html","id":"explore-the-emodnet-wfs-services-with-r","dir":"Articles","previous_headings":"Data Product","what":"Explore the EMODnet WFS services with R","title":"Accessing and mapping EMODnet data","text":"tutorial make use sf, dplyr mapview packages. simple features sf package well known standard dealing geospatial vector data. package dplyr strong library data manipulation. package also loads magrittr’s pipe operator %>% (also use base pipe), allows write pipelines R. visualize geometries, mapview create quick interactive maps. Run line install packages: emodnet.wfs package, can explore combine data served EMODnet lots OGC Web Feature Services WFS. Imagine interested seabed substrates. first step choose EMODnet lot can provide data. , can check services available emodnet_wfs() function. column service_name shows services available, service_url corresponding base url perform WFS request. Seabed portal data looking . WFS client can created passing corresponding service_name function emodnet_init_wfs_client(). layers available WFS client consulted emodnet_get_wfs_info(). layer explained abstract column. can see several layers information provided EU member states Habitats Directive 92/43/EEC reporting. select layers coastal lagoons, mudflats sandbanks respective layer_name. now ready read layers R emodnet_get_layers(). emodnet.wfs reads geometries simple features (See sf package) transformed 4326 default. Specifying another map projection possible passing EPGS code projection string emodnet_get_layers(crs = \"projection\"). argument reduce_layers = TRUE stack layers one single tibble. Default FALSE returns list sf objects, one per layer. Run following code quick look layers geometries EMODnet provides also physics, chemistry, biological bathymetry data. Explore layers available .","code":"install.packages(c(\"sf\", \"dplyr\", \"mapview\")) library(emodnet.wfs) library(mapview) library(dplyr) library(sf) emodnet_wfs() #> service_name #> 1 bathymetry #> 2 biology #> 3 biology_occurrence_data #> 4 chemistry_cdi_data_discovery_and_access_service #> 5 chemistry_cdi_distribution_observations_per_category_and_region #> 6 chemistry_contaminants #> 7 chemistry_marine_litter #> 8 geology_coastal_behavior #> 9 geology_events_and_probabilities #> 10 geology_marine_minerals #> 11 geology_sea_floor_bedrock #> 12 geology_seabed_substrate_maps #> 13 geology_submerged_landscapes #> 14 human_activities #> 15 physics #> 16 seabed_habitats_general_datasets_and_products #> 17 seabed_habitats_individual_habitat_map_and_model_datasets #> service_url #> 1 https://ows.emodnet-bathymetry.eu/wfs #> 2 https://geo.vliz.be/geoserver/Emodnetbio/wfs #> 3 https://geo.vliz.be/geoserver/Dataportal/wfs #> 4 https://geo-service.maris.nl/emodnet_chemistry/wfs #> 5 https://geo-service.maris.nl/emodnet_chemistry_p36/wfs #> 6 https://geoserver.hcmr.gr/geoserver/EMODNET_SHARED/wfs #> 7 https://www.ifremer.fr/services/wfs/emodnet_chemistry2 #> 8 https://drive.emodnet-geology.eu/geoserver/tno/wfs #> 9 https://drive.emodnet-geology.eu/geoserver/ispra/wfs #> 10 https://drive.emodnet-geology.eu/geoserver/gsi/wfs #> 11 https://drive.emodnet-geology.eu/geoserver/bgr/wfs #> 12 https://drive.emodnet-geology.eu/geoserver/gtk/wfs #> 13 https://drive.emodnet-geology.eu/geoserver/bgs/wfs #> 14 https://ows.emodnet-humanactivities.eu/wfs #> 15 https://prod-geoserver.emodnet-physics.eu/geoserver/ows #> 16 https://ows.emodnet-seabedhabitats.eu/geoserver/emodnet_open/wfs #> 17 https://ows.emodnet-seabedhabitats.eu/geoserver/emodnet_open_maplibrary/wfs seabed_wfs_client <- emodnet_init_wfs_client(service = \"seabed_habitats_general_datasets_and_products\") #> ✔ WFS client created successfully #> ℹ Service: \"https://ows.emodnet-seabedhabitats.eu/geoserver/emodnet_open/wfs\" #> ℹ Version: \"2.0.0\" emodnet_get_wfs_info(wfs = seabed_wfs_client) #> # A tibble: 72 × 9 #> # Rowwise: #> data_source service_name service_url layer_name title abstract class format #> #> 1 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 2 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 3 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 4 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 5 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 6 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 7 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 8 emodnet_wfs seabed_habitats_general_da… https://ow… art17_hab… 2013… \"Gridde… WFSF… sf #> 9 emodnet_wfs seabed_habitats_general_da… https://ow… carib_eus… 2023… \"Output… WFSF… sf #> 10 emodnet_wfs seabed_habitats_general_da… https://ow… biogenic_… Biog… \"This l… WFSF… sf #> # ℹ 62 more rows #> # ℹ 1 more variable: layer_namespace habitats_directive_layer_names <- c(\"art17_hab_1110\", \"art17_hab_1140\", \"art17_hab_1150\") emodnet_get_layer_info( wfs = seabed_wfs_client, layers = habitats_directive_layer_names ) #> # A tibble: 3 × 9 #> # Rowwise: #> data_source service_name service_url layer_name title abstract class format layer_namespace #> #> 1 emodnet_wfs https://ows… seabed_hab… art17_hab… 2013… \"Gridde… WFSF… sf emodnet_open #> 2 emodnet_wfs https://ows… seabed_hab… art17_hab… 2013… \"Gridde… WFSF… sf emodnet_open #> 3 emodnet_wfs https://ows… seabed_hab… art17_hab… 2013… \"Gridde… WFSF… sf emodnet_open habitats_directive_layers <- emodnet_get_layers( wfs = seabed_wfs_client, layers = habitats_directive_layer_names, reduce_layers = TRUE ) class(habitats_directive_layers) #> [1] \"sf\" \"data.frame\" glimpse(habitats_directive_layers) #> Rows: 221 #> Columns: 9 #> $ gml_id \"art17_hab_1110.13\", \"art17_hab_1110.22\", \"art17_hab_1110.25\", … #> $ habitat_code \"1110\", \"1110\", \"1110\", \"1110\", \"1110\", \"1110\", \"1110\", \"1110\",… #> $ ms \"DK\", \"ES\", \"ES\", \"PT\", \"PT\", \"PL\", \"DK\", \"FR\", \"UK\", \"BE\", \"BE… #> $ region \"ATL\", \"MAC\", \"MMAC\", \"MMAC\", \"MATL\", \"MBAL\", \"MBAL\", \"MATL\", \"… #> $ cs_ms \"U2+\", \"U1+\", \"U1+\", \"XX\", \"U1-\", \"U1-\", \"U1-\", \"U1x\", \"U1x\", \"… #> $ country_code \"Denmark\", \"Spain\", \"Spain\", \"Portugal\", \"Portugal\", \"Poland\", … #> $ habitat_code_uri \"http://dd.eionet.europa.eu/vocabulary/art17_2018/habitats/1110… #> $ habitat_description \"Sandbanks which are slightly covered by sea water all the time… #> $ geom MULTISURFACE (POLYGON ((420..., MULTISURFACE (POLY… # Transform to Polygon geometry type from Multisurface if (unique(st_geometry_type(habitats_directive_layers)) == \"MULTISURFACE\") { habitats_directive_layers <- habitats_directive_layers %>% st_cast(to = \"GEOMETRYCOLLECTION\") %>% st_collection_extract(type = \"POLYGON\") } # Visualize map <- mapview(habitats_directive_layers, zcol = \"habitat_description\", burst = TRUE) map emodnet_get_all_wfs_info()"},{"path":[]},{"path":"https://emodnet.github.io/emodnet.wfs/articles/emodnet.wfs.html","id":"references","dir":"Articles","previous_headings":"More information","what":"References","title":"Accessing and mapping EMODnet data","text":"Blondel, Emmanuel. (2020, May 27). ows4R: R Interface OGC Web-Services (Version 0.1-5). Zenodo. https://doi.org/10.5281/zenodo.3860330 Flanders Marine Institute (2019). Maritime Boundaries Geodatabase, version 11. Available online https://www.marineregions.org/. https://doi.org/10.14284/382. Hadley Wickham, Romain François, Lionel Henry Kirill Müller (2020). dplyr: Grammar Data Manipulation. R package version 1.0.2.https://CRAN.R-project.org/package=dplyr Pebesma E (2018). “Simple Features R: Standardized Support Spatial Vector Data.” R Journal, 10(1), 439–446. doi: 10.32614/RJ-2018-009, https://doi.org/10.32614/RJ-2018-009. R Core Team (2020). R: language environment statistical computing. R Foundation Statistical Computing, Vienna, Austria. URL https://www.R-project.org/. Tim Appelhans, Florian Detsch, Christoph Reudenbach Stefan Woellauer (2020). mapview: Interactive Viewing Spatial Data R. R package version 2.9.0. https://CRAN.R-project.org/package=mapview","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/emodnet.wfs.html","id":"code","dir":"Articles","previous_headings":"More information","what":"Code","title":"Accessing and mapping EMODnet data","text":"Please cite package : Anna Krystalli (2020). emodnet.wfs: Access EMODnet Web Feature Service data R. R package version 0.0.2. https://github.com/EMODnet/emodnet.wfs. Integrated data products created European Marine Observation Data Network (EMODnet) Biology project (EASME/EMFF/2017/1.3.1.2/02/SI2.789013), funded European Union Regulation (EU) 508/2014 European Parliament Council 15 May 2014 European Maritime Fisheries Fund.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"initialise-a-wfs-client","dir":"Articles","previous_headings":"","what":"Initialise a WFS client","title":"Using request parameters to limit query results","text":"Let’s start loading emodnet.wfs initialising WFS client human_activities WFS service.","code":"library(emodnet.wfs) wfs <- emodnet_init_wfs_client(\"human_activities\") #> Loading ISO 19139 XML schemas... #> Loading ISO 19115 codelists... #> ✔ WFS client created successfully #> ℹ Service: \"https://ows.emodnet-humanactivities.eu/wfs\" #> ℹ Version: \"2.0.0\""},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"return-single-feature-using-feature-id","dir":"Articles","previous_headings":"","what":"Return single feature using feature ID","title":"Using request parameters to limit query results","text":"can restrict query single feature using featureID providing ID specific feature.","code":"emodnet_get_layers( wfs = wfs, layers = \"pipelines\", featureID = \"pipelines.1\", reduce_layers = TRUE ) #> Simple feature collection with 1 feature and 13 fields #> Geometry type: MULTILINESTRING #> Dimension: XY #> Bounding box: xmin: -5.87186 ymin: 35.99551 xmax: -5.836784 ymax: 36.12588 #> Geodetic CRS: WGS 84 #> gml_id id status medium operator size_in length_m year from_loc to_loc #> 1 pipelines.1 Active 15467.17 #> country_co country notes the_geom #> 1 ES Spain MULTILINESTRING ((-5.87186 ..."},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"return-specific-number-of-features","dir":"Articles","previous_headings":"","what":"Return specific number of features","title":"Using request parameters to limit query results","text":"ID feature unknown still want limit number features returned, use count parameter WFS 2.0.0 maxFeatures parameter earlier WFS versions restrict number features returned. example restrict query first feature.","code":"emodnet_get_layers( wfs = wfs, layers = \"pipelines\", count = 1L, reduce_layers = TRUE ) #> Simple feature collection with 1 feature and 13 fields #> Geometry type: MULTILINESTRING #> Dimension: XY #> Bounding box: xmin: 24.98448 ymin: 60.19078 xmax: 25.01292 ymax: 60.19293 #> Geodetic CRS: WGS 84 #> gml_id id status medium operator size_in length_m year from_loc #> 1 pipelines.3463 n/a 1628.03 #> to_loc country_co country notes #> 1 FI Finland Finnish Transport Agency #> the_geom #> 1 MULTILINESTRING ((25.01292 ..."},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"order-features","dir":"Articles","previous_headings":"","what":"Order features","title":"Using request parameters to limit query results","text":"Exactly features returned depends internal structure data. However, can sort returned selection based attribute value using sortBy parameter. Say wanted return 5 longest marine pipelines. following example, sort \"length_m\" attribute combine count parameter restrict number features returned. returns first 5 features data ordered \"length_m\". pipelines lengths recorded, skip CQL Filter. default sort operation sort ascending order. WFS servers require sort order specified. case, append +attribute character string passed sortBy. Conversely, add +D sort descending order.","code":"emodnet_get_layers( wfs = wfs, layers = \"pipelines\", sortBy = \"length_m+D\", count = 5L, reduce_layers = TRUE, cql_filter = \"length_m IS NOT NULL\" ) #> Simple feature collection with 5 features and 13 fields #> Geometry type: MULTILINESTRING #> Dimension: XY #> Bounding box: xmin: 2.249597 ymin: 51.04064 xmax: 28.14228 ymax: 60.52758 #> Geodetic CRS: WGS 84 #> gml_id id status medium operator size_in length_m #> 1 pipelines.3423 Active Gas Nord Stream AG 48 2443360.2 #> 2 pipelines.3424 Planned Gas Nord Stream 2 AG 48 1210867.9 #> 3 pipelines.52 PL0187_PR Active Gas Statoil ASA 42 836155.4 #> 4 pipelines.517 326374 Active Gas GASSCO AS 42 832197.9 #> 5 pipelines.53 PL0186_PR Active Gas Statoil ASA 40 807749.5 #> year from_loc to_loc country_co country notes #> 1 2011 Vyborg, RU Lubmin, GE DE, RU Germany, Russia Schematic Route #> 2 2021 Kurgalsky, RU Lubmin, GE DE, RU Germany, Russia Schematic Route #> 3 Draupner (N) Duinkerken (F) NL Netherlands #> 4 DRAUPNER E DUNKERQUE NO Norway #> 5 Sleipner (N) Zeebrugge (B) NL Netherlands #> the_geom #> 1 MULTILINESTRING ((18.00045 ... #> 2 MULTILINESTRING ((28.14228 ... #> 3 MULTILINESTRING ((2.249597 ... #> 4 MULTILINESTRING ((2.458616 ... #> 5 MULTILINESTRING ((3.298373 ..."},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"return-blocks-of-features-from-specific-starting-point","dir":"Articles","previous_headings":"","what":"Return blocks of features from specific starting point","title":"Using request parameters to limit query results","text":"Finally WFS version 2.0.0 (also available earlier versions GeoServer) startIndex parameter introduced, allowing users specify starting index features returned. example, full \"pipelines\" layer contains 3951 features. Setting startIndex n_features - 4 (3947) returns last 4 features. can also combine startIndex count return specific blocks features. example, following query request features 5-9 supplying startIndex 4 count 5. Note startIndex uses 0 starting index (0 indicates first feature), hence set 4 order start 5th feature. combination , example, loop, can used download process large layer might able handled R smaller, manageable blocks features.","code":"#> [1] 3951 n_features <- layer_attributes_tbl(wfs = wfs, layer = \"pipelines\") %>% nrow() n_features startIndex <- n_features - 4L startIndex #> [1] 3947 emodnet_get_layers( wfs = wfs, layers = \"pipelines\", startIndex = startIndex, reduce_layers = TRUE ) #> Simple feature collection with 4 features and 13 fields #> Geometry type: MULTILINESTRING #> Dimension: XY #> Bounding box: xmin: 3.990801 ymin: 53.53329 xmax: 14.4857 ymax: 55.81712 #> Geodetic CRS: WGS 84 #> gml_id id status medium operator size_in length_m year #> 1 pipelines.3948 154802 Not in use Gas NA #> 2 pipelines.3949 154812 Not in use Gas NA #> 3 pipelines.3950 154982 Active Gas NA #> 4 pipelines.3951 155942 Active Gas NA #> from_loc to_loc country_co country notes the_geom #> 1 DE Germany MULTILINESTRING ((14.48506 ... #> 2 DE Germany MULTILINESTRING ((14.4857 5... #> 3 DE Germany MULTILINESTRING ((4.058202 ... #> 4 DE Germany MULTILINESTRING ((4.019116 ... emodnet_get_layers( wfs = wfs, layers = \"pipelines\", startIndex = 4L, count = 6L, reduce_layers = TRUE ) #> Simple feature collection with 6 features and 13 fields #> Geometry type: MULTILINESTRING #> Dimension: XY #> Bounding box: xmin: -8.336029 ymin: 51.19448 xmax: -7.947595 ymax: 51.8236 #> Geodetic CRS: WGS 84 #> gml_id id status medium operator size_in length_m year from_loc #> 1 pipelines.5 F43__3 n/a 10038.745 Kinsale #> 2 pipelines.6 F43__4 n/a 20011.185 Ballycotton #> 3 pipelines.7 F43__5 n/a 10853.853 Kinsale #> 4 pipelines.8 F43__6 n/a 5397.224 Kinsale #> 5 pipelines.9 F43__7 n/a 73853.753 Kinsale #> 6 pipelines.10 F43__8 n/a 56242.374 Seven Heads #> to_loc country_co country notes the_geom #> 1 IE Ireland MULTILINESTRING ((-8.186204... #> 2 IE Ireland MULTILINESTRING ((-8.017066... #> 3 IE Ireland MULTILINESTRING ((-8.017356... #> 4 IE Ireland MULTILINESTRING ((-8.179044... #> 5 IE Ireland MULTILINESTRING ((-7.947595... #> 6 IE Ireland MULTILINESTRING ((-8.217298..."},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"return-data-for-specific-attributes","dir":"Articles","previous_headings":"","what":"Return data for specific attributes","title":"Using request parameters to limit query results","text":"Finally, can specify specific attributes want data returned using parameter propertyName. limit data returned single attribute \"country\" just 3 features, use parameters propertyName = \"country\" count = 3. Note limiting data specific attributes, columns returned NA (including spatial, case the_geom, column). limit multiple attributes, separate attribute name character string supplied propertyName comma.","code":"emodnet_get_layers( wfs = wfs, layers = \"pipelines\", propertyName = \"country\", count = 3L, reduce_layers = TRUE ) #> Simple feature collection with 3 features and 13 fields (with 3 geometries empty) #> Geometry type: GEOMETRYCOLLECTION #> Dimension: XY #> Bounding box: xmin: NA ymin: NA xmax: NA ymax: NA #> Geodetic CRS: WGS 84 #> gml_id id status medium operator size_in length_m year from_loc #> 1 pipelines.3463 NA #> 2 pipelines.3702 NA #> 3 pipelines.3707 NA #> to_loc country_co country notes the_geom #> 1 Finland GEOMETRYCOLLECTION EMPTY #> 2 Finland GEOMETRYCOLLECTION EMPTY #> 3 Finland GEOMETRYCOLLECTION EMPTY emodnet_get_layers( wfs = wfs, layers = \"pipelines\", propertyName = \"country,the_geom\", count = 3L, reduce_layers = TRUE ) #> Simple feature collection with 3 features and 13 fields #> Geometry type: MULTILINESTRING #> Dimension: XY #> Bounding box: xmin: 24.90736 ymin: 60.1819 xmax: 27.11348 ymax: 60.5359 #> Geodetic CRS: WGS 84 #> gml_id id status medium operator size_in length_m year from_loc #> 1 pipelines.3463 NA #> 2 pipelines.3702 NA #> 3 pipelines.3707 NA #> to_loc country_co country notes the_geom #> 1 Finland MULTILINESTRING ((25.01292 ... #> 2 Finland MULTILINESTRING ((27.11348 ... #> 3 Finland MULTILINESTRING ((24.90967 ..."},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"limit-spatial-extent-using-a-boundary-box","dir":"Articles","previous_headings":"","what":"Limit spatial extent using a boundary box","title":"Using request parameters to limit query results","text":"bbox parameter allows us search features contained (partially contained) inside box user-defined coordinates. format bbox parameter EMODnet WFS cases (assuming using version 2.0.0) bbox=a1,b1,a2,b2,[crs] a1, b1, a2, b2 represent coordinate values. optional crs parameter used name CRS bbox coordinates (different featureTypes native CRS.) order coordinates passed bbox parameter depends coordinate system used (coordinate syntax isn’t represented x y). following example, specify bounding box proving coordinates order xmin,ymin,xmax,ymax specifying coordinates given EPSG:4326 coordinate reference system.","code":"bbox_response <- emodnet_get_layers( service = \"biology\", layers = \"mediseh_posidonia_nodata\", bbox = \"22.9,34.4,26.8,35.8,EPSG:4326\", reduce_layers = TRUE ) #> ✔ WFS client created successfully #> ℹ Service: \"https://geo.vliz.be/geoserver/Emodnetbio/wfs\" #> ℹ Version: \"2.0.0\" bbox_response %>% sf::st_cast(to = \"MULTILINESTRING\") %>% mapview::mapview(burst = TRUE, legend = FALSE)"},{"path":"https://emodnet.github.io/emodnet.wfs/articles/request-params.html","id":"non-standard-vendor-parameters","dir":"Articles","previous_headings":"","what":"Non-standard Vendor Parameters","title":"Using request parameters to limit query results","text":"WFS vendor parameters additonal, non-standard request parameters defined implementation provide enhanced capabilities. majority EMODnet services GeoServer WFS implementations support variety vendor-specific WFS parameters. One cql_filters. handled explicitly emodnet.wfs package cql_filter argument emodnet_get_layers() documented detail article(\"ecql_filtering\"). additional vendor parameters available GeoServer implementations please refer WFS vendor parameters documentatio Exceptions Chemistry (Eutrophication sea region, Eutrophication) services uses Python Chemistry (Litter) uses MapServer vendor parameters services might differ.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Anna Krystalli. Author. Salvador Fernández-Bejarano. Author, maintainer. Thomas J Webb. Contributor. European Marine Observation Data Network (EMODnet) Biology project European Commission's Directorate - General Maritime Affairs Fisheries (DG MARE). Copyright holder. VLIZ (VLAAMS INSTITUUT VOOR DE ZEE). Funder. Maëlle Salmon. Author.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Krystalli , Fernández-Bejarano S, Salmon M (????). emodnet.wfs: Access EMODnet Web Feature Service data R. doi:10.14284/679, R package version 2.0.2.9000. Integrated data products created European Marine Observation Data Network (EMODnet) Biology project (EASME/EMFF/2017/1.3.1.2/02/SI2.789013), funded European Union Regulation (EU) 508/2014 European Parliament Council 15 May 2014 European Maritime Fisheries Fund, https://github.com/EMODnet/emodnet.wfs.","code":"@Manual{, title = {{emodnet.wfs}: Access EMODnet Web Feature Service data through R}, author = {Anna Krystalli and Salvador Fernández-Bejarano and Maëlle Salmon}, note = {R package version 2.0.2.9000. Integrated data products created under the European Marine Observation Data Network (EMODnet) Biology project (EASME/EMFF/2017/1.3.1.2/02/SI2.789013), funded by the by the European Union under Regulation (EU) No 508/2014 of the European Parliament and of the Council of 15 May 2014 on the European Maritime and Fisheries Fund}, url = {https://github.com/EMODnet/emodnet.wfs}, doi = {10.14284/679}, }"},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"emodnetwfs-access-emodnet-web-feature-service-data-through-r","dir":"","previous_headings":"","what":"Access EMODnet Web Feature Service data through R","title":"Access EMODnet Web Feature Service data through R","text":"goal emodnet.wfs allow interrogation access EMODnet’s, European Marine Observation Data Network, geographic vector data R EMODnet Web Feature Services. Web Feature services (WFS) represent change way geographic information created, modified exchanged Internet offer direct fine-grained access geographic information feature feature property level. emodnet.wfs aims offering user-friendly interface rich data.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"installation-and-setup","dir":"","previous_headings":"","what":"Installation and setup","title":"Access EMODnet Web Feature Service data through R","text":"can install development version emodnet.wfs GitHub : want avoid reading messages emodnet.wfs “WFS client created successfully”, set \"emodnet.wfs.quiet\" option TRUE.","code":"# install.packages(\"pak\") pak::pak(\"EMODnet/emodnet.wfs\") options(\"emodnet.wfs.quiet\" = TRUE)"},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"available-services","dir":"","previous_headings":"","what":"Available services","title":"Access EMODnet Web Feature Service data through R","text":"available services contained tibble returned emodnet_wfs(). explore available services can use:","code":"#> [1] \"data.frame\" #> [1] \"service_name\" \"service_url\" #> [1] \"bathymetry\" #> [2] \"biology\" #> [3] \"biology_occurrence_data\" #> [4] \"chemistry_cdi_data_discovery_and_access_service\" #> [5] \"chemistry_cdi_distribution_observations_per_category_and_region\" #> [6] \"chemistry_contaminants\" #> [7] \"chemistry_marine_litter\" #> [8] \"geology_coastal_behavior\" #> [9] \"geology_events_and_probabilities\" #> [10] \"geology_marine_minerals\" #> [11] \"geology_sea_floor_bedrock\" #> [12] \"geology_seabed_substrate_maps\" #> [13] \"geology_submerged_landscapes\" #> [14] \"human_activities\" #> [15] \"physics\" #> [16] \"seabed_habitats_general_datasets_and_products\" #> [17] \"seabed_habitats_individual_habitat_map_and_model_datasets\" View(emodnet_wfs())"},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"create-service-client","dir":"","previous_headings":"","what":"Create Service Client","title":"Access EMODnet Web Feature Service data through R","text":"Specify service using service argument.","code":"wfs_bio <- emodnet_init_wfs_client(service = \"biology\") #> Loading ISO 19139 XML schemas... #> Loading ISO 19115 codelists... #> ✔ WFS client created successfully #> ℹ Service: \"https://geo.vliz.be/geoserver/Emodnetbio/wfs\" #> ℹ Version: \"2.0.0\" wfs_bio #> #> ....|-- url: https://geo.vliz.be/geoserver/Emodnetbio/wfs #> ....|-- version: 2.0.0 #> ....|-- capabilities "},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"get-wfs-layer-info","dir":"","previous_headings":"","what":"Get WFS Layer info","title":"Access EMODnet Web Feature Service data through R","text":"can get metadata layers available service. can pass wfs client object. can also get info specific layers wfs object: Finally, can get details available services layers server","code":"emodnet_get_wfs_info(service = \"biology\") #> ✔ WFS client created successfully #> ℹ Service: \"https://geo.vliz.be/geoserver/Emodnetbio/wfs\" #> ℹ Version: \"2.0.0\" #> # A tibble: 35 × 9 #> # Rowwise: #> data_source service_name service_url layer_name title abstract class format #> #> 1 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Coral … WFSF… sf #> 2 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Coral … WFSF… sf #> 3 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Cymodo… WFSF… sf #> 4 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 5 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 6 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 7 emodnet_wfs biology https://geo.… mediseh_h… EMOD… \"Haloph… WFSF… sf #> 8 emodnet_wfs biology https://geo.… mediseh_m… EMOD… \"Maërl … WFSF… sf #> 9 emodnet_wfs biology https://geo.… mediseh_m… EMOD… \"Maërl … WFSF… sf #> 10 emodnet_wfs biology https://geo.… mediseh_p… EMOD… \"This d… WFSF… sf #> # ℹ 25 more rows #> # ℹ 1 more variable: layer_namespace emodnet_get_wfs_info(wfs_bio) #> # A tibble: 35 × 9 #> # Rowwise: #> data_source service_name service_url layer_name title abstract class format #> #> 1 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Coral … WFSF… sf #> 2 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Coral … WFSF… sf #> 3 emodnet_wfs biology https://geo.… mediseh_c… EMOD… \"Cymodo… WFSF… sf #> 4 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 5 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 6 emodnet_wfs biology https://geo.… Species_g… EMOD… \"This d… WFSF… sf #> 7 emodnet_wfs biology https://geo.… mediseh_h… EMOD… \"Haloph… WFSF… sf #> 8 emodnet_wfs biology https://geo.… mediseh_m… EMOD… \"Maërl … WFSF… sf #> 9 emodnet_wfs biology https://geo.… mediseh_m… EMOD… \"Maërl … WFSF… sf #> 10 emodnet_wfs biology https://geo.… mediseh_p… EMOD… \"This d… WFSF… sf #> # ℹ 25 more rows #> # ℹ 1 more variable: layer_namespace layers <- c(\"mediseh_zostera_m_pnt\", \"mediseh_posidonia_nodata\") emodnet_get_layer_info(wfs = wfs_bio, layers = layers) #> # A tibble: 2 × 9 #> # Rowwise: #> data_source service_name service_url layer_name title abstract class format #> #> 1 emodnet_wfs https://geo.vl… biology mediseh_p… EMOD… \"Coastl… WFSF… sf #> 2 emodnet_wfs https://geo.vl… biology mediseh_z… EMOD… \"Zoster… WFSF… sf #> # ℹ 1 more variable: layer_namespace emodnet_get_all_wfs_info()"},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"get-wfs-layers","dir":"","previous_headings":"","what":"Get WFS layers","title":"Access EMODnet Web Feature Service data through R","text":"can extract layers directly wfs object using layer names. layers downloaded sf objects output list named element layer requested. can change output crs argument crs. can also extract layers using WFS service name. Layers can also returned single sf object argument reduce_layers. TRUE function try reduce layers single sf. attempting reduce fails, error: Using reduce_layers = TRUE also useful returning sf object rather list single layer request.","code":"emodnet_get_layers(wfs = wfs_bio, layers = layers) #> $mediseh_zostera_m_pnt #> Simple feature collection with 54 features and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: -4.167154 ymin: 33.07783 xmax: 15.35766 ymax: 45.72451 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.1 0 Spagna POINT (-2.61314 36.71681) #> 2 mediseh_zostera_m_pnt.2 0 Spagna POINT (-3.846598 36.75127) #> 3 mediseh_zostera_m_pnt.3 0 Spagna POINT (-3.957785 36.72266) #> 4 mediseh_zostera_m_pnt.4 0 Spagna POINT (-4.039712 36.74217) #> 5 mediseh_zostera_m_pnt.5 0 Spagna POINT (-4.100182 36.72331) #> 6 mediseh_zostera_m_pnt.6 0 Spagna POINT (-4.167154 36.71226) #> 7 mediseh_zostera_m_pnt.7 0 Spagna POINT (-1.268366 37.55796) #> 8 mediseh_zostera_m_pnt.8 0 Francia POINT (4.84864 43.37637) #> 9 mediseh_zostera_m_pnt.9 0 Italia POINT (13.71831 45.70017) #> 10 mediseh_zostera_m_pnt.10 0 Italia POINT (13.16378 45.72451) #> #> $mediseh_posidonia_nodata #> Simple feature collection with 465 features and 3 fields #> Geometry type: MULTICURVE #> Dimension: XY #> Bounding box: xmin: -2.1798 ymin: 30.26623 xmax: 34.60767 ymax: 45.47668 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id km the_geom #> 1 mediseh_posidonia_nodata.1 0 291.503233 MULTICURVE (LINESTRING (27.... #> 2 mediseh_posidonia_nodata.2 0 75.379502 MULTICURVE (LINESTRING (23.... #> 3 mediseh_posidonia_nodata.3 0 38.627764 MULTICURVE (LINESTRING (22.... #> 4 mediseh_posidonia_nodata.4 0 110.344802 MULTICURVE (LINESTRING (19.... #> 5 mediseh_posidonia_nodata.13 0 66.997461 MULTICURVE (LINESTRING (9.1... #> 6 mediseh_posidonia_nodata.14 0 18.090640 MULTICURVE (LINESTRING (9.7... #> 7 mediseh_posidonia_nodata.15 0 16.618978 MULTICURVE (LINESTRING (9.8... #> 8 mediseh_posidonia_nodata.16 0 1.913773 MULTICURVE (LINESTRING (10.... #> 9 mediseh_posidonia_nodata.83 0 2.173447 MULTICURVE (LINESTRING (15.... #> 10 mediseh_posidonia_nodata.84 0 2.817453 MULTICURVE (LINESTRING (15.... emodnet_get_layers(wfs = wfs_bio, layers = layers, crs = 3857) #> ℹ crs transformed to 3857. #> ℹ crs transformed to 3857. #> $mediseh_zostera_m_pnt #> Simple feature collection with 54 features and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: -463885.4 ymin: 3905639 xmax: 1709607 ymax: 5736311 #> Projected CRS: WGS 84 / Pseudo-Mercator #> First 10 features: #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.1 0 Spagna POINT (-290893.4 4399707) #> 2 mediseh_zostera_m_pnt.2 0 Spagna POINT (-428201.3 4404494) #> 3 mediseh_zostera_m_pnt.3 0 Spagna POINT (-440578.6 4400520) #> 4 mediseh_zostera_m_pnt.4 0 Spagna POINT (-449698.6 4403229) #> 5 mediseh_zostera_m_pnt.5 0 Spagna POINT (-456430.1 4400610) #> 6 mediseh_zostera_m_pnt.6 0 Spagna POINT (-463885.4 4399075) #> 7 mediseh_zostera_m_pnt.7 0 Spagna POINT (-141193.9 4517168) #> 8 mediseh_zostera_m_pnt.8 0 Francia POINT (539748.1 5369436) #> 9 mediseh_zostera_m_pnt.9 0 Italia POINT (1527115 5732431) #> 10 mediseh_zostera_m_pnt.10 0 Italia POINT (1465385 5736311) #> #> $mediseh_posidonia_nodata #> Simple feature collection with 465 features and 3 fields #> Geometry type: MULTICURVE #> Dimension: XY #> Bounding box: xmin: -242654.3 ymin: 3537818 xmax: 3852508 ymax: 5696879 #> Projected CRS: WGS 84 / Pseudo-Mercator #> First 10 features: #> gml_id id km the_geom #> 1 mediseh_posidonia_nodata.1 0 291.503233 MULTICURVE (LINESTRING (302... #> 2 mediseh_posidonia_nodata.2 0 75.379502 MULTICURVE (LINESTRING (257... #> 3 mediseh_posidonia_nodata.3 0 38.627764 MULTICURVE (LINESTRING (246... #> 4 mediseh_posidonia_nodata.4 0 110.344802 MULTICURVE (LINESTRING (221... #> 5 mediseh_posidonia_nodata.13 0 66.997461 MULTICURVE (LINESTRING (101... #> 6 mediseh_posidonia_nodata.14 0 18.090640 MULTICURVE (LINESTRING (108... #> 7 mediseh_posidonia_nodata.15 0 16.618978 MULTICURVE (LINESTRING (110... #> 8 mediseh_posidonia_nodata.16 0 1.913773 MULTICURVE (LINESTRING (121... #> 9 mediseh_posidonia_nodata.83 0 2.173447 MULTICURVE (LINESTRING (169... #> 10 mediseh_posidonia_nodata.84 0 2.817453 MULTICURVE (LINESTRING (169... emodnet_get_layers( service = \"biology\", layers = c(\"mediseh_zostera_m_pnt\", \"mediseh_posidonia_nodata\") ) #> ✔ WFS client created successfully #> ℹ Service: \"https://geo.vliz.be/geoserver/Emodnetbio/wfs\" #> ℹ Version: \"2.0.0\" #> $mediseh_zostera_m_pnt #> Simple feature collection with 54 features and 3 fields #> Geometry type: POINT #> Dimension: XY #> Bounding box: xmin: -4.167154 ymin: 33.07783 xmax: 15.35766 ymax: 45.72451 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id country the_geom #> 1 mediseh_zostera_m_pnt.1 0 Spagna POINT (-2.61314 36.71681) #> 2 mediseh_zostera_m_pnt.2 0 Spagna POINT (-3.846598 36.75127) #> 3 mediseh_zostera_m_pnt.3 0 Spagna POINT (-3.957785 36.72266) #> 4 mediseh_zostera_m_pnt.4 0 Spagna POINT (-4.039712 36.74217) #> 5 mediseh_zostera_m_pnt.5 0 Spagna POINT (-4.100182 36.72331) #> 6 mediseh_zostera_m_pnt.6 0 Spagna POINT (-4.167154 36.71226) #> 7 mediseh_zostera_m_pnt.7 0 Spagna POINT (-1.268366 37.55796) #> 8 mediseh_zostera_m_pnt.8 0 Francia POINT (4.84864 43.37637) #> 9 mediseh_zostera_m_pnt.9 0 Italia POINT (13.71831 45.70017) #> 10 mediseh_zostera_m_pnt.10 0 Italia POINT (13.16378 45.72451) #> #> $mediseh_posidonia_nodata #> Simple feature collection with 465 features and 3 fields #> Geometry type: MULTICURVE #> Dimension: XY #> Bounding box: xmin: -2.1798 ymin: 30.26623 xmax: 34.60767 ymax: 45.47668 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id km the_geom #> 1 mediseh_posidonia_nodata.1 0 291.503233 MULTICURVE (LINESTRING (27.... #> 2 mediseh_posidonia_nodata.2 0 75.379502 MULTICURVE (LINESTRING (23.... #> 3 mediseh_posidonia_nodata.3 0 38.627764 MULTICURVE (LINESTRING (22.... #> 4 mediseh_posidonia_nodata.4 0 110.344802 MULTICURVE (LINESTRING (19.... #> 5 mediseh_posidonia_nodata.13 0 66.997461 MULTICURVE (LINESTRING (9.1... #> 6 mediseh_posidonia_nodata.14 0 18.090640 MULTICURVE (LINESTRING (9.7... #> 7 mediseh_posidonia_nodata.15 0 16.618978 MULTICURVE (LINESTRING (9.8... #> 8 mediseh_posidonia_nodata.16 0 1.913773 MULTICURVE (LINESTRING (10.... #> 9 mediseh_posidonia_nodata.83 0 2.173447 MULTICURVE (LINESTRING (15.... #> 10 mediseh_posidonia_nodata.84 0 2.817453 MULTICURVE (LINESTRING (15.... emodnet_get_layers( wfs = wfs_bio, layers = layers, reduce_layers = TRUE ) #> Error in `value[[3L]]()`: #> ! Cannot reduce layers. #> ℹ Try again with `reduce_layers = FALSE` emodnet_get_layers( service = \"biology\", layers = c(\"mediseh_posidonia_nodata\"), reduce_layers = TRUE ) #> ✔ WFS client created successfully #> ℹ Service: \"https://geo.vliz.be/geoserver/Emodnetbio/wfs\" #> ℹ Version: \"2.0.0\" #> Simple feature collection with 465 features and 3 fields #> Geometry type: MULTICURVE #> Dimension: XY #> Bounding box: xmin: -2.1798 ymin: 30.26623 xmax: 34.60767 ymax: 45.47668 #> Geodetic CRS: WGS 84 #> First 10 features: #> gml_id id km the_geom #> 1 mediseh_posidonia_nodata.1 0 291.503233 MULTICURVE (LINESTRING (27.... #> 2 mediseh_posidonia_nodata.2 0 75.379502 MULTICURVE (LINESTRING (23.... #> 3 mediseh_posidonia_nodata.3 0 38.627764 MULTICURVE (LINESTRING (22.... #> 4 mediseh_posidonia_nodata.4 0 110.344802 MULTICURVE (LINESTRING (19.... #> 5 mediseh_posidonia_nodata.13 0 66.997461 MULTICURVE (LINESTRING (9.1... #> 6 mediseh_posidonia_nodata.14 0 18.090640 MULTICURVE (LINESTRING (9.7... #> 7 mediseh_posidonia_nodata.15 0 16.618978 MULTICURVE (LINESTRING (9.8... #> 8 mediseh_posidonia_nodata.16 0 1.913773 MULTICURVE (LINESTRING (10.... #> 9 mediseh_posidonia_nodata.83 0 2.173447 MULTICURVE (LINESTRING (15.... #> 10 mediseh_posidonia_nodata.84 0 2.817453 MULTICURVE (LINESTRING (15...."},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"help-needed","dir":"","previous_headings":"","what":"Help needed?","title":"Access EMODnet Web Feature Service data through R","text":"get unexpected error, Look EMODnet monitor; Open issue repository.","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"other-web-services","dir":"","previous_headings":"","what":"Other web services","title":"Access EMODnet Web Feature Service data through R","text":"three ways access EMODnet data moment, complement .","code":""},{"path":"https://emodnet.github.io/emodnet.wfs/index.html","id":"emodnet-erddap-server","dir":"","previous_headings":"Other web services","what":"EMODnet ERDDAP server","title":"Access EMODnet Web Feature Service data through R","text":"EMODnet data also published ERDDAP server. can access data R using rerddap R package:","code":"# install.packages(\"rerrdap\") library(rerddap) #> Registered S3 method overwritten by 'hoardr': #> method from #> print.cache_info httr erddap_url <- \"https://erddap.emodnet.eu/erddap/\" rerddap::ed_datasets(url = erddap_url) #> # A tibble: 8 × 16 #> griddap Subset tabledap Make.A.Graph wms files Title Summary FGDC ISO.19115 #>