Argonaut Provider Directory CI Build

This page is part of the Argonaut Provider Directory Guide (v0.1.0: Release 1 Draft) based on FHIR v1.9.0. The current version which supercedes this version is 1.0.0. For a full list of available versions, see the Directory of published versions

D.4.1 StructureDefinition-argo-organization

This profile sets minimum expectations for the Organization resource to searching for and fetching a Organization associated with a patient or provider. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile.

Mandatory Data Elements and Terminology

The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each Organization must have:

  1. A name
  2. An identifier
  3. A status of the organization
  4. A list of contact information
  5. Endpoint information

Profile specific implementation guidance:

  • A server SHALL support the _include parameter when retrieving a Location resource.

D.4.1.1 Formal Views of Profile Content

The official URL for this profile is:

http://fhir.org/guides/argonaut-pd/StructureDefinition/argo-organization

This profile builds on Organization.

This profile was published on Wed Nov 09 00:00:00 AEDT 2016 as a draft by Argonaut Project.

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

Complete Summary of the Mandatory Requirements

  1. At least one identifier in Organization.identifier
    • NPI preferred
    • Tax id is allowed
    • Local id is allowed in addition to ‘authoritative’ identifier
  2. One status in Organization.active
  3. One name in Organization.name (MAY have additional names in Organization.alias)
  4. At least one contact in Organization.telecom
  5. At least one address in Organization.address
  6. At least one reference to Endpoint resource in Organization.endpoint
NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization 0..*Argonaut Provider Directory Organization
... identifier S1..*Identifier
.... system S1..1uriExample' General': NPI preferred, Tax id is allowed, Local id is allowed in addition to 'authoritative' identifier
... active S1..1boolean
... name S1..1string
... telecom S1..*ContactPoint
... address S1..*Address
.... line S0..*string
.... city S0..1string
.... state S0..1stringBinding: USPS Two Letter Alphabetic Codes (required)
.... postalCode S0..1stringUS Zip Codes
... endpoint S0..*Reference(http://fhir.org/guides/argonaut-pd/StructureDefinition-argo-endpoint)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization I0..*Argonaut Provider Directory Organization
... id ∑0..1idLogical id of this artifact
... meta ∑0..1MetaMetadata about the resource
... implicitRules ?!∑0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SI1..*IdentifierIdentifies this organization across multiple systems
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... use ?!∑0..1codeusual | official | temp | secondary (If known)
Binding: IdentifierUse (required)
.... type ∑0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
.... system S1..1uriThe namespace for the identifier
Example' General': http://www.acme.com/identifiers/patient or urn:ietf:rfc:3986 if the Identifier.value itself is a full uri
Example' General': NPI preferred, Tax id is allowed, Local id is allowed in addition to 'authoritative' identifier
.... value ∑0..1stringThe value that is unique
Example' General': 123456
.... period ∑0..1PeriodTime period when id is/was valid for use
.... assigner ∑0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!S1..1booleanWhether the organization's record is still in active use
... type ∑0..1CodeableConceptKind of organization
Binding: OrganizationType (example)
... name SI1..1stringName used for the organization
... alias 0..*stringA list of alternate names that the organization is known as, or was known as in the past
... telecom SI1..*ContactPointA contact detail for the organization
... address SI1..*AddressAn address for the organization
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... use ?!∑0..1codehome | work | temp | old - purpose of this address
Binding: AddressUse (required)
Example' General': home
.... type ∑0..1codepostal | physical | both
Binding: AddressType (required)
Example' General': both
.... text ∑0..1stringText representation of the address
Example' General': 137 Nowhere Street, Erewhon 9132
.... line S0..*stringStreet name, number, direction & P.O. Box etc.
Example' General': 137 Nowhere Street
.... city S0..1stringName of city, town etc.
Example' General': Erewhon
.... district ∑0..1stringDistrict name (aka county)
Example' General': Madison
.... state S0..1stringSub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (required)
.... postalCode S0..1stringUS Zip Codes
Example' General': 9132
.... country ∑0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period ∑0..1PeriodTime period when address was/is in use
Example' General': {"start":"2010-03-23","end":"2010-07-01"}
... partOf ∑0..1Reference(Organization)The organization of which this organization forms a part
... contact I0..*BackboneElementContact for the organization for a certain purpose
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!∑0..*ExtensionExtensions that cannot be ignored
.... purpose 0..1CodeableConceptThe type of contact
Binding: ContactEntityType (extensible)
.... name 0..1HumanNameA name associated with the contact
.... telecom 0..*ContactPointContact details (telephone, email, etc.) for a contact
.... address 0..1AddressVisiting or postal addresses for the contact
... endpoint S0..*Reference(http://fhir.org/guides/argonaut-pd/StructureDefinition-argo-endpoint)Technical endpoints providing access to services operated for the organization

doco Documentation for this format

Complete Summary of the Mandatory Requirements

  1. At least one identifier in Organization.identifier
    • NPI preferred
    • Tax id is allowed
    • Local id is allowed in addition to ‘authoritative’ identifier
  2. One status in Organization.active
  3. One name in Organization.name (MAY have additional names in Organization.alias)
  4. At least one contact in Organization.telecom
  5. At least one address in Organization.address
  6. At least one reference to Endpoint resource in Organization.endpoint

Differential View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization 0..*Argonaut Provider Directory Organization
... identifier S1..*Identifier
.... system S1..1uriExample' General': NPI preferred, Tax id is allowed, Local id is allowed in addition to 'authoritative' identifier
... active S1..1boolean
... name S1..1string
... telecom S1..*ContactPoint
... address S1..*Address
.... line S0..*string
.... city S0..1string
.... state S0..1stringBinding: USPS Two Letter Alphabetic Codes (required)
.... postalCode S0..1stringUS Zip Codes
... endpoint S0..*Reference(http://fhir.org/guides/argonaut-pd/StructureDefinition-argo-endpoint)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Organization I0..*Argonaut Provider Directory Organization
... id ∑0..1idLogical id of this artifact
... meta ∑0..1MetaMetadata about the resource
... implicitRules ?!∑0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SI1..*IdentifierIdentifies this organization across multiple systems
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... use ?!∑0..1codeusual | official | temp | secondary (If known)
Binding: IdentifierUse (required)
.... type ∑0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
.... system S1..1uriThe namespace for the identifier
Example' General': http://www.acme.com/identifiers/patient or urn:ietf:rfc:3986 if the Identifier.value itself is a full uri
Example' General': NPI preferred, Tax id is allowed, Local id is allowed in addition to 'authoritative' identifier
.... value ∑0..1stringThe value that is unique
Example' General': 123456
.... period ∑0..1PeriodTime period when id is/was valid for use
.... assigner ∑0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!S1..1booleanWhether the organization's record is still in active use
... type ∑0..1CodeableConceptKind of organization
Binding: OrganizationType (example)
... name SI1..1stringName used for the organization
... alias 0..*stringA list of alternate names that the organization is known as, or was known as in the past
... telecom SI1..*ContactPointA contact detail for the organization
... address SI1..*AddressAn address for the organization
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... use ?!∑0..1codehome | work | temp | old - purpose of this address
Binding: AddressUse (required)
Example' General': home
.... type ∑0..1codepostal | physical | both
Binding: AddressType (required)
Example' General': both
.... text ∑0..1stringText representation of the address
Example' General': 137 Nowhere Street, Erewhon 9132
.... line S0..*stringStreet name, number, direction & P.O. Box etc.
Example' General': 137 Nowhere Street
.... city S0..1stringName of city, town etc.
Example' General': Erewhon
.... district ∑0..1stringDistrict name (aka county)
Example' General': Madison
.... state S0..1stringSub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (required)
.... postalCode S0..1stringUS Zip Codes
Example' General': 9132
.... country ∑0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period ∑0..1PeriodTime period when address was/is in use
Example' General': {"start":"2010-03-23","end":"2010-07-01"}
... partOf ∑0..1Reference(Organization)The organization of which this organization forms a part
... contact I0..*BackboneElementContact for the organization for a certain purpose
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!∑0..*ExtensionExtensions that cannot be ignored
.... purpose 0..1CodeableConceptThe type of contact
Binding: ContactEntityType (extensible)
.... name 0..1HumanNameA name associated with the contact
.... telecom 0..*ContactPointContact details (telephone, email, etc.) for a contact
.... address 0..1AddressVisiting or postal addresses for the contact
... endpoint S0..*Reference(http://fhir.org/guides/argonaut-pd/StructureDefinition-argo-endpoint)Technical endpoints providing access to services operated for the organization

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON, CSV), Schema: XML Schematron

 

D.4.1.2 Quick Start

Below is an overview of the required search and read operations.

Summary of Argonaut Search Criteria for StructureDefinition-argo-organization


Clients

  • A client has connected to a server and fetched an organization by identifier using GET [base]/Organization?identifier=[system]|[code]
  • A client has connected to a server and fetched an organization by name usingGET [base]/Organization?name=[string]
  • A client has connected to a server and fetched an organization by address using GET [base]/Organization?address=[string]

Servers

  • A server is capable of returning an organization by identifier using GET [base]/Organization?identifier=[system]|[code]
  • A server is capable of returning an organization by name using GET [base]/Organization?name=[string]
  • A server is capable of returning an organization by address using GET [base]/Organization?address=[string]

  • A server has ensured that every API request includes a valid Authorization token, supplied via:Authorization: Bearer {server-specific-token-here}
  • A server has rejected any unauthorized requests by returning an HTTP 401 Unauthorized response code.

**GET [base]/Organization?identifier=[system] [code]**

Support: Mandatory

Implementation Notes: Search based on Organization identifier (how to search by token).

Response Class:

  • (Status 200): successful operation
  • (Status 400): invalid parameter
  • (Status 401/4xx): unauthorized request
  • (Status 403): insufficient scope

Example:

GET https://fhir-open-api-dstu2.smarthealthit.org/Organization?name=Health


GET [base]/Organization?name=[string]

Support: Mandatory

Implementation Notes: Search based on text name (how to search by string).

Response Class:

  • (Status 200): successful operation
  • (Status 400): invalid parameter
  • (Status 401/4xx): unauthorized request
  • (Status 403): insufficient scope

Example:

GET https://fhir-open-api-dstu2.smarthealthit.org/Organization?name=Health


GET [base]/Organization?address=[string]

Support: Mandatory

Implementation Notes: Search based on text address (how to search by string).

SHOULD also support the search parameters:

  • address-city
  • address-state
  • address-postalcode

Response Class:

  • (Status 200): successful operation
  • (Status 400): invalid parameter
  • (Status 401/4xx): unauthorized request
  • (Status 403): insufficient scope

Example:

GET https://fhir-open-api-dstu2.smarthealthit.org/Organization?address=Arbor

GET https://fhir-open-api-dstu2.smarthealthit.org/Organization?address-postalcode=48104