91 lines
2.2 KiB
Scala
91 lines
2.2 KiB
Scala
package eu.dnetlib.dhp.schema.scholexplorer
|
|
|
|
import eu.dnetlib.dhp.schema.oaf.{DataInfo, Field, KeyValue, Qualifier, StructuredProperty}
|
|
|
|
object OafUtils {
|
|
|
|
|
|
|
|
def generateKeyValue(key: String, value: String): KeyValue = {
|
|
val kv: KeyValue = new KeyValue()
|
|
kv.setKey(key)
|
|
kv.setValue(value)
|
|
kv.setDataInfo(generateDataInfo("0.9"))
|
|
kv
|
|
}
|
|
|
|
|
|
def generateDataInfo(trust: String = "0.9", invisibile: Boolean = false): DataInfo = {
|
|
val di = new DataInfo
|
|
di.setDeletedbyinference(false)
|
|
di.setInferred(false)
|
|
di.setInvisible(false)
|
|
di.setTrust(trust)
|
|
di.setProvenanceaction(createQualifier("sysimport:actionset", "dnet:provenanceActions"))
|
|
di
|
|
}
|
|
|
|
def createQualifier(cls: String, sch: String): Qualifier = {
|
|
createQualifier(cls, cls, sch, sch)
|
|
}
|
|
|
|
|
|
def createQualifier(classId: String, className: String, schemeId: String, schemeName: String): Qualifier = {
|
|
val q: Qualifier = new Qualifier
|
|
q.setClassid(classId)
|
|
q.setClassname(className)
|
|
q.setSchemeid(schemeId)
|
|
q.setSchemename(schemeName)
|
|
q
|
|
}
|
|
|
|
|
|
def asField[T](value: T): Field[T] = {
|
|
val tmp = new Field[T]
|
|
tmp.setValue(value)
|
|
tmp
|
|
|
|
|
|
}
|
|
|
|
def createSP(value: String, classId: String,className:String, schemeId: String, schemeName:String): StructuredProperty = {
|
|
val sp = new StructuredProperty
|
|
sp.setQualifier(createQualifier(classId,className, schemeId, schemeName))
|
|
sp.setValue(value)
|
|
sp
|
|
|
|
}
|
|
|
|
|
|
|
|
def createSP(value: String, classId: String,className:String, schemeId: String, schemeName:String, dataInfo: DataInfo): StructuredProperty = {
|
|
val sp = new StructuredProperty
|
|
sp.setQualifier(createQualifier(classId,className, schemeId, schemeName))
|
|
sp.setValue(value)
|
|
sp.setDataInfo(dataInfo)
|
|
sp
|
|
|
|
}
|
|
|
|
def createSP(value: String, classId: String, schemeId: String): StructuredProperty = {
|
|
val sp = new StructuredProperty
|
|
sp.setQualifier(createQualifier(classId, schemeId))
|
|
sp.setValue(value)
|
|
sp
|
|
|
|
}
|
|
|
|
|
|
|
|
def createSP(value: String, classId: String, schemeId: String, dataInfo: DataInfo): StructuredProperty = {
|
|
val sp = new StructuredProperty
|
|
sp.setQualifier(createQualifier(classId, schemeId))
|
|
sp.setValue(value)
|
|
sp.setDataInfo(dataInfo)
|
|
sp
|
|
|
|
}
|
|
|
|
|
|
}
|