Record Class ProfileRequirements
java.lang.Object
java.lang.Record
org.fhirfrog.frog.profilecompiler.model.ProfileRequirements
- Record Components:
mandatoryElementPaths- every element path (not id) withmin > 0in the snapshot, per algorithm.md §4 - kept for descriptive/diagnostic use; slice and choice mandatory-ness is decided per-item from that item's own element, not by looking paths up in this set (see design.md's "mandatory-elements-by-path is ambiguous for slices" note)
public record ProfileRequirements(String resourceType, String profileUrl, List<MustSupportExtension> extensions, List<SliceRequirement> slices, List<ChoiceTypeMustSupportElement> choiceElements, List<PlainMustSupportElement> plainElements, Set<String> mandatoryElementPaths)
extends Record
The full must-support/mandatory derivation for one profile (algorithm.md §2/§3/§4), before
compilation to literal FHIRPath. Deliberately does not carry a
bindings or
references bucket - both are out of scope for v1 (design.md's Decisions; algorithm.md
§5/§6 have no found consumer or aren't needed for the per-instance must-support/mandatory case).-
Constructor Summary
ConstructorsConstructorDescriptionProfileRequirements(String resourceType, String profileUrl, List<MustSupportExtension> extensions, List<SliceRequirement> slices, List<ChoiceTypeMustSupportElement> choiceElements, List<PlainMustSupportElement> plainElements, Set<String> mandatoryElementPaths) Creates an instance of aProfileRequirementsrecord class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of thechoiceElementsrecord component.final booleanIndicates whether some other object is "equal to" this one.Returns the value of theextensionsrecord component.final inthashCode()Returns a hash code value for this object.Returns the value of themandatoryElementPathsrecord component.Returns the value of theplainElementsrecord component.Returns the value of theprofileUrlrecord component.Returns the value of theresourceTyperecord component.slices()Returns the value of theslicesrecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
ProfileRequirements
public ProfileRequirements(String resourceType, String profileUrl, List<MustSupportExtension> extensions, List<SliceRequirement> slices, List<ChoiceTypeMustSupportElement> choiceElements, List<PlainMustSupportElement> plainElements, Set<String> mandatoryElementPaths) Creates an instance of aProfileRequirementsrecord class.- Parameters:
resourceType- the value for theresourceTyperecord componentprofileUrl- the value for theprofileUrlrecord componentextensions- the value for theextensionsrecord componentslices- the value for theslicesrecord componentchoiceElements- the value for thechoiceElementsrecord componentplainElements- the value for theplainElementsrecord componentmandatoryElementPaths- the value for themandatoryElementPathsrecord component
-
-
Method Details
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
resourceType
Returns the value of theresourceTyperecord component.- Returns:
- the value of the
resourceTyperecord component
-
profileUrl
Returns the value of theprofileUrlrecord component.- Returns:
- the value of the
profileUrlrecord component
-
extensions
Returns the value of theextensionsrecord component.- Returns:
- the value of the
extensionsrecord component
-
slices
Returns the value of theslicesrecord component.- Returns:
- the value of the
slicesrecord component
-
choiceElements
Returns the value of thechoiceElementsrecord component.- Returns:
- the value of the
choiceElementsrecord component
-
plainElements
Returns the value of theplainElementsrecord component.- Returns:
- the value of the
plainElementsrecord component
-
mandatoryElementPaths
Returns the value of themandatoryElementPathsrecord component.- Returns:
- the value of the
mandatoryElementPathsrecord component
-