| Title: | Orchestrate Geospatial (Meta)Data Management Workflows and Manage FAIR Services |
|---|---|
| Description: | An engine to facilitate the orchestration and execution of metadata-driven data management workflows, in compliance with 'FAIR' (Findable, Accessible, Interoperable and Reusable) data management principles. By means of a pivot metadata model, relying on the 'DublinCore' standard (<https://dublincore.org/>), a unique source of metadata can be used to operate multiple and inter-connected data management actions. Users can also customise their own workflows by creating specific actions but the library comes with a set of native actions targeting common geographic information and data management, in particular actions oriented to the publication on the web of metadata and data resources to provide standard discovery and access services. At first, default actions of the library were meant to focus on providing turn-key actions for geospatial (meta)data: 1) by creating manage geospatial (meta)data complying with 'ISO/TC211' (<https://committee.iso.org/home/tc211>) and 'OGC' (<https://www.ogc.org/standards/>) geographic information standards (eg 19115/19119/19110/19139) and related best practices (eg. 'INSPIRE'); and 2) by facilitating extraction, reading and publishing of standard geospatial (meta)data within widely used software that compound a Spatial Data Infrastructure ('SDI'), including spatial databases (eg. 'PostGIS'), metadata catalogues (eg. 'GeoNetwork', 'CSW' servers), data servers (eg. 'GeoServer'). The library was then extended to actions for other domains: 1) biodiversity (meta)data standard management including handling of 'EML' metadata, and their management with 'DataOne' servers, 2) in situ sensors, remote sensing and model outputs (meta)data standard management by handling part of 'CF' conventions, 'NetCDF' data format and 'OPeNDAP' access protocol, and their management with 'Thredds' servers, 3) generic / domain agnostic (meta)data standard managers ('DublinCore', 'DataCite'), to facilitate the publication of data within (meta)data repositories such as 'Zenodo' (<https://zenodo.org>) or DataVerse (<https://dataverse.org/>). The execution of several actions will then allow to cross-reference (meta)data resources in each action performed, offering a way to bind resources between each other (eg. reference 'Zenodo' 'DOI' in 'GeoNetwork'/'GeoServer' metadata, or vice versa reference 'GeoNetwork'/'GeoServer' links in 'Zenodo' or 'EML' metadata). The use of standardized configuration files ('JSON' or 'YAML' formats) allow fully reproducible workflows to facilitate the work of data and information managers. |
| Authors: | Emmanuel Blondel [aut, cre, cph] (ORCID: <https://orcid.org/0000-0002-5870-5762>), Julien, Barde [aut] (ORCID: <https://orcid.org/0000-0002-3519-6141>), Wilfried Heintz [aut] (ORCID: <https://orcid.org/0000-0002-9244-9766>), Alexandre Bennici [ctb], Sylvain Poulain [ctb], Bastien Grasset [ctb], Mathias Rouan [ctb], Emilie Lerigoleur [ctb], Yvan Le Bras [ctb], Jeroen Ooms [ctb] |
| Maintainer: | Emmanuel Blondel <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 1.4.0.9004 |
| Built: | 2026-10-07 22:31:32 UTC |
| Source: | https://github.com/r-geoflow/geoflow |
add_config_logger enables a logger (managed with the internal
class geoflowLogger).
add_config_logger(config)add_config_logger(config)
config |
object of class list |
Emmanuel Blondel, [email protected]
Creates a sf object out of a bounding box
bbox_to_sf(xmin, ymin, xmax, ymax, crs = 4326)bbox_to_sf(xmin, ymin, xmax, ymax, crs = 4326)
xmin |
xmin |
ymin |
ymin |
xmax |
xmax |
ymax |
ymax |
crs |
Defaut is 4326 |
an object of class sf
Emmanuel Blondel [email protected]
build_hierarchical_list
build_hierarchical_list(parent, relationships)build_hierarchical_list(parent, relationships)
parent |
parent |
relationships |
relationships |
a hierarchical list
check_packages checks availability of a list of R packages in R. This
function is essentially used internally by geoflow in assocation to geoflow_software and
geoflow_action that would need specific packages to be imported in R.
check_packages(pkgs)check_packages(pkgs)
pkgs |
a vector of package names |
Emmanuel Blondel, [email protected]
closeWorkflow allows to close a workflow
closeWorkflow(config)closeWorkflow(config)
config |
a configuration object as read by |
Emmanuel Blondel, [email protected]
create_geoflow_data_from_dbi
create_geoflow_data_from_dbi(dbi, schema, table)create_geoflow_data_from_dbi(dbi, schema, table)
dbi |
a dbi connection |
schema |
schema |
table |
table |
Emmanuel Blondel, [email protected]
create_object_identification_id
create_object_identification_id(prefix, str)create_object_identification_id(prefix, str)
prefix |
a character string |
str |
a character string |
a digested character string
debugWorkflow allows to initiate a workflow job for
developers to work / debug on workflow actions.
debugWorkflow( file, dir, outdir, entityIndex, copyData, runSoftwareActions, runLocalActions )debugWorkflow( file, dir, outdir, entityIndex, copyData, runSoftwareActions, runLocalActions )
file |
configuration file |
dir |
a directory used to execute the workflow. This is the working directory, ie where local resources (data, metadata), should be located. |
outdir |
a directory where the geoflow will write the job outputs. |
entityIndex |
index of the entity within the list of loaded entities. Default is 1 |
copyData |
whether data should be downloaded/copied to job data directory.
Default is |
runSoftwareActions |
whether software actions should be run. Default is |
runLocalActions |
whether entity data local actions (if any) should be run.
Default is |
a named list including the workflow config, the selected entity,
the eventual options associated to the entity, and the output entity dir path
of the selected entity.
Emmanuel Blondel, [email protected]
describeOGCRelation
describeOGCRelation(entity, data_object, service, download, format, handle_category, handle_ogc_service_description, handle_format)describeOGCRelation(entity, data_object, service, download, format, handle_category, handle_ogc_service_description, handle_format)
entity |
the entity considered |
data_object |
data object |
service |
service acronym |
download |
whether the relation should be a download one or not |
format |
format |
handle_category |
append the relation category |
handle_ogc_service_description |
append the OGC service description |
handle_format |
append the download format |
Emmanuel Blondel, [email protected]
enrich_text_from_entity will attempt to enrich an entity text property
from other entity metadata, depending on text variables handled by a pattern in the form
- If the entity property is a text, only the name of the property name is required.
- If the entity property is a list, then 2 subcases can be distinguished:
If it is a named list (such as entity descriptions), the text variable will be compound by the entity property name and the element_property name, in the form
If it is a unnamed list (such as list of keywords, list of relations, etc), the text variable will handle four elements: property (entity property name to look at), a key value pair to use for search within the list, an element_property for which the value should be picked up to enrich the text. The variable willbe in the form
enrich_text_from_entity(str, entity)enrich_text_from_entity(str, entity)
str |
a text to be enriched |
entity |
an object of class |
Emmanuel Blondel, [email protected]
executeWorkflow allows to execute a workflow
executeWorkflow(file, dir, outdir, queue, on_initWorkflowJob, on_initWorkflow, on_closeWorkflow, monitor, session)executeWorkflow(file, dir, outdir, queue, on_initWorkflowJob, on_initWorkflow, on_closeWorkflow, monitor, session)
file |
a JSON geoflow configuration file |
dir |
a directory used to execute the workflow. This is the working directory, ie where local resources (data, metadata), should be located. |
outdir |
a directory where the geoflow will write the job outputs. |
queue |
an ipc queue to use geoflow in geoflow-shiny |
on_initWorkflowJob |
a function to trigger once |
on_initWorkflow |
a function to trigger once |
on_closeWorkflow |
a function to trigger once |
monitor |
a monitor function to increase progress bar |
session |
a shiny session object (optional) to run geoflow in a shiny context |
the path of the job directory
Emmanuel Blondel, [email protected]
executeWorkflowJob allows to execute a workflow job
executeWorkflowJob(config, jobdir, queue, monitor)executeWorkflowJob(config, jobdir, queue, monitor)
config |
a configuration object as read by |
jobdir |
the Job directory. Optional, by default inherited with the configuration. |
queue |
an ipc queue to use geoflow in geoflow-shiny |
monitor |
a monitor function to increase progress bar |
Emmanuel Blondel, [email protected]
extract_cell_components extracts the components of a cell
when using tabular data content handlers (for entity and contact).
extract_cell_components(str)extract_cell_components(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
extract_kvp parses a string into a key value pair represented by
a geoflow_kvp object.
extract_kvp(str)extract_kvp(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
extract_kvp parses a string into a key value pair represented by
a geoflow_kvp object.
extract_kvps(strs, collapse)extract_kvps(strs, collapse)
strs |
a string as object of class |
collapse |
collapse by. Default is |
Emmanuel Blondel, [email protected]
fetch_layer_styles_from_dbi
fetch_layer_styles_from_dbi(entity, dbi, schema, table)fetch_layer_styles_from_dbi(entity, dbi, schema, table)
entity |
a geoflow_entity to be used and enriched |
dbi |
a dbi connection |
schema |
schema |
table |
table |
the entity, enriched with layer styles
Emmanuel Blondel, [email protected]
filter_sf_by_cqlfilter filters an object of class sf using
a CQL syntax. This function is minimalistic and only basic CQL filters are supported.
filter_sf_by_cqlfilter(sfdata, cqlfilter)filter_sf_by_cqlfilter(sfdata, cqlfilter)
sfdata |
object of class |
cqlfilter |
object of class |
Emmanuel Blondel, [email protected]
Provides an engine to manage Spatial Data Infrastructures (SDI) and to orchestrate, run and automate geospatial (meta)data workflows in compliance with international standards (ISO, OGC, INSPIRE) with a range of actions such as data upload in spatial databases, publication in GeoServer and metadata publication in GeoNetwork. It includes actions to manage domain-specific resources usch ecological metadata (EML) and its publication on tools such as Metacat. It also allows to publish data on cloud data infrastructures such as Zenodo or Dataverse. Through a pivot metadata model, geoflow allows to manage a unique source dataset metadata while offering a way to target various repositories for their publication. The execution of several actions will allow to cross-share (meta)data resources in each action performed, offering a way to bind resources between each other (eg. reference Zenodo DOIS in Geonetwork/Geoserver metadata, reference Geonetwork/Geoserver links in Zenodo or EML metadata). The use of standardized configuration files allows fully reproducible workflows, in compliance with FAIR (Findable, Accessible, Interoperable, Reusable) principles.
Emmanuel Blondel [email protected]
Useful links:
This class models an action to be executed by geoflow
R6Class object.
geoflow_action
Object of R6Class for modelling an action
geoflowLogger -> geoflow_action
idaction ID
enabledenabled
fundersfunders
authorsauthors
maintainermaintainer
scopeaction scope
typestypes of action
defthe action definition
targetthe action target
target_dirthe action target directory
packageslist of packages required to perform the action
pid_generatora name referencing the PID generator (if existing)
pid_typestypes of PIDs to generate
generic_uploaderwhether the action is a generic uploader or not.
funa function for the action
scripta script for the action
optionsaction options
available_optionsa list of available options for the actions
statusstatus
notesnotes
geoflow_action$new()Initialize a geoflow_action
geoflow_action$new( yaml = NULL, id = NULL, enabled = TRUE, funders = list(), authors = list(), maintainer = NULL, scope = "global", types = list(), def = "", target = NA, target_dir = NA, packages = list(), pid_generator = NULL, pid_types = list(), generic_uploader = FALSE, fun = NULL, script = NULL, options = list(), available_options = list(), status = "stable", notes = "" )
yamla yaml file
idaction id
enabledenabled
fundersfunders
authorsauthors
maintainermaintainer
scopeaction scope "global" or "local"
typesaction types
defaction definition
targetthe action target, e.g. "entity"
target_dirthe action target directory
packageslist of packages required to perform the action
pid_generatora name referencing the PID generator (if existing)
pid_typestypes of PIDs to generate by the action
generic_uploaderwhether the action is a generic uploader or not.
funaction function
scriptaction script
optionsaction options
available_optionsavailable options for the action
statusstatus of the action (experimental, stable, deprecated, superseded)
notesnotes
geoflow_action$fromYAML()Reads action properties from YAML file
geoflow_action$fromYAML(file)
filefile
geoflow_action$checkPackages()Check that all packages required for the action are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_action$checkPackages()
geoflow_action$run()Runs the action
geoflow_action$run(entity, config)
entityentity
configconfig
geoflow_action$getOption()Get action option value
geoflow_action$getOption(option)
optionoption id
the option value, either specified through a workflow, or the default value
geoflow_action$isPIDGenerator()Indicates if the action is PID generator
geoflow_action$isPIDGenerator()
TRUE if the action is a PID generator, FALSE otherwise
geoflow_action$exportPIDs()Exports PIDs for the action. This function will export the PIDs in several ways. First, a simple CSV file including the list of PIDs for each entity, and associated status (eg. draft/release) for the given PID resource. In addition, for each metadata entities file, an equivalent metadata table will be produced as CSV to handle entities enriched with the PID (added in the "Identifier" column), ready for use as workflow entities input. In addition, a new configuration file will be produced with name "<pid_generator>_geoflow_config_for_publication.json" turned as ready for publishing resources with PIDs (eg. publishing deposits in Zenodo).
geoflow_action$exportPIDs(config, entities)
configa geoflow configuration
entitiesone or more objects of class geoflow_entity
geoflow_action$isGenericUploader()Indicates if the action is a generic uploader
geoflow_action$isGenericUploader()
TRUE if the action is a generic uploader, FALSE otherwise
geoflow_action$clone()The objects of this class are cloneable with this method.
geoflow_action$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: action <- geoflow_action$new( id = "some-id", scope = "global", types = list("some purpose1", "some purpose2"), target = "entity", target_dir = "data", def = "some definition", packages = list(), pid_generator = NULL, generic_uploader = FALSE, fun = function(action, entity, config){}, available_options = list( option_name = list(def = "option description", default = FALSE) ), options = list(option_name = TRUE) ) ## End(Not run)## Not run: action <- geoflow_action$new( id = "some-id", scope = "global", types = list("some purpose1", "some purpose2"), target = "entity", target_dir = "data", def = "some definition", packages = list(), pid_generator = NULL, generic_uploader = FALSE, fun = function(action, entity, config){}, available_options = list( option_name = list(def = "option description", default = FALSE) ), options = list(option_name = TRUE) ) ## End(Not run)
This class models a contact to be executed by geoflow
R6Class object.
geoflow_contact
Object of R6Class for modelling a contact
idcontact identifier
firstNamecontact first name
lastNamecontact lastname
organizationNamecontact organization
positionNamecontact position
rolecontact role
voicecontact phone number
facsimilecontact facsimile
emailcontact email
websiteUrlcontact website URL
websiteNamecontact website name
postalAddresscontact postal address
postalCodecontact postal code
citycontact city
countrycontact country
identifierscontact identifiers
geoflow_contact$new()Initializes a geoflow_contact object
geoflow_contact$new()
geoflow_contact$setShinyEditorMode()Set mode for geoflow-shiny
geoflow_contact$setShinyEditorMode(mode = c("creation", "edition"))
modemode
geoflow_contact$getShinyEditorMode()Get mode for geoflow-shiny
geoflow_contact$getShinyEditorMode()
the shiny editor mode
geoflow_contact$getAllowedKeyValuesFor()Retrieves keys allowed for a given tabular field name. eg. "Identifier"
geoflow_contact$getAllowedKeyValuesFor(field)
fieldfield name
the list of valid keys for the field considered
geoflow_contact$setIdentifier()Sets an identifier by means of key
geoflow_contact$setIdentifier(key = "id", id)
keyan identifier key. Default is "id"
idthe identifier
geoflow_contact$setId()Sets an "id" identifier
geoflow_contact$setId(id)
idthe identifier
geoflow_contact$setFirstName()Sets contact first name
geoflow_contact$setFirstName(firstName)
firstNamecontact first name
geoflow_contact$setLastName()Sets contact last name
geoflow_contact$setLastName(lastName)
lastNamecontact last name
geoflow_contact$setOrganizationName()Sets contact organization name
geoflow_contact$setOrganizationName(organizationName)
organizationNamecontact organization name
geoflow_contact$setPositionName()Sets contact position name
geoflow_contact$setPositionName(positionName)
positionNamecontact position name
geoflow_contact$setRole()Sets contact role
geoflow_contact$setRole(role)
rolethe contact role
geoflow_contact$setVoice()Sets contact voice (phone number)
geoflow_contact$setVoice(voice)
voicecontact voice (phone number)
geoflow_contact$setFacsimile()Sets contact facsimile
geoflow_contact$setFacsimile(facsimile)
facsimilecontact facsimile
geoflow_contact$setEmail()Sets contact email
geoflow_contact$setEmail(email)
emailcontact email
geoflow_contact$setWebsiteUrl()Sets contact website URL
geoflow_contact$setWebsiteUrl(websiteUrl)
websiteUrlcontact website URL
geoflow_contact$setWebsiteName()Sets contact website name
geoflow_contact$setWebsiteName(websiteName)
websiteNamecontact website name
geoflow_contact$setPostalAddress()Sets the contact postal address
geoflow_contact$setPostalAddress(postalAddress)
postalAddresscontact postal address
geoflow_contact$setPostalCode()Sets the contact postal code
geoflow_contact$setPostalCode(postalCode)
postalCodecontact postalCode
geoflow_contact$setCity()Sets the contact city
geoflow_contact$setCity(city)
citycontact city
geoflow_contact$setCountry()Sets the contact country
geoflow_contact$setCountry(country)
countrycontact country
geoflow_contact$asDataFrame()Methods to export the geoflow_contact as data.frame using key-based syntax.
geoflow_contact$asDataFrame(line_separator = NULL)
line_separatora line separator. By default, the default line separator will be used.
an object of class data.frame giving the entities using key-based syntax
geoflow_contact$clone()The objects of this class are cloneable with this method.
geoflow_contact$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: contact <- geoflow_contact$new() contact$setId("[email protected]") contact$setFirstName("John") contact$setLastName("Doe") contact$setOrganizationName("Nowhere") contact$setPositionName("Wizard") contact$setRole("Manager") contact$setVoice("+9999000000000") contact$setFacsimile("+9999000000001") contact$setEmail("[email protected]") contact$setWebsiteUrl("www.nowhere.org") contact$setWebsiteName("Nowhere Inc.") contact$setPostalAddress("Nowhere street") contact$setPostalCode("Nowhere code") contact$setCity("Nowhere city") contact$setCountry("Nowhere country") ## End(Not run)## Not run: contact <- geoflow_contact$new() contact$setId("[email protected]") contact$setFirstName("John") contact$setLastName("Doe") contact$setOrganizationName("Nowhere") contact$setPositionName("Wizard") contact$setRole("Manager") contact$setVoice("+9999000000000") contact$setFacsimile("+9999000000001") contact$setEmail("[email protected]") contact$setWebsiteUrl("www.nowhere.org") contact$setWebsiteName("Nowhere Inc.") contact$setPostalAddress("Nowhere street") contact$setPostalCode("Nowhere code") contact$setCity("Nowhere city") contact$setCountry("Nowhere country") ## End(Not run)
This class models a data object
R6Class object.
geoflow_data
Object of R6Class for modelling a data object
diran object of class character giving a data directory
datalist of object of class geoflow_data in case we point to a data directory
restrictedindicates whether the data is under restricted access or not
accessaccessor key for accessing sources. Default is 'default'
sourcesource
sourceFidsourceFid
sourceSqlsourceSql
sourceTypesource type
sourceZipcreate a zip for the sources (DEPRECATED with #344)
sourceZipOnlycreate a zip only for the sources, remove source files (DEPRECATED with #344)
sqlsql
uploadupload
uploadSourceupload source name
uploadTypeupload type
cqlfilterCQL filter for filtering data
workspacesworkspaces
storestore
layernamelayer name
layertitlelayer title
layerdesclayer description
layerurilayer URI layeruri layer URI
stylesstyles
styleUploadupload styles
dimensionsdimensions
cloud_patha relative path in a cloud storage (e.g., OCS)
spatialRepresentationTypespatial representation type eg. "vector", "grid"
ogc_dimensionsOGC dimensions
featuresfeatures
parametersparameters
geometryFieldgeometry field
geometryTypegeometry type
featureTypefeature type name
featureTypeObjfeature type object
attributesattributes
variablesvariables
coveragescoverages
envelopeCompositionTypeenvelope composition type (for coverages)
selectedResolutionselected resolution (for coverages)
selectedResolutionIndexselected resolution index (for coverages)
bandslist of bands
actionslocal actions
runwhether to run local actions
geoflow_data$new()Initializes an object of class geoflow_data
geoflow_data$new(str = NULL, config = NULL)
strcharacter string to initialize from, using key-based syntax
configa geoflow config, if available and needed
geoflow_data$getDir()Get data directory where datasets are scanned to build geoflow_data objects
geoflow_data$getDir()
an object of class character
geoflow_data$getData()Get a lis tof geoflow_data objects built from a directory
geoflow_data$getData()
a list of objects of class geoflow_data
geoflow_data$getAllowedSourceValues()Get allowed source values
geoflow_data$getAllowedSourceValues()
a vector of class character
geoflow_data$setAccess()Set accessor id. See list_data_accessors() for available accessors
geoflow_data$setAccess(access)
accessa data data accessor id
geoflow_data$getAllowedSourceTypes()Get allowed source types
geoflow_data$getAllowedSourceTypes()
a vector of class character
geoflow_data$setSourceType()Set the source type.
The source type is a simplification of the data mime type and is used to identify the type of source
set for the data object. By default it is assumed to be "other" (undefined). The source types currently
allowed in geoflow can be listed with $getAllowedSourcedTypes().
geoflow_data$setSourceType(sourceType)
sourceTypesource type
geoflow_data$getAllowedGeomPossibleNames()Get allowed Geometry possible names for coercing data to sf objects
geoflow_data$getAllowedGeomPossibleNames()
geoflow_data$getAllowedXPossibleNames()Get allowed X possible names for coercing data to sf objects
geoflow_data$getAllowedXPossibleNames()
geoflow_data$getAllowedYPossibleNames()Get allowed Y possible names for coercing data to sf objects
geoflow_data$getAllowedYPossibleNames()
geoflow_data$addSource()Add source, object of class "character" (single source)
geoflow_data$addSource(source)
sourcesource
geoflow_data$setSource()Set source, object of class "character" (single source), or list.
For spatial source, a single source will be used, while for sources of type 'other'
(eg PDF files), multiple sources can be specified
geoflow_data$setSource(source)
sourcesource
geoflow_data$setSourceFid()Set source FID, object of class "character" (single source FID), or list.
geoflow_data$setSourceFid(sourceFid)
sourceFidsourceFid
geoflow_data$setSourceSql()This is a convenience method for users that want to specify directly
a SQL source. This method is called internally when a source SQL file has been set using
setSource
geoflow_data$setSourceSql(sourceSql)
sourceSqla source SQL query
geoflow_data$setSourceZip()Sets whether a zipped version of the data file(s) should be created from source files. Default is FALSE
geoflow_data$setSourceZip(sourceZip)
sourceZipzip sources, object of class logical
geoflow_data$setSourceZipOnly()Sets whether a zipped version of the data file(s) only should be created from source files. Default is FALSE
geoflow_data$setSourceZipOnly(sourceZipOnly)
sourceZipOnlyzip sources only, object of class logical
geoflow_data$setUploadSource()Set the source to upload in output software, alternative to the source. If leave empty, the source will be used as uploadSource. A typical use case is when we want to get a CSV source to import in a database, and use the dbtable (or view/query) as upload source for publication in software like geoserver.
geoflow_data$setUploadSource(uploadSource)
uploadSourceupload source
geoflow_data$getAllowedUploadTypes()Get allowed upload types
geoflow_data$getAllowedUploadTypes()
the list of allowed upload types
geoflow_data$setUploadType()The upload type is a simplification of the data mime type and is used to identify the type of data uploaded.
By default it is assumed to be "other" (undefined). The upload types currently allowed in geoflow can be
listed with $getAllowedUploadTypes().
geoflow_data$setUploadType(uploadType)
uploadTypeupload type
geoflow_data$setUpload()Set whether the source data should be uploaded to the sofware output declared in the geoflow
configuration or not. By default it is assumed that upload should be performed (upload TRUE).
geoflow_data$setUpload(upload)
uploadupload
geoflow_data$setStyleUpload()Set whether styles in source data should be uploaded, by default TRUE
geoflow_data$setStyleUpload(styleUpload)
styleUploadstyle upload
geoflow_data$setSql()Sets SQL for publication purpose.
geoflow_data$setSql(sql)
sqlsql
geoflow_data$setCqlFilter()Sets a CQL filter. In case of spatial data, once the data is read by geoflow (during initialization phase), the CQL filter will be applied to the data.
geoflow_data$setCqlFilter(cqlfilter)
cqlfilterCQL filter
geoflow_data$setWorkspace()Sets a workspace name, object of class character. A workspace must target a valid software type, object of
class character, to be declared as first argument of this function, assuming the corresponding software is
declared in the geoflow configuration.
geoflow_data$setWorkspace(software_type, workspace)
software_typesotware type where the workspace is identifier
workspaceworkspace name
geoflow_data$setStore()Sets a data/coverage store name, object of class character. Used as target data/coverage store name for GeoServer action.
geoflow_data$setStore(store)
storestore
geoflow_data$setDatastore()Sets a datastore name, object of class character. Used as target datastore name for GeoServer action. DEPRECATED, use setStore
geoflow_data$setDatastore(datastore)
datastoredatastore
geoflow_data$setLayername()Sets a layername, object of class character. Used as target layer name for Geoserver action.
geoflow_data$setLayername(layername)
layernamelayername
geoflow_data$setLayertitle()Sets a layer title, object of class character. If available, used as target layer title in SDI-related action.
geoflow_data$setLayertitle(layertitle)
layertitlelayertitle
geoflow_data$setLayerdesc()Sets a layer description, object of class character. If available, used as target layer description/abstract in SDI-related actions.
geoflow_data$setLayerdesc(layerdesc)
layerdesclayerdesc
geoflow_data$setLayeruri()Sets a layer URI, object of class character. If available, used as annotating URI for layer metadata (eg. in ISO 19115 action).
geoflow_data$setLayeruri(layeruri)
layerurilayeruri
geoflow_data$addStyle()Adds a style name, object of class character. Used as layer style name(s) for GeoServer action.
geoflow_data$addStyle(style)
stylestyle
geoflow_data$addDimension()Adds a dimension
geoflow_data$addDimension(name, dimension)
namedimension name
dimensionobject of class geoflow_dimension
geoflow_data$setCloudPath()Set cloud path
geoflow_data$setCloudPath(cloud_path)
cloud_pathcloud path
geoflow_data$getAllowedSpatialRepresentationTypes()Get allowed spatial representation types, typically "vector" and "grid"
geoflow_data$getAllowedSpatialRepresentationTypes()
an object of class character
geoflow_data$setSpatialRepresentationType()Set spatial representation type for the data considered
geoflow_data$setSpatialRepresentationType(spatialRepresentationType)
spatialRepresentationTypespatial representation type
geoflow_data$setOgcDimensions()Set OGC dimensions
geoflow_data$setOgcDimensions(name, values)
namedimension name
valuesdimension values
geoflow_data$setFeatures()Set data features
geoflow_data$setFeatures(features)
featuresfeatures
geoflow_data$setParameter()Set virtual parameter definition for setting virtual SQL view parametized layers in Geoserver, when uploadType is
set to dbquery.The arguments here follow the definition of virtual parameters in GeoServer, ie a name (alias),
the corresponding field name in the DBMS, a regular expression for validation of parameter values (required to
prevent SQL injection risks), and a default value.
geoflow_data$setParameter(name, fieldname, regexp, defaultvalue)
namename
fieldnamefieldname
regexpregexp
defaultvaluedefault value
geoflow_data$setGeometryField()Sets the name of the geometry field in the target GeoServer SQL view parametrized layer
geoflow_data$setGeometryField(geometryField)
geometryFieldgeometry field
geoflow_data$setGeometryType()Sets the name of the geometry field in the target GeoServer SQL view parametrized layer
geoflow_data$setGeometryType(geometryType)
geometryTypegeometry type
geoflow_data$setFeatureType()Sets a feature type (ID) to link data with a dictionnary
geoflow_data$setFeatureType(featureType)
featureTypefeature type name
geoflow_data$setFeatureTypeObj()Sets a feature type object
geoflow_data$setFeatureTypeObj(featureTypeObj)
featureTypeObjfeature type object of class geoflow_featuretype
geoflow_data$setAttributes()Set attributes, as simple way to describe attributes without binding to a proper geoflow_dictionary.
geoflow_data$setAttributes(attributes)
attributesattributes
geoflow_data$setVariables()Set variables, as simple way to describe variables without binding to a proper geoflow_dictionary.
geoflow_data$setVariables(variables)
variablesvariables
geoflow_data$setCoverages()Set coverages
geoflow_data$setCoverages(coverages)
coveragescoverages
geoflow_data$getAllowedEnvelopeCompositionTypes()Get allowed envelope composition types
geoflow_data$getAllowedEnvelopeCompositionTypes()
an object of class character
geoflow_data$setEnvelopeCompositionType()Set envelope composition type
geoflow_data$setEnvelopeCompositionType(envelopeCompositionType)
envelopeCompositionTypeenvelope composition type, either 'UNION' or 'INTERSECTION'
geoflow_data$setSelectedResolution()Set selected resolution
geoflow_data$setSelectedResolution(selectedResolution)
selectedResolutionselected resolution
geoflow_data$setSelectedResolutionIndex()Set selected resolution index
geoflow_data$setSelectedResolutionIndex(selectedResolutionIndex)
selectedResolutionIndexselected resolution index
geoflow_data$setBand()Set band
geoflow_data$setBand(name, index)
nameband name
indexband index
geoflow_data$addAction()Adds a local action
geoflow_data$addAction(action)
actionobject of class geoflow_action
geoflow_data$checkSoftwareProperties()A function triggered when loading a data object to check eventual software dependent properties, to make sure the corresponding software are declared in the config.
geoflow_data$checkSoftwareProperties(config)
configgeoflow config object
geoflow_data$clone()The objects of this class are cloneable with this method.
geoflow_data$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a data accessor to be used by geoflow
R6Class object.
geoflow_data_accessor
Object of R6Class for modelling a data accessor
geoflowLogger -> geoflow_data_accessor
idaccessor ID
software_typeaccessor software type
definitionaccessor definition
packageslist of packages required for the accessor
downloada download function handler
lista function handler to list resources in case of a data directory
geoflow_data_accessor$new()Initializes the data ccessor
geoflow_data_accessor$new( id = NULL, software_type = NULL, definition, packages = list(), download, list = NULL )
idaccessor ID
software_typeaccessor software type
definitionaccessor definition
packageslist of packages required for the accessor
downloaddownload function handler
listlist function handler
geoflow_data_accessor$setId()Sets accessor ID
geoflow_data_accessor$setId(id)
idaccessor ID to set
geoflow_data_accessor$setSoftwareType()Sets software type
geoflow_data_accessor$setSoftwareType(software_type)
software_typesoftware type
geoflow_data_accessor$setPackages()Sets list of packages required for the accessor
geoflow_data_accessor$setPackages(packages)
packagesa vecto of package names
geoflow_data_accessor$setDefinition()Sets accessor definition
geoflow_data_accessor$setDefinition(definition)
definitionaccessor definition
geoflow_data_accessor$setDownload()Set download handler (a function with arguments resource,
file, path, unzip (TRUE/FALSE) and optional software)
geoflow_data_accessor$setDownload(download)
downloadan object of class function
geoflow_data_accessor$setList()Set list handler (a function with no arguments)
geoflow_data_accessor$setList(list)
listan object of class function
geoflow_data_accessor$checkPackages()Check that all packages required for the software are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_data_accessor$checkPackages()
geoflow_data_accessor$clone()The objects of this class are cloneable with this method.
geoflow_data_accessor$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: access <- geoflow_data_accessor$new( id = "some-id", software_type = "some-software", definition = "definition", packages = list(), download = function(resource, file, path, software, unzip){}, list = function(resource, software){} ) ## End(Not run)## Not run: access <- geoflow_data_accessor$new( id = "some-id", software_type = "some-software", definition = "definition", packages = list(), download = function(resource, file, path, software, unzip){}, list = function(resource, software){} ) ## End(Not run)
This class models an date
R6Class object.
geoflow_date
Object of R6Class for modelling an date
keydate key. Default is "creation"
valuedate value. Default is generated with Sys.time()
geoflow_date$new()Initializes a geoflow_date
geoflow_date$new()
geoflow_date$setKey()Sets the date key
geoflow_date$setKey(key)
keydate key
geoflow_date$setValue()Sets the date value. The method will check validity of date value.
geoflow_date$setValue(value)
valuedate value
geoflow_date$clone()The objects of this class are cloneable with this method.
geoflow_date$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: date <- geoflow_date$new() date$setKey("creation") date$setValue(Sys.time()) ## End(Not run)## Not run: date <- geoflow_date$new() date$setKey("creation") date$setValue(Sys.time()) ## End(Not run)
This class models a dictionary to be executed by geoflow
R6Class object.
geoflow_dictionary
Object of R6Class for modelling a dictionary
sourcedictionary source, object of class data.frame
featuretypeslist of objects of class geoflow_featuretype
registerslist of objects of class geoflow_register
geoflow_dictionary$new()Initializes a geoflow_dictionary object
geoflow_dictionary$new()
geoflow_dictionary$setSource()Sets dictionnary source
geoflow_dictionary$setSource(source)
sourceobject of class data.frame
geoflow_dictionary$getFeatureTypes()Get the list of geoflow_featuretype defined in the dictionary
geoflow_dictionary$getFeatureTypes()
a list of geoflow_featuretype
geoflow_dictionary$getFeatureTypeById()Get an object of class geoflow_featuretype given an ID
geoflow_dictionary$getFeatureTypeById(id)
idid
an object of class geoflow_featuretype, otherwise NULL
geoflow_dictionary$addFeatureType()Adds a feature type to the dictionnary
geoflow_dictionary$addFeatureType(ft)
ftobject of class geoflow_featuretype
geoflow_dictionary$getRegisters()Get the list of registers associated with the dictionnary
geoflow_dictionary$getRegisters()
a list of geoflow_register objects
geoflow_dictionary$getRegisterById()Get register by ID
geoflow_dictionary$getRegisterById(id)
idid
an object of class geoflow_register, otherwise NULL
geoflow_dictionary$addRegister()Adds a register to the dictionnary
geoflow_dictionary$addRegister(register)
registerobject of class geoflow_register
geoflow_dictionary$clone()The objects of this class are cloneable with this method.
geoflow_dictionary$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a dimension
R6Class object.
geoflow_dimension
Object of R6Class for modelling a dimension
longNamedimension longName
resolutiondimension resolution
sizedimension size
valuesdimension values
minValuedimension min value
maxValuedimension max value
geoflow_dimension$new()Initializes the geoflow_dimension
geoflow_dimension$new()
geoflow_dimension$setLongName()Sets the dimension long name
geoflow_dimension$setLongName(longName)
longNamedimension long name
geoflow_dimension$setResolution()Sets the resolution
geoflow_dimension$setResolution(uom, value)
uomunit of measure
valueresolution value
geoflow_dimension$setSize()Sets the dimension size
geoflow_dimension$setSize(size)
sizedimension size
geoflow_dimension$setValues()Sets dimension values
geoflow_dimension$setValues(values)
valuesdimension values
geoflow_dimension$setMinValue()Sets dimension min value
geoflow_dimension$setMinValue(minValue)
minValuemin value
geoflow_dimension$setMaxValue()Sets dimension max value
geoflow_dimension$setMaxValue(maxValue)
maxValuemax value
geoflow_dimension$clone()The objects of this class are cloneable with this method.
geoflow_dimension$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: dimension <- geoflow_dimension$new() dimension$setLongName("longname") dimension$setResolution(uom="s",value=1) dimension$setSize(10) dimension$setValues(c(1,2,3)) dimension$setMinValue(1) dimension$setMaxValue(3) ## End(Not run)## Not run: dimension <- geoflow_dimension$new() dimension$setLongName("longname") dimension$setResolution(uom="s",value=1) dimension$setSize(10) dimension$setValues(c(1,2,3)) dimension$setMinValue(1) dimension$setMaxValue(3) ## End(Not run)
This class models a entity object
R6Class object.
geoflow_entity
Object of R6Class for modelling a entity object
identifiersentity identifiers
datesentity dates
languageentity language
typesentity types
titlesentity titles
descriptionsentity descriptions
subjectsentity subjects
formatsentity formats
contactsentity contacts
relationsentity relations
rightsentity rights
spatial_extentspatial extent
spatial_bboxspatial bounding box
geo_bboxgeographic bounding box (in EPSG:4326 / WGS 84)
sridentity srid
temporal_extententity temporal extent
provenanceentity provenance
dataentity data
statusentity status
resourcesentity resources
localesentity locales
geoflow_entity$new()Initializes an object of class geoflow_entity
geoflow_entity$new()
geoflow_entity$setShinyEditorMode()Set mode for geoflow-shiny
geoflow_entity$setShinyEditorMode(mode = c("creation", "edition"))
modemode
geoflow_entity$getShinyEditorMode()Get mode for geoflow-shiny
geoflow_entity$getShinyEditorMode()
the shiny editor mode
geoflow_entity$getAllowedKeyValuesFor()Retrieves keys allowed for a given tabular field name. eg. "Identifier"
geoflow_entity$getAllowedKeyValuesFor(field)
fieldfield name
the list of valid keys for the field considered
geoflow_entity$addLocalesFromValues()Adds locales to entity from kvp values
geoflow_entity$addLocalesFromValues(values)
valuesvalues
geoflow_entity$setIdentifier()Set an identifier given a key. Default key is "id", but others can be specified, eg "doi".
geoflow_entity$setIdentifier(key = "id", id)
keyidentifier key. Default is "id"
ididentifier value
geoflow_entity$addDate()Adds a date
geoflow_entity$addDate(dateType, date)
dateTypedate type, object of class character
datedate, object of class Date or POSIXt
geoflow_entity$setLanguage()Set the language used for the entity description (metadata). Default is "eng".
geoflow_entity$setLanguage(language)
languagelanguage
geoflow_entity$writeDataResource()writes a data resource. Deprecrated Note: TODO to review in line with 'writeWorkflowJobDataResource
geoflow_entity$writeDataResource(obj = NULL, resourcename, type = "shp")
objobject
resourcenameresource name
typetype of resosurce
geoflow_entity$setType()Set the type of description. By default a generic type (key = "generic") is defined to "dataset", and will be used as default type for actions that perform metadata production / publication.
geoflow_entity$setType(key = "generic", type)
keytype key. Default is "generic"
typetype value
geoflow_entity$setTitle()Sets title
geoflow_entity$setTitle(key = "title", title)
keytitle key. Default is "title"
titletitle value
geoflow_entity$setDescription()Sets description
geoflow_entity$setDescription(key, description)
keydescription key. Default is "abstract"
descriptiondescription value
geoflow_entity$addSubject()Adds a subject
geoflow_entity$addSubject(subject)
subjectobject of class geoflow_subject
geoflow_entity$addFormat()Adds a format
geoflow_entity$addFormat(format)
formatobject of class geoflow_format
geoflow_entity$addContact()Adds a contact
geoflow_entity$addContact(contact)
contactobject of class geoflow_contact
geoflow_entity$addRelation()Adds a relation
geoflow_entity$addRelation(relation)
relationobject of class geoflow_relation
geoflow_entity$addRight()Adds a right
geoflow_entity$addRight(right)
rightobject of class geoflow_right
geoflow_entity$setSpatialExtent()Set spatial extent. Various ways can be used to set the spatial extent 1) with a WKT string,
2) with a bbox, object of class matrix, or 3) specifying a data object (from sf).
The crs (coordinate reference system) should be specified with the crs SRID (number).
The spatial extent is not necessarily a bounding box but can be one or more geometries.
geoflow_entity$setSpatialExtent(wkt = NULL, bbox = NULL, data = NULL, crs = NA)
wkta WKT string
bboxa bbox
dataan object of class sf
crscrs
geoflow_entity$setSpatialBbox()Set spatial bbox. Various ways can be used to set the spatial extent 1) with a WKT string,
2) with a bbox, object of class matrix, or 3) specifying a data object (from sf).
The crs (coordinate reference system) should be specified with the crs SRID (number).
geoflow_entity$setSpatialBbox(wkt = NULL, bbox = NULL, data = NULL, crs = NA)
wkta WKT string
bboxa bbox
dataan object of class sf
crscrs
geoflow_entity$setGeographicBbox()Set geographic bbox (in EPGS:4326 / WGS 84), by converting (if needed) the spatial bbox
geoflow_entity$setGeographicBbox()
geoflow_entity$setSrid()Sets entity SRID
geoflow_entity$setSrid(srid)
sridsrid
geoflow_entity$setTemporalExtent()Sets temporal extent. The temporal extent can be a year, date instant or interval
geoflow_entity$setTemporalExtent(str)
strobject of class numeric (case of year) or character
geoflow_entity$setProvenance()Sets entity provenance
geoflow_entity$setProvenance(provenance)
provenanceobject of class geoflow_provenance
geoflow_entity$setData()Sets entity data object
geoflow_entity$setData(data)
dataobject of class geoflow_data
geoflow_entity$addData()Adds entity data object
geoflow_entity$addData(data)
dataobject of class geoflow_data
geoflow_entity$getEntityJobDirname()Gets entity job directory name. In case entity is identified with a DOI, the '/' (slash) will be replaced by '_' (underscore) to make sure directory is created.
geoflow_entity$getEntityJobDirname()
get the name of entity job directory that will be created for the entity
geoflow_entity$getEntityJobDirPath()Gets entity job directory path. In the job directory, all entities subdirs will be created within a 'entities' directory.
geoflow_entity$getEntityJobDirPath(config, jobdir = NULL)
configgeoflow configuration object
jobdirrelative path of the job directory
the entity job directory path
geoflow_entity$prepareEntityJobDir()Function called internally by geoflow that creates the entity directory and relevant sub-directories. The default sub-directories will include 'data' and 'metadata'. Other sub-directories may be created depnding on the actions enabled in the workflow (and if their target directory is different from 'data'/'metadata').
geoflow_entity$prepareEntityJobDir(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
geoflow_entity$copyDataToJobDir()This function will look at data object(s) associated to the entity (previously set with
setData or added with addData), and will try to (download)/copy the data source to the
geoflow job directory.
geoflow_entity$copyDataToJobDir(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
geoflow_entity$copyStylesToJobDir()This function checks for the availability of layer styles (set as entity resource) that would have been added with DBI handlers from a special DB 'layer_styles' table
geoflow_entity$copyStylesToJobDir(config)
configgeoflow config object
geoflow_entity$enrichWithDatatypes()Function that will scan zip data files and resolve data objects sourceType and uploadType
geoflow_entity$enrichWithDatatypes(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
geoflow_entity$enrichWithData()This function will enrich the entity data objects with data features (vector data) or coverages (grid data). This method will overwrite
spatial metadata such as the bounding box (unless global option skipDynamicBbox is enabled). Note that the user spatial extent is not overwriten
since it may contain finer geometries than a bounding box.
geoflow_entity$enrichWithData(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
geoflow_entity$enrichSpatialCoverageFromDB()This function computes spatial coverage from DB (table, view or query)
without having to deal with a full data download. It is triggered when the global option
skipDataDownload is enabled.
geoflow_entity$enrichSpatialCoverageFromDB(config)
configgeoflow config object
geoflow_entity$enrichWithFeatures()This function will enrich the entity data objects with data features (vector data). This method will overwrite
spatial metadata such as the bounding box (unless global option skipDynamicBbox is enabled). Note that the user spatial extent is not overwriten
since it may contain finer geometries than a bounding box.
geoflow_entity$enrichWithFeatures(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
geoflow_entity$enrichWithCoverages()This function will enrich the entity data objects with data coverages (grid data). This method will overwrite
spatial metadata such as the bounding box (unless global option skipDynamicBbox is enabled). Note that the user spatial extent is not overwriten
since it may contain finer geometries than a bounding box.
geoflow_entity$enrichWithCoverages(config, jobdir = NULL)
configgeoflow config object
jobdirrelative path of the job directory
geoflow_entity$prepareFeaturesToUpload()This function will 1) check (in case of upload is requested) if the type of source and upload are both different on files formats(eg. csv,shp,gpkg) and 2) process automatically to conversion from source to upload type.
geoflow_entity$prepareFeaturesToUpload(config)
configgeoflow config object
geoflow_entity$enrichWithIdentifiers()Function that will enrich entity with identifiers needed across multiple actions
geoflow_entity$enrichWithIdentifiers(config)
configgeoflow config object
geoflow_entity$enrichWithRelations()This function that will enrich the entity with relations. At now this is essentially related to adding
relations if a Geoserver (geosapi) publishing action is enabled. Relations added will depend on the
enrich_with_relation_* options set in a) the geosapi action, ie.
1) add WMS auto-generated thumbnail (if option enrich_with_relation_wms_thumbnail is TRUE)
2) add WMS base URL relation (if option enrich_with_relation_wms is TRUE)
3) for vector spatial representation type:
- add WFS base URL relation (if option enrich_with_relation_wfs is TRUE)
- add WFS auto-generated links as convenience for data download links (if option enrich_with_relation_wfs_download_links is TRUE)
4) for grid spatial representation type:
- add WCS base URL relation (if option enrich_with_relation_wcs is TRUE)
b) in the geonapi action (for adding a CSW metadata URL)
b) in the ows4R action (for adding a CSW metadata URL)
geoflow_entity$enrichWithRelations(config)
configgeoflow config object
geoflow_entity$enrichWithSubjects()Enrichs the entity with subjects. If no subject specify in Subjects, automatically add keyword from dictionary to 'theme' category
geoflow_entity$enrichWithSubjects(config, exclusions = c())
configgeoflow config object
exclusionsexclusions
geoflow_entity$enrichWithVocabularies()Enrichs the entity with vocabularies
geoflow_entity$enrichWithVocabularies(config)
configgeoflow config object
geoflow_entity$enrichWithFormats()Enrichs the entity with formats
geoflow_entity$enrichWithFormats(config)
configgeoflow config object
geoflow_entity$enrichWithMetadata()Enrichs the entity properties with entity metadata from other properties.
geoflow_entity$enrichWithMetadata(config)
configgeoflow config object
geoflow_entity$getContacts()Get the entity contacts
geoflow_entity$getContacts(pretty = FALSE)
prettyto prettify the output as data.frame
a list of geoflow_contact or a data.frame
geoflow_entity$getSubjects()Get the entity subjects
geoflow_entity$getSubjects(pretty = FALSE, keywords = FALSE)
prettyto prettify the output as data.frame
keywordsto add keywords to the output or not. Default is FALSE
a list of geoflow_subject or a data.frame
geoflow_entity$getRelations()Get the entity relations
geoflow_entity$getRelations(pretty = FALSE)
prettyto prettify the output as data.frame
a list of geoflow_relation or a data.frame
geoflow_entity$setStatus()Set a simple status either "draft" or "published". This method is required to deal with systems that manage DOIs, such as Zenodo (with zen4R) or Dataverse (with atom4R) publishing actions (Used internally by geoflow).
geoflow_entity$setStatus(system, status)
systema system name eg. "zenodo", "dataverse"
statusa status for entity resource "draft" or "published"
geoflow_entity$getJobResource()Get an entity job resource path
geoflow_entity$getJobResource(config, resourceType, filename)
configa geoflow config object
resourceTypetype of resource, matching a sub-directory within the entity job directory
filenamefilename
the file path of the job resource
geoflow_entity$getJobDataResource()Get an entity job data resource path
geoflow_entity$getJobDataResource(config, filename)
configa geoflow config object
filenamefilename
the file path of the job data resource
geoflow_entity$getJobMetadataResource()Get an entity job metadata resource path
geoflow_entity$getJobMetadataResource(config, filename)
configa geoflow config object
filenamefilename
the file path of the job metadata resource
geoflow_entity$addResource()Adds a resource to the entity
geoflow_entity$addResource(id, resource)
idid of the resource
resourceresource
geoflow_entity$asDataFrame()Methods to export the geoflow_entity as data.frame using key-based syntax.
geoflow_entity$asDataFrame(line_separator = NULL)
line_separatora line separator. By default, the default line separator will be used.
an object of class data.frame giving the entities using key-based syntax
geoflow_entity$clone()The objects of this class are cloneable with this method.
geoflow_entity$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a feature type to be executed by geoflow
R6Class object.
geoflow_featuremember
Object of R6Class for modelling a dictionary feature type member
idfeature member ID
typefeature member type
codefeature member code
namefeature member name
deffeature member definition
defSourcefeature member definition source
minOccursfeature member minOccurs
maxOccursfeature member maxOccurs
uomfeature member unit of measure (uom)
registerIdfeature member register ID
registerScriptfeature member register script
geoflow_featuremember$new()Initializes a geoflow_featuremember
geoflow_featuremember$new( type = "attribute", code = NULL, name = NULL, def = NULL, defSource = NULL, minOccurs = NULL, maxOccurs = NULL, uom = NULL, registerId = NULL, registerScript = NULL )
typetype
codecode
namename
defdefinition
defSourcedefinition source. Default is NULL
minOccursminOccurs. Default is NULL
maxOccursmaxOccurs. Default is NULL
uomunit of measure. Default is NULL
registerIdID of the register associated to the feature type. Default is NULL
registerScriptsource script providing the register functions. Default is NULL
geoflow_featuremember$asDataFrame()Converts as data.frame
geoflow_featuremember$asDataFrame()
an object of class data.frame
geoflow_featuremember$clone()The objects of this class are cloneable with this method.
geoflow_featuremember$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a feature type to be executed by geoflow
R6Class object.
geoflow_featuretype
Object of R6Class for modelling a dictionary feature type
idfeature type ID
membersfeature type members
geoflow_featuretype$new()Initializes a geoflow_featuretype
geoflow_featuretype$new(id = NULL)
idid
geoflow_featuretype$addMember()Adds a member
geoflow_featuretype$addMember(fm)
fmobject of class geoflow_featuremember
geoflow_featuretype$getMembers()Get members
geoflow_featuretype$getMembers()
the list of members, as objects of class geoflow_featuremember
geoflow_featuretype$getMemberById()Get member by ID
geoflow_featuretype$getMemberById(id)
idid
an object of class geoflow_featuremember, NULL otherwise
geoflow_featuretype$asDataFrame()Converts to data frame
geoflow_featuretype$asDataFrame()
an object of class data.frame
geoflow_featuretype$clone()The objects of this class are cloneable with this method.
geoflow_featuretype$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models a format
R6Class object.
geoflow_format
Object of R6Class for modelling a format
keyformat key
namekey name
urikey URI
descriptionkey description
geoflow_format$new()Initializes a geoflow_format
geoflow_format$new(str = NULL)
strcharacter string to initialize object using key-based syntax
geoflow_format$setKey()Sets format key
geoflow_format$setKey(key)
keykey
geoflow_format$setName()Sets format name
geoflow_format$setName(name)
namename
geoflow_format$setUri()Sets format URI
geoflow_format$setUri(uri)
uriURI
geoflow_format$setDescription()Sets format description
geoflow_format$setDescription(description)
descriptiondescription
geoflow_format$clone()The objects of this class are cloneable with this method.
geoflow_format$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: format <- geoflow_format$new() format$setKey("distribution") format$setName("text/csv") format$setUri("https://www.iana.org/assignments/media-types/text/csv") format$setDescription("CSV format") ## End(Not run)## Not run: format <- geoflow_format$new() format$setKey("distribution") format$setName("text/csv") format$setUri("https://www.iana.org/assignments/media-types/text/csv") format$setDescription("CSV format") ## End(Not run)
This class models a content handler. An handler is a method to handle
some content (eg entity or contact). It is mainly driven by a function that takes
as argument the handler considered (as self accessible object), a source
which identifiers the source to be handled, that can be of a different type (eg a URL, a file path)
depending on the handler, and a config object, as the overall configuration created by geoflow
initWorkflow function.
R6Class object.
geoflow_handler
Object of R6Class for modelling a handler
idhandler id
typehandler type (entity,contact,dictionary)
fundersfunders
authorsauthors
maintainermaintainer
defhandler definition
packageshandler packages
funhandler function
scripthandler script
optionsoptions
available_optionsavailable options
statusstatus
notesnotes
geoflow_handler$new()Initializes a geoflow_handler
geoflow_handler$new(
yaml = NULL,
id = NULL,
type = c("entity", "contact", "dictionary"),
funders = list(),
authors = list(),
maintainer = NULL,
def = "",
packages = list(),
fun = NULL,
script = NULL,
options = list(),
available_options = list(),
status = "stable",
notes = ""
)
yamla YAML file
idid
typetype
fundersfunders
authorsauthors
maintainermaintainer
defdef
packageslist of packages required for the handler
funthe handler function having 2 arguments config and source
scripta handler script
optionsaction options
available_optionsavailable options for the action
statusstatus (experimental/stable/deprecated/superseded)
notesnotes
geoflow_handler$fromYAML()Reads handler properties from YAML file
geoflow_handler$fromYAML(file)
filefile
geoflow_handler$checkPackages()Check that all packages required for the handler are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_handler$checkPackages()
geoflow_handler$getOption()Get handler option value
geoflow_handler$getOption(option)
optionoption id
the option value, either specified through a workflow, or the default value
geoflow_handler$clone()The objects of this class are cloneable with this method.
geoflow_handler$clone(deep = FALSE)
deepWhether to make a deep clone.
This class is essentially called internally by geoflow to register default handlers for entities and contacts.
Emmanuel Blondel <[email protected]>
## Not run: handler <- geoflow_handler$new( id = "some-id", def = "some definition", packages = list(), fun = function(handler, source, config){}, available_options = list() ) ## End(Not run)## Not run: handler <- geoflow_handler$new( id = "some-id", def = "some definition", packages = list(), fun = function(handler, source, config){}, available_options = list() ) ## End(Not run)
This class models a keyword
R6Class object.
geoflow_keyword
Object of R6Class for modelling a keyword
namekeyword
urikeyword uri
geoflow_keyword$new()Initializes a geoflow_keyword
geoflow_keyword$new(name = NULL, uri = NULL)
namekeyword name
urikeyword URI
geoflow_keyword$setName()Sets keyword
geoflow_keyword$setName(name)
namekeyword name
geoflow_keyword$setUri()Sets keyword URI
geoflow_keyword$setUri(uri)
urikeyword URI
geoflow_keyword$clone()The objects of this class are cloneable with this method.
geoflow_keyword$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: kwd <- geoflow_keyword$new() kwd$setName("keyword") kwd$setUri("http://somelink/keyword") ## End(Not run)## Not run: kwd <- geoflow_keyword$new() kwd$setName("keyword") kwd$setUri("http://somelink/keyword") ## End(Not run)
This class models an kvp (Key Values pair)
R6Class object.
geoflow_kvp
Object of R6Class for modelling an kvp (Key Values pair)
keythe KVP key
valuesthe KVP values
localea locale definition for the KVP
geoflow_kvp$new()Initializes a Key-Value pair (KVP)
geoflow_kvp$new(key = NULL, values = NULL, locale = NULL)
keykey
valuesvalues
localelocale
geoflow_kvp$setKey()Set KVP key
geoflow_kvp$setKey(key)
keythe key
geoflow_kvp$setValues()Set KVP values
geoflow_kvp$setValues(values)
valuesthe values
geoflow_kvp$setLocale()Set KVP locale
geoflow_kvp$setLocale(locale)
localelocale
geoflow_kvp$clone()The objects of this class are cloneable with this method.
geoflow_kvp$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
This class models an process
R6Class object.
geoflow_process
Object of R6Class for modelling an process
rationaleprocess rationale
descriptionprocess description
processorsobject of class list
geoflow_process$new()Initializes the geoflow_process
geoflow_process$new()
geoflow_process$setRationale()Set process rationale
geoflow_process$setRationale(rationale)
rationalethe process rationale
geoflow_process$setDescription()Set process description
geoflow_process$setDescription(description)
descriptionSet the process description
geoflow_process$addProcessor()Adds processor
geoflow_process$addProcessor(processor)
processor, object of class geoflow_contact
geoflow_process$clone()The objects of this class are cloneable with this method.
geoflow_process$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: process <- geoflow_process$new() process$setRationale("rationale") process$setDescription("description") processor <- geoflow_contact$new() process$addProcessor(processor) ## End(Not run)## Not run: process <- geoflow_process$new() process$setRationale("rationale") process$setDescription("description") processor <- geoflow_contact$new() process$addProcessor(processor) ## End(Not run)
This class models an profile
R6Class object.
geoflow_profile
Object of R6Class for modelling an profile
idprofile id
nameprofile name
projectprofile project
organizationprofile organization
logosprofile logo(s)
modemode of execution (Default is "raw")
optionsglobal config options
geoflow_profile$new()Initializes an object of class geoflow_profile
geoflow_profile$new()
geoflow_profile$setId()Sets profile ID
geoflow_profile$setId(id)
idid
geoflow_profile$setName()Sets profile name
geoflow_profile$setName(name)
namename
geoflow_profile$setProject()Sets profile project
geoflow_profile$setProject(project)
projectproject
geoflow_profile$setOrganization()Sets profile organization
geoflow_profile$setOrganization(organization)
organizationorganization
geoflow_profile$addLogo()Adds a profile organization
geoflow_profile$addLogo(logo)
logologo
geoflow_profile$setMode()Sets profile mode
geoflow_profile$setMode(mode)
modeprofile mode
geoflow_profile$setOption()Set global config option
geoflow_profile$setOption(name, value)
nameoption name
valueoption value
geoflow_profile$clone()The objects of this class are cloneable with this method.
geoflow_profile$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: profile <- geoflow_profile$new() profile$setId("workflow1") profile$setName("Workflow 1") profile$setProject("My project") profile$setOrganization("My organization") provfile$addLogo("https://raw.githubusercontent.com/r-geoflow/geoflow-logos/main/geoflow_square.png") ## End(Not run)## Not run: profile <- geoflow_profile$new() profile$setId("workflow1") profile$setName("Workflow 1") profile$setProject("My project") profile$setOrganization("My organization") provfile$addLogo("https://raw.githubusercontent.com/r-geoflow/geoflow-logos/main/geoflow_square.png") ## End(Not run)
This class models an provenance
R6Class object.
geoflow_provenance
Object of R6Class for modelling an provenance
statementprovenance statement
processeslist of processes, as objects of class geoflow_process
geoflow_provenance$new()Initializes a geoflow_provenance
geoflow_provenance$new(str = NULL)
strcharacter string to initialize a provenance using key-based syntax
geoflow_provenance$setStatement()Set process statement
geoflow_provenance$setStatement(statement)
statementprocess statement
geoflow_provenance$addProcess()Adds process
geoflow_provenance$addProcess(process)
process, object of class geoflow_process
geoflow_provenance$clone()The objects of this class are cloneable with this method.
geoflow_provenance$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: provenance <- geoflow_provenance$new() provenance$setStatement("statement") process1 <- geoflow_process$new() process1$setRationale("task 1") process1$setDescription("Performs task 1") provenance$addProcess(process1) process2 <- geoflow_process$new() process2$setRationale("task 2") process2$setDescription("Performs task 2") provenance$addProcess(process2) ## End(Not run)## Not run: provenance <- geoflow_provenance$new() provenance$setStatement("statement") process1 <- geoflow_process$new() process1$setRationale("task 1") process1$setDescription("Performs task 1") provenance$addProcess(process1) process2 <- geoflow_process$new() process2$setRationale("task 2") process2$setDescription("Performs task 2") provenance$addProcess(process2) ## End(Not run)
This class models a register to be used by geoflow
R6Class object.
geoflow_register
Object of R6Class for modelling a register
idregister id
defregister def
funregister function
dataregister data
geoflow_register$new()Initializes an object of class geoflow_register
geoflow_register$new(id, def, fun)
idid
defdef
funfun
geoflow_register$fetch()Fetchs the register data using the register function
geoflow_register$fetch(config = NULL)
configa geoflow config object
geoflow_register$check()Checks the register data structure. The structure of the data.frame returned
by the register function should be of 4 columns including "code", "uri", "label", "definition".
In case the data structure is not valid, the function throws an error.
geoflow_register$check(data)
dataa register data structure
geoflow_register$clone()The objects of this class are cloneable with this method.
geoflow_register$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: register <- geoflow_register$new( id = "some-id", def = "definition", fun = function(){} ) ## End(Not run)## Not run: register <- geoflow_register$new( id = "some-id", def = "definition", fun = function(){} ) ## End(Not run)
This class models an relation
R6Class object.
geoflow_relation
Object of R6Class for modelling an relation
keyrelation key
linkrelation link
mimeTyperelation mime
namerelation name
descriptionrelation name
provprovenance,
geoflow_relation$new()Initializes an object of class geoflow_relation
geoflow_relation$new(str = NULL)
strcharacter string to initialize from using key-based syntax
geoflow_relation$setKey()Set key
geoflow_relation$setKey(key)
keykey
geoflow_relation$setLink()Set link
geoflow_relation$setLink(link)
linklink
geoflow_relation$setMimeType()Set mime type
geoflow_relation$setMimeType(mimeType)
mimeTypemime type
geoflow_relation$setName()Set name
geoflow_relation$setName(name)
namename
geoflow_relation$setDescription()Set description
geoflow_relation$setDescription(description)
descriptiondescription
geoflow_relation$setProv()Set provenance
geoflow_relation$setProv(prov = c("user", "geoflow"))
provprovenance
geoflow_relation$clone()The objects of this class are cloneable with this method.
geoflow_relation$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: relation <- geoflow_relation$new() relation$setProv("user") relation$setKey("wms") relation$setLink("http://somelink/wms") relation$setMimeType("application/xml") relation$setName("layername") relation$setDescription("layer description") ## End(Not run)## Not run: relation <- geoflow_relation$new() relation$setProv("user") relation$setKey("wms") relation$setLink("http://somelink/wms") relation$setMimeType("application/xml") relation$setName("layername") relation$setDescription("layer description") ## End(Not run)
This class models an right
R6Class object.
geoflow_right
Object of R6Class for modelling an right
keyright key
valuesright values
geoflow_right$new()Initializes an object of class geoflow_right
geoflow_right$new(str = NULL, kvp = NULL)
strcharacter string to initialize from using key-based syntax
kvpan object of class geoflow_kvp
geoflow_right$setKey()Sets key
geoflow_right$setKey(key)
keykey
geoflow_right$setValues()Sets values
geoflow_right$setValues(values)
valuesvalues
geoflow_right$clone()The objects of this class are cloneable with this method.
geoflow_right$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: right <- geoflow_right$new() right$setKey("use") right$setValues("No restrictions") ## End(Not run)## Not run: right <- geoflow_right$new() right$setKey("use") right$setValues("No restrictions") ## End(Not run)
This class models a SKOS vocabulary
R6Class object.
geoflow_skos_vocabulary
Object of R6Class for modelling a SKOS vocabulary
geoflow_vocabulary -> geoflow_skos_vocabulary
rdfrdf
rdf_datardf_data
endpointendpoint
geoflow_skos_vocabulary$new()Initializes a vocabulary
geoflow_skos_vocabulary$new(id, def, uri, endpoint = NULL, file = NULL)
idid
defdef
uriuri
endpointA Sparql endpoint
filea RDF file
geoflow_skos_vocabulary$query()query
geoflow_skos_vocabulary$query(str, graphUri = NULL, mimetype = "text/csv")
strstr
graphUrigraphUri
mimetypemimetype
the response of the SPARQL query
geoflow_skos_vocabulary$query_full_dataset()Queries full dataset
geoflow_skos_vocabulary$query_full_dataset()
an object of class tibble
geoflow_skos_vocabulary$ping()Ping query
geoflow_skos_vocabulary$ping()
geoflow_skos_vocabulary$list_collections()list_collections
geoflow_skos_vocabulary$list_collections( mimetype = "text/csv", count_sub_collections = TRUE, count_concepts = TRUE )
mimetypemimetype
count_sub_collectionscount_sub_collections. Default is TRUE
count_conceptscount_concepts. Default is TRUE
the response of the SPARQL query
geoflow_skos_vocabulary$get_concepts_hierarchy()list_concepts
geoflow_skos_vocabulary$get_concepts_hierarchy(
lang = "en",
method = c("SPARQL", "R"),
out_format = c("tibble", "list")
)
langlang
methodmethod used to build the hierarchy, either "SPARQL" or "R"
out_formatoutput format (tibble or list). Default is "tibble"
the response of the SPARQL query
geoflow_skos_vocabulary$list_concepts()list_concepts
geoflow_skos_vocabulary$list_concepts(lang = "en", mimetype = "text/csv")
langlang
mimetypemimetype
the response of the SPARQL query
geoflow_skos_vocabulary$query_from_uri()query_from_uri
geoflow_skos_vocabulary$query_from_uri( uri, graphUri = NULL, mimetype = "text/csv" )
uriuri
graphUrigraphUri
mimetypemimetype
an object of class tibble
geoflow_skos_vocabulary$query_from_term()query_from_term
geoflow_skos_vocabulary$query_from_term( term, graphUri = NULL, mimetype = "text/csv" )
termterm
graphUrigraphUri
mimetypemimetype
an object of class tibble
geoflow_skos_vocabulary$clone()The objects of this class are cloneable with this method.
geoflow_skos_vocabulary$clone(deep = FALSE)
deepWhether to make a deep clone.
This class models a software to be used by geoflow
R6Class object.
geoflow_software
Object of R6Class for modelling a software
geoflowLogger -> geoflow_software
idsoftware id
typesoftware I/O type ("input" or "output")
software_typetype of software
definitiondefinition
packageslist of packages required for the software functioning
handlersoftware handler function
argumentssoftware arguments
parameterssoftware parameters
attributessoftware attributes
propertiessoftware properties
actionsactions associated with the software
geoflow_software$new()Initializes a software
geoflow_software$new( id = NULL, type = NULL, software_type, packages = list(), definition, handler, arguments, attributes = list(), actions = list() )
idid
typetype "input" or "output"
software_typesoftware type
packageslist of packages required for the software functioning
definitionsoftware definition
handlersoftware handler function
argumentssoftware handler arguments
attributessoftware attributes
actionssoftware actions
geoflow_software$setId()Sets software ID
geoflow_software$setId(id)
idid
geoflow_software$setType()Set type. Either "input" or "output"
geoflow_software$setType(type)
typesoftware I/O type
geoflow_software$setSoftwareType()Set software type
geoflow_software$setSoftwareType(software_type)
software_typesoftware type
geoflow_software$setPackages()Set software required packages
geoflow_software$setPackages(packages)
packageslist of package names
geoflow_software$setDefinition()Set software definition
geoflow_software$setDefinition(definition)
definitionsoftware definition
geoflow_software$setAttributes()Set attributes. Function to call when creating an instance of geoflow_software
geoflow_software$setAttributes(attributes)
attributesnamed list of attributes
geoflow_software$setProperties()Set properties. Function to call to pass argument values for a given geoflow_software
geoflow_software$setProperties(props)
propsnamed list of properties
geoflow_software$setArguments()Set software arguments. Function to call when creating an instance of geoflow_software
geoflow_software$setArguments(arguments)
argumentslist of software arguments
geoflow_software$setParameters()Set parameters. Function to call to pass argument values for a given geoflow_software
geoflow_software$setParameters(params)
paramsnamed list of parameters
geoflow_software$setActions()Set software actions
geoflow_software$setActions(actions)
actionsa list of geoflow_action
geoflow_software$setHandler()Set the software handler function
geoflow_software$setHandler(handler)
handlerobject of class function
geoflow_software$checkPackages()Check that all packages required for the software are available, if yes,
import them in the R session, and return a data.frame giving the
packages names and version. If one or more packages are unavailable,
an error is thrown and user informed of the missing packages.
geoflow_software$checkPackages()
geoflow_software$getHandlerInstance()Get the software handler instance
geoflow_software$getHandlerInstance()
an object instance of the software handler
geoflow_software$clone()The objects of this class are cloneable with this method.
geoflow_software$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: software<- geoflow_software$new( id = "some-id", type = "output", software_type = "software", definition = "definition", packages = list(), handler = function(){}, arguments = list( url = list(def = "the software url") ), attributes = list( workspace = list(def = "a workspace name in the software") ) ) ## End(Not run)## Not run: software<- geoflow_software$new( id = "some-id", type = "output", software_type = "software", definition = "definition", packages = list(), handler = function(){}, arguments = list( url = list(def = "the software url") ), attributes = list( workspace = list(def = "a workspace name in the software") ) ) ## End(Not run)
This class models a subject
R6Class object.
geoflow_subject
Object of R6Class for modelling a subject
keysubject key
namesubject name
urisubject URI
datessubject date(s)
keywordssubject keywords
geoflow_subject$new()Initializes an object of class geoflow_subject
geoflow_subject$new(str = NULL, kvp = NULL)
stra character string to initialize from, using key-based syntax
kvpan object of class geoflow_kvp
geoflow_subject$setKey()Sets subject key
geoflow_subject$setKey(key)
keykey
geoflow_subject$setName()Sets subject name
geoflow_subject$setName(name)
namename
geoflow_subject$setUri()Sets subject URI
geoflow_subject$setUri(uri)
uriuri
geoflow_subject$setDate()Sets date
geoflow_subject$setDate(dateType, date)
dateTypetype of date
datedate
geoflow_subject$addKeyword()Adds a keyword
geoflow_subject$addKeyword(keyword, uri = NULL)
keywordkeyword
urikeyword URI. Default is NULL
geoflow_subject$getKeywords()Get keywords associated with the subject
geoflow_subject$getKeywords(pretty = FALSE)
prettywhether the output has to prettyfied as data.frame
the list of keywords as list of geoflow_keyword objects or data.frame
geoflow_subject$clone()The objects of this class are cloneable with this method.
geoflow_subject$clone(deep = FALSE)
deepWhether to make a deep clone.
Emmanuel Blondel <[email protected]>
## Not run: subject <- geoflow_subject$new() subject$setKey("theme") subject$setName("General") subject$setUri("http://somelink/general") subject$addKeyword("keyword1", "http://somelink/keyword1") subject$addKeyword("keyword2", "http://somelink/keyword2") subject$addKeyword("keyword3", "http://somelink/keyword3") ## End(Not run)## Not run: subject <- geoflow_subject$new() subject$setKey("theme") subject$setName("General") subject$setUri("http://somelink/general") subject$addKeyword("keyword1", "http://somelink/keyword1") subject$addKeyword("keyword2", "http://somelink/keyword2") subject$addKeyword("keyword3", "http://somelink/keyword3") ## End(Not run)
geoflow_validator
sourceobject of class data.frame handling metadata objects to validate
geoflow_validator$new()Initializes a table validator for a given metadata model
geoflow_validator$new(model, valid_columns, source)
modelthe data model name, eg. "entity", "contact" or "dictionary"
valid_columnsa vector of valid columns for the data model
sourcean object of class data.frame handling the contacts
geoflow_validator$validate_structure()Validates a source table against a data model structure
geoflow_validator$validate_structure()
TRUE if valid, FALSE otherwise.
geoflow_validator$validate_content()Validates a source table using syntactic and content validation rules
geoflow_validator$validate_content(raw = FALSE)
rawindicates whether to return a list of geoflow_validator_cell objects or a data.frame
debugdebug validation
a list of geoflow_validator_cell objects, or data.frame
geoflow_validator$clone()The objects of this class are cloneable with this method.
geoflow_validator$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_cell
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
geoflow_validator_cell$new()Initializes a geoflow_validator_cell
geoflow_validator_cell$new( na_authorized, use_key_syntax, key_required, valid_keys, default_key, error_if_invalid_key, exclude_http_keys, multiple, i, j, str )
na_authorizedif validator cell authorizes NAs or empty strings. Default is FALSE
use_key_syntaxif validator cell uses key-based syntax. Default is TRUE
key_requiredif validator cell has a key required. Default is TRUE
valid_keysvalid keys for the validator cell. Default is an empty list
default_keydefault_key to use if key is omitted. Default is NULL
error_if_invalid_keyraise an error if key is invalid. Default is TRUE
exclude_http_keysif 'http' keys have to be excluded from validation checks. Default is TRUE
multipleif cell may contain multiple values. Deprecated
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strcharacter string to validate
geoflow_validator_cell$isNaAuthorized()Indicates if the validator cell authorizes NAs and empty strings
geoflow_validator_cell$isNaAuthorized()
TRUE if authorizes NAs and empty strings, FALSE otherwise
geoflow_validator_cell$isKeySynthaxUser()Indicates if the validator cell makes use of key-based syntax
geoflow_validator_cell$isKeySynthaxUser()
TRUE if using key-based syntax, FALSE otherwise
geoflow_validator_cell$isKeyRequired()Indicates if a key is required for the validator cell
geoflow_validator_cell$isKeyRequired()
TRUE if requires a key, FALSE otherwise
geoflow_validator_cell$getValidKeys()Gives the list of valid keys for the validator cell
geoflow_validator_cell$getValidKeys()
the list of valid keys
geoflow_validator_cell$isErrorIfInvalidKey()Indicates if a report error will be given in case of invalid key
geoflow_validator_cell$isErrorIfInvalidKey()
TRUE if a report error will be given in case of invalid key, FALSE otherwise
geoflow_validator_cell$getDefaultKey()Gets the default key
geoflow_validator_cell$getDefaultKey()
the default key
geoflow_validator_cell$isExcludeHttpKeys()Indicates if 'http' keys are excluded from the validation
geoflow_validator_cell$isExcludeHttpKeys()
TRUE if 'http' keys are excluded from the validation, FALSE otherwise
geoflow_validator_cell$isMultiple()indicates if multiple key-based components can be used within a same cell
geoflow_validator_cell$isMultiple()
TRUE if supporting multiple key-based components by cell, FALSE otherwise
geoflow_validator_cell$validate()Proceeds with syntactic validation for the cell considered
geoflow_validator_cell$validate()
an object of class data.frame including possible errors/warnings
geoflow_validator_cell$clone()The objects of this class are cloneable with this method.
geoflow_validator_cell$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_contact_Identifier
geoflow_validator_cell -> geoflow_validator_contact_Identifier
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_contact_Identifier$new()Initializes a contact 'Identifier' cell
geoflow_validator_contact_Identifier$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_contact_Identifier$validate()Validates a contact identifier. Proceeds with syntactic validation and content (ORCID) validation.
geoflow_validator_contact_Identifier$validate()
an validation report, as object of class data.frame
geoflow_validator_contact_Identifier$clone()The objects of this class are cloneable with this method.
geoflow_validator_contact_Identifier$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_contacts
geoflow_validator -> geoflow_validator_contacts
geoflow_validator_contacts$new()Initializes a contacts table validator
geoflow_validator_contacts$new(source)
sourcean object of class data.frame handling the contacts
geoflow_validator_contacts$clone()The objects of this class are cloneable with this method.
geoflow_validator_contacts$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_dictionary
geoflow_validator -> geoflow_validator_dictionary
geoflow_validator_dictionary$new()Initializes an entities table validator
geoflow_validator_dictionary$new(source)
sourcean object of class data.frame handling a dictionary
geoflow_validator_dictionary$clone()The objects of this class are cloneable with this method.
geoflow_validator_dictionary$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_dictionary_RegisterScript
geoflow_validator_cell -> geoflow_validator_dictionary_RegisterScript
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_dictionary_RegisterScript$new()Initializes an dictionary 'RegisterScript' cell
geoflow_validator_dictionary_RegisterScript$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_dictionary_RegisterScript$clone()The objects of this class are cloneable with this method.
geoflow_validator_dictionary_RegisterScript$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entities
geoflow_validator -> geoflow_validator_entities
geoflow_validator_entities$new()Initializes an entities table validator
geoflow_validator_entities$new(source)
sourcean object of class data.frame handling the entities
geoflow_validator_entities$clone()The objects of this class are cloneable with this method.
geoflow_validator_entities$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Creator
geoflow_validator_cell -> geoflow_validator_entity_Creator
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_entity_Creator$new()Initializes an entity 'Creator' cell
geoflow_validator_entity_Creator$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Creator$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Creator$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Data
geoflow_validator_cell -> geoflow_validator_entity_Data
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_Data$new()Initializes an entity 'Data' cell
geoflow_validator_entity_Data$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Data$validate()Validates a Data Proceeds with syntactic validation and content validation.
geoflow_validator_entity_Data$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_Data$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Data$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Date
geoflow_validator_cell -> geoflow_validator_entity_Date
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_Date$new()Initializes an entity 'Date' cell
geoflow_validator_entity_Date$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Date$validate()Validates a date. Proceeds with syntactic validation and content validation.
geoflow_validator_entity_Date$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_Date$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Date$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Description
geoflow_validator_cell -> geoflow_validator_entity_Description
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_entity_Description$new()Initializes an entity 'Description' cell
geoflow_validator_entity_Description$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Description$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Description$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Format
geoflow_validator_cell -> geoflow_validator_entity_Format
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_entity_Format$new()Initializes an entity 'Format' cell
geoflow_validator_entity_Format$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Format$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Format$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Identifier
geoflow_validator_cell -> geoflow_validator_entity_Identifier
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_Identifier$new()Initializes an entity 'Identifier' cell
geoflow_validator_entity_Identifier$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Identifier$validate()Validates an entity identifier. Proceeds with syntactic validation and content validation for DOIs and UUIDs.
geoflow_validator_entity_Identifier$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_Identifier$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Identifier$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Language
geoflow_validator_cell -> geoflow_validator_entity_Language
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_Language$new()Initializes an entity 'Language' cell
geoflow_validator_entity_Language$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Language$validate()Validates a language. Proceeds with syntactic validation and language validation.
geoflow_validator_entity_Language$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_Language$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Language$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Provenance
geoflow_validator_cell -> geoflow_validator_entity_Provenance
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_Provenance$new()Initializes an entity 'Provenance' cell
geoflow_validator_entity_Provenance$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Provenance$validate()Validates a Provenance. Proceeds with syntactic validation and content validation.
geoflow_validator_entity_Provenance$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_Provenance$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Provenance$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Relation
geoflow_validator_cell -> geoflow_validator_entity_Relation
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_entity_Relation$new()Initializes an entity 'Relation' cell
geoflow_validator_entity_Relation$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Relation$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Relation$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Rights
geoflow_validator_cell -> geoflow_validator_entity_Rights
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_entity_Rights$new()Initializes an entity 'Rights' cell
geoflow_validator_entity_Rights$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Rights$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Rights$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_SpatialCoverage
geoflow_validator_cell -> geoflow_validator_entity_SpatialCoverage
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_SpatialCoverage$new()Initializes an entity 'SpatialCoverage' cell
geoflow_validator_entity_SpatialCoverage$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_SpatialCoverage$validate()Validates a spatial coverage. Proceeds with syntactic validation and spatial coverage validation (including EWKT, WKT and SRID).
geoflow_validator_entity_SpatialCoverage$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_SpatialCoverage$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_SpatialCoverage$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Subject
geoflow_validator_cell -> geoflow_validator_entity_Subject
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_Subject$new()Initializes an entity 'Subject' cell
geoflow_validator_entity_Subject$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Subject$validate()Validates a Subject. Proceeds with syntactic validation and content validation.
geoflow_validator_entity_Subject$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_Subject$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Subject$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_TemporalCoverage
geoflow_validator_cell -> geoflow_validator_entity_TemporalCoverage
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_entity_TemporalCoverage$new()Initializes an entity 'TemporalCoverage' cell
geoflow_validator_entity_TemporalCoverage$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_TemporalCoverage$validate()Validates temporal coverage. Proceeds with syntactic validation and temporal coverage validation.
geoflow_validator_entity_TemporalCoverage$validate()
an validation report, as object of class data.frame
geoflow_validator_entity_TemporalCoverage$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_TemporalCoverage$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Title
geoflow_validator_cell -> geoflow_validator_entity_Title
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_entity_Title$new()Initializes an entity 'Title' cell
geoflow_validator_entity_Title$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Title$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Title$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflow_validator_entity_Type
geoflow_validator_cell -> geoflow_validator_entity_Type
geoflow_validator_cell$getDefaultKey()geoflow_validator_cell$getValidKeys()geoflow_validator_cell$isErrorIfInvalidKey()geoflow_validator_cell$isExcludeHttpKeys()geoflow_validator_cell$isKeyRequired()geoflow_validator_cell$isKeySynthaxUser()geoflow_validator_cell$isMultiple()geoflow_validator_cell$isNaAuthorized()geoflow_validator_cell$validate()geoflow_validator_entity_Type$new()Initializes an entity 'Type' cell
geoflow_validator_entity_Type$new(i, j, str)
irow index (internal index to be used for graphical geoflow validation handlers)
jcol index (internal index to be used for graphical geoflow validation handlers)
strstring to validate
geoflow_validator_entity_Type$clone()The objects of this class are cloneable with this method.
geoflow_validator_entity_Type$clone(deep = FALSE)
deepWhether to make a deep clone.
This class models a vocabulary
R6Class object.
geoflow_vocabulary
Object of R6Class for modelling a vocabulary
idid
defdef
uriuri
software_typesoftware_type
softwaresoftware
connectionconnection
geoflow_vocabulary$new()Initializes a vocabulary
geoflow_vocabulary$new(id, def, uri, software_type, connection = "unknown")
idid
defdef
uriuri
software_typesoftware type
connectionconnection
geoflow_vocabulary$setSoftware()Set software
geoflow_vocabulary$setSoftware(software)
softwaresoftware
geoflow_vocabulary$clone()The objects of this class are cloneable with this method.
geoflow_vocabulary$clone(deep = FALSE)
deepWhether to make a deep clone.
geoflowLogger
R6Class object.
Object of R6Class for modelling a simple logger
verboseverbose
debugdebug
geoflowLogger$separator()Util to separate chunks of logs of different natures
geoflowLogger$separator(char)
charA character to be used, eg '='
geoflowLogger$INFO()Prints an INFO logger message
geoflowLogger$INFO(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
geoflowLogger$WARN()Prints an WARN logger message
geoflowLogger$WARN(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
geoflowLogger$ERROR()Prints an ERROR logger message
geoflowLogger$ERROR(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
geoflowLogger$DEBUG()Prints an DEBUG logger message
geoflowLogger$DEBUG(txt, ...)
txtlogger message
...values to be passed into txt. See sprintf
geoflowLogger$new()Initializes an object of class geoflowLogger
geoflowLogger$new(verbose = TRUE, debug = FALSE)
verboseTRUE if the logger is enabled, FALSE otherwise. Default is TRUE
debugTRUE if the debugger is enabled, FALSE otherwise. Default is FALSE
geoflowLogger$clone()The objects of this class are cloneable with this method.
geoflowLogger$clone(deep = FALSE)
deepWhether to make a deep clone.
Logger class used internally by geoflow
get_absolute_path allows to get the absolute path of a resource
given a base directory
get_absolute_path(path, base, mustWork, expand_tilde)get_absolute_path(path, base, mustWork, expand_tilde)
path |
a path in character string |
base |
a base direcotry |
mustWork |
must work? |
expand_tilde |
expand tilde? |
Emmanuel Blondel, [email protected]
get_config_resource_path
get_config_resource_path(config, path)get_config_resource_path(config, path)
config |
a geoflow config |
path |
a resource path to resolve vs. the config root dir |
Emmanuel Blondel, [email protected]
get_contact_handler allows to get a contact handler
get_contact_handler(id)get_contact_handler(id)
id |
A contact handler identifier |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
get_data_accessor get a data accessor by ID.
get_data_accessor(id)get_data_accessor(id)
id |
an accessor ID |
an object of class geoflow_data_accessor, or NULL
Emmanuel Blondel, [email protected]
get_dictionary_handler allows to get a dictionary handler
get_dictionary_handler(id)get_dictionary_handler(id)
id |
A dictionary handler identifier |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
get_entity_handler allows to get an entity handler
get_entity_handler(id)get_entity_handler(id)
id |
An entity handler identifier |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
get_epsg_code is a consolidated method to get EPSG code (srid) from a CRS
get_epsg_code(x)get_epsg_code(x)
x |
an object of class 'sf' |
Emmanuel Blondel, [email protected]
get_line_separator get the line separator used by geoflow
when extracting cell components for tabular data content handling. Default is
set to an underscore followed by a line break.
get_line_separator()get_line_separator()
Emmanuel Blondel, [email protected]
Get locales from a property values set
get_locales_from(values)get_locales_from(values)
values |
values |
get_union_bbox will build a unified bounding box from a list of geoflow_data objects
get_union_bbox(data_objects)get_union_bbox(data_objects)
data_objects |
list of |
Emmanuel Blondel, [email protected]
getDBTableColumnComment
getDBTableColumnComment(dbi, schema, table, column_index)getDBTableColumnComment(dbi, schema, table, column_index)
dbi |
a dbi connection |
schema |
schema |
table |
table |
column_index |
table column index |
the table comment
Emmanuel Blondel, [email protected]
getDBTableComment
getDBTableComment(dbi, schema, table)getDBTableComment(dbi, schema, table)
dbi |
a dbi connection |
schema |
schema |
table |
table |
the table comment
Emmanuel Blondel, [email protected]
initWorkflow allows to init a workflow
initWorkflow(file, dir, outdir, jobDirPath, handleMetadata, session)initWorkflow(file, dir, outdir, jobDirPath, handleMetadata, session)
file |
a JSON or YAML configuration file |
dir |
a directory used to execute the workflow. This is the working directory, ie where local resources (data, metadata), should be located. |
outdir |
a directory where the geoflow will write the job outputs. |
jobDirPath |
a directory set-up for the job. Default is |
handleMetadata |
Default is |
session |
a shiny session object (optional) to run geoflow in a shiny context |
Emmanuel Blondel, [email protected]
initWorkflowJob allows to init a workflow job
initWorkflowJob(dir)initWorkflowJob(dir)
dir |
a directory where to initialize/execute the workflow |
the job directory path
Emmanuel Blondel, [email protected]
is_absolute_path evaluate if a ${{path}} expression is an absolute path,
the function will return a boolean argument.
is_absolute_path(path)is_absolute_path(path)
path |
a path in character string |
Emmanuel Blondel, [email protected]
list_action_options lists the options available for a given action supported by geoflow.
list_action_options(id, raw)list_action_options(id, raw)
id |
An action identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available action options.
Emmanuel Blondel, [email protected]
list_actions lists the actions supported by geoflow.
list_actions(raw)list_actions(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_action if raw = FALSE)
Emmanuel Blondel, [email protected]
list_contact_handler_options lists the options available for a given contact handler supported by geoflow.
list_contact_handler_options(id, raw)list_contact_handler_options(id, raw)
id |
An contact handler identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available handler options.
Emmanuel Blondel, [email protected]
list_contact_handlers lists the contact handlers supported by geoflow.
list_contact_handlers(raw)list_contact_handlers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_handler if raw = FALSE)
Emmanuel Blondel, [email protected]
list_data_accessors lists the data accessors supported by geoflow.
list_data_accessors(raw)list_data_accessors(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_data_accessor if raw = FALSE)
Emmanuel Blondel, [email protected]
list_dictionary_handler_options lists the options available for a given dictionary handler supported by geoflow.
list_dictionary_handler_options(id, raw)list_dictionary_handler_options(id, raw)
id |
An dictionary handler identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available handler options.
Emmanuel Blondel, [email protected]
list_dictionary_handlers lists the dictionary handlers supported by geoflow.
list_dictionary_handlers(raw)list_dictionary_handlers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_handler if raw = FALSE)
Emmanuel Blondel, [email protected]
list_entity_handler_options lists the options available for a given entity handler supported by geoflow.
list_entity_handler_options(id, raw)list_entity_handler_options(id, raw)
id |
An entity handler identifier |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the available handler options.
Emmanuel Blondel, [email protected]
list_entity_handlers lists the entity handlers supported by geoflow.
list_entity_handlers(raw)list_entity_handlers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_handler if raw = FALSE)
Emmanuel Blondel, [email protected]
list_registers lists the registers supported by geoflow.
list_registers(raw)list_registers(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_register if raw = FALSE)
Emmanuel Blondel, [email protected]
list_software lists the software supported by geoflow.
list_software(raw)list_software(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_software if raw = FALSE)
Emmanuel Blondel, [email protected]
list_software_parameters lists the parameters of a given software supported by geoflow.
list_software_parameters(software_type, raw)list_software_parameters(software_type, raw)
software_type |
A software type |
raw |
if raw list should be returned |
an object of class data.frame (or list if raw is TRUE) listing the software parameters
Emmanuel Blondel, [email protected]
list_software_properties lists the properties of a given software supported by geoflow.
list_software_properties(software_type, raw)list_software_properties(software_type, raw)
software_type |
A software type |
raw |
if raw list should be returned |
an object of class data.frame listing the software properties
Emmanuel Blondel, [email protected]
list_vocabularies lists the vocabularies supported by geoflow.
list_vocabularies(raw)list_vocabularies(raw)
raw |
Default value is |
an object of class data.frame (or list of geoflow_vocabulary if raw = FALSE)
load_workflow_environment loads a workflow environment by evaluating variable expressions in the
form ${{variable}}. If no variable expression pattern is identified in the string,
the function will return the original string.
load_workflow_environment(config, session)load_workflow_environment(config, session)
config |
object of class list |
session |
a shiny session object (optional) to run geoflow in a shiny context. |
Emmanuel Blondel, [email protected]
loadMetadataHandler allows to load a metadata handler
loadMetadataHandler(config, element, type)loadMetadataHandler(config, element, type)
config |
a geoflow configuration (as list). Only used to write logs, can be NULL. |
element |
a geoflow configuration metadata list element |
type |
either 'contacts', 'entities' or 'dictionnary' |
an object of class geoflow_handler
Emmanuel Blondel, [email protected]
posix_to_str converts a POSIX object to ISO string
posix_to_str(posix)posix_to_str(posix)
posix |
a |
Emmanuel Blondel, [email protected]
precompute_relationships
precompute_relationships(data, parent_key, child_key, child_label)precompute_relationships(data, parent_key, child_key, child_label)
data |
data |
parent_key |
parent_key |
child_key |
child_key |
child_label |
child_label |
a list of relationships
read_contacts allows to read contacts
read_contacts(id, source, config)read_contacts(id, source, config)
id |
a contact handler identifier |
source |
source |
config |
a geoflow config (output of initWorkflow). Default is |
a list of object of class geoflow_contact
Emmanuel Blondel, [email protected]
read_dictionary allows to read a dictionary
read_dictionary(id, source, config)read_dictionary(id, source, config)
id |
a dictionary handler identifier |
source |
source |
config |
a geoflow config (output of initWorkflow). Default is |
an object of class geoflow_dictionary
Emmanuel Blondel, [email protected]
read_entities allows to read entities
read_entities(id, source, config)read_entities(id, source, config)
id |
an entity handler identifier |
source |
source |
config |
a geoflow config (output of initWorkflow). Default is |
a list of object of class geoflow_entity
Emmanuel Blondel, [email protected]
register_actions registers default geoflow actions
register_actions()register_actions()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_contact_handlers registers the default contact handlers for geoflow
register_contact_handlers()register_contact_handlers()
Internal function called on load by geoflow
Emmanuel Blondel, [email protected]
register_data_accessors registers default geoflow data accessors
register_data_accessors()register_data_accessors()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_dictionary_handlers registers the default dictionary handlers for geoflow
register_dictionary_handlers()register_dictionary_handlers()
Internal function called on load by geoflow
Emmanuel Blondel, [email protected]
register_entity_handlers registers the default entity handlers for geoflow
register_entity_handlers()register_entity_handlers()
Internal function called on load by geoflow
Emmanuel Blondel, [email protected]
register_registers registers default geoflow registers
register_registers()register_registers()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_software registers default geoflow software
register_software()register_software()
Function called on load by geoflow
Emmanuel Blondel, [email protected]
register_vocabularies registers default geoflow vocabularies
register_vocabularies()register_vocabularies()
Function called on load by geoflow
sanitize_date sanitizes a date in geoflow
sanitize_date(date)sanitize_date(date)
date |
an object o class |
Emmanuel Blondel, [email protected]
sanitize_str sanitizes a string definition in geoflow
sanitize_str(str)sanitize_str(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
Set default locales to a property values set
set_i18n(term_key, default, expr, ...)set_i18n(term_key, default, expr, ...)
term_key |
term key |
default |
default |
expr |
expr |
... |
named values to be passed to expr |
set_line_separator set the line separator to be used by geoflow
when extracting cell components for tabular data content handling.
set_line_separator(x)set_line_separator(x)
x |
a string as object of class |
Emmanuel Blondel, [email protected]
Set locales to a property values set
set_locales_to(values,locales)set_locales_to(values,locales)
values |
values |
locales |
locales |
str_to_posix parses a string into a POSIX object
str_to_posix(str)str_to_posix(str)
str |
a string as object of class |
Emmanuel Blondel, [email protected]
unload_workflow_environment unloads a workflow environment, in the case environment
was provided by means of a dotenv file, and loaded using dotenv by geoflow. The function will
recover the session environment variables values (useful in case an environment variable was overwriten for
the workflow execution).
unload_workflow_environment(config)unload_workflow_environment(config)
config |
object of class list |
Emmanuel Blondel, [email protected]
writeWorkflowJobDataResource allows to transform datasource into different formats
writeWorkflowJobDataResource(entity, config, obj, useFeatures, resourcename, useUploadSource, createIndexes, overwrite, append, chunk.size, type)writeWorkflowJobDataResource(entity, config, obj, useFeatures, resourcename, useUploadSource, createIndexes, overwrite, append, chunk.size, type)
entity |
a entity object as read by |
config |
a configuration object as read by |
obj |
a sf file |
useFeatures |
a boolean condition to define if features must be attach to obj file |
resourcename |
name of data input |
useUploadSource |
a boolean condition to define if resourcename is same as uploadSource information |
createIndexes |
a boolean condition for possibility to create indexes for each column |
overwrite |
a boolean condition for writing to DB. Default is |
append |
a boolean condition for appending to DB existing table. Default is |
chunk.size |
an object of class |
type |
format to convert into. Formats supported: shp, csv, gpkg, parquet, dbtable |
Alexandre Bennici, [email protected]