Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setting up a user dependent namespace document #1049

Merged
merged 2 commits into from
Mar 4, 2023

Conversation

iherman
Copy link
Member

@iherman iherman commented Feb 17, 2023

The latest version of the @context file includes a reference, via a @vocab, to the https://www.w3.org/ns/credentials/issuer-dependent URL. At present, this URL leads to a 404, which is a big no-no. This PR creates a short "namespace document" alongside the VCDM vocabulary at https://github.com/w3c/vc-data-model/tree/main/vocab/credentials/v2/issuer-dependent.html (the file can be previewed here) which provides a simple landing place.

Although not part, physically, of the PR, I also have on my local disc a .htaccess file that is ready to be pushed onto https://www.w3.org/ns/credentials/ and which looks as follows:

RewriteEngine On
RewriteBase /ns/credentials/
AddType application/ld+json .jsonld
AddType text/turtle .ttl


RewriteRule ^v2$ https://w3c.github.io/vc-data-model/contexts/credentials/v2 [E=json,P]
RewriteRule ^issuer-dependent$ https://w3c.github.io/vc-data-model/vocab/credentials/v2/issuer-dependent.html [P]

which takes care of mapping the @vocab URL to the file set up by this PR and, incidentally, also makes the mapping of the latest context file from /ns/, as requested in #935 (and as requested by @OR13). Note that the .htaccess filed does not map the core vocabulary file from https://www.w3.org/ns/credentials/, because that is still a pending issue #758. If the decision in #758 is to make that change, then the aforementioned .htaccess file can be extended accordingly.

@iherman
Copy link
Member Author

iherman commented Feb 17, 2023

Note, b.t.w., that the VDCM specification has an outdated context file in the appendix, which does not seem to include the @vocab entry. This PR does not touch that file.

Copy link
Contributor

@OR13 OR13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

Copy link
Member

@TallTed TallTed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor tweaks.

vocab/credentials/v2/issuer-dependent.html Outdated Show resolved Hide resolved
vocab/credentials/v2/issuer-dependent.html Outdated Show resolved Hide resolved
vocab/credentials/v2/issuer-dependent.html Outdated Show resolved Hide resolved
Copy link
Member

@msporny msporny left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, might need a tiny bit of editorial cleanup after the merge, but that would be ... editorial... no need to do that here, in the first PR.

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
@melvincarvalho
Copy link

melvincarvalho commented Mar 1, 2023

Normally in Linked Data a term in a vocab will dereference so that it's possible to learn more about the term, for example the type of the item (string, number, date etc.) the human readable label and so on

Looking at this vocab, that seems not to be the case here wrt dereferening

If the term will not dereference would it not be better to remove the centralized http dependency, and extra round trip by using a URN?

RFC 8141 provides for a documentation to be given for URNs without requiring the round trips that many libraries (e.g. solidOS) will fire off automatically.

It would be good to understand this pattern from a Linked Data point of view.

If the aim is to provide a placeholder for json terms that are not registered, then there could be more benefit from a general solution that many systems could use, solving the problem of uniftying JSON and JSON-LD once and for all

@iherman
Copy link
Member Author

iherman commented Mar 1, 2023

Normally in Linked Data a term in a vocab will dereference so that it's possible to learn more about the term, for example the type of the item (string, number, date etc.) the human readable label and so on

Looking at this vocab, that seems not to be the case here wrt dereferening

If the term will not dereference would it not be better to remove the centralized http dependency, and extra round trip by using a URN?

RFC 8141 provides for a documentation to be given for URNs without requiring the round trips that many libraries (e.g. solidOS) will fire off automatically.

It would be good to understand this pattern from a Linked Data point of view.

If the aim is to provide a placeholder for json terms that are not registered, then there could be more benefit from a general solution that many systems could use, solving the problem of uniftying JSON and JSON-LD once and for all

I find the argument of using a URN for this case compelling. This should probably be raised as a separate issue.

@OR13 @msporny ?

@OR13
Copy link
Contributor

OR13 commented Mar 1, 2023

@iherman I think we can create a better experience for users by retaining URL structure.

I don't think using URNs for this case would be an improvement.

@iherman
Copy link
Member Author

iherman commented Mar 1, 2023

Just for the sake of arguments: we are talking about users who do not care about URL-s, Linked Data, etc; this is a fallback for that community. Which is fine, but then I do not understand your point. They would not care about the format of the identifier, whether it would start with a https or a urn...

@OR13
Copy link
Contributor

OR13 commented Mar 1, 2023

@iherman I think the intention is to provide term definitions that gently encourage issuer's to do a better job at linked data... These users are not intending to ignore linked data, let us not assume why they have failed to define terms in the context.

Making the term's URNs seems like the opposite of helping or educating.

Providing a web page that gives gentle guidance and instruction is better than spitting out unresolvable URNs, because the latter provides no guidance or instruction... no incentive for improvement and therefor it is likely to encourage even lower quality linked data.

@melvincarvalho
Copy link

melvincarvalho commented Mar 3, 2023

Thanks @iherman I guess it does warrant its own issue. I'll just reply with some added information.

RFC 8141 provides a means for documentation, namely

https://www.iana.org/assignments/urn-namespaces/urn-namespaces.xhtml

On the topic a general solution to this problem. Might it perhaps be useful to register urn:jsonld with IANA?

Edit: moved to new issue

@msporny
Copy link
Member

msporny commented Mar 4, 2023

Editorial, multiple reviews, changes requested (some applied, one tracked in a new issue), no objections, merging.

@msporny msporny merged commit 00578a0 into main Mar 4, 2023
@msporny msporny deleted the issuer-dependent-namespace-document branch March 4, 2023 23:38
@iherman
Copy link
Member Author

iherman commented Mar 6, 2023

For the records: the .htaccess file has been installed; these two URL-s should work now as required:

cc @msporny @OR13

@OR13
Copy link
Contributor

OR13 commented Mar 6, 2023

Awesome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants