{
  "resourceType": "StructureDefinition",
  "id": "shr-core-Timing",
  "text": {
    "status": "generated",
    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n  <p><b>SHR Timing Profile</b></p>\n  <p>A timing schedule that specifies an event that may occur multiple times. Timing offers a choice of multiple OccurrenceTime (used is used to specify specific times), or recurrence patterns.</p>\n  <p><b>SHR Mapping Summary</b></p>\n  <p><pre>shr.core.Timing maps to Timing:\n  OccurrenceTime maps to event\n  TimingCode maps to code\n  EventDuration.DurationRange.LowerBound maps to repeat.duration\n  EventDuration.DurationRange.UpperBound maps to repeat.durationMax\n  EventDuration.DurationRange.LowerBound.Quantity.Units.Coding.code maps to repeat.durationUnit\n  RecurrencePattern.RecurrenceInterval.Duration maps to repeat.period\n  constrain repeat.periodMax to 0..0\n  RecurrencePattern.RecurrenceInterval.Duration.Units.Coding.code maps to repeat.periodUnit\n  RecurrencePattern.DayOfWeek maps to repeat.dayOfWeek\n  RecurrencePattern.TimeOfDay maps to repeat.timeOfDay\n  RecurrencePattern.DailyLifeEvent maps to repeat.when\n  RecurrencePattern.LifeEventOffset maps to repeat.offset\n  RecurrencePattern.CountPerInterval.MinCount maps to repeat.frequency\n  RecurrencePattern.CountPerInterval.MaxCount maps to repeat.frequencyMax\n</pre></p>\n</div>"
  },
  "url": "http://standardhealthrecord.org/fhir/StructureDefinition/shr-core-Timing",
  "identifier": [
    {
      "system": "http://standardhealthrecord.org",
      "value": "shr.core.Timing"
    }
  ],
  "version": "0.0.1",
  "name": "SHR Timing Profile",
  "status": "draft",
  "date": "2017-12-20",
  "publisher": "The MITRE Corporation: Standard Health Record Collaborative",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "http://standardhealthrecord.org"
        }
      ]
    }
  ],
  "description": "A timing schedule that specifies an event that may occur multiple times. Timing offers a choice of multiple OccurrenceTime (used is used to specify specific times), or recurrence patterns.",
  "purpose": "Need to able to track proposed timing schedules. There are several different ways to do this: one or more specified times, a simple rules like three times a day, or  before/after meals.",
  "fhirVersion": "3.0.1",
  "mapping": [
    {
      "identity": "v2",
      "uri": "http://hl7.org/v2",
      "name": "HL7 v2 Mapping"
    },
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    }
  ],
  "kind": "complex-type",
  "abstract": false,
  "type": "Timing",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Timing",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Timing:shr-core-Timing",
        "path": "Timing",
        "short": "SHR Timing Profile",
        "definition": "A timing schedule that specifies an event that may occur multiple times. Timing offers a choice of multiple OccurrenceTime (used is used to specify specific times), or recurrence patterns."
      },
      {
        "id": "Timing:shr-core-Timing.extension:recurrencerange",
        "path": "Timing.extension",
        "sliceName": "recurrencerange",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "description": "Extensions are always sliced by (at least) url",
          "rules": "open"
        },
        "definition": "The start and end of the overall recurrence pattern in terms of dates/times or in terms of number of repeats. Could also be an event, such as when all doses are taken.",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": "http://standardhealthrecord.org/fhir/StructureDefinition/shr-core-RecurrenceRange-extension"
          }
        ]
      },
      {
        "id": "Timing:shr-core-Timing.repeat",
        "path": "Timing.repeat"
      },
      {
        "id": "Timing:shr-core-Timing.repeat.periodMax",
        "path": "Timing.repeat.periodMax",
        "min": 0,
        "max": "0"
      },
      {
        "id": "Timing:shr-core-Timing.code",
        "path": "Timing.code",
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "TimingAbbreviation"
            }
          ],
          "strength": "extensible",
          "description": "Code for a known / defined timing pattern.",
          "valueSetReference": {
            "reference": "http://hl7.org/fhir/ValueSet/timing-abbreviation"
          }
        }
      }
    ]
  }
}