PREFIX fhir: PREFIX fhirvs: PREFIX xsd: BASE start=@ AND {fhir:nodeRole [fhir:treeRoot]} # Detailed definition of a medicinal product CLOSED { a [fhir:MedicinalProductDefinition]; fhir:nodeRole [fhir:treeRoot]?; fhir:Resource.id id?; # Logical id of this artifact fhir:Resource.meta @?; # Metadata about the resource fhir:Resource.implicitRules @?; # A set of rules under which this # content was created fhir:Resource.language @?; # Language of the resource content fhir:DomainResource.text @?; # Text summary of the resource, for # human interpretation fhir:DomainResource.contained @*; # Contained, inline Resources fhir:DomainResource.extension @*; # Additional content defined by # implementations fhir:DomainResource.modifierExtension @*; # Extensions that cannot be ignored fhir:MedicinalProductDefinition.identifier @*; # Business identifier for this # product. Could be an MPID fhir:MedicinalProductDefinition.type @?; # Regulatory type, e.g. # Investigational or Authorized fhir:MedicinalProductDefinition.domain @?; # If this medicine applies to human # or veterinary uses fhir:MedicinalProductDefinition.version @?; # A business identifier relating to # a specific version of the product fhir:MedicinalProductDefinition.status @?; # The status within the lifecycle of # this product record fhir:MedicinalProductDefinition.statusDate @?; # The date at which the given status # became applicable fhir:MedicinalProductDefinition.description @?; # General description of this product fhir:MedicinalProductDefinition.combinedPharmaceuticalDoseForm @?; # The dose form for a single part # product, or combined form of a # multiple part product fhir:MedicinalProductDefinition.route @*; # The path by which the product is # taken into or makes contact with # the body fhir:MedicinalProductDefinition.indication @?; # Description of indication(s) for # this product, used when structured # indications are not required fhir:MedicinalProductDefinition.legalStatusOfSupply @?; # The legal status of supply of the # medicinal product as classified by # the regulator fhir:MedicinalProductDefinition.additionalMonitoringIndicator @?; # Whether the Medicinal Product is # subject to additional monitoring # for regulatory reasons fhir:MedicinalProductDefinition.specialMeasures @*; # Whether the Medicinal Product is # subject to special measures for # regulatory reasons fhir:MedicinalProductDefinition.pediatricUseIndicator @?; # If authorised for use in children fhir:MedicinalProductDefinition.classification @*; # Allows the product to be # classified by various systems fhir:MedicinalProductDefinition.marketingStatus @*; # Marketing status of the medicinal # product, in contrast to marketing # authorization fhir:MedicinalProductDefinition.packagedMedicinalProduct @*; # Package type for the product fhir:MedicinalProductDefinition.ingredient @*; # The ingredients of this medicinal # product - when not detailed in # other resources fhir:MedicinalProductDefinition.impurity @*; # Any component of the drug product # which is not the chemical entity # defined as the drug substance, or # an excipient in the drug product fhir:MedicinalProductDefinition.attachedDocument @*; # Additional documentation about the # medicinal product fhir:MedicinalProductDefinition.masterFile @*; # A master file for the medicinal # product (e.g. Pharmacovigilance # System Master File) fhir:MedicinalProductDefinition.contact @*; # A product specific contact, person # (in a role), or an organization fhir:MedicinalProductDefinition.clinicalTrial @*; # Clinical trials or studies that # this product is involved in fhir:MedicinalProductDefinition.code @*; # A code that this product is known # by, within some formal terminology fhir:MedicinalProductDefinition.name @+; # The product's name, including full # name and possibly coded parts fhir:MedicinalProductDefinition.crossReference @*; # Reference to another product, e.g. # for linking authorised to # investigational product fhir:MedicinalProductDefinition.operation @*; # A manufacturing or administrative # process for the medicinal product fhir:MedicinalProductDefinition.characteristic @*; # Key product features such as # "sugar free", "modified release" fhir:index xsd:integer? # Relative position in a list } # The product's name, including full name and possibly coded parts CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:MedicinalProductDefinition.name.productName @; # The full product name fhir:MedicinalProductDefinition.name.type @?; # Type of product name, such as # rINN, BAN, Proprietary, # Non-Proprietary fhir:MedicinalProductDefinition.name.namePart @*; # Coding words or phrases of the name fhir:MedicinalProductDefinition.name.countryLanguage @*; # Country and jurisdiction where the # name applies fhir:index xsd:integer? # Relative position in a list } # Reference to another product, e.g. for linking authorised to investigational product CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:MedicinalProductDefinition.crossReference.product @; # Reference to another product, e.g. # for linking authorised to # investigational product fhir:MedicinalProductDefinition.crossReference.type @?; # The type of relationship, for # instance branded to generic or # virtual to actual product fhir:index xsd:integer? # Relative position in a list } # A manufacturing or administrative process for the medicinal product CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:MedicinalProductDefinition.operation.type @?; # The type of manufacturing # operation e.g. manufacturing # itself, re-packaging fhir:MedicinalProductDefinition.operation.effectiveDate @?; # Date range of applicability fhir:MedicinalProductDefinition.operation.organization @*; # The organization responsible for # the particular process, e.g. the # manufacturer or importer fhir:MedicinalProductDefinition.operation.confidentialityIndicator @?; # Specifies whether this process is # considered proprietary or # confidential fhir:index xsd:integer? # Relative position in a list } # Key product features such as "sugar free", "modified release" CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:MedicinalProductDefinition.characteristic.type @; # A code expressing the type of # characteristic ( # A value for the characteristic fhir:MedicinalProductDefinition.characteristic.valueCodeableConcept @ | fhir:MedicinalProductDefinition.characteristic.valueQuantity @ | fhir:MedicinalProductDefinition.characteristic.valueDate @ | fhir:MedicinalProductDefinition.characteristic.valueBoolean @ | fhir:MedicinalProductDefinition.characteristic.valueAttachment @ )?; fhir:index xsd:integer? # Relative position in a list } # A product specific contact, person (in a role), or an organization CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:MedicinalProductDefinition.contact.type @?; # Allows the contact to be # classified, for example QPPV, # Pharmacovigilance Enquiry # Information fhir:MedicinalProductDefinition.contact.contact @; # A product specific contact, person # (in a role), or an organization fhir:index xsd:integer? # Relative position in a list } # Coding words or phrases of the name CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:MedicinalProductDefinition.name.namePart.part @; # A fragment of a product name fhir:MedicinalProductDefinition.name.namePart.type @; # Identifying type for this part of # the name (e.g. strength part) fhir:index xsd:integer? # Relative position in a list } # Country and jurisdiction where the name applies CLOSED { fhir:Element.id string?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:BackboneElement.modifierExtension @*; # Extensions that cannot be ignored # even if unrecognized fhir:MedicinalProductDefinition.name.countryLanguage.country @; # Country code for where this name # applies fhir:MedicinalProductDefinition.name.countryLanguage.jurisdiction @?; # Jurisdiction code for where this # name applies fhir:MedicinalProductDefinition.name.countryLanguage.language @; # Language code for this name fhir:index xsd:integer? # Relative position in a list } #---------------------- Data Types ------------------- # Primitive Type dateTime CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value dateTime?; # Primitive value for dateTime fhir:index xsd:integer? # Relative position in a list } # Primitive Type date CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value date?; # Primitive value for date fhir:index xsd:integer? # Relative position in a list } # Metadata about a resource CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Meta.versionId @?; # Version specific identifier fhir:Meta.lastUpdated @?; # When the resource version last # changed fhir:Meta.source @?; # Identifies where the resource # comes from fhir:Meta.profile @*; # Profiles this resource claims to # conform to fhir:Meta.security @*; # Security Labels applied to this # resource fhir:Meta.tag @*; # Tags applied to this resource fhir:index xsd:integer? # Relative position in a list } # Primitive Type code CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value code?; # Primitive value for code fhir:index xsd:integer? # Relative position in a list } # Primitive Type string CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value string MAXLENGTH 1048576?; # Primitive value for string fhir:index xsd:integer? # Relative position in a list } # A reference from one resource to another CLOSED { fhir:link IRI?; fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Reference.reference @?; # Literal reference, Relative, # internal or absolute URL fhir:Reference.type @?; # Type the reference refers to (e.g. # "Patient") fhir:Reference.identifier @?; # Logical reference, when literal # reference is not known fhir:Reference.display @?; # Text alternative for the resource fhir:index xsd:integer? # Relative position in a list } # Base Resource {a .+; fhir:Resource.id id?; # Logical id of this artifact fhir:Resource.meta @?; # Metadata about the resource fhir:Resource.implicitRules @?; # A set of rules under which this # content was created fhir:Resource.language @?; # Language of the resource content fhir:index xsd:integer? } # Time range defined by start and end date/time CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Period.start @?; # Starting time with inclusive # boundary fhir:Period.end @?; # End time with inclusive boundary, # if not ongoing fhir:index xsd:integer? # Relative position in a list } # A measured or measurable amount CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Quantity.value @?; # Numerical value (with implicit # precision) fhir:Quantity.comparator @ AND {fhir:value @fhirvs:quantity-comparator}?; # < | <= | >= | > - how to # understand the value fhir:Quantity.unit @?; # Unit representation fhir:Quantity.system @?; # System that defines coded unit form fhir:Quantity.code @?; # Coded form of the unit fhir:index xsd:integer? # Relative position in a list } # Content in a format defined elsewhere CLOSED { fhir:Element.id id?; # Unique id for inter-element # referencing fhir:Element.extension @*; # Additional content defined by # implementations fhir:Attachment.contentType @ AND {fhir:value @fhirvs:mimetypes}?; # Mime type of the content, with # charset etc. fhir:Attachment.language @?; # Human language of the content # (BCP-47) fhir:Attachment.data @?; # Data inline, base64ed fhir:Attachment.url @?; # Uri where the data can be found fhir:Attachment.size @?; # Number of bytes of content (if url # provided) fhir:Attachment.hash @?; # Hash of the data (sha-1, base64ed) fhir:Attachment.title @?; # Label to display in place of the # data fhir:Attachment.creation @?; # Date attachment was first created fhir:index xsd:integer? # Relative position in a list } # Primitive Type uri CLOSED { fhir:Element.id string?; # xml:id (or equivalent in JSON) fhir:Element.extension @*; # Additional content defined by # implementations fhir:value uri?; # Primitive value for uri fhir:index xsd:integer? # Relative position in a list } # Optional Extensions Element CLOSED { fhir:Element.id id?; fhir:Element.extension @*; fhir:Extension.url uri; ( fhir:Extension.valueBase64Binary @ | fhir:Extension.valueBoolean @ | fhir:Extension.valueCanonical @ | fhir:Extension.valueCode @ | fhir:Extension.valueDate @ | fhir:Extension.valueDateTime @ | fhir:Extension.valueDecimal @ | fhir:Extension.valueId @ | fhir:Extension.valueInstant @ | fhir:Extension.valueInteger @ | fhir:Extension.valueMarkdown @ | fhir:Extension.valueOid @ | fhir:Extension.valuePositiveInt @ | fhir:Extension.valueString @ | fhir:Extension.valueTime @