Learn R Programming

geometa (version 0.6-2)

ISODataQuality: ISODataQuality

Description

ISODataQuality

Usage

ISODataQuality

Arguments

Value

Object of R6Class for modelling an ISO DataQuality

Format

R6Class object.

Fields

scope

[ISOScope] scope

report

[ISODomainConsistency] report

lineage

[ISOLineage] lineage information

Methods

new(xml)

This method is used to instantiate an ISODataQuality

setScope(scope)

Sets the scope

addReport(report)

Adds a report

setLineage(lineage)

Sets the lineage

References

ISO 19115:2003 - Geographic information -- Metadata

Examples

Run this code
# NOT RUN {
  #create dataQuality object with a 'dataset' scope
  dq <- ISODataQuality$new()
  scope <- ISOScope$new()
  scope$setLevel("dataset")
  dq$setScope(scope)
  
  #add data quality reports...
  
  #add a report the data quality
  dc <- ISODomainConsistency$new()
  result <- ISOConformanceResult$new()
  spec <- ISOCitation$new()
  spec$setTitle("Data Quality check")
  spec$setAlternateTitle("This is is some data quality check report")
  d <- ISODate$new()
  d$setDate(ISOdate(2015, 1, 1, 1))
  d$setDateType("publication")
  spec$addDate(d)
  result$setSpecification(spec)
  result$setExplanation("some explanation about the conformance")
  result$setPass(TRUE)
  dc$addResult(result)
  dq$addReport(dc)
  
  #add INSPIRE reports?
  #INSPIRE - interoperability of spatial data sets and services
  dc_inspire1 <- ISODomainConsistency$new()
  cr_inspire1 <- ISOConformanceResult$new()
  cr_inspire_spec1 <- ISOCitation$new()
  cr_title <- paste(
    "Commission Regulation (EU) No 1089/2010 of 23 November 2010 implementing Directive 2007/2/EC",
    "of the European Parliament and of the Council as regards interoperability of spatial data",
    "sets and services"
  )
  cr_inspire_spec1$setTitle(cr_title)
  cr_inspire1$setExplanation("See the referenced specification")
  cr_inspire_date1 <- ISODate$new()
  cr_inspire_date1$setDate(ISOdate(2010,12,8))
  cr_inspire_date1$setDateType("publication")
  cr_inspire_spec1$addDate(cr_inspire_date1)
  cr_inspire1$setSpecification(cr_inspire_spec1)
  cr_inspire1$setPass(TRUE)
  dc_inspire1$addResult(cr_inspire1)
  dq$addReport(dc_inspire1)
  #INSPIRE - metadata
  dc_inspire2 <- ISODomainConsistency$new()
  cr_inspire2 <- ISOConformanceResult$new()
  cr_inspire_spec2 <- ISOCitation$new()
  cr_title2 <- paste(
    "COMMISSION REGULATION (EC) No 1205/2008 of 3 December 2008 implementing Directive 2007/2/EC",
    "of the European Parliament and of the Council as regards metadata"
  )
  cr_inspire_spec2$setTitle(cr_title2)
  cr_inspire2$setExplanation("See the referenced specification")
  cr_inspire_date2 <- ISODate$new()
  cr_inspire_date2$setDate(ISOdate(2008,12,4))
  cr_inspire_date2$setDateType("publication")
  cr_inspire_spec2$addDate(cr_inspire_date2)
  cr_inspire2$setSpecification(cr_inspire_spec2)
  cr_inspire2$setPass(TRUE)
  dc_inspire2$addResult(cr_inspire2)
  dq$addReport(dc_inspire2)
  
  #add lineage (more example of lineages in ISOLineage documentation)
  lineage <- ISOLineage$new()
  lineage$setStatement("statement")
  dq$setLineage(lineage)
  
  #xml
  xml <- dq$encode()
  
# }

Run the code above in your browser using DataLab