OHDSI Home | Forums | Wiki | Github

Concept id 38004515, Hospital, rolls up to both 9201 Inpatient Visit and 9202 Outpatient Visit

Concept id 38004515, Hospital, belongs to ‘Medicare Specialty’ vocabulary, but its domain id is ‘Visit’ and it is a standard concept, which means it is valid to use it as a Visit_Concept_id. Concept 38004515 rolls up to both 9201 Inpatient Visit and 9202 Outpatient Visit in Concept_ancestor. Is this acceptable?

Other visit domain concept that rollup to both Inpatient and Outpatient visits are:
38004290, Military General Acute Care Hospital
38004291, Military General Acute Care Operational (Transportable) Hospital
38004288, Military Hospital

Well, the problem is that there are outpatient departments in a hospital, not just inpatient. Now what?

1 Like

Remove 38004515, Hospital, from visit domain? There is 8756, ‘Outpatient Hospital’ and 8717, ‘Inpatient Hospital’.
Let 38004290, Military General Acute Care Hospital; 38004291, Military General Acute Care Operational (Transportable) Hospital; 38004288, Military Hospital; roll up to Inpatient visit?

Try @MPhilofsky. Probably not going to fly. But we should discourage using it.

We don’t have a need for it. The code comes from the Medicare Specialty vocabulary and is a “Medicare provider/supplier specialty codes”. It is not in our source Visit data. I believe this code is more relevant to the Provider Specialty domain than the Visit domain. A wise man once said, Visits and Care Sites don’t have specialties :slight_smile: Isn’t that true, @Christian_Reich?

I thought the goal of the Visit Occurrence table was to distinguish Inpatient visit from Outpatient visit, etc. to be used as a proxy for the severity of disease??? Or am I way off, @Christian_Reich? I haven’t been with the community since its inception. And I think inpatient versus outpatient might still be useful for folks. If yes, each Visit concept_id should have one parent or be the “top dog”. And the top dogs shouldn’t be ambiguous.

Maybe we should put 38004515, ‘Hospital’ on the top of the hierarchy and make 8756, ‘Outpatient Hospital’ and 8717, ‘Inpatient Hospital’ it descendants? 38004515, ‘Hospital’ is good in some cases for custom mapping, such as source_code = ‘Clinic’ and we don’t really know was it ER or One-day visit or whatever.

Sounds good.

‘Hospital’ concept is still might be used as a target for mapping of some uncertain source_concepts and to improve the differentiation of hospital and home visits.

Isn’t it always out-patient? Like Independent Clinic or Ambulatory Clinic/Center?

right, not the best use case example from me, sorry

BTW Here is a query to get the Visit hierarchy:
WITH top_level
(SELECT concept_id, concept_name
FROM concept
LEFT JOIN concept_ancestor ON concept_id=descendant_concept_id
AND ancestor_concept_id!=descendant_concept_id
WHERE domain_id=‘Visit’ AND standard_concept=‘S’
AND ancestor_concept_id IS NULL
SELECT top_level.concept_id, top_level.concept_name, descendant.concept_id, descendant.concept_name
FROM concept_ancestor
JOIN top_level ON top_level.concept_id = ancestor_concept_id
JOIN concept descendant ON descendant.concept_id = descendant_concept_id
WHERE descendant.domain_id = ‘Visit’ and descendant.standard_concept = ‘S’;


Couple points.

  • Usually when people say “hospital” they mean “inpatient hospital”. Where patients have a bed, and the providers come to them 24/7.
  • If we don’t like “Hospital” we can just drop it, and then ETLers have to figure it out.

Making “Hospital” the parent, rather than the child, of “Inpatient Hospital” and “Outpatient Hospital” is actually the more correct approach, except you are pushing the problem from one place to another: “Inpatient Hospital” then will have two parents: “Inpatient Visit” and “Hospital”. The latter will also be a “top dog”. Which means if you roll up you will always get things counted in both. Ugly as well.

Deprecate concept 38004515, Hospital.

1 Like
  1. Does this statement strong enough to put ‘Maps to’ from ‘Hospital’ to ‘Inpatient hospital’? :slight_smile:
  1. Do they have a lot of tricks for that? They would need to resolve the [1] question, but every single day.

It becomes a statistical challenge, not the vocabulary one.
Ok, let’s keep it separately. Like we do for:

concept_id concept_name domain_id vocabulary_id concept_class_id standard_concept concept_code valid_start_date valid_end_date
32759 Home isolation Visit Visit Visit S OMOP4873970 1970-01-01 2099-12-31
32761 Person Under Investigation (PUI) Visit Visit Visit S OMOP4873972 1970-01-01 2099-12-31
262 Emergency Room and Inpatient Visit Visit Visit Visit S ERIP 1970-01-01 2099-12-31
5083 Telehealth Visit CMS Place of Service Visit S 02 2016-01-01 2099-12-31
38004193 Case Management Visit Visit NUCC Visit S 251B00000X 1970-01-01 2099-12-31
38004311 Inpatient Hospice Visit NUCC Visit S 315D00000X 1970-01-01 2099-12-31

There are some more people in the boat. Deprecate them all?

concept_id concept_name
38004288 Military Hospital
38004290 Military General Acute Care Hospital
38004291 Military General Acute Care Operational (Transportable) Hospital

They would become descendant to “Inpatient hospital”.

What is that list?

The Visits without any hierarchical relationships.

Got it.

So, @MPhilofsky: You and your WG is probably the best to answer the question: Can you distinguish for inpatient and outpatient hospital visits, or do we need to keep the generic hospital?


Up until the recent addition of more visit_concept_ids, the ETL was required to distinguish between IP, OP, ER, LTC and ER to IP. Otherwise, map to concept_id = 0.

Back to my question earlier in this thread:

If yes, then we should not have the generic “Hospital”. We should still have the top dogs be the original 5 and have all the other concepts be children.

And I will bring this up in the WG after we sort out the covid coding questions which are more urgent. But, seeing how

And generally won’t be attached to a visit. But, I will check with other sites.

I haven’t been too involved in the conversations, but is there a reason why PUI (32761) is a visit as opposed to an observation about a patient during a visit?

I found my answer here for quarantined individuals. I still think they might be observation or an attribute of a visit_detail. I do think “Isolation in inpatient setting” (32760) makes sense. PUI is a temporary state while waiting for the test result.

Observation table doesn’t capture the end_date, but being under investigation is an ongoing process.
We decided not to make it a condition status (although, it is) since PUI definition also implies person who
was under investigation but tested negative for the virus. So even after the negative result is obtained, you can extend the duration of Visit_occurence (let’s say till the end of the observation period), but not the duration of a Condition_occurence. We think it might be better managed in ETL and studies being a Visit.

Although there could be more than one visit in one day, you can easily jump to visit_detail and use 32761 ‘Person Under Investigation (PUI)’ as visit_detail_concept_id. But what is the reason?

And this is where the problem is. People with claims data will look at us for help on what to classify this at: Inpatient or outpatient hospital. We might take a look at this in the context of ICU visits that @Gowtham_Rao is checking out: Is there a way to discern it from the procedures.

Because of of the duration @Alexdavv brought up, and the special status. Remember, Visits are settings in which healthcare is administered, which are defined by 1) does the patient come to a specific healthcare site, or does the provider come to the patient, 2) is the patient at the site permanently (essentially in a bed overnight) or not and 3) is the service permanent or not. If none of these happen the patient is at home, which is by definition is not a Visit. ICU is the other extreme. PUI is at home, but with the healthcare system standing by watching. So, “Home isolation” and “PUI” would be children of a “Home Visit”, if such a thing existed.