<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="device-registration" />
  <url value="https://udi.anvisa.gov.br/fhir/StructureDefinition/UdiData" />
  <version value="1.0.0" />
  <name value="UdiData" />
  <title value="UDI Data" />
  <description value="Representation of a device record instance in the UDI system" />
  <status value="draft" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="DeviceDefinition" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/DeviceDefinition" />
  <derivation value="constraint" />
  <differential>
    <element id="DeviceDefinition">
      <path value="DeviceDefinition" />
      <short value="Representation of a device registration instance in the UDI system" />
    </element>
    <element id="DeviceDefinition.extension">
      <path value="DeviceDefinition.extension" />
      <min value="1" />
    </element>
    <element id="DeviceDefinition.extension:refurbisherReprocessingCompany">
      <path value="DeviceDefinition.extension" />
      <sliceName value="refurbisherReprocessingCompany" />
      <short value="Refurbisher/Reprocessing Company's information" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://udi.anvisa.gov.br/fhir/StructureDefinition/RefurbisherReprocessingCompany" />
      </type>
    </element>
    <element id="DeviceDefinition.extension:legalManufacturer">
      <path value="DeviceDefinition.extension" />
      <sliceName value="legalManufacturer" />
      <short value="Legal Manufacturer's information" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://udi.anvisa.gov.br/fhir/StructureDefinition/LegalManufacturer" />
      </type>
    </element>
    <element id="DeviceDefinition.description">
      <path value="DeviceDefinition.description" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.identifier">
      <path value="DeviceDefinition.identifier" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier">
      <path value="DeviceDefinition.udiDeviceIdentifier" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
      <max value="2" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier">
      <path value="DeviceDefinition.udiDeviceIdentifier" />
      <sliceName value="udiDeviceIdentifier" />
      <short value="UDI-DI of the device" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.extension">
      <path value="DeviceDefinition.udiDeviceIdentifier.extension" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.extension:repurposingType">
      <path value="DeviceDefinition.udiDeviceIdentifier.extension" />
      <sliceName value="repurposingType" />
      <short value="Identification of the type of repurposing applied to this UDI-DI's device" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://udi.anvisa.gov.br/fhir/StructureDefinition/RepurposingType" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.deviceIdentifier">
      <path value="DeviceDefinition.udiDeviceIdentifier.deviceIdentifier" />
      <short value="The UDI-DI number associated with the device" />
      <maxLength value="25" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.issuer">
      <path value="DeviceDefinition.udiDeviceIdentifier.issuer" />
      <short value="The UDI-DI's issuer" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/UDIIssuer" />
      </binding>
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.jurisdiction">
      <path value="DeviceDefinition.udiDeviceIdentifier.jurisdiction" />
      <short value="The jurisdiction applied. By standard it's mandatory, but in this case will be ignored. Can be filled with the same value as the &quot;issuer&quot; field" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.marketDistribution">
      <path value="DeviceDefinition.udiDeviceIdentifier.marketDistribution" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.marketDistribution.marketPeriod.start">
      <path value="DeviceDefinition.udiDeviceIdentifier.marketDistribution.marketPeriod.start" />
      <short value="Specify the date from which the company wishes the data to be made public. If left blank, the system will consider the submission date to publish the submitted information" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.marketDistribution.marketPeriod.end">
      <path value="DeviceDefinition.udiDeviceIdentifier.marketDistribution.marketPeriod.end" />
      <short value="Specify the date when the product will be discontinued, no longer offered on the market" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifier.marketDistribution.subJurisdiction">
      <path value="DeviceDefinition.udiDeviceIdentifier.marketDistribution.subJurisdiction" />
      <short value="National jurisdiction. By standard it's mandatory, but in this case will be ignored. Can be filled with the same value as the &quot;issuer&quot; field" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifierOriginal">
      <path value="DeviceDefinition.udiDeviceIdentifier" />
      <sliceName value="udiDeviceIdentifierOriginal" />
      <short value="UDI-DI of the original device who is being refurbished/reprocessed" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifierOriginal.deviceIdentifier">
      <path value="DeviceDefinition.udiDeviceIdentifier.deviceIdentifier" />
      <short value="The UDI-DI number associated with the device" />
      <maxLength value="25" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifierOriginal.issuer">
      <path value="DeviceDefinition.udiDeviceIdentifier.issuer" />
      <short value="The UDI-DI's issuer" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/UDIIssuer" />
      </binding>
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifierOriginal.jurisdiction">
      <path value="DeviceDefinition.udiDeviceIdentifier.jurisdiction" />
      <short value="The jurisdiction applied. By standard it's mandatory, but in this case will be ignored. Can be filled with the same value as the &quot;issuer&quot; field" />
    </element>
    <element id="DeviceDefinition.udiDeviceIdentifier:udiDeviceIdentifierOriginal.marketDistribution">
      <path value="DeviceDefinition.udiDeviceIdentifier.marketDistribution" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.regulatoryIdentifier">
      <path value="DeviceDefinition.regulatoryIdentifier" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
      <max value="2" />
    </element>
    <element id="DeviceDefinition.regulatoryIdentifier:premarketAuthorizationNumber">
      <path value="DeviceDefinition.regulatoryIdentifier" />
      <sliceName value="premarketAuthorizationNumber" />
      <short value="The Premarket Authorization Number seen in the Anvisa's product registration" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.regulatoryIdentifier:premarketAuthorizationNumber.type">
      <path value="DeviceDefinition.regulatoryIdentifier.type" />
      <short value="license | unit-of-use" />
      <fixedCode value="license" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/RegulatoryIdentifier|1.0.0" />
      </binding>
    </element>
    <element id="DeviceDefinition.regulatoryIdentifier:premarketAuthorizationNumber.deviceIdentifier">
      <path value="DeviceDefinition.regulatoryIdentifier.deviceIdentifier" />
      <maxLength value="11" />
    </element>
    <element id="DeviceDefinition.regulatoryIdentifier:unitOfUseNumber">
      <path value="DeviceDefinition.regulatoryIdentifier" />
      <sliceName value="unitOfUseNumber" />
      <short value="The Unit of Use (UOU) DI Number - Identifier assigned to the individual medical device where UDI is not labeled at the unit of use level" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.regulatoryIdentifier:unitOfUseNumber.type">
      <path value="DeviceDefinition.regulatoryIdentifier.type" />
      <short value="license | unit-of-use" />
      <fixedCode value="unit-of-use" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/RegulatoryIdentifier|1.0.0" />
      </binding>
    </element>
    <element id="DeviceDefinition.regulatoryIdentifier:unitOfUseNumber.deviceIdentifier">
      <path value="DeviceDefinition.regulatoryIdentifier.deviceIdentifier" />
      <patternString value="[0-9]+" />
      <maxLength value="23" />
    </element>
    <element id="DeviceDefinition.partNumber">
      <path value="DeviceDefinition.partNumber" />
      <short value="Catalog Number" />
      <maxLength value="80" />
    </element>
    <element id="DeviceDefinition.manufacturer">
      <path value="DeviceDefinition.manufacturer" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.deviceName">
      <path value="DeviceDefinition.deviceName" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="2" />
      <max value="2" />
    </element>
    <element id="DeviceDefinition.deviceName:brandName">
      <path value="DeviceDefinition.deviceName" />
      <sliceName value="brandName" />
      <short value="The Brand Name of the device (as indicated by the manufacturer)" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.deviceName:brandName.name">
      <path value="DeviceDefinition.deviceName.name" />
      <maxLength value="80" />
    </element>
    <element id="DeviceDefinition.deviceName:brandName.type">
      <path value="DeviceDefinition.deviceName.type" />
      <fixedCode value="user-friendly-name" />
    </element>
    <element id="DeviceDefinition.deviceName:tradeName">
      <path value="DeviceDefinition.deviceName" />
      <sliceName value="tradeName" />
      <short value="The Trade Name of the product (as seen in the Anvisa's regularization). This field is for query only" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.deviceName:tradeName.name">
      <path value="DeviceDefinition.deviceName.name" />
      <maxLength value="230" />
    </element>
    <element id="DeviceDefinition.deviceName:tradeName.type">
      <path value="DeviceDefinition.deviceName.type" />
      <fixedCode value="registered-name" />
    </element>
    <element id="DeviceDefinition.modelNumber">
      <path value="DeviceDefinition.modelNumber" />
      <short value="Version or model" />
      <min value="1" />
      <maxLength value="80" />
    </element>
    <element id="DeviceDefinition.classification">
      <path value="DeviceDefinition.classification" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
      <max value="3" />
    </element>
    <element id="DeviceDefinition.classification:gmdnTerm">
      <path value="DeviceDefinition.classification" />
      <sliceName value="gmdnTerm" />
      <short value="The GMDN nomenclature that characterizes the device" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.classification:gmdnTerm.type">
      <path value="DeviceDefinition.classification.type" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/GMDNTerm" />
      </binding>
    </element>
    <element id="DeviceDefinition.classification:gmdnTerm.justification">
      <path value="DeviceDefinition.classification.justification" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.classification:riskClassification">
      <path value="DeviceDefinition.classification" />
      <sliceName value="riskClassification" />
      <short value="The risk classification of the product (as seen in the Anvisa's regularization). This field is for query only" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.classification:riskClassification.type">
      <path value="DeviceDefinition.classification.type" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/RiskClassification" />
      </binding>
    </element>
    <element id="DeviceDefinition.classification:riskClassification.justification">
      <path value="DeviceDefinition.classification.justification" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.classification:anvisaNomenclature">
      <path value="DeviceDefinition.classification" />
      <sliceName value="anvisaNomenclature" />
      <short value="The Anvisa's nomenclature name (as seen in the Anvisa's regularization). This field is for query only" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.classification:anvisaNomenclature.type">
      <path value="DeviceDefinition.classification.type" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/CodeSystem/AnvisaNomenclature" />
      </binding>
    </element>
    <element id="DeviceDefinition.classification:anvisaNomenclature.justification">
      <path value="DeviceDefinition.classification.justification" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.conformsTo">
      <path value="DeviceDefinition.conformsTo" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.hasPart">
      <path value="DeviceDefinition.hasPart" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.packaging">
      <path value="DeviceDefinition.packaging" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="DeviceDefinition.packaging:primaryPackaging">
      <path value="DeviceDefinition.packaging" />
      <sliceName value="primaryPackaging" />
      <short value="Primary Packaging. Specifies the Quantity per Primary Packaging" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.packaging:primaryPackaging.identifier">
      <path value="DeviceDefinition.packaging.identifier" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.packaging:primaryPackaging.type">
      <path value="DeviceDefinition.packaging.type" />
      <short value="The identification of the primary packaging" />
      <min value="1" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/PackagingLevel" />
          <version value="1.0.0" />
          <code value="1" />
          <display value="Primary packaging" />
        </coding>
      </fixedCodeableConcept>
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/PrimaryPackagingLevel" />
      </binding>
    </element>
    <element id="DeviceDefinition.packaging:primaryPackaging.count">
      <path value="DeviceDefinition.packaging.count" />
      <short value="Quantity per Primary Packaging" />
      <min value="1" />
      <minValueInteger value="1" />
      <maxValueInteger value="999999999" />
    </element>
    <element id="DeviceDefinition.packaging:primaryPackaging.distributor">
      <path value="DeviceDefinition.packaging.distributor" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.packaging:primaryPackaging.udiDeviceIdentifier">
      <path value="DeviceDefinition.packaging.udiDeviceIdentifier" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.packaging:primaryPackaging.packaging">
      <path value="DeviceDefinition.packaging.packaging" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.packaging:higherLevelsPackaging">
      <path value="DeviceDefinition.packaging" />
      <sliceName value="higherLevelsPackaging" />
      <short value="Identification of packaging beyond the primary packaging" />
    </element>
    <element id="DeviceDefinition.packaging:higherLevelsPackaging.identifier">
      <path value="DeviceDefinition.packaging.identifier" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.packaging:higherLevelsPackaging.type">
      <path value="DeviceDefinition.packaging.type" />
      <short value="The Package Level" />
      <min value="1" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/HigherLevelsPackaging" />
      </binding>
    </element>
    <element id="DeviceDefinition.packaging:higherLevelsPackaging.count">
      <path value="DeviceDefinition.packaging.count" />
      <short value="The quantity per packaging" />
      <min value="1" />
      <minValueInteger value="1" />
      <maxValueInteger value="999999999" />
    </element>
    <element id="DeviceDefinition.packaging:higherLevelsPackaging.distributor">
      <path value="DeviceDefinition.packaging.distributor" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.packaging:higherLevelsPackaging.udiDeviceIdentifier">
      <path value="DeviceDefinition.packaging.udiDeviceIdentifier" />
      <short value="The Package UDI-DI" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.packaging:higherLevelsPackaging.packaging">
      <path value="DeviceDefinition.packaging.packaging" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.version">
      <path value="DeviceDefinition.version" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.safety">
      <path value="DeviceDefinition.safety" />
      <short value="The MRI safety status. Specify the level of product safety in an operating magnetic resonance environment" />
      <min value="1" />
      <max value="1" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/MRSafetyStatus" />
      </binding>
    </element>
    <element id="DeviceDefinition.shelfLifeStorage">
      <path value="DeviceDefinition.shelfLifeStorage" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.shelfLifeStorage.extension">
      <path value="DeviceDefinition.shelfLifeStorage.extension" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.shelfLifeStorage.extension:specialPrecautionsForStorageDescription">
      <path value="DeviceDefinition.shelfLifeStorage.extension" />
      <sliceName value="specialPrecautionsForStorageDescription" />
      <short value="Specify storage and/or handling conditions that may directly impact the product's safety and efficacy" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://udi.anvisa.gov.br/fhir/StructureDefinition/SpecialPrecautionsForStorageDescription" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="DeviceDefinition.shelfLifeStorage.type">
      <path value="DeviceDefinition.shelfLifeStorage.type" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.shelfLifeStorage.period[x]">
      <path value="DeviceDefinition.shelfLifeStorage.period[x]" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.shelfLifeStorage.specialPrecautionsForStorage">
      <path value="DeviceDefinition.shelfLifeStorage.specialPrecautionsForStorage" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.shelfLifeStorage.specialPrecautionsForStorage.text">
      <path value="DeviceDefinition.shelfLifeStorage.specialPrecautionsForStorage.text" />
      <min value="1" />
    </element>
    <element id="DeviceDefinition.languageCode">
      <path value="DeviceDefinition.languageCode" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.property">
      <path value="DeviceDefinition.property" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="DeviceDefinition.property:deviceCategory">
      <path value="DeviceDefinition.property" />
      <sliceName value="deviceCategory" />
      <short value="Specify if the product corresponds to material, implantable material, equipment, implantable equipment, IVD, or SaMD" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:deviceCategory.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="device-category" />
          <display value="Medical Device Category" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:deviceCategory.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/DeviceCategory" />
      </binding>
    </element>
    <element id="DeviceDefinition.property:singleUse">
      <path value="DeviceDefinition.property" />
      <sliceName value="singleUse" />
      <short value="Indicates if the device labeled as single-use" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:singleUse.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="single-use" />
          <display value="Device labeled as single-use" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:singleUse.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:reusableDevice">
      <path value="DeviceDefinition.property" />
      <sliceName value="reusableDevice" />
      <short value="Indicates if the device is reusable" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:reusableDevice.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="reusable-device" />
          <display value="Reusable device" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:reusableDevice.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:recommendedReprocessingCyles">
      <path value="DeviceDefinition.property" />
      <sliceName value="recommendedReprocessingCyles" />
      <short value="Specify the number of recommended reprocessing cycles" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:recommendedReprocessingCyles.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="recommended-reprocessing-cyles" />
          <display value="Number of reprocessing cycles recommended" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:recommendedReprocessingCyles.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="Quantity" />
      </type>
      <minValueQuantity>
        <value value="1" />
      </minValueQuantity>
      <maxValueQuantity>
        <value value="999999" />
      </maxValueQuantity>
    </element>
    <element id="DeviceDefinition.property:labeledAsSterile">
      <path value="DeviceDefinition.property" />
      <sliceName value="labeledAsSterile" />
      <short value="Indicates if the device is labeled as sterile" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:labeledAsSterile.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="labeled-as-sterile" />
          <display value="Device labeled as sterile" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:labeledAsSterile.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:requiresSterilization">
      <path value="DeviceDefinition.property" />
      <sliceName value="requiresSterilization" />
      <short value="Indicates if the device requires sterilization before use" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:requiresSterilization.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="requires-sterilization" />
          <display value="Requires sterilization before use" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:requiresSterilization.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:sterilizationMethod">
      <path value="DeviceDefinition.property" />
      <sliceName value="sterilizationMethod" />
      <short value="Sterilization method" />
    </element>
    <element id="DeviceDefinition.property:sterilizationMethod.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="sterilization-method" />
          <display value="Sterilization Method" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:sterilizationMethod.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/SterilizationMethod" />
      </binding>
    </element>
    <element id="DeviceDefinition.property:layUse">
      <path value="DeviceDefinition.property" />
      <sliceName value="layUse" />
      <short value="Indicates if the device can be used by a lay user" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:layUse.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="lay-use" />
          <display value="Intended for use by a lay user" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:layUse.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:incorporatesAi">
      <path value="DeviceDefinition.property" />
      <sliceName value="incorporatesAi" />
      <short value="Indicates if the product incorporates AI (artificial intelligence) in any device function" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:incorporatesAi.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="incorporates-ai" />
          <display value="Incorporates Artificial Inteligence into the medical device function" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:incorporatesAi.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:combinationProduct">
      <path value="DeviceDefinition.property" />
      <sliceName value="combinationProduct" />
      <short value="Indicates if the product is associated with any pharmaceutical product that has a secondary function in the device" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:combinationProduct.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="combination-product" />
          <display value="Combination product" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:combinationProduct.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:clinicallyRelevantSizes">
      <path value="DeviceDefinition.property" />
      <sliceName value="clinicallyRelevantSizes" />
      <short value="Specify dimensional characteristics that are relevant for the product's clinical function" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:clinicallyRelevantSizes.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="clinically-relevant-sizes" />
          <display value="Clinically Relevant Sizes" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:clinicallyRelevantSizes.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="string" />
      </type>
      <maxLength value="5000" />
    </element>
    <element id="DeviceDefinition.property:batchNumber">
      <path value="DeviceDefinition.property" />
      <sliceName value="batchNumber" />
      <short value="Indicates the presence of lot or Batch Number" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:batchNumber.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="batch-number" />
          <display value="Lot or Batch Number" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:batchNumber.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:serialNumber">
      <path value="DeviceDefinition.property" />
      <sliceName value="serialNumber" />
      <short value="Indicates the presence of serial number" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:serialNumber.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="serial-number" />
          <display value="Serial Number" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:serialNumber.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:expirationDate">
      <path value="DeviceDefinition.property" />
      <sliceName value="expirationDate" />
      <short value="Indicates the presence of expiration date" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:expirationDate.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="expiration-date" />
          <display value="Expiration date" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:expirationDate.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:manufRecondReprocDate">
      <path value="DeviceDefinition.property" />
      <sliceName value="manufRecondReprocDate" />
      <short value="Indicates the presence of a Manufacture or Refurbishing/Reprocessing date" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:manufRecondReprocDate.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="manuf-recond-reproc-date" />
          <display value="Manufacture or Refurbishing/Reprocessing date" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:manufRecondReprocDate.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:samdReleaseDate">
      <path value="DeviceDefinition.property" />
      <sliceName value="samdReleaseDate" />
      <short value="Indicates the presence of SaMD release date" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:samdReleaseDate.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="samd-release-date" />
          <display value="SaMD release date" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:samdReleaseDate.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.property:samdVersion">
      <path value="DeviceDefinition.property" />
      <sliceName value="samdVersion" />
      <short value="Indicates the presence of SaMD version" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.property:samdVersion.type">
      <path value="DeviceDefinition.property.type" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/DeviceProperty" />
          <version value="1.0.0" />
          <code value="samd-version" />
          <display value="SaMD version" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.property:samdVersion.value[x]">
      <path value="DeviceDefinition.property.value[x]" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="DeviceDefinition.owner">
      <path value="DeviceDefinition.owner" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.contact">
      <path value="DeviceDefinition.contact" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
      <max value="2" />
    </element>
    <element id="DeviceDefinition.contact:urlForAdditionalInfo">
      <path value="DeviceDefinition.contact" />
      <sliceName value="urlForAdditionalInfo" />
      <short value="URL for additional information. Fill out whenever the company wants to indicate a URL where additional product information can be found (e.g., company website with product catalog or electronic instructions for use)" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.contact:urlForAdditionalInfo.system">
      <path value="DeviceDefinition.contact.system" />
      <min value="1" />
      <fixedCode value="url" />
    </element>
    <element id="DeviceDefinition.contact:urlForAdditionalInfo.value">
      <path value="DeviceDefinition.contact.value" />
      <min value="1" />
      <maxLength value="5000" />
    </element>
    <element id="DeviceDefinition.contact:urlForAdditionalInfo.use">
      <path value="DeviceDefinition.contact.use" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.contact:urlForAdditionalInfo.rank">
      <path value="DeviceDefinition.contact.rank" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.contact:urlForAdditionalInfo.period">
      <path value="DeviceDefinition.contact.period" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.contact:manufacCustomerServiceInfo">
      <path value="DeviceDefinition.contact" />
      <sliceName value="manufacCustomerServiceInfo" />
      <short value="Manufacturer’s Customer Service Contact Information (as indicated on the label)" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.contact:manufacCustomerServiceInfo.system">
      <path value="DeviceDefinition.contact.system" />
      <min value="1" />
      <fixedCode value="other" />
    </element>
    <element id="DeviceDefinition.contact:manufacCustomerServiceInfo.value">
      <path value="DeviceDefinition.contact.value" />
      <min value="1" />
      <maxLength value="5000" />
    </element>
    <element id="DeviceDefinition.contact:manufacCustomerServiceInfo.use">
      <path value="DeviceDefinition.contact.use" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.contact:manufacCustomerServiceInfo.rank">
      <path value="DeviceDefinition.contact.rank" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.contact:manufacCustomerServiceInfo.period">
      <path value="DeviceDefinition.contact.period" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.link">
      <path value="DeviceDefinition.link" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <max value="2" />
    </element>
    <element id="DeviceDefinition.link:attachedRecord">
      <path value="DeviceDefinition.link" />
      <sliceName value="attachedRecord" />
      <short value="Another registration to which this record is attached" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.link:attachedRecord.relation">
      <path value="DeviceDefinition.link.relation" />
      <fixedCoding>
        <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/RelationType" />
        <version value="1.0.0" />
        <code value="attached" />
        <display value="The current registration is being attached to another" />
      </fixedCoding>
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/AttachedRelationType" />
      </binding>
    </element>
    <element id="DeviceDefinition.link:previousRecord">
      <path value="DeviceDefinition.link" />
      <sliceName value="previousRecord" />
      <short value="A previous registration replaced by this record" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.link:previousRecord.relation">
      <path value="DeviceDefinition.link.relation" />
      <binding>
        <strength value="required" />
        <valueSet value="https://udi.anvisa.gov.br/fhir/ValueSet/PreviousRelationType" />
      </binding>
    </element>
    <element id="DeviceDefinition.note">
      <path value="DeviceDefinition.note" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.material">
      <path value="DeviceDefinition.material" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="property" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <max value="2" />
    </element>
    <element id="DeviceDefinition.material:biologicMaterial">
      <path value="DeviceDefinition.material" />
      <sliceName value="biologicMaterial" />
      <short value="Indicates if any component of the product has origins in cells, tissues, or their non-viable derivatives (without metabolism or multiplication capability) or made non-viable" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.material:biologicMaterial.substance">
      <path value="DeviceDefinition.material.substance" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/SubstanceType" />
          <version value="1.0.0" />
          <code value="biologic-material" />
          <display value="Biological tissues/cells or their derivatives" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.material:biologicMaterial.alternate">
      <path value="DeviceDefinition.material.alternate" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.material:biologicMaterial.allergenicIndicator">
      <path value="DeviceDefinition.material.allergenicIndicator" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.material:naturalLatex">
      <path value="DeviceDefinition.material" />
      <sliceName value="naturalLatex" />
      <short value="Indicates if the device is labeled as &quot;Contain natural latex. May cause allergy&quot;" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.material:naturalLatex.substance">
      <path value="DeviceDefinition.material.substance" />
      <fixedCodeableConcept>
        <coding>
          <system value="https://udi.anvisa.gov.br/fhir/CodeSystem/SubstanceType" />
          <version value="1.0.0" />
          <code value="natural-latex" />
          <display value="Natural latex" />
        </coding>
      </fixedCodeableConcept>
    </element>
    <element id="DeviceDefinition.material:naturalLatex.alternate">
      <path value="DeviceDefinition.material.alternate" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.material:naturalLatex.allergenicIndicator">
      <path value="DeviceDefinition.material.allergenicIndicator" />
      <min value="1" />
      <fixedBoolean value="true" />
    </element>
    <element id="DeviceDefinition.productionIdentifierInUDI">
      <path value="DeviceDefinition.productionIdentifierInUDI" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.guideline.extension">
      <path value="DeviceDefinition.guideline.extension" />
      <max value="1" />
    </element>
    <element id="DeviceDefinition.guideline.extension:warningDescription">
      <path value="DeviceDefinition.guideline.extension" />
      <sliceName value="warningDescription" />
      <short value="Additional critical warnings and contraindications for use" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://udi.anvisa.gov.br/fhir/StructureDefinition/WarningDescription" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="DeviceDefinition.guideline.useContext">
      <path value="DeviceDefinition.guideline.useContext" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.guideline.usageInstruction">
      <path value="DeviceDefinition.guideline.usageInstruction" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.guideline.relatedArtifact">
      <path value="DeviceDefinition.guideline.relatedArtifact" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.guideline.indication">
      <path value="DeviceDefinition.guideline.indication" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.guideline.contraindication">
      <path value="DeviceDefinition.guideline.contraindication" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.guideline.warning">
      <path value="DeviceDefinition.guideline.warning" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.guideline.intendedUse">
      <path value="DeviceDefinition.guideline.intendedUse" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.correctiveAction">
      <path value="DeviceDefinition.correctiveAction" />
      <max value="0" />
    </element>
    <element id="DeviceDefinition.chargeItem">
      <path value="DeviceDefinition.chargeItem" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>