-
Notifications
You must be signed in to change notification settings - Fork 4
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
Minimum supported DDI Codebook version #5
Comments
Hello @pitkant, Yes indeed, the DDIwR package is also transitioning towards Codebook 2.6 but, as you rightfully observe, the standard is still not final. Parts of the code, such as checking the namespace, are also in stand-by mode for the same reason. The versions should not really matter, as the Codebook is specifically engineered to be backwards compatible. If my understanding is correct, elements from version 2.0 should still be part of the Codebook 2.6, even if deprecated. My intention is to be 100% consistent with the version from the DDI Alliance, however there might be some modifications in the latest development versions of the 2.6 Codebook that I might not have implemented. I think the best is to wait for the very final version before updating the DDIwR package. And in that version, the package will absolutely be fully transparent about what is supported. I hope this explains the situation, thank you so much for your very helpful review of the code! |
So I take it that the list object I agree that if generating 2.6 Codebooks is the goal of this package, then it is probably sufficient. However, if there is the option to read existing codebooks, then some other users might encounter the same problems as I did so just wanted to write out these few paragraphs here for future reference. |
Indeed. |
Hi, thank you for the useful package.
It is stated in the DDI website that DDIwR is used to "create, edit and validate a DDI Codebook version 2.6, using R script commands.". However, in the package documentation it is hard to find references on which DDI versions the package actually supports.
In
getDNS()
function ininternals.R
the package seems to look for version 2.5, otherwise it throws an error:DDIwR/R/internals.R
Lines 784 to 790 in 34dab97
This was a problem when a certain data repository was still using DDI 2.0, which is valid DDI but not recognised as such by the package. However, it is reasonable that the package supports only DDI 2.5, I just wish the package was more transparent about it.
In
DDI_Codebook_2.6.R
DDIC object is defined, which is used incheckXMList()
function ininternals.R
:DDIwR/R/internals.R
Lines 263 to 285 in 34dab97
When I tried to use
getMetadata()
function on a DDI-C 2.5 file it threw and error on lines 280-284 because the check does not acceptp
andextLink
fields in my file although they are 2.5 namespace. However, at least in the case of ExtLink there is a deprecation note in the R-file:DDIwR/R/DDI_Codebook_2.6.R
Line 794 in 34dab97
However, when I commented this check out the
getMetadata()
function seemed to produce a sensible result without errors. Also with DDI Codebook 2.6 still being in draft phase (?) this check seems to be too stringent - or that the package only supports version 2.6 could be communicated to the end user more explicitly.The text was updated successfully, but these errors were encountered: