ProductShelfLife

@POJOBoilerplate
class ProductShelfLife(val id: Option[String], `type`: CodeableConcept, val period: Quantity, val extension: LitSeq[Extension], val identifier: Option[Identifier], val modifierExtension: LitSeq[Extension], val specialPrecautionsForStorage: LitSeq[CodeableConcept], val primitiveAttributes: TreeMap[FHIRComponentFieldMeta[_], PrimitiveElementInfo]) extends BackboneElement

Base StructureDefinition for ProductShelfLife Type: The shelf-life and storage information for a medicinal product item or container can be described using this class.

Subclass of core.model.BackboneElement (Base StructureDefinition for BackboneElement Type: Base definition for all elements that are defined inside a resource - but not those in a data type.)

Value Params
`type`
  • This describes the shelf life, taking into account various scenarios such as shelf life of the packaged Medicinal Product itself, shelf life after transformation where necessary and shelf life after the first opening of a bottle, etc. The shelf life type shall be specified using an appropriate controlled vocabulary The controlled term and the controlled term identifier shall be specified.
extension
  • May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
id
  • Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
identifier
  • Unique identifier for the packaged Medicinal Product.
modifierExtension
  • May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
period
  • The shelf life time period can be specified using a numerical value for the period of time and its unit of time measurement The unit of measurement shall be specified in accordance with ISO 11240 and the resulting terminology The symbol and the symbol identifier shall be used.
specialPrecautionsForStorage
  • Special precautions for storage, if any, can be specified using an appropriate controlled vocabulary The controlled term and the controlled term identifier shall be specified.
Constructor

Introduces the fields type, period, identifier, specialPrecautionsForStorage.

Companion
object
class BackboneElement
class Element
class FHIRObject
trait FHIRComponent
trait Utils
class Object
trait Matchable
class Any

Type members

Inherited classlikes

object extensions
Inherited from
FHIRObject
object ids
Inherited from
FHIRObject

Inherited types

type FieldToElementLookup = TreeMap[FHIRComponentFieldMeta[_], PrimitiveElementInfo]
Inherited from
FHIRObject

Value members

Inherited methods

final
def >>[T](fn: T => T)(implicit tt: LTag[T]): ProductShelfLife

Slower than nodalMap, but should work with subtypes (e.g. PositiveInt). If you must use it, then:

Slower than nodalMap, but should work with subtypes (e.g. PositiveInt). If you must use it, then:

  • T should not be a Choice[_], a LitSeq[_] or an Option[_]
  • It may require a type parameter sometimes (e.g. sampleResource >>[BUNDLE_TYPE] { (_: BUNDLE_TYPE) => BUNDLE_TYPE.SEARCHSET } )
Inherited from
FHIRObject
final
def >>=[T, F[_] : Monad](fn: T => F[T])(implicit evidence$7: Monad[F], tt: LTag[T]): F[ProductShelfLife]
Inherited from
FHIRObject
final
def ^^[From, To](fn: From => To)(implicit tt: LTag[From]): LitSeq[To]

Extract values of type From, and map to LitSeq[To] using fn: From => To. Unlike >>, this is safe even if From is a Choice[], a LitSeq[] or an Option[_] Quite slow, slower than nodalExtract

Extract values of type From, and map to LitSeq[To] using fn: From => To. Unlike >>, this is safe even if From is a Choice[], a LitSeq[] or an Option[_] Quite slow, slower than nodalExtract

Inherited from
FHIRObject
final
def ^^^[T](implicit tt: LTag[T]): LitSeq[T]
Inherited from
FHIRObject
def companionClassName[T](tag: LTag[T]): String
Inherited from
Utils
def companionOf[T <: FHIRObject : ClassTag](implicit evidence$1: ClassTag[T], tag: LTag[T]): CompanionFor[T]
Inherited from
Utils
def constructor: Constructor[_]
Inherited from
FHIRComponent
def decodeMethodFor[T <: FHIRObject : ClassTag](implicit evidence$2: ClassTag[T], tag: LTag[T], params: DecoderParams): HCursor => Try[T]
Inherited from
Utils
override
def equals(obj: Any): Boolean
Definition Classes
FHIRObject -> Any
Inherited from
FHIRObject
def fields: Seq[FHIRComponentField[_]]
Inherited from
FHIRObject
def getFieldByClass[T](name: String, clazz: Class[T]): LitSeq[T]
Inherited from
FHIRComponent
def getFieldByType[T : LTag](name: String): LitSeq[T]
Inherited from
FHIRComponent
override
def hashCode(): Int
Definition Classes
FHIRObject -> Any
Inherited from
FHIRObject
def modifyField[T : LTag, Up >: ProductShelfLife <: FHIRObject](fieldName: String, modify: T => T)(implicit evidence$5: LTag[T], ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
def modifyFieldUnsafe[T, Up >: ProductShelfLife <: FHIRObject](fieldName: String, modify: T => T)(implicit ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
final
def nodalExtract[From, To](klass: Class[From], fn: From => To): LitSeq[To]

Convenience alias for nodalGetByClass andThen map to LitSeq[To] using fn: From => To.

Convenience alias for nodalGetByClass andThen map to LitSeq[To] using fn: From => To.

Inherited from
FHIRObject
final
def nodalGetByClass[Target](klass: Class[Target]): LitSeq[Target]

Extract values of type From Unlike nodalMap, this is safe even if From is a Choice[_], a LitSeq[_] or an Option[_], however there remains a caveat with 'subtyped' types (eg PositiveInt), in that we can't differentiate them from the parent class Quite slow but faster than ^^

Extract values of type From Unlike nodalMap, this is safe even if From is a Choice[_], a LitSeq[_] or an Option[_], however there remains a caveat with 'subtyped' types (eg PositiveInt), in that we can't differentiate them from the parent class Quite slow but faster than ^^

Inherited from
FHIRObject
final
def nodalMap[T](klass: Class[T], fn: T => T): ProductShelfLife

Bit faster than >>, but still much slower than using update$foo when possible. If you must use it, then:

Bit faster than >>, but still much slower than using update$foo when possible. If you must use it, then:

  • T should not be a Choice[_], a LitSeq[_], an Option[_], or any 'subtyped' type (eg PositiveInt). You should ensure, if T is a supertype of multiple valid choice values (e.g. T =:= Object), that the return value of fn retains the same type as the input value.
Inherited from
FHIRObject
def setFromField[T, UpType >: ProductShelfLife <: FHIRObject : LTag](field: FHIRComponentFieldMeta[T])(newVal: T): UpType
Inherited from
FHIRObject
def thisClassName: String
Inherited from
FHIRObject
def toClass[T](klass: Class[T]): Option[T]
Inherited from
FHIRObject
override
def toString: String
Definition Classes
FHIRObject -> Any
Inherited from
FHIRObject
def toType[T](implicit ct: ClassTag[T]): Option[T]
Inherited from
FHIRObject
def updateFromField[T, UpType >: ProductShelfLife <: FHIRObject : LTag](field: FHIRComponentFieldMeta[T])(fn: T => T): UpType
Inherited from
FHIRObject
def updatePrimitiveAttributes(fn: FieldToElementLookup => FieldToElementLookup): ProductShelfLife
Inherited from
FHIRObject
def withField[T : LTag, Up >: ProductShelfLife <: FHIRObject](fieldName: String, value: T)(implicit evidence$6: LTag[T], ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
def withFieldUnsafe[T, Up >: ProductShelfLife <: FHIRObject](fieldName: String, value: T)(implicit ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
def withFields[Up >: ProductShelfLife <: FHIRObject](replacementFields: (String, Any)*)(implicit ct: ClassTag[Up], tt: LTag[Up]): Up
Inherited from
FHIRObject
def withPrimitiveAttributes(a: FieldToElementLookup): ProductShelfLife
Inherited from
FHIRObject

Concrete fields

val `type`: CodeableConcept
override
val extension: LitSeq[Extension]
override
val id: Option[String]
val identifier: Option[Identifier]
override
val modifierExtension: LitSeq[Extension]
val period: Quantity
override
val primitiveAttributes: TreeMap[FHIRComponentFieldMeta[_], PrimitiveElementInfo]
val specialPrecautionsForStorage: LitSeq[CodeableConcept]
override
val thisTypeName: String

Inherited fields

val companion: CompanionFor[ProductShelfLife]
Inherited from
FHIRObject