ISOFeatureCatalogue: ISOFeatureCatalogue

ISOFeatureCatalogueR Documentation

ISOFeatureCatalogue

Description

ISOFeatureCatalogue

ISOFeatureCatalogue

Format

R6Class object.

Value

Object of R6Class for modelling an ISO FeatureCatalogue

Super classes

geometa::geometaLogger -> geometa::ISOAbstractObject -> geometa::ISOAbstractCatalogue -> ISOFeatureCatalogue

Public fields

attrs

attrs

producer

producer [1..1]: ISOResponsibleParty

functionalLanguage

functionalLanguage [0..1]: character

featureType

featureType [1..*]: ISOFeatureType

definitionSource

definitionSource [0..*]: ISODefinitionSource

Methods

Public methods

Inherited methods

Method new()

Initializes object

Usage
ISOFeatureCatalogue$new(xml = NULL, uuid = NULL)
Arguments
xml

object of class XMLInternalNode-class

uuid

uuid


Method setProducer()

Set producer

Usage
ISOFeatureCatalogue$setProducer(producer)
Arguments
producer

object of class ISOResponsibleParty


Method setFunctionalLanguage()

Set functional language

Usage
ISOFeatureCatalogue$setFunctionalLanguage(functionalLanguage)
Arguments
functionalLanguage

functional language


Method addFeatureType()

Adds feature type

Usage
ISOFeatureCatalogue$addFeatureType(featureType)
Arguments
featureType

object of class ISOFeatureType

Returns

TRUE if added, FALSE otherwise


Method delFeatureType()

Deletes feature type

Usage
ISOFeatureCatalogue$delFeatureType(featureType)
Arguments
featureType

object of class ISOFeatureType

Returns

TRUE if deleted, FALSE otherwise


Method addDefinitionSource()

Adds definition source

Usage
ISOFeatureCatalogue$addDefinitionSource(source)
Arguments
source

object of class ISODefinitionSource or ISOCitation

Returns

TRUE if added, FALSE otherwise


Method delDefinitionSource()

Deletes definition source

Usage
ISOFeatureCatalogue$delDefinitionSource(source)
Arguments
source

object of class ISODefinitionSource or ISOCitation

Returns

TRUE if deleted, FALSE otherwise


Method clone()

The objects of this class are cloneable with this method.

Usage
ISOFeatureCatalogue$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

Author(s)

Emmanuel Blondel <emmanuel.blondel1@gmail.com>

References

ISO 19110:2005 Methodology for Feature cataloguing

Examples

 fc <- ISOFeatureCatalogue$new(uuid = "my-fc-identifier")
 fc$setName("name")
 fc$addScope("scope1")
 fc$addScope("scope2")
 fc$addFieldOfApplication("field1")
 fc$addFieldOfApplication("field2")
 fc$setVersionNumber("1.0")
 fc$setVersionDate(ISOdate(2015, 1, 1, 1))
 
 producer <- ISOResponsibleParty$new()
 producer$setIndividualName("someone")
 fc$setProducer(producer)
 fc$setFunctionalLanguage("eng")
 
 cit <- ISOCitation$new()
 cit$setTitle("some citation title")
 fc$addDefinitionSource(cit)
 #'  #add featureType
 ft <- ISOFeatureType$new()
 ft$setTypeName("typeName")
 ft$setDefinition("definition")
 ft$setCode("code")
 ft$setIsAbstract(FALSE)
 ft$addAlias("alias1")
 ft$addAlias("alias2")
 
 #add feature attributes
 for(i in 1:3){
   #create attribute
   fat <- ISOFeatureAttribute$new()
   fat$setMemberName(sprintf("name %s",i))
   fat$setDefinition(sprintf("definition %s",i))
   fat$setCardinality(lower=1,upper=1)
   fat$setCode(sprintf("code %s",i))
   
   gml <- GMLBaseUnit$new(id = sprintf("ID%s",i))
   gml$setDescriptionReference("someref")
   gml$setIdentifier("identifier", "codespace")
   gml$addName("name1", "codespace")
   gml$addName("name2", "codespace")
   gml$setQuantityTypeReference("someref")
   gml$setCatalogSymbol("symbol")
   gml$setUnitsSystem("somelink")
   fat$setValueMeasurementUnit(gml)
   
   #add listed values
   val1 <- ISOListedValue$new()
   val1$setCode("code1")
   val1$setLabel("label1")
   val1$setDefinition("definition1")
   fat$addListedValue(val1)
   val2 <- ISOListedValue$new()
   val2$setCode("code2")
   val2$setLabel("label2")
   val2$setDefinition("definition2")
   fat$addListedValue(val2)
   fat$setValueType("typeName")
   
   #add feature attribute as carrierOfCharacteristic
   ft$addCharacteristic(fat)
 }
 #add featureType to catalogue
 fc$addFeatureType(ft)
 
 xml <- fc$encode()
 

eblondel/geometa documentation built on Oct. 10, 2024, 4:46 p.m.