ReproNim / simple2_NIDM_examples

ReproNim simple2 NIDM files for ABIDE/ADHD200 available from datalad
3 stars 12 forks source link

measurement object #2

Closed satra closed 4 years ago

satra commented 5 years ago

currently it looks like:

niiri:e7d0fa28-b3da-11e9-98b1-003ee1ce9545 a measurement_datum:,
        prov:Entity ;
    rdfs:label "perivascular space" ;
    dct:description "perivascular space blood" ;
    isAbout: "UBERON:0014930" ;
    hasLaterality: "Left" ;
    hasMeasurementType: <http://uri.interlex.org/base/ilx_0105536#> ;
    isMeasureOf: GrayMatter: ;
    hasDatumType: <http://uri.interlex.org/base/ilx_0738267#> .

cc:/ @adswa

satra commented 5 years ago

also for the interlex uris can we skip the # at the end

@jgrethe - what are the interlex uris that support content negotiation, so i can get turtle?

satra commented 5 years ago

for this measurement_datum:

this hasMeasurementType uri refers to intensity: http://uri.interlex.org/base/ilx_0105536# and this hasDatumType refers to volume: http://uri.interlex.org/base/ilx_0112559#

niiri:e7114534-b3da-11e9-98b1-003ee1ce9545 a measurement_datum:,
        prov:Entity ;
    rdfs:label "lateral ventricle" ;
    dct:description "lateral ventricle cerebral spinal fluid" ;
    isAbout: "UBERON:0002285" ;
    hasLaterality: "Left" ;
    hasMeasurementType: <http://uri.interlex.org/base/ilx_0105536#> ;
    isMeasureOf: GrayMatter: ;
    hasDatumType: <http://uri.interlex.org/base/ilx_0112559#> .

how can the datum of intensity be a volume?

dbkeator commented 5 years ago

Those are hardcoded in @adswa function remap2json. Let me know what they should be and I'll change them in both Freesurfer and FSL tools...

satra commented 5 years ago

i think wherever the information is being curated, it should be updated there.

i found this:

https://github.com/dbkeator/segstats_jsonld/blob/master/segstats_jsonld/fs_to_nidm.py#L323

adswa commented 5 years ago

Sorry, that intensity URI was my bad. I'm currently pondering what to replace it with. The datum type should stay volume, but it seems circular to also have the measurement type be volume as well. This is what the freesurfer aseg.stats file says:

# TableCol  4 ColHeader Volume_mm3
# TableCol  4 FieldName Volume
# TableCol  4 Units     mm^3

Does anyone have an idea? (I might just be stupid)

I created two PRs to have UBERONs as URIs and get rid of superfluous #. Maybe @dbkeator can take a look?

dbkeator commented 5 years ago

@adswa Thanks, I updated my freesurfer -> NIDM code with your changes. I also had to make a change to my SPARQL query which adds to existing NIDM-E documents to account for the URI reference change in isAbout so you may want to update your code.

Also, we should discuss remap2json in Warsaw because I'm using a close variant in fsl_seg_to_nidm.py which essentially does the same thing as the Freesurfer one but looks at the 'Software' column of the Excel spreadsheet to skip to the correct rows per the software being used. I think these two functions could be easily merged and then imported so we don't have 2 copies floating around...as I now am copying over your changes from the Freesurfer->NIDM tool into the FSL one...

dbkeator commented 5 years ago

@satra @jgrethe @adswa isMeasureOf was statically coded in our Freesurfer and FSL -> NIDM implementations because that information isn't being scrapped from InterLex nor the Excel file. So I've removed that attribute from the conversions for now....

satra commented 5 years ago

@adswa - in this particular case.

hasMeasurementType would be volume hasDatumType could be a scalar_measurement_datum

the latter was related to this, but we understood that the URIs may be coming from different places.

http://www.ontobee.org/ontology/IAO?iri=http://purl.obolibrary.org/obo/IAO_0000109

things like minimum, maximum were clearer operations for datum type.

dbkeator commented 5 years ago

@adswa @satra fixed hadDatumType for volume measurements to scalar measurement datum https://github.com/dbkeator/segstats_jsonld/blob/master/segstats_jsonld/fs_to_nidm.py#L839 which I think will wrap up all these issues.

dbkeator commented 5 years ago

@jgrethe @satra Actually, I think all of these need to be re-checked because many of them don't make sense when you look at the terms associated with measureOf and datumTypes:

if dic['name'] == 'normMean': d2['normMean'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536', "datumType": 'http://uri.interlex.org/base/ilx_0738264' } if dic['name'] == 'normStdDev': d2['normStdDev'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536', "datumType": 'http://uri.interlex.org/base/ilx_0738265' } if dic['name'] == 'normMax': d2['normMax'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536', "datumType": 'http://uri.interlex.org/base/ilx_0738267' } if dic['name'] == 'NVoxels': d2['NVoxels'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536', "datumType": 'http://uri.interlex.org/base/ilx_0102597' } if dic['name'] == 'Volume_mm3': d2['Volume_mm3'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536', "datumType": 'http://uri.interlex.org/base/ilx_0738276' } if dic['name'] == 'normMin': d2['normMin'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536', "datumType": 'http://uri.interlex.org/base/ilx_0738266' } if dic['name'] == 'normRange': d2['normRange'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536', "datumType": 'http://uri.interlex.org/base/ilx_0738268' } if dic['name'] == 'NumVert': d2['NumVert'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738270', #vertex "datumType": 'http://uri.interlex.org/base/ilx_0102597' # count } if dic['name'] == 'SurfArea': d2['SurfArea'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738271', #surface "datumType": 'http://uri.interlex.org/base/ilx_0100885' #area } if dic['name'] == 'GrayVol': d2['GrayVol'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0104768', # gray matter "datumType": 'http://uri.interlex.org/base/ilx_0738276' #scalar } if dic['name'] == 'ThickAvg': d2['ThickAvg'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0111689', #thickness "datumType": 'http://uri.interlex.org/base/ilx_0738264' #mean } if dic['name'] == 'ThickStd': d2['ThickStd'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0111689', #thickness "datumType": 'http://uri.interlex.org/base/ilx_0738265' #stddev } if dic['name'] == 'MeanCurv': d2['MeanCurv'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738272', #mean curvature "datumType": 'http://uri.interlex.org/base/ilx_0738276' #scalar } if dic['name'] == 'GausCurv': d2['GausCurv'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738273', #gaussian curvature "datumType": 'http://uri.interlex.org/base/ilx_0738276' #scalar } if dic['name'] == 'FoldInd': d2['FoldInd'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738274', #foldind "datumType": 'http://uri.interlex.org/base/ilx_0738276' #scalar } if dic['name'] == 'CurvInd': d2['CurvInd'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738275', #curvind "datumType": 'http://uri.interlex.org/base/ilx_0738276' #scalar } if dic['name'] == 'nuMean': d2['nuMean'] = { "measureOf": 'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738264' #mean } if dic['name'] == 'nuStdDev': d2['nuStdDev'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738265' #stddev } if dic['name'] == 'nuMin': d2['nuMin'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738266' #min } if dic['name'] == 'nuMax': d2['nuMax'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738267' #max } if dic['name'] == 'nuRange': d2['nuRange'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738268' #range }

dbkeator commented 5 years ago

@satra @jgrethe

Here are the ones I've changed:

if dic['name'] == 'NVoxels': d2['NVoxels'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0112568', "datumType": 'http://uri.interlex.org/base/ilx_0102597' } if dic['name'] == 'Volume_mm3': d2['Volume_mm3'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0112559', "datumType": 'http://uri.interlex.org/base/ilx_0738276' }

jgrethe commented 5 years ago

OK - will review.

On Aug 21, 2019, at 16:42, David Keator notifications@github.com wrote:

@jgrethe https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_jgrethe&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=n4zujSKNuU2gCQMRk27qnqD9BtDLogolnKuKlGADTOo&e= @satra https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_satra&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=FdHx05QtPfNHyh1Lbs1rsLJxSKuOcYZF3VB4KDNoQ8E&e= Actually, I think all of these need to be re-checked because many of them don't make sense when you look at the terms associated with measureOf and datumTypes:

if dic['name'] == 'normMean': d2['normMean'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0105536&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=caMhyF6v02bS_DMFYQpcFiAYWi5RFkjv0FBgGhV8S1w&e=', "datumType": 'http://uri.interlex.org/base/ilx_0738264 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738264&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=K_pMYJfppqZNGeK-xpRxEylXS8_lvbn5YynOgoZ5ZHo&e=' } if dic['name'] == 'normStdDev': d2['normStdDev'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0105536&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=caMhyF6v02bS_DMFYQpcFiAYWi5RFkjv0FBgGhV8S1w&e=', "datumType": 'http://uri.interlex.org/base/ilx_0738265 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738265&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=p3DZ8Mc4ZaQ1rJcpkQhJb8CjkRHkJ2oJBrs_K23zOjc&e=' } if dic['name'] == 'normMax': d2['normMax'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0105536&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=caMhyF6v02bS_DMFYQpcFiAYWi5RFkjv0FBgGhV8S1w&e=', "datumType": 'http://uri.interlex.org/base/ilx_0738267 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738267&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=VzXTt95o7OtwNHZgkFWHO1TruIU-DseAizdr90xyaYg&e=' } if dic['name'] == 'NVoxels': d2['NVoxels'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0105536&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=caMhyF6v02bS_DMFYQpcFiAYWi5RFkjv0FBgGhV8S1w&e=', "datumType": 'http://uri.interlex.org/base/ilx_0102597 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0102597&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=kCAjwzsrNTB0sxPGAeC9YQG5hFcWTArzaCL2_Ft7V-w&e=' } if dic['name'] == 'Volume_mm3': d2['Volume_mm3'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0105536&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=caMhyF6v02bS_DMFYQpcFiAYWi5RFkjv0FBgGhV8S1w&e=', "datumType": 'http://uri.interlex.org/base/ilx_0738276 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738276&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Q-y3AP9xmHWYafE3xzrZ_ukLZ-QPJ-x3qyB1UZxfy0M&e=' } if dic['name'] == 'normMin': d2['normMin'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0105536&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=caMhyF6v02bS_DMFYQpcFiAYWi5RFkjv0FBgGhV8S1w&e=', "datumType": 'http://uri.interlex.org/base/ilx_0738266 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738266&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=DlWzhhWWqmFxFvkzw3OLzMvu-LIrBW7zYW1LqnPiCug&e=' } if dic['name'] == 'normRange': d2['normRange'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0105536 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0105536&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=caMhyF6v02bS_DMFYQpcFiAYWi5RFkjv0FBgGhV8S1w&e=', "datumType": 'http://uri.interlex.org/base/ilx_0738268 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738268&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=doOTtlVlX2642ww3TYNfTFzYKVWlHIhitz68Tl8iOVQ&e=' } if dic['name'] == 'NumVert': d2['NumVert'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738270 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738270&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Xgc4p50J_MuVDwzGCmAJ73GJ0gL667KnyCs8Zg5eJ1w&e=', #vertex "datumType": 'http://uri.interlex.org/base/ilx_0102597 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0102597&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=kCAjwzsrNTB0sxPGAeC9YQG5hFcWTArzaCL2_Ft7V-w&e=' # count } if dic['name'] == 'SurfArea': d2['SurfArea'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738271 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738271&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=WZdaSo6boqZHMEEtmBhjfGvEpJNcNlK2zk_NK5uhEkE&e=', #surface "datumType": 'http://uri.interlex.org/base/ilx_0100885 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0100885&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=rlfYxDlkioXclNJWKjUN1IuI38voOF7ohKK99N3BA0o&e=' #area } if dic['name'] == 'GrayVol': d2['GrayVol'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0104768 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0104768&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=6GEMiD2hbyStx14pLSttjTOYOAox6aQ53Nt7dNVlAqU&e=', # gray matter "datumType": 'http://uri.interlex.org/base/ilx_0738276 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738276&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Q-y3AP9xmHWYafE3xzrZ_ukLZ-QPJ-x3qyB1UZxfy0M&e=' #scalar } if dic['name'] == 'ThickAvg': d2['ThickAvg'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0111689 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0111689&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=EtVUwFqlvH4y6NlXWZxjpN9H7MNYbiRAcqjqkWUF_ZY&e=', #thickness "datumType": 'http://uri.interlex.org/base/ilx_0738264 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738264&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=K_pMYJfppqZNGeK-xpRxEylXS8_lvbn5YynOgoZ5ZHo&e=' #mean } if dic['name'] == 'ThickStd': d2['ThickStd'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0111689 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0111689&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=EtVUwFqlvH4y6NlXWZxjpN9H7MNYbiRAcqjqkWUF_ZY&e=', #thickness "datumType": 'http://uri.interlex.org/base/ilx_0738265 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738265&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=p3DZ8Mc4ZaQ1rJcpkQhJb8CjkRHkJ2oJBrs_K23zOjc&e=' #stddev } if dic['name'] == 'MeanCurv': d2['MeanCurv'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738272 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738272&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=aJNksFtdf1W2cvR3tmTWrFlCCotwt8p1N2soY5Drmxc&e=', #mean curvature "datumType": 'http://uri.interlex.org/base/ilx_0738276 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738276&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Q-y3AP9xmHWYafE3xzrZ_ukLZ-QPJ-x3qyB1UZxfy0M&e=' #scalar } if dic['name'] == 'GausCurv': d2['GausCurv'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738273 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738273&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=7SW3lEfjfeKV8JMgUYlwrHoH-IgSFVGnSbKrULItyP8&e=', #gaussian curvature "datumType": 'http://uri.interlex.org/base/ilx_0738276 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738276&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Q-y3AP9xmHWYafE3xzrZ_ukLZ-QPJ-x3qyB1UZxfy0M&e=' #scalar } if dic['name'] == 'FoldInd': d2['FoldInd'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738274 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738274&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=G0ke8qkVgSbY4fGukla26payTko9-QYZgw5Nl3_Dp6o&e=', #foldind "datumType": 'http://uri.interlex.org/base/ilx_0738276 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738276&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Q-y3AP9xmHWYafE3xzrZ_ukLZ-QPJ-x3qyB1UZxfy0M&e=' #scalar } if dic['name'] == 'CurvInd': d2['CurvInd'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0738275 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738275&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Upt4YHb2q6GvXpUg93O7U2uIkPUL9eBBesynZ5ba5fc&e=', #curvind "datumType": 'http://uri.interlex.org/base/ilx_0738276 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738276&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=Q-y3AP9xmHWYafE3xzrZ_ukLZ-QPJ-x3qyB1UZxfy0M&e=' #scalar } if dic['name'] == 'nuMean': d2['nuMean'] = { "measureOf": 'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738264 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738264&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=K_pMYJfppqZNGeK-xpRxEylXS8_lvbn5YynOgoZ5ZHo&e=' #mean } if dic['name'] == 'nuStdDev': d2['nuStdDev'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738265 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738265&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=p3DZ8Mc4ZaQ1rJcpkQhJb8CjkRHkJ2oJBrs_K23zOjc&e=' #stddev } if dic['name'] == 'nuMin': d2['nuMin'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738266 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738266&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=DlWzhhWWqmFxFvkzw3OLzMvu-LIrBW7zYW1LqnPiCug&e=' #min } if dic['name'] == 'nuMax': d2['nuMax'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738267 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738267&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=VzXTt95o7OtwNHZgkFWHO1TruIU-DseAizdr90xyaYg&e=' #max } if dic['name'] == 'nuRange': d2['nuRange'] = { "measureOf":'TODO', "datumType": 'http://uri.interlex.org/base/ilx_0738268 https://urldefense.proofpoint.com/v2/url?u=http-3A__uri.interlex.org_base_ilx-5F0738268&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=doOTtlVlX2642ww3TYNfTFzYKVWlHIhitz68Tl8iOVQ&e=' #range }

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dbkeator_simple2-5FNIDM-5Fexamples_issues_2-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DAAMPEZICVM43JGZ2AGBOQCDQFXHHDA5CNFSM4INIFAPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD43OCHY-23issuecomment-2D523690271&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=gV55bYY3sbi393W20d-5aHJfI2TQC7ATZbB03s9YbiU&e=, or mute the thread https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AAMPEZO72TWMTMFNA7QRVDLQFXHHDANCNFSM4INIFAPA&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=aCazUAjVTjv9femCJj9iDKAaFd_cOGD2qQItcLotm3w&s=6KxkoJvXvGeMeC2TEDxrJNTBP8IjFRk1qz4lBZ9_t90&e=.

satra commented 5 years ago

for this:

if dic['name'] == 'GrayVol':
d2['GrayVol'] = {
"measureOf": 'http://uri.interlex.org/base/ilx_0104768', # gray matter
"datumType": 'http://uri.interlex.org/base/ilx_0738276' #scalar
}

shouldn't measureOf be volume?

dbkeator commented 5 years ago

@satra, that's what I was thinking too but I figured the decision was made to set it to gray matter for some other reason...

satra commented 5 years ago

i think it should just be volume. this is the volume associated with a cortical parcel, but it's still a volume.

jgrethe commented 5 years ago

I thought MeasureOf was what was being measure: white matter, gray matter, intensity,….

https://docs.google.com/presentation/d/1MHBmooYVpvo79OkJ2Cr_E_vJRS-Q8mxEzfe_3sFSUis/edit#slide=id.g5955661eb9_5_11

The datumType was the type of datum - e.g. scalar, std. dev., etc

And volume was represented by hasMeasurementType

@adswa https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_adswa&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=gir3I1uErSLapYW1GRmtAoM8-2a4a5iB2AB1Isl2yjE&s=dY1RlVFBU1Y1j5Qrxa1Gc2AFU0iR2d9VrvVzXUcJtJI&e= - in this particular case.

hasMeasurementType would be volume hasDatumType could be a scalar_measurement_datum

On Aug 22, 2019, at 10:19, Satrajit Ghosh notifications@github.com wrote:

for this:

if dic['name'] == 'GrayVol': d2['GrayVol'] = { "measureOf": 'http://uri.interlex.org/base/ilx_0104768', # gray matter "datumType": 'http://uri.interlex.org/base/ilx_0738276' #scalar } shouldn't measureOf be volume?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dbkeator_simple2-5FNIDM-5Fexamples_issues_2-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DAAMPEZMARAYWV23I4MV3RDTQF3DD3A5CNFSM4INIFAPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD45ZCNA-23issuecomment-2D523997492&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=MwK2Bmr4w3mYu766AWYzO8zziV75CrZlAdXk3TAgtsc&s=BAPx-JOY8tlhUXYfW0zUR7PAYCKTpNXW5IIW7mE_VFA&e=, or mute the thread https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AAMPEZOAYHHBT53FGHVNG5DQF3DD3ANCNFSM4INIFAPA&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=MwK2Bmr4w3mYu766AWYzO8zziV75CrZlAdXk3TAgtsc&s=ZY01MALKLrwn86zFRZAW5o5JgaDWpTiz3lLHIjDbaWE&e=.


Jeffrey S. Grethe, Ph.D. email: jgrethe@ncmir.ucsd.edu mailto:jgrethe@ncmir.ucsd.edu
University of California, San Diego 9500 Gilman Drive, M/C 0608 La Jolla, CA 92093-0608

work: (858) 822-0703 ( fax: (858) 246-0644

UCSD Profile: http://profiles.ucsd.edu/jeffrey.grethe http://profiles.ucsd.edu/jeffrey.grethe ORCID: http://orcid.org/0000-0001-5212-7052 http://crbs.ucsd.edu/ LinkedIn: http://www.linkedin.com/in/jgrethe http://www.linkedin.com/in/jgrethe

This e-mail/fax message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply e-mail/fax and destroy all copies of the original message.

satra commented 5 years ago

@jgrethe - white matter, gray matter, is going to be in the isAbout field. measurement type was non-anatomical.

jgrethe commented 5 years ago

Not according to the documented model and past comments in the thread.

isAbout was the structural dimension.

On Aug 22, 2019, at 10:36, Satrajit Ghosh notifications@github.com wrote:

@jgrethe https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_jgrethe&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=qfTYJhKMEcHowgw4tbCOkp3IvpnAgeMFrnSCnObHgkk&s=WJrHCzyX18oIRbizEij8_eU8bSLB5lSmHF4Y-HOtRg8&e= - white matter, gray matter, is going to be in the isAbout field. measurement type was non-anatomical.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dbkeator_simple2-5FNIDM-5Fexamples_issues_2-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DAAMPEZL77LRREQCVEYDJFGDQF3FATA5CNFSM4INIFAPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD452TJQ-23issuecomment-2D524003750&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=qfTYJhKMEcHowgw4tbCOkp3IvpnAgeMFrnSCnObHgkk&s=hvDmchP47DzTQDbGZJxaply4IcblTjZG6gPy-EFGvh8&e=, or mute the thread https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AAMPEZIDT7N5X6Q3TX5VMKDQF3FATANCNFSM4INIFAPA&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=qfTYJhKMEcHowgw4tbCOkp3IvpnAgeMFrnSCnObHgkk&s=DQsgDRKhmnm252OcnnbjAGzaHHus9BmSP600u2V3SBE&e=.


Jeffrey S. Grethe, Ph.D. email: jgrethe@ncmir.ucsd.edu mailto:jgrethe@ncmir.ucsd.edu
University of California, San Diego 9500 Gilman Drive, M/C 0608 La Jolla, CA 92093-0608

work: (858) 822-0703 ( fax: (858) 246-0644

UCSD Profile: http://profiles.ucsd.edu/jeffrey.grethe http://profiles.ucsd.edu/jeffrey.grethe ORCID: http://orcid.org/0000-0001-5212-7052 http://crbs.ucsd.edu/ LinkedIn: http://www.linkedin.com/in/jgrethe http://www.linkedin.com/in/jgrethe

This e-mail/fax message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply e-mail/fax and destroy all copies of the original message.

satra commented 5 years ago

@jgrethe - slide 4 is the only relevant slide in that deck. that was the outcome from ohbm.

and in that slide you can see that caudate is the "isAbout"

then caudate volume could also be a measure of "gray matter". but it is, to me, a measure of volume of that structure, which is what GrayVol is.

jgrethe commented 5 years ago

Here is the info from slide 4:

 measureOf Intensity; (http://purl.obolibrary.org/obo/PATO_0000049)
     datumType(ILX:3738262)  StandardDeviation(http://purl.obolibrary.org/obo/STATO_0000237
     isAbout caudate;
     laterality "left";
     hasUnit "teaspoons"
     hasDataType "xsd:float";
     minValue 0;
     maxValue 3000;
     equivalentTo fde_uuid;
     transformFactor 2 

For a volumetric measurement then wouldn’t we have:

 measureOf: White Matter
     datumType: Volume
     isAbout caudate;
     laterality "left";
     hasUnit “mm^3"
     hasDataType "xsd:float";

On Aug 22, 2019, at 10:43, Satrajit Ghosh notifications@github.com wrote:

@jgrethe https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_jgrethe&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=-bmLyQNntZXFsXoy-YPBJopbUUp7NQPsrf0Yq5d3AZs&s=Cc7Ek3t1VCwK_dpfQgUPqcXC-UjUFCdWM0OVedFCAY8&e= - slide 4 is the only relevant slide in that deck. that was the outcome from ohbm.

and in that slide you can see that caudate is the "isAbout"

then caudate volume could also be a measure of "gray matter". but it is, to me, a measure of volume of that structure, which is what GrayVol is.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_dbkeator_simple2-5FNIDM-5Fexamples_issues_2-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DAAMPEZOO7X24HL63XN3CVR3QF3F5VA5CNFSM4INIFAPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD453KOQ-23issuecomment-2D524006714&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=-bmLyQNntZXFsXoy-YPBJopbUUp7NQPsrf0Yq5d3AZs&s=9cFQWnDy3PXs68Y_OLtJCjoztlDuVM0A_NMXakpqa80&e=, or mute the thread https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AAMPEZINUBGO4ZVN4YFN463QF3F5VANCNFSM4INIFAPA&d=DwMCaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=VoBnXVyFWlbGZNrES22a2h0PqI4m1kGEUyTwLwBBYIQ&m=-bmLyQNntZXFsXoy-YPBJopbUUp7NQPsrf0Yq5d3AZs&s=4a9zzrWXvW1wYQydEYa81ND8LPtUD5BmLZrgI1zCoFE&e=.

satra commented 5 years ago

i believe this was what it would be.

         measureOf:  Volume # caudate is not White Matter or gray matter
         datumType: scalar # this was as defined in 
         isAbout caudate;
         laterality "left";
         hasUnit “mm^3"
         hasDataType "xsd:float";
dbkeator commented 5 years ago

@satra @jgrethe In the spirit of linked data, I used URIs for mm^3 and voxels units...look ok?

niiri:d63974b4-c511-11e9-9a61-003ee1ce9545 a measurement_datum:, prov:Entity ; rdfs:label "caudate nucleus" ; dct:description "caudate nucleus gray matter" ; hasUnit: ilk:ilx_0112568 ; isAbout: obo:UBERON_0001873 ; hasLaterality: "Left" ; hasMeasurementType: ilk:ilx_0112568 ; hasDatumType: ilk:ilx_0102597 .

niiri:d64d2b62-c511-11e9-9a61-003ee1ce9545 a measurement_datum:, prov:Entity ; rdfs:label "caudate nucleus" ; dct:description "caudate nucleus gray matter" ; hasUnit: ilk:ilx_0381383 ; isAbout: obo:UBERON_0001873 ; hasLaterality: "Left" ; hasMeasurementType: ilk:ilx_0112559 ; hasDatumType: ilk:ilx_0738276 .

satra commented 5 years ago

i would suggest just using the mm^3 string - because we won't be able to create the infinite number of urls that would be necessary for all possible unit combinations. we were having conversations with @tgbugs about using a consistent unit naming format. i think he settled on punit, a python library.

tgbugs commented 5 years ago

I'm using pint as the internal representation, but I put a different parser in front of it. One way to manage this without including a full unit grammar in the spec is to include an explicit datatype on the unit string (e.g. ^^ut:MIXF or something like that). The unit string datatype would probably ultimately need a spec (or minimally an implementation), but could be left as an implementation detail for now.

dbkeator commented 5 years ago

@satra In this case "mm^3" is defined in InterLex and therefore I don't see any reason to do anything more complicated than use the URL. I feel it's more useful than a simple string.

IMO, when we have units that are more complex and/or want to take the next step, we could decide to use pint or a variant of @tgbugs prior work (which I like):

[] a rdfs:Datatype ; owl:onDatatype unit:weeks ; owl:withRestrictions ( [ xsd:maxInclusive 14 ] [ xsd:minInclusive 9 ] ) .

satra commented 5 years ago

@dbkeator - i am going to disagree here, but am ok with proceeding.

i believe using uris for units is a very slippery slope. and one will run into this as soon as you start encoding various measurements.

as far as use of pint or other things go, it is simply a matter of processing a known string value of hasUnits with an appropriate processor. this would keep the use of units simpler, and we would be able to validate it on any repository side.

dbkeator commented 5 years ago

@satra ok, I can change it in the code back to a simple string...but I guess at this point it doesn't really matter since we haven't implemented a specific type which could be used by a processor. If I understand the basics of pint it would require specific processing to understand what the unit is? That seems like a bit of heavy lifting for simple types but I guess that's a discussion for a different time.

Anyway, I'll kill the freesurfer exports one more time and set "mm^3" to a string so you feel warm and fuzzy...🤓

satra commented 5 years ago

love the fuzzywuzzy feel :)

one of the things that @tgbugs pointed to is one my favorite unit representations. all ascii: https://people.csail.mit.edu/jaffer/MIXF/MIXF-10

satra commented 5 years ago

@dbkeator in this file datasets.datalad.org/abide//RawDataBIDS/SDSU/nidm.ttl and likely others these two properties have the same value (volume):

    hasMeasurementType: ilk:ilx_0112559 ;
    hasDatumType: ilk:ilx_0112559 .

under what conditions is the datum volume?