- From: Daniel Garijo <dgarijo@delicias.dia.fi.upm.es>
- Date: Sat, 9 Jun 2012 21:11:24 +0200
- To: Timothy Lebo <lebot@rpi.edu>
- Cc: Kai Eckert <kai@informatik.uni-mannheim.de>, public-prov-wg@w3.org, DC-PROVENANCE@jiscmail.ac.uk, DCMI Architecture <dc-architecture@jiscmail.ac.uk>
- Message-ID: <CAExK0DescWUNJMNS03v_5__seEwRRU2A_vH9W3sRp-7=Yr14sg@mail.gmail.com>
Thanks Tim, This is issue 403. Best, Daniel 2012/6/3 Timothy Lebo <lebot@rpi.edu> > Kai, > > Thanks for coordinating this mapping effort. > > It is clear that some thought has gone into both _how_ to map and _what_ > the mappings should be. > I'm sure others will be following in these similar steps as PROV matures. > We'll all certainly benefit from this work. > > I'm including a smattering of comments that I jotted down as I worked > through your materials. > It's "from the hip", so take it or leave any that do not concern you. > Some are editorial, others are about the content. > Also, feel free to follow up on any that you would like more clarity or > discussion on. > > Regards, > Tim Lebo > > > > > > Regarding > https://github.com/dcmi/DC-PROV-Mapping/wiki/Mapping-Primer#wiki-References > > 1) > "To be more precise, we define provenance metadata as metadata providing > provenance information according to the definition of the W3C Provenance > Incubator Group" > > Why are you still using the XG's definition? Does PROV-WG still not > provide one that you like? Should PROV-WG be explicit about their > definition of provenance (since its materials will become Recommendation > and XG's will not)? > > > 2) > > "For the complex mappings, we take the following approach: " > > is confusing. Is one of the "three parts" enumerated above "complex". Ah, > yes. The third. > > Suggest to draw that connection more clearly. > > 3) > > The points in the second half of the paragraph: > > ". A rationale for these two steps is that the mappings in stage 1 are > context free and do not depend on the existence of any other statements. On > the other hand, by employing the patterns developed for stage 2, any kind > of generated PROV data could be cleaned up at a later point, for instance > after the integration with provenance information from a different source, > which could be advantageous. " > > really should be promoted to the first half of the paragraph. It takes too > long to determine what the distinction is between the two phases. > > 4) > > The use of blank nodes is disturbing ( > http://linkeddatabook.com/editions/1.0/#htoc16). Please make it clear > that the bnodes only exist during the processing that you suggest, and that > bnodes are not produced in resulting PROV or DC records. > > 5) > > Direct mappings: > > -1 dct:references rdfs:subPropertyOf prov:wasDerivedFrom . > +1 dct:creator rdfs:subPropertyOf prov:wasAttributedTo . > +1 dct:rightsHolder rdfs:subPropertyOf prov:wasAttributedTo . > -1 (casting a broad to a specific) dct:date rdfs:subPropertyOf > prov:generatedAtTime . > +1 dct:Agent owl:equivalentClass prov:Agent . > -1 (reverse these) prov:hadOriginalSource rdfs:subPropertyOf dct:source . > +1 prov:wasRevisionOf rdfs:subPropertyOf dct:isVersionOf . > > Voting for all of them (in > https://github.com/dcmi/DC-PROV-Mapping/wiki/Direct-Mappings): > > +1 dct:Agent owl:equivalentClass prov:Agent. > -1 dct:references rdfs:subPropertyOf prov:wasDerivedFrom . > > +1 dct:rightsHolder rdfs:subPropertyOf prov:wasAttributedTo . > +1 dct:creator rdfs:subPropertyOf prov:wasAttributedTo . > +1 dct:publisher rdfs:subPropertyOf prov:wasAttributedTo . > +1 dct:contributor rdfs:subPropertyOf prov:wasAttributedTo . > > +1 dct:isVersionOf rdfs:subPropertyOf prov:wasDerivedFrom . > +1 dct:isFormatOf rdfs:subPropertyOf prov:alternateOf . > +1 dct:replaces rdfs:subPropertyOf prov:tracedTo . > +1 dct:source rdfs:subPropertyOf prov:wasDerivedFrom . > > -1 dct:date rdfs:subPropertyOf prov:generatedAtTime . > > I would support reversing the above. As it is, you are casting a general > "any date you wish" into a very specific meaning. > > At first glance, the following are concerning. If the same instance has > all of these properties, then it was generated at many distinct times. > Perhaps your complex mappings tease this out. > > -1 dct:issued rdfs:subPropertyOf prov:generatedAtTime . > -1 dct:dateAccepted rdfs:subPropertyOf prov:generatedAtTime . > -1 dct:dateCopyRighted rdfs:subPropertyOf prov:generatedAtTime . > -1 dct:dateSubmitted rdfs:subPropertyOf prov:generatedAtTime . > -1 dct:modified rdfs:subPropertyOf prov:generatedAtTime . > > The following casts a range into an instant of time. > > -1 dct:valid rdfs:subPropertyOf prov:generatedAtTime . > > -1 prov:hadOriginalSource rdfs:subPropertyOf dct:source . > > I would support reversing the above. PROV is pointing to a subset of the > sources that dct:source intends to cite. dct:source is the union of > hadOriginalSource and any of its derivations (and more, perhaps). > > +1 prov:wasRevisionOf rdfs:subPropertyOf dct:isVersionOf . > > > 6) > > In https://github.com/dcmi/DC-PROV-Mapping/wiki/Mapping-Primer > > For readability, I'd reverse the order of these: > > dcprov:CreationActivity rdfs:subClassOf > prov:Activity, dcprov:ContributionActivity . > dcprov:ContributionActivity rdfs:subClassOf > prov:Activity . > > 7) > > In https://github.com/dcmi/DC-PROV-Mapping/wiki/Mapping-Primer > > For readability, I'd reverse the order of these: > > dcprov:CreatorRole rdfs:subClassOf > prov:Role, dcprov:ContributorRole . > dcprov:ContributorRole rdfs:subClassOf > prov:Role . > > 8) > > If we reapply the SPARQL queries from the complex mappings twice, do we > get two un-identified blank nodes that should be identified? > If so, this leads to proliferation of bnodes that should be avoided. If > the queries are only to be informative, and those bnodes to be > appropriately named to avoid duplication, then I suggest this be clearly > stated. > > 9) > > In https://github.com/dcmi/DC-PROV-Mapping/wiki/Complex-Mappings-S1section "List of dc terms excluded from the mapping", > I suggest to organize by descriptive vs. provenance metadata. That way I > can review your categorization more easily, AND focus on only the > provenance metadata (which is the point of the mapping). > > 10) > > In https://github.com/dcmi/DC-PROV-Mapping/wiki/Mapping-Primer > > No bibliography for (DCMI Usage Board, 2010b) or (DCMI Usage Board, 2010a) > > You don't reference the URL http://dublincore.org/documents/dcmi-terms/ ? > > 11) > > It seems like you could include the content of > https://github.com/dcmi/DC-PROV-Mapping/wiki/Direct-Mappings and > https://github.com/dcmi/DC-PROV-Mapping/wiki/Prov-Specializationsdirectly in the "primer" - the redundancy is dissonant. > > Why three complex mappings in the primer? Why now fewer? > > The organization across 4 pages makes it difficult to determine "what is > where". I think the content as it is could stand on its own as one document. > > 12) > > Where is stage 2 of the complex mappings? > > > 13) Are there implementations of your complex mapping? > > > > 14) > > https://github.com/dcmi/DC-PROV-Mapping/wiki/Prov-Specializations > > The following order makes more sense to me > > dcprov:PublicationActivity rdfs:subClassOf prov:Activity . > dcprov:ContributionActivity rdfs:subClassOf prov:Activity . > dcprov:CreationActivity rdfs:subClassOf prov:Activity, > dcprov:ContributionActivity . > dcprov:ContributorRole rdfs:subClassOf prov:Role . > dcprov:PublisherRole rdfs:subClassOf prov:Role . > dcprov:CreatorRole rdfs:subClassOf prov:Role, > dcprov:ContributorRole . > > > > 15) > > https://github.com/dcmi/DC-PROV-Mapping/wiki/Prov-Specializations > > Are the following used in the complex rules? It would be very nice to show > which rules each specialization is used in. Similarly, it would be nice to > group rules by their use of PROV terms, and by "in the where" versus "in > the construct". A navigation like this would really bring the material > together nicely. > > dcprov:PublicationActivity rdfs:subClassOf prov:Activity . > dcprov:ContributionActivity rdfs:subClassOf prov:Activity . > dcprov:CreationActivity rdfs:subClassOf prov:Activity, > dcprov:ContributionActivity . > dcprov:ContributorRole rdfs:subClassOf prov:Role . > dcprov:PublisherRole rdfs:subClassOf prov:Role . > dcprov:CreatorRole rdfs:subClassOf prov:Role, > dcprov:ContributorRole . > > > 16) > > Is the following a copy paste error (publisher is never mentioned): > > https://github.com/dcmi/DC-PROV-Mapping/wiki/Complex-Mappings-S1 > > Section: dct:publisher > > CONSTRUCT { > ?doc a prov:Entity . > prov:wasAttributedTo ?ag . > _:out a prov:Entity . > prov:specializationOf ?doc . > ?ag a prov:Agent . > _:act a prov:Activity, dcprov:PublicationActivity ; > prov:wasAssociatedWith ?ag ; > prov:qualifiedAssociation _:assoc . > _:assoc a prov:Association ; > prov:agent ?ag ; > prov:hadRole dcprov:PublisherRole . > _:out prov:wasGeneratedBy _:act ; > prov:wasAttributedTo ?ag . > } WHERE { > ?doc dct:creator ?ag . > } > > > > 17) > > https://github.com/dcmi/DC-PROV-Mapping/wiki/Complex-Mappings-S1 > > spacing is off in: > > > dct:rightsHolder > > The rightsHolder is different, here we propose to omit the activity and > just add the rights holder to the entity by means of > prov:wasAttributedTo. This mapping could actually be omitted as the > statements can be inferred from the direct mapping. > > CONSTRUCT { > ?doc a prov:Entity . > ?ag a prov:Agent . > ?doc prov:wasAttributedTo ?ag . > } WHERE { > ?doc dct:rightsHolder?ag . > } > > > 18) > > https://github.com/dcmi/DC-PROV-Mapping/wiki/Complex-Mappings-S1 > > Recommend expanding variable names to be more readable (e.g., ?ag to > ?agent) > > 19) > > https://github.com/dcmi/DC-PROV-Mapping/wiki/Complex-Mappings-S1 > > Is there a reason why you use "_:iss_entity" instead of just the "[]" > syntax? smearing a node across the CONSTRUCT makes it more difficult to > read. You used the "[]" in : > > > dct:modified > > [ a prov:Generation ; > prov:atTime ?date ; > prov:activity _:act . ] . > > > > > > > On May 30, 2012, at 1:57 PM, Kai Eckert wrote: > > > Hello everyone, > > > > in the Dublin Core Metada Provenance Task Group (with the help of Simon > Miles), we have released an initial DC to PROV mapping draft. > > > > The work has been divided in several documents to improve readability: > > > > - The mapping primer [1] explains the process followed to do the > mapping, the main rationale of our decisions and our next steps. > > > > - The Direct Mappings document [2] shows the direct mappings found > between DC and PROV (e.g., subPropertyOf relations). > > > > - The PROV Specializations document [3] extends PROV-O with some basic > roles and properties to be able to perform the complex mappings. > > > > - Finally, the Complex-Mappings document [4] infers PROV statements from > DC statements that are not covered by the direct mappings. > > > > Please give us your feedback on our approach and the documents within > one week (until Tuesday, June 5th). > > > > We sent this mail both to the relevant DCMI mailinglists and the PROV > mailinglist in order to reach consensus. > > > > We are on a quite strict timetable now and aim at finishing the mapping > (Stage 2, and the mapping back from PROV to DC) until end of June to reach > the state of a public draft. > > > > Daniel will briefly present the current state in the PROV call tomorrow. > If you have any questions or comments, please don't hesitate to contact us. > > > > Thanks, > > Kai, Daniel, Michael and Simon. > > > > [1] https://github.com/dcmi/DC-PROV-Mapping/wiki/Mapping-primer > > [2] https://github.com/dcmi/DC-PROV-Mapping/wiki/Direct-Mappings > > [3] https://github.com/dcmi/DC-PROV-Mapping/wiki/Prov-Specializations > > [4] https://github.com/dcmi/DC-PROV-Mapping/wiki/Complex-Mappings-S1 > > > > -- > > Kai Eckert > > Universitätsbibliothek Mannheim > > Stellv. Leiter Abteilung Digitale Bibliotheksdienste > > Schloss Schneckenhof West / 68131 Mannheim > > Tel. 0621/181-2946 Fax 0621/181-2918 > > > > > > >
Received on Saturday, 9 June 2012 19:11:55 UTC