Closed VladimirAlexiev closed 2 months ago
The structure of this BOL schema is an artifact of building JSON-LD from JSON schema... I think we've learned enough from this experiment to confirm, it's not a good approach.
It's better to hand craft each JSON-LD context and each json schema, and make sure both the json and RDF representations are as good as they can be.
That's a lot more work, and it's likely work that many won't have the skills to do, many verifiers might only care about one or ther other, but I believe it's the better approach.
According to git blame, BillOfLading, @nissimsan made the first problematic mapping described above (9 months ago):
was https://service.unece.org/trade/uncefact/vocabulary/uncl1153/#Bill_of_lading_number (also an individual, i.e. wrong) changed to https://vocabulary.uncefact.org/ReferenceCodeList#BM
I updated all the CEFACT references as that vocab got promoted from draft to final. Apparently already wrong to begin with. I was never happy to reference a code list to begin with. The problem I was facing was I could find any actual definition for, say, bill of lading number. CEFACT should define them, but don't. This came closest.
I would suggest removing these bad cases and let the Trace define them instead. I would support such a PR.
Closing, while this would be a better solution in the long term, it would require a significant overhaul that no one is willing to undertake.
I had 2 chats with @onthebreeze re governance and editorial procedures for binding to Linked Data (which basically means adding to the JSONLD context). As part of that, I looked at BillOfLading.
Get https://w3c-ccg.github.io/traceability-vocab/contexts/traceability-v1.jsonld and search for
BillOfLading
. Here are the problems that I see:exactMatch
to the UNCEFACT individuals:@type:@id
for avoidance of doubt:@type:@id
. Andparticulars
is unspecific, better to useconsignmentItem
orconsignmentItems
(because it's an array)schema:Purchase
does not exist; and these bindings make no sense, at least to meRelating to #948, who can make appropriate mappings? How can we educate people to do it?
According to git blame, BillOfLading, @nissimsan made the first problematic mapping described above (9 months ago):
And I think that @OR13 looked at it.