W3C

Results of Questionnaire PROV-CONSTRAINTS Implementation Report

The results of this questionnaire are available to anybody. In addition, answers are sent to the following email address: tdh@ecs.soton.ac.uk

This questionnaire was open from 2012-01-11 to 2013-03-30.

3 answers have been received.

Jump to results for question:

  1. Implementation Information
  2. Contact Information
  3. Implementation Type
  4. PROV Encodings Supported
  5. Framework Usage
  6. Test case identifiers that PASS validation
  7. Test case identifiers that FAIL validation
  8. Provenance Exchange

1. Implementation Information

Details

Responder NameURLDescription
Paul Groth prov-check https://github.com/pgroth/prov-check An implementation of the W3C Constraints of the PROV Data Model based on SPARQL.
Luc Moreau ProvValidator http://provenance.ecs.soton.ac.uk/validator/validator.html A service to validate provenance statements. The service is currently hosted at http://provenance.ecs.soton.ac.uk/validator/validator.html
James Cheney checker.pl https://github.com/jamescheney/prov-constraints
A reference implementation of prov-constraints in Prolog.

Authors: James Cheney (Edinburgh) and Stephen Cresswell (TSO)

2. Contact Information

Details

Responder NameEmail
Paul Groth Paul Groth pgroth@gmail.com
Luc Moreau Luc Moreau l.moreau@ecs.soton.ac.uk
James Cheney James Cheney jcheney@inf.ed.ac.uk

3. Implementation Type

summary | by responder | by choice

Choose all that apply

Summary

ChoiceAll responders
Results
Application (consumes / generates provenance)
Framework / API
Service
Validator 3

Skip to view by choice.

View by responder

Details

Responder Implementation Type
Paul Groth
  • Validator
Luc Moreau
  • Validator
James Cheney
  • Validator

View by choice

ChoiceResponders
Application (consumes / generates provenance)
Framework / API
Service
Validator
  • Paul Groth
  • Luc Moreau
  • James Cheney

4. PROV Encodings Supported

summary | by responder | by choice

Choose all that apply

Summary

ChoiceAll responders
Results
PROV-O 2
PROV-N 1
PROV-XML 2

Skip to view by choice.

View by responder

Details

Responder PROV Encodings SupportedPlease list any additional supported encodings (e.g. PROV-JSON, PROV-CSV, etc.) in the free-text area below
Paul Groth
  • PROV-O
Luc Moreau
  • PROV-O
  • PROV-N
  • PROV-XML
PROV-JSON
James Cheney
  • PROV-XML

View by choice

ChoiceResponders
PROV-O
  • Paul Groth
  • Luc Moreau
PROV-N
  • Luc Moreau
PROV-XML
  • Luc Moreau
  • James Cheney

5. Framework Usage

What tools or frameworks does your implementation use? How are you using them?

Details

Responder Framework Usage
Paul Groth I use RDFLib for parsing the turtle and RDF Lib Sparql for performing sparql queries over the information.
Luc Moreau ProvValidator is built on the ProvToolbox
James Cheney SWI Prolog + XML parsing library

6. Test case identifiers that PASS validation

Please list all filenames with extensions (one on each line) of the test cases that have passed validation

Details

Responder Test case identifiers that PASS validation
Paul Groth You can find a list here:
https://github.com/pgroth/prov-check/blob/master/tests/positive.txt

Note, I currently do not validate - prov-dm-ex23_start-PASS.ttl correctly. This is due to the handling of blank nodes in my implementation.
Luc Moreau All (can't be submitted with form)
James Cheney ordering-activity1-PASS-c30.provx
ordering-activity2-PASS-c33.provx
ordering-activity3-PASS-c34.provx
ordering-activity4-PASS-c31.provx
ordering-activity5-PASS-c32.provx
ordering-association1-PASS-c47.provx
ordering-association2-PASS-c47.provx
ordering-attribution1-PASS-c48.provx
ordering-attribution2-PASS-c48.provx
ordering-communication-PASS-c35.provx
ordering-delegation1-PASS-c49.provx
ordering-delegation2-PASS-c49.provx
ordering-derivation1-PASS-c42.provx
ordering-derivation3-PASS-c41-c42.provx
ordering-ends1-PASS-c44.provx
ordering-entity1-PASS-c36-c37-c38.provx
ordering-entity2-PASS-c36.provx
ordering-entity3-PASS-c39.provx
ordering-entity4-PASS-c40.provx
ordering-specialization1-PASS-c45.provx
ordering-specialization2-PASS-c46.provx
ordering-specialization3-PASS-c42-c45.provx
ordering-starts1-PASS-c43.provx
type-s1-PASS-c50-c55.provx
type-s2-PASS-c50-c55.provx
unification-activity-end-s1-PASS-c29.provx
unification-activity-s1-PASS-c22.provx
unification-activity-s2-PASS-c22.provx
unification-activity-s3-PASS-c22.provx
unification-activity-s4-PASS-c22.provx
unification-activity-start-s1-PASS-c28.provx
unification-association-s1-PASS-c23.provx
unification-association-s2-PASS-c23.provx
unification-association-s3-PASS-c23.provx
unification-association-s4-PASS-c23.provx
unification-association-s5-PASS-c23.provx
unification-attributes-activity-s1-PASS-c22.provx
unification-attributes-end-s1-PASS-c23.provx
unification-attributes-end-s2-PASS-c23.provx
unification-attributes-entity-s1-PASS-c22.provx
unification-attributes-start-s1-PASS-c23.provx
unification-attributes-start-s2-PASS-c23.provx
unification-attribution-s1-PASS-c23.provx
unification-attribution-s2-PASS-c23.provx
unification-attribution-s3-PASS-c23.provx
unification-attribution-s4-PASS-c23.provx
unification-communication-s1-PASS-c23.provx
unification-communication-s2-PASS-c23.provx
unification-communication-s3-PASS-c23.provx
unification-communication-s4-PASS-c23.provx
unification-delegation-s1-PASS-c23.provx
unification-delegation-s2-PASS-c23.provx
unification-delegation-s5-PASS-c23.provx
unification-derivation-s1-PASS-c23.provx
unification-derivation-s2-PASS-c23.provx
unification-derivation-s3-PASS-c23.provx
unification-derivation-s4-PASS-c23.provx
unification-derivation-s5-PASS-c23.provx
unification-end-s1-PASS-c27.provx
unification-end-s2-PASS-c27.provx
unification-end-s3-PASS-c27.provx
unification-end-s4-PASS-c27.provx
unification-end-s5-PASS-c23-c27.provx
unification-end-s6-PASS-c23-c27.provx
unification-generation-s1-PASS-c23.provx
unification-generation-s2-PASS-c23.provx
unification-generation-s3-PASS-c24.provx
unification-generation-s5-PASS-c23.provx
unification-generation-s6-PASS-c23.provx
unification-generation-s7-PASS-c23-c24.provx
unification-generation-s8-PASS-c23-c24.provx
unification-influence-s1-PASS-c23.provx
unification-invalidation-s1-PASS-c23.provx
unification-invalidation-s2-PASS-c23.provx
unification-invalidation-s3-PASS-c25.provx
unification-invalidation-s5-PASS-c23.provx
unification-invalidation-s6-PASS-c23.provx
unification-invalidation-s7-PASS-c23-c25.provx
unification-invalidation-s8-PASS-c23-c25.provx
unification-specialization-s1-PASS.provx
unification-specialization-s2-PASS.provx
unification-start-s1-PASS-c26.provx
unification-start-s2-PASS-c26.provx
unification-start-s3-PASS-c26.provx
unification-start-s4-PASS-c26.provx
unification-start-s5-PASS-c23-c26.provx
unification-start-s6-PASS-c23-c26.provx
unification-start-s7-PASS-c23-c26.provx
unification-start-s8-PASS-c23-c26.provx
unification-start-s9-PASS-c23-c26.provx
unification-usage-f5-PASS-c23.provx
unification-usage-f6-PASS-c23.provx
unification-usage-f7-PASS-c23.provx
unification-usage-s1-PASS-c23.provx
unification-usage-s2-PASS-c23.provx
unification-usage-s5-PASS-c23.provx
unification-usage-s6-PASS-c23.provx
unification-usage-s7-PASS-c23.provx
unification-usage-s8-PASS-c23.provx

7. Test case identifiers that FAIL validation

Please list all filenames with extensions (one on each line) of the test cases that have failed validation

Details

Responder Test case identifiers that FAIL validation
Paul Groth You can find a list here:

https://github.com/pgroth/prov-check/blob/master/tests/negative.txt
Luc Moreau All (can't be submitted with form)
James Cheney ordering-derivation2-FAIL-c42.provx
ordering-specialization4-FAIL-c42-c45.provx
type-collection-FAIL-c56.provx
type-f1-FAIL-c50-c55.provx
type-f2-FAIL-c50-c55.provx
type-f3-FAIL-c54.provx
type-f4-FAIL-c53.provx
unification-activity-end-f1-FAIL-c29.provx
unification-activity-start-f1-FAIL-c28.provx
unification-association-f1-FAIL-c23.provx
unification-association-f2-FAIL-c23.provx
unification-association-f3-FAIL-c23.provx
unification-association-f4-FAIL-c23.provx
unification-association-f5-FAIL-c23.provx
unification-bundle-f1-FAIL-c55-c56.provx
unification-delegation-f1-FAIL-c23.provx
unification-delegation-f2-FAIL-c23.provx
unification-delegation-f3-FAIL-c23.provx
unification-derivation-f1-FAIL-c23.provx
unification-derivation-f2-FAIL-c23.provx
unification-derivation-f3-FAIL-c23.provx
unification-derivation-f4-FAIL-c23.provx
unification-end-f1-FAIL-c23.provx
unification-end-f2-FAIL-c23.provx
unification-end-f3-FAIL-c23.provx
unification-end-f4-FAIL-c27.provx
unification-end-f5-FAIL-c23.provx
unification-generation-f1-FAIL-c24.provx
unification-generation-f2-FAIL-c23.provx
unification-generation-f3-FAIL-c23.provx
unification-generation-f4-FAIL-c23.provx
unification-generation-f5-FAIL-c23.provx
unification-generation-f6-FAIL-c23.provx
unification-generation-f7-FAIL-c23.provx
unification-invalidation-f1-FAIL-c25.provx
unification-invalidation-f2-FAIL-c23.provx
unification-invalidation-f3-FAIL-c23.provx
unification-invalidation-f4-FAIL-c23.provx
unification-invalidation-f5-FAIL-c23-c25.provx
unification-invalidation-f6-FAIL-c23-c25.provx
unification-invalidation-f7-FAIL-c23-c25.provx
unification-specialization-f3-FAIL-c52.provx
unification-specialization-f4-FAIL-c52.provx
unification-start-f1-FAIL-c23.provx
unification-start-f2-FAIL-c23.provx
unification-start-f3-FAIL-c23.provx
unification-start-f4-FAIL-c26.provx
unification-start-f5-FAIL-c23.provx
unification-start-f6-FAIL-c23.provx
unification-start-f7-FAIL-c23.provx
unification-start-f8-FAIL-c23.provx
unification-usage-f2-FAIL-c23.provx
unification-usage-f3-FAIL-c23.provx
unification-usage-f4-FAIL-c23.provx


Also, the following tests are not valid XML according to
https://dvcs.w3.org/hg/prov/raw-file/default/xml/schema/prov.xsd

and are rejected by checker.pl before validation is attempted:

unification-delegation-s3-PASS-c23.provx
unification-delegation-s4-PASS-c23.provx

unification-association-f6-FAIL-DM
unification-attribution-f1-FAIL-DM
unification-attribution-f2-FAIL-DM
unification-communication-f1-FAIL-DM
unification-communication-f2-FAIL-DM
unification-delegation-f6-FAIL-DM
unification-influence-f1-FAIL-DM
unification-influence-f2-FAIL-DM
unification-membership-f1-FAIL-DM
unification-specialization-f1-FAIL-DM
unification-specialization-f2-FAIL-DM
prov-o-property-hadGeneration-FAIL-c51-DM
prov-o-property-hadUsage-FAIL-c51-DM

(this includes all of the tests listed as "malformed" in the Constraints Testcases document plus two that are not valid PROV-XML but marked as "PASS")

8. Provenance Exchange

Has this implementation been used to consume a PROV serialization generated by another tool? If so, please identify the other tool and describe how it was used.

Details

Responder Provenance Exchange
Paul Groth
Luc Moreau Yes, ProvValidator validates provenance produced by CollabMap and PON.
See Daniel's application too.
James Cheney Assuming that the test cases are produced by prov-toolbox, this implementation has been used to consume PROV-XML as generated by prov-toolbox.

More details on responses

  • Luc Moreau: last responded on 18, February 2013 at 10:52 (UTC)
  • James Cheney: last responded on 20, February 2013 at 16:01 (UTC)

Everybody has responded to this questionnaire.


Compact view of the results / list of email addresses of the responders

WBS home / Questionnaires / WG questionnaires / Answer this questionnaire