-
Notifications
You must be signed in to change notification settings - Fork 9
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
Check PROMCODE vocabs and shapes for publication #278
Comments
Expected URIs from the files:
@jamsden please confirm the URIs |
|
@berezovskyi, do we have anything to do to make progress? |
Hello @mwakao, My apologies for a late reply! It would be great if you could make 2 pull requests, one under https://github.com/oslc-op/website/tree/master/content/ns for the files themselves and another to https://github.com/oslc-op/website-content-negotiation/blob/master/negotiation.js#L53 for the content negotiation URIs and then we can start a more formal review. One thing you should look at immediately is the number of URL bases you are publishing in your files. In the OP, we take a strong view that every URL defined in the files must be dereferenceable. For example, if you define http://open-services.net/ns/promcode/shapes/1.0/ArtifactContainer resource, then there should be an ArtifactContainer.ttl file that we can serve when a Linked Data tool tries to dereference http://open-services.net/ns/promcode/shapes/1.0/ArtifactContainer URL. We discussed this in the OSLC OP for our own specs and agreed to have just 2 files, one for vocabs and one for shapes for the sake of simplicity. If you do the same, make sure that all classes, resources, properties have one of the two URL bases and no more.
You should also put a license on the Turtle files. Please put any OSS license on them so that we are allowed to redistribute them but also that anyone downloading them has the right to use them too. BSD-3-Simple is a good choice if you have not decided yet.
You should also have RDF metadata on both vocabs and shapes, see https://github.com/oslc-op/oslc-specs/blob/master/specs/core/core-vocab.ttl#L23 and https://github.com/oslc-op/oslc-specs/blob/master/specs/core/core-shapes.ttl#L25 for an example. Your files shall pass the ShapeCheck validation, please see https://github.com/oslc-op/oslc-specs/tree/master/tools/ShapeChecker for the tool itself and https://github.com/oslc-op/oslc-specs/tree/master/tools/ShapeChecker/scripts for the sample scripts we use to validate specs under OSLC OP. Please do not rely on Finally, we can work on all of these now but let's ensure the files are published (with all the needed fixes listed above) as a Committee Specification on OASIS archive before we deploy them on our site. For our specs, we set the bar at the Candidate OASIS Standard but we can relax it one step for external specs. I know it's quite a lot of work and I am ready to help out in any way I can. I am in the CET+2 timezone and glad to have a call if needed. Best regards, |
Hello @berezovskyi, @mwakao, I have been working with @mwakao for PROMCODE vocab and shapes. Also, I found each shape definition are stored in this location: I'd like to know how to generate core-shapes.ttl from each resource ttl file. If there are no relation between core-shape.ttl and each resource ttl file, |
Dear Shigeaki-san, Masaki-san, I am sorry for a late reply! We did not generate the "aggregate" shape automatically. Instead, we decided it will be easier to join them (more importantly, to publish them) and did the work by hand. It helps if you set a common prefix for all shapes first so that you can copypaste the Turtle across files without risking URIs to change inadvertently. See oslc-op/oslc-specs@c9e4357#diff-0ae6717a06b9a0a9f3e28a69c26765fc656a823035758f8d4d12d2f27080f7baR20 for an example of a prefix. As you see, we also use a base for the resources that are defined as
You can also try to do the merge automatically and check the output:
/Andrew P.S. https://github.com/oslc-op/oslc-specs/blob/master/specs/core/core-shapes.ttl correspond to the shapes published under https://docs.oasis-open-projects.org/oslc-op/core/v3.0/ps01/. The old TC is now closed, all of its unpublished work is obsolete. P.P.S. Do not forget the OASIS copyright header at the top. |
@tomkamimura I took another look following a request from @jamsden and will post my findings here (because you keep closing your pull requests and opening new ones, please don't do as it makes it hard for us to see what did you change in your newest updates). I updated the shapecheck command this way: build/install/ShapeChecker/bin/ShapeChecker \
-t Warning \
-C ${comment# Enforce check for ResourceShapeConstraints} \
-q EmbeddedWhitespace \
-q MissingPeriod \
-x 'http://open-services.net/ns/promcode' ${comment# See https://github.com/oslc-op/oslc-specs/issues/40} \
-x 'http://open-services.net/ns/promcode#.*' ${comment# See https://github.com/oslc-op/oslc-specs/issues/40} \
-x 'http://purl.org/dc/terms/' ${comment# See https://github.com/oslc-op/oslc-specs/issues/320} \
-x 'http://purl.org/dc/terms/.*' ${comment# See https://github.com/oslc-op/oslc-specs/issues/320} \
-v /Users/ezandbe/git/a/oslc/websites/open-services/content/ns/promcode/promcode-vocab.ttl \
-s /Users/ezandbe/git/a/oslc/websites/open-services/content/ns/promcode/promcode-shapes.ttl You will need to replace the file paths to work on your system. Here is the full report of the tool:
Please check the report and tell us if those are valid problems and how will we fix them. @jamsden please check as well. |
I can confirm that the shape in question has such a property:
And I can confirm that other shapes don't use this predicate. The OSLC spec states: Name of property being defined, i.e. second part of property's Prefixed Name. For all other uses, consider dcterms:title, rdfs:label, oslc:shortTitle or oslc:label. https://docs.oasis-open-projects.org/oslc-op/core/v3.0/os/core-vocab.html#name |
We modified our shape.ttl file by deleting oslc:name "WorkItem" line which is not necessary. Also, we corrected the mixing of tab and space characters. Then, we ran ShapeChecker. For some reasons, it generated no errors and 17 warnings. Most of the warnings are probably due to URL's not reachable and redirecting not working in our environment. Of two warnings you indicated above, the first one is gone. The second one still exists, which is "Warning: This vocabulary was given, but not referenced in the given shapes: ..." It is true that shape.ttl does not reference vocab.ttl. I looked at change-mgt-shapes.ttl. It does not reference their vocab.ttl either So, is this a problem? I have replaced our turtle files in our repo that is requested to merge to your main repo by the latest open PQ at #307 Here is a result of ShapeChecker to our ttl files. Results from ShapeChecker run on Thu Feb 24 14:39:53 JST 2022Command line arguments: A total of 17 issues were found (0 info, 17 warnings, 0 errors) Checked vocabulary http://open-services.net/ns/promcode# from file:/D:/ICF_AutoCapsule_disabled/oslc-cheker/oslc-specs/tools/ShapeChecker/scripts/../../../../../oslc-promcode/shape/trunk/promcode-vocab.ttl, with 3 issues (0 info, 3 warnings, 0 errors) Checked shapes from file:/D:/ICF_AutoCapsule_disabled/oslc-cheker/oslc-specs/tools/ShapeChecker/scripts/../../../../../oslc-promcode/shape/trunk/promcode-shapes.ttl, with 13 issues (0 info, 13 warnings, 0 errors)
file:/D:/ICF_AutoCapsule_disabled/oslc-cheker/oslc-specs/tools/ShapeChecker/scripts/../../../../../oslc-promcode/shape/trunk/promcode-vocab.ttl |
One more comment to add. We have updated our spec document that has been approved as CS03. It will be published at OASIS library in a few days. As a result, the version is changed to CS03 in the updated version of promcode-shapes.ttl and promcode-vocab.ttl files. |
I ran ShapeChecker again on the lastest promcode-shapes.ttl and promcode-voca.ttl today (March 2, 2022). One warning generated which says that shapes.ttl does not refernce voca.ttl. Here is the result. Results from ShapeChecker run on Wed Mar 02 15:16:52 JST 2022 Command line arguments: A total of 1 issue was found (0 info, 1 warnings, 0 errors) Checked vocabulary file:/Users/tomkamimura/PROMCODE/oslc-promcode/PROMCODE/turtle_files/promcode-vocab.ttl from file:/Users/tomkamimura/PROMCODE/oslc-promcode/PROMCODE/turtle_files/promcode-vocab.ttl, with 0 issues (0 info, 0 warnings, 0 errors) Checked shapes from file:/Users/tomkamimura/PROMCODE/oslc-promcode/PROMCODE/build/install/ShapeChecker/../../../turtle_files/promcode-shapes.ttl, with 0 issues (0 info, 0 warnings, 0 errors) Warning: This vocabulary was given, but not referenced in the given shapes: |
I have checked the files from my side, here is the output:
All the other warnings on your side is because your machine does not have proper internet access (proxy needed?). |
Andrew,
Thank you for that. As I posted at #278 (comment) <#278 (comment)>
your output is exactly the same as our latest output. How would you suggest us to proceed? There is only one
open PQ that requires your action to proceed at #307 <#307> Please let me know.
Thanks.
Tom Kamimura
… 2022/03/11 0:38、Andrew Berezovskyi ***@***.***>のメール:
I have checked the files from my side, here is the output:
❯ ./scripts/check-promcode.sh
Results from ShapeChecker run on Thu Mar 10 16:27:28 CET 2022
Command line arguments:
-t Warning -C -q EmbeddedWhitespace -q MissingPeriod -x http://open-services.net/ns/promcode <http://open-services.net/ns/promcode> -x
http://open-services.net/ns/promcode# <http://open-services.net/ns/promcode#>.* -x http://purl.org/dc/terms/ <http://purl.org/dc/terms/> -x http://purl.org/dc/terms/ <http://purl.org/dc/terms/>.* -v
/Users/ezandbe/git/a/oslc/websites/open-services/content/ns/promcode/promcode-vocab.ttl -s
/Users/ezandbe/git/a/oslc/websites/open-services/content/ns/promcode/promcode-shapes.ttl
A total of 1 issue was found (0 info, 1 warnings, 0 errors)
Checked vocabulary http://open-services.net/ns/promcode# <http://open-services.net/ns/promcode#> from file:/Users/ezandbe/git/a/oslc/websites/open-services/content/ns/promcode/promcode-vocab.ttl, with 0 issues (0 info, 0 warnings, 0 errors)
Checked shapes from file:/Users/ezandbe/git/a/oslc/websites/open-services/content/ns/promcode/promcode-shapes.ttl, with 0 issues (0 info, 0 warnings, 0 errors)
Warning: This vocabulary was given, but not referenced in the given shapes:
file:/Users/ezandbe/git/a/oslc/websites/open-services/content/ns/promcode/promcode-vocab.ttl
All the other warnings on your side is because your machine does not have proper internet access (proxy needed?).
—
Reply to this email directly, view it on GitHub <#278 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AXJDHISDA6RS4XRTQ3EWPMLU7IJQHANCNFSM4R4JWUQA>.
Triage notifications on the go with GitHub Mobile for iOS <https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android <https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.
|
@ndjc could you please advise on "Warning: This vocabulary was given, but not referenced in the given shapes"? I checked the shapes and they do reference the vocab:
Vocab:
I see that most scripts have the @tomkamimura I will open a ballot with the OSLC OP PGB once Nick confirms 👆 and publish the files once the ballot closes (7 days). Thank you for working together with us to get the files in a good shape 😉 |
@ndjc I know your time is limited now but you are our only hope in understanding why "Warning: This vocabulary was given, but not referenced in the given shapes" pops up 🙏 @tomkamimura Nick has retired and if he doesn't find time to reply soon, I will start the ballot. |
I believe that warning is about vocabulary terms, classes or properties that are defined, but don't appear in any oslc:ResourceShape describes or oslc:Property describes property. That's a warning because not all vocabulary terms need to be constrained, but its possible that this indicates something is missing in the shapes, especially if the shapes are being used to essentially define a structured view of the vocabulary. |
I see, thanks Jim. I think most of the terms are covered by shapes, so we are good. I will see if I can get more output with more verbose log levels. |
We looked at our turtle files and our script to run ShapeCheck. There were some blank characters in places that may have caused a warning. Also, we changed parameters of the script to detect such blank characters. After fixing those blank characters, we ran the script and a warning is now gone. Here is the output of ShapeCheck. So, I think we are good now. I have modified the turtle files in the active PQ. @berezovskyi, will you please move ahead to get an agreement from oslc-ops? Command line arguments: A total of 0 issues were found (0 info, 0 warnings, 0 errors) Checked vocabulary file:/Users/tomkamimura/PROMCODE/oslc-promcode/PROMCODE/turtle_files/promcode-vocab.ttl from file:/Users/tomkamimura/PROMCODE/oslc-promcode/PROMCODE/turtle_files/promcode-vocab.ttl, with 0 issues (0 info, 0 warnings, 0 errors) Checked shapes from file:/Users/tomkamimura/PROMCODE/oslc-promcode/PROMCODE/build/install/ShapeChecker/../../../turtle_files/promcode-shapes.ttl, with 0 issues (0 info, 0 warnings, 0 errors) |
One more comment. We double checked our turtle files and confirmed the all the terms defined in vocab.ttl are referenced in shapes.ttl. You might think that a warning is gone because we added the parameter -q unusedVocabulary. We tested turtle files of QM that does not produce any warning. The script of Qm uses this parameter also. But, when we removed this parameter in the script of QM, it produced the same warning as the one we used to get. So, I don't know what causes a warning when the parameter unusedVocabulary is not used. At least, we can say that if there is a problem, QM probably has the same problem. In any case, the warning message produced by ShapeCheck does not seem accurate. |
… 2022/03/17 22:18、Andrew Berezovskyi ***@***.***>のメール:
I see, thanks Jim. I think most of the terms are covered by shapes, so we are good. I will see if I can get more output with more verbose log levels.
—
Reply to this email directly, view it on GitHub <#278 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AXJDHIT2AEPDC7R27GUDFTLVAMWMDANCNFSM4R4JWUQA>.
Triage notifications on the go with GitHub Mobile for iOS <https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android <https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.
|
See:
cc @mwakao @ndjc
The text was updated successfully, but these errors were encountered: