Open nicholascar opened 3 years ago
dcterms:identifier doesn't have a datatype of xsd:token as far as I'm aware. My fear would be that in an open world one could give identifiers to a profile, which are not fit for your token use cases.
Good point. I guess I meant that dcterms:identifier
doesn't have a datatype conflicting with xsd:token
as, of course bieng DCT, it doesn't have a string indication of range type.
Something we are missing in PROF still is actually a useful validator file for PROF data - e.g. SHACL. If we made such a thing, it could perhaps check for use of dcterms:identifier
with xsd:token
.
I also think that it's relatively safe for us to describe the requirements for a PROF token and then expect people to "do the right thing" regarding how they create and use them since their use is anticipated within systems that actually operate, so that people would know quickly whether their dcterms:identifier
value is any good (e.g. their system can't tolerate spaces and fails in some way).
Yes this could be a right approach, but in the specific case of PROF I expect there might be legit cases where people would like to have other identifiers than the token (maybe a id derived from a standard body like ISO, or something else?). For validation I'm afraid you'd have to say that either the only type of (general) dcterms:identifier allowed is token, which is not flexible for the cases above, or allow several dcterms:identifiers (with different types) to co-exist, which would make validation with SHACL (or others) more difficult.
The prof:token definition excludes URIs as identifiers:
The preferred identifier for the Profile, for use in circumstances where its URI cannot be used.
dct:identifier prefers URIs but does not exclude string tokens. The two properties do seem to be different. To me it would make sense to use both, dct:identifier when one has a URI, and prof:token as a fall-back when no URI is available.
I am also wondering about the possible use of file://host/path
scheme to indicate files on the same namespace. We are looking at this in the DC profile work, since we assume that many folks will have files on the same site or even in the same directory. It would be a stretch to call this a dct:identifier since it could be any kind of file - would it be considered a PROF:token?
Multiple identifiers can all use dcterms:identifier
disambiguated with a datatype.
That still wouldn't warranty that nobody isn't going to use the datatype you want for something else. xsd:token
is not essentially related to a profile negotiation goal...
dcterms:identifier
can act in all the ways we've specifiedprof:hasToken
to act (same datatye pfxsd:token
too) but we save the hassle of introducing a new property.