description: A quality specification is for a drug product or drug substance (excipient, API or raw material). package_name: hl7.fhir.us.pq-cmc-fda derivation: constraint name: QualitySpecification type: PlanDefinition elements: date: {short: Specification Version Date, mustSupport: true, index: 17} meta: elements: profile: {mustSupport: true, index: 0} required: [profile] approvalDate: {short: Specification Status Date, mustSupport: true, index: 18} goal: short: Acceptance Criteria mustSupport: true index: 19 elements: description: {short: Original Text, mustSupport: true, index: 20} addresses: mustSupport: true index: 21 elements: coding: elements: code: short: Acceptance Criteria Usage binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-test-usage-terminology'} mustSupport: true index: 22 required: [code] text: {short: Accpetance Criteria Usage, index: 23} documentation: mustSupport: true index: 24 elements: type: pattern: {type: Code, value: comments-on} index: 25 display: {short: Acceptance Criteria Additional Information, mustSupport: true, index: 26} required: [display] target: short: Acceptance Criteron mustSupport: true index: 27 elements: measure: elements: text: {short: Detailed parameter being measured if more granular than Sub-Test, mustSupport: true, index: 28} detail: short: Number of Replicates mustSupport: true choices: [detailInteger] index: 70 slicing: slices: detailInteger: match: {} schema: short: Number of Replicates mustSupport: true choices: [detailInteger] index: 70 min: 0 max: 1 detailQuantity: short: ValueNumeric type: Quantity mustSupport: true choiceOf: detail index: 37 slicing: slices: detailQuantity: match: {} schema: {short: ValueNumeric, type: Quantity, mustSupport: true, choiceOf: detail, index: 37} min: 0 max: 1 detailRange: short: ValueNumeric (range) type: Range mustSupport: true choiceOf: detail index: 47 slicing: slices: detailRange: match: {} schema: {short: ValueNumeric (range), type: Range, mustSupport: true, choiceOf: detail, index: 47} min: 0 max: 1 detailCodeableConcept: type: CodeableConcept mustSupport: true choiceOf: detail index: 66 slicing: slices: detailCodeableConcept: match: {} schema: {type: CodeableConcept, mustSupport: true, choiceOf: detail, index: 66} min: 0 max: 1 detailInteger: short: Number of Replicates type: integer mustSupport: true choiceOf: detail index: 71 slicing: slices: detailInteger: match: {} schema: {short: Number of Replicates, type: integer, mustSupport: true, choiceOf: detail, index: 71} min: 0 max: 1 detail[x]: elements: coding: short: Interpretation Code mustSupport: true binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-interpretation-code-terminology'} pattern: type: Coding value: {code: C48793, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: EQ} index: 67 text: {short: Value, mustSupport: true, index: 68} required: [coding, text] due: {index: 72} required: [addresses, target] type: mustSupport: true index: 9 elements: coding: mustSupport: true array: true min: 2 max: 2 index: 10 slicing: rules: closed ordered: false description: Slice on the coding itself discriminator: - {path: $this, type: value} min: 2 max: 2 slices: DefinitionType: match: {code: workflow-definition, system: 'http://terminology.hl7.org/CodeSystem/plan-definition-type', display: Workflow Definition} schema: mustSupport: true pattern: type: Coding value: {code: workflow-definition, system: 'http://terminology.hl7.org/CodeSystem/plan-definition-type', display: Workflow Definition} _required: true index: 11 min: 1 max: 1 ApprovalStatus: match: {} schema: binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-specification-status-terminology'} mustSupport: true _required: true index: 12 min: 1 max: 1 title: {short: Specification Title, mustSupport: true, index: 7} extension: index: 1 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: specificationType: match: {url: null} schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-specification-type-extension', index: 2} min: 1 max: 1 spec-additional-info: match: {url: null} schema: {short: Specification Additional Information, type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-additional-info-extension', index: 3} min: 0 max: 1 work-group: match: {url: null} schema: {type: Extension, url: 'http://hl7.org/fhir/StructureDefinition/structuredefinition-wg', index: 4} min: 0 max: 1 status: {mustSupport: true, index: 13} subtitle: {short: Specification Subtitle, mustSupport: true, index: 8} identifier: {mustSupport: true, index: 5} action: short: Method constraint: cmc-link-required: {human: Action linkId is required for alternate tests, source: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-quality-specification', severity: error, expression: (action.relatedAction.count() > 0) implies action.linkId.exists()} cmc-single-or-multistage: human: if a test is multi-stage, the test can't have a prefix and its stages must have a name and can't be named 'Single Stage' and must be unique. If it's single stage its prefix is 'Single Stage' and its groups can't have prefixes source: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-quality-specification severity: error expression: "((\n prefix.exists() implies \n action.prefix.empty() and prefix = 'Single Stage' \n) and (\n prefix.empty() implies (\n (action.where(\n prefix.exists() and \n prefix != 'Single Stage'\n ).count() = action.count()) and \n action.prefix.isDistinct()\n )\n)) = true" mustSupport: true index: 73 extensions: testOrder: url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-order-extension short: Test Order type: Extension mustSupport: true index: 75 elements: value: mustSupport: true choices: [] index: 77 required: [value] elements: description: {short: Test Additional Information, mustSupport: true, index: 81} linkId: {short: only required for alternate tests, mustSupport: true, index: 78} goalId: {short: Reference to Acceptance Criteria, mustSupport: true, index: 94} relatedAction: short: Alternate Test mustSupport: true index: 95 elements: targetId: {mustSupport: true, index: 96} relationship: short: Code is concurrent mustSupport: true pattern: {type: Code, value: concurrent} index: 97 title: {short: Test Name, mustSupport: true, index: 80} documentation: mustSupport: true index: 91 elements: type: pattern: {type: Code, value: documentation} index: 92 label: {short: Reference to Procedure, mustSupport: true, index: 93} required: [label] prefix: {short: Stage Name, mustSupport: true, index: 79} selectionBehavior: short: Code is exactly-one mustSupport: true pattern: {type: Code, value: exactly-one} index: 98 reason: min: 1 short: Test Category | Test Subcategory index: 85 mustSupport: true array: true elements: extension: index: 86 slicing: slices: categoryLevel: match: {} schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-hierarchical-level-extension', index: 87} min: 1 max: 1 coding: binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-test-category-terminology'} mustSupport: true index: 88 elements: code: {mustSupport: true, index: 89} display: {index: 90} required: [display, code] extensions: categoryLevel: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-hierarchical-level-extension', min: 1, max: 1, type: Extension, mustSupport: true, index: 87} max: 2 required: [extension] extension: index: 74 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: testOrder: match: {url: null} schema: short: Test Order type: Extension mustSupport: true url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-order-extension index: 75 elements: value: mustSupport: true choices: [] index: 77 required: [value] code: short: Test Method Origin mustSupport: true index: 82 elements: coding: elements: code: binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-test-method-origin-terminology'} mustSupport: true index: 83 required: [code] text: {short: Analytical Procedure, mustSupport: true, index: 84} required: [text] action: type: BackboneElement short: Groups or Stages mustSupport: true index: 99 extensions: stageOrder: url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-order-extension short: Stage Sequence Order type: Extension mustSupport: true index: 101 elements: value: mustSupport: true choices: [] index: 103 required: [value] elements: extension: index: 100 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: stageOrder: match: {url: null} schema: short: Stage Sequence Order type: Extension mustSupport: true url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-order-extension index: 101 elements: value: mustSupport: true choices: [] index: 103 required: [value] prefix: {short: Stage Name, mustSupport: true, index: 104} title: {short: Test Name (only reqired if different than above), mustSupport: true, index: 105} description: {short: Test Additional Information | Stage Additional Information, mustSupport: true, index: 106} documentation: mustSupport: true index: 107 elements: type: pattern: {type: Code, value: documentation} index: 108 document: short: Test or Stage Additional Information Visual Attachments mustSupport: true index: 109 elements: contentType: {mustSupport: true, index: 110} data: {mustSupport: true, index: 111} title: {short: Document file name including the file extension, mustSupport: true, index: 112} required: [title, contentType, data] required: [document] goalId: {short: Reference to Acceptance Criteria, mustSupport: true, index: 113} action: type: BackboneElement short: Sub-Test constraint: cmc-subtest-rrt: {human: 'a subtest''s prefix represents relative retention time, should it exist', source: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-quality-specification', severity: error, expression: prefix.exists() implies prefix.single() = 'RRT'} mustSupport: true index: 114 extensions: testOrder: url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-order-extension short: Test Order type: Extension mustSupport: true index: 116 elements: value: mustSupport: true choices: [] index: 118 required: [value] elements: extension: index: 115 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: testOrder: match: {url: null} schema: short: Test Order type: Extension mustSupport: true url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-order-extension index: 116 elements: value: mustSupport: true choices: [] index: 118 required: [value] prefix: {short: RRT, mustSupport: true, index: 119} title: {short: Test Name | RRT (complex testing), mustSupport: true, index: 120} description: {short: Test Additional Information | Stage Additional Information, mustSupport: true, index: 121} goalId: {short: Reference to Acceptance Criteria, mustSupport: true, index: 122} required: [extension, title, goalId] required: [extension] required: [extension, title, reason, code] version: {short: Specification Version, mustSupport: true, index: 6} subjectReference: type: Reference mustSupport: true choiceOf: subject refers: ['http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-excipient', 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-routine-drug-product', 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-routine-drug-substance'] index: 16 subject: mustSupport: true choices: [subjectReference] index: 15 package_version: 1.0.0-ballot extensions: specificationType: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-specification-type-extension', min: 1, max: 1, type: Extension, mustSupport: true, index: 2} spec-additional-info: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-additional-info-extension', min: 0, max: 1, short: Specification Additional Information, type: Extension, mustSupport: true, index: 3} work-group: {url: 'http://hl7.org/fhir/StructureDefinition/structuredefinition-wg', min: 0, max: 1, type: Extension, index: 4} class: profile kind: resource url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-quality-specification base: http://hl7.org/fhir/StructureDefinition/PlanDefinition version: 1.0.0-ballot required: [extension, subjectReference, action, subject, title, type, version, date]