USDA / USDA-APIs

Do you have feedback, ideas, or questions for USDA APIs? Use this repository's Issue Tracker to join the discussion.
www.usda.gov/developer
107 stars 16 forks source link

Reg: Foodportion in new API #89

Open manijcgvak opened 4 years ago

manijcgvak commented 4 years ago

In new API, most of the ingredient does not have the foodPortion. Our application takes that as the basic measure/units, without this some of the ingredient are not working

Example:

Food Portion for FDCID : 174943 is

"foodPortions": [ { "id": 95227, "measureUnit": { "id": 9999, "name": "undetermined", "abbreviation": "undetermined" }, "modifier": "oz", "gramWeight": 28.35000000, "amount": 1.00000000, "sequenceNumber": 1 }, { "id": 95228, "measureUnit": { "id": 9999, "name": "undetermined", "abbreviation": "undetermined" }, "modifier": "cake", "gramWeight": 42.00000000, "dataPoints": 8, "amount": 1.00000000, "sequenceNumber": 2 } ]

where food portion for FDCID : 575154

"foodPortions": []

May I know why??

littlebunch commented 4 years ago

@manijcgvak Thanks. Am waiting for a response from the developers on this.

SteveCEms commented 4 years ago

There is this for 575154: "servingSize": 354, "servingSizeUnit": "ml", "householdServingFullText": "12 ONZ", which I default to if there are no foodPortions. Note that 12 onz is not a normal liquid unit. You and I know that it means fluid oz, but there are several other liquid measurement units for fluid oz. I default showing onz in this case.

I determined that 174943 is an SR Legacy food. It has been converted to a standard portion size by the USDA researchers and is unchanged from the old database except for the new fdcId. Whereas, the 575154 food item data is sourced by a manufacturer who is solely responsible for the information in the database. That is one of the reasons why ONZ is not a true volume unit, it comes directly from the manufacturer.

I am a user of the FDC database and prior database and am not associated with the USDA.

KyleMcKillop-USDA commented 4 years ago

Each food datatype will have a different relationship with portions.
Branded food products do not have portions, only serving sizes. You can find serving size information for branded as @SteveCEms mentioned in the last post.

@SteveCEms is also correct in his conclusions for SR Legacy foods, as an attempt to allow for standardization in the data-set moving SR Legacy foods to FDC. The modifier field was used for when the portion sizes did not have a standardization applied. So you can combine amount and modifier to get the portion measurements recorded for SR Legacy.