OHDSI Home | Forums | Wiki | Github

CPT4.jar doesn't import all concepts?

I ran the CPT4 JAR file (java -jar cpt4.jar 5) to import CPT concepts, but it only downloaded 14,579 records. There are 867 concepts missing in the final CONCEPT.CSV file. It seems those CPT codes after 2015-05-11 are not getting downloaded from the APIs. @Christian_Reich @gregk Any thoughts?

Another quick question: Is VALID_START_DATE representing the date that the code was added to OMOP vocabulary or the date that the code became effective?

Thanks!

1 Like

Hi, @abedtash_hamed,

Our team is already working on fixing this.

VALID_START_DATE is the date when code was added to the source vocabulary itself, in another words, yes, when the concept became effective.

Hi @Dymshyts Thanks! Please keep us posted when it is fixed. Much appreciated!

Regarding VALID_START_DATE, I asked the question because the valid start and end dates in the OMOP vocabulary do not exactly match with Optum code book. They are off from 1 to 31 months in case of CPT codes. For example, 0213T was implemented on 2010-01-01 according to AMA (page 4) and Optum code book, but it has the valid start date of 2011-05-05. There are many other examples. I was wondering from what source we are populating the dates.

Thanks!

We use UMLS as a source,
and UMLS doesn’t give us concept “birthday” for a lot of concepts,
so for them we use the release date of version where this concept was added.

So it’s almost the date when the concept became effective. Anyway, nobody will use the concept, if the file with it wasn’t released yet:)

@Dymshyts That’s true :smile: It may not make any difference, but the dates are important to some of our internal processes, though. Thanks for the clarification!

@Dymshyts Just checking in if this issue with CPT4.jar has been fixed. Thanks!

Yes, it has been fixed

@Dymshyts @maria.pozhidaeva The problem just came up again. I downloaded the vocabulary yesterday, and tried to get CPT concepts through the JAR file, but there are some with no concept names. I suspect these are the newly “revived” outdated CPT codes that might be missing on UMLS API (not sure). Any suggestions?

@abedtash_hamed - Good day,
yesterday we updated cpt4.jar and instructions for using it. Please check email or readme file (in downloaded zip) - is there a mention about a personal account of UMLS and new parameters of jar running(umls-user & umls-password)?

If no, archive and restore your bundle and try again to run cpt4 with new arguments (an example is in the “link for downloading” email or readme file).

Could you report the result after a new attempt please?

BR

@maria.pozhidaeva Thanks! No, there was not information regarding UMLS credentials. I’ll try the new cpt4 jar, and will let you know of the results.

@maria.pozhidaeva I ran the new JAR file, but didn’t resolve the problem. I paste few of the records here for your review:

42732169	Radical resection of bone tumor, proximal humerus; with autograft (includes obtaining graft)	Procedure	CPT4	CPT4	S	23221	19700101	20100403	
42732170	Radical resection for tumor, shaft or distal humerus; with autograft (includes obtaining graft)	Procedure	CPT4	CPT4	S	24151	19700101	20100403	
42732165	Radical resection for tumor, radial head or neck; with autograft (includes obtaining graft)	Procedure	CPT4	CPT4	S	24153	19700101	20100403	
42732114	Radical resection of bone tumor, proximal humerus; with prosthetic replacement	Procedure	CPT4	CPT4	S	23222	19700101	20100403	
42732422		Procedure	CPT4	CPT4	S	21041	19700101	20030331	
42732491	Strapping; low back	Procedure	CPT4	CPT4	S	29220	19700101	20100403	
2722217		Procedure	CPT4	CPT4	S	56343	19700101	20130508	
2722216		Procedure	CPT4	CPT4	S	56342	19700101	20130508	
42732301		Procedure	CPT4	CPT4	S	90871	19700101	20060213	
2722219		Procedure	CPT4	CPT4	S	56345	19700101	20130508	
2722218		Procedure	CPT4	CPT4	S	56344	19700101	20130508	
2722221		Procedure	CPT4	CPT4	S	56350	19700101	20130508	
2722220		Procedure	CPT4	CPT4	S	56349	19700101	20130508	
2722223		Procedure	CPT4	CPT4	S	56352	19700101	20130508	
2722222		Procedure	CPT4	CPT4	S	56351	19700101	20130508	
2722209		Procedure	CPT4	CPT4	S	56313	19700101	20130508	
2722208		Procedure	CPT4	CPT4	S	56310	19700101	20130508	
2722211		Procedure	CPT4	CPT4	S	56316	19700101	20130508

@abedtash_hamed - yes, I reproduced the problem too.
But I hope it has been already fixed - please try again to create a new bundle with you vocabularies set and run cpt4.jar.

We apologize for the inconvenience and thank you for the feedback!

BR

@maria.pozhidaeva Thanks for the update. I’m going to try it out this afternoon. will let you know of the result.

@maria.pozhidaeva It worked this time. Thanks!

@maria.pozhidaeva We got errors when loading CONCEPT table to db. Apparently, JAR file couldn’t get concept_name for these concepts:

2109972         Procedure       CPT4    CPT4    S       54512   19700101        20991231
2110403         Procedure       CPT4    CPT4    S       61070   19700101        20991231
2110708         Procedure       CPT4    CPT4    S       63282   19700101        20991231
2110709         Procedure       CPT4    CPT4    S       63283   19700101        20991231
2110710         Procedure       CPT4    CPT4    S       63285   19700101        20991231
2110711         Procedure       CPT4    CPT4    S       63286   19700101        20991231
2110712         Procedure       CPT4    CPT4    S       63287   19700101        20991231
2110713         Procedure       CPT4    CPT4    S       63290   19700101        20991231
2110714         Procedure       CPT4    CPT4    S       63295   20050119        20991231
2211363         Procedure       CPT4    CPT4    S       71022   19700101        20991231

Hello,
hmm, I can’t reproduce - all concept_name exist. I propose the external UMLS-service doesn’t return this names.
Is this concept set from a final concept.csv, right?

BR

Yes, these showed up in the CONCEPT file after JAR process. They were few, so just filled in the concept names from Athena. I may run it again today to see if it was just one-off incidence. Probably the API didn’t work well at that moment. I’ll let you know.

I’m not sure how it works internally, but I ran it once and it got all but 1500 or so concepts. When I ran it a second time, it appeared to get all concepts again and did eventually finish, but took a long time. If this is caused by intermittent outages or timeouts in the UMLS service, you could save some time by changing CPT4.jar to read the CONCEPT.csv file and only call the service for the missing lines. Just a thought.

t