Re: [dxwg] Usage notes [RUN] (#86)

You can find below some of the possible solutions to support the representation of Usage Note, also based on discussion we had  with @andrea-perego and @agbeltran  at the last [DCAT teleconference](https://www.w3.org/2019/03/06-dxwgdcat-minutes).  Please let me know which is more reasonable for you so that I can prepare a   Pull Request.

**Solution 1 :**  Using skos:note and its subproperties ( e.g., skos:scopeNote, skos:editorialNote). 

  

     ex:dataset a dcat:Dataset;
        skos:scopeNote "This dataset is not updated, it is served as an example."@en.
          
Pros: This is a simple pattern I have seen applied. For example, we are documenting properties and classes in the [DCAT ttl](https://github.com/w3c/dxwg/blob/gh-pages/dcat/rdf/dcat.ttl) with skos:scopeNote.

**Solution 2** : If we think that skos:scopeNote is misleading, we might define a fresh new DCAT  term such as dcat:usageNote. 

     ex:dataset a dcat:Dataset;
         dcat:usageNote "This dataset is not updated, it is served as example."@en.

**Solution 3:** Using  Web Annotation Vocabulary        

     :note   
         a oa:Annotation;
         oa:hasTarget  ex:dataset  ;
         oa:hasBody :textBody ;
         oa:motivatedBy  oa:commenting .
         
     :textBody a oa:TextualBody ;
         rdf:value "This dataset is not updated, it is served as an example." ;
         dc:language "en" ; 
         dc:format "text/plain".

We probably need to be more specific about the motivation of the annotation.  Following the instructions about [Extending Motivations](https://www.w3.org/TR/annotation-vocab/#extending-motivations) we can define a dedicated motivation ( i.e.  dcat:usageNote, or dcat:useNote  if dcat:usageNote clashes with the name of the property  defined in solution 2) as it follows

    dcat:usegeNote a oa:Motivation;
     skos:broader  oa:commenting .

**Solution 4:**  Using  dqv:QualityAnnotation. The concept of  Usage Note is somehow related to fitness for use, and then to the notion of quality. We can express the same note above by  dqv:QualityAnnotation ( which is a subclass of oa:Annotation).  

    #DQV
       ex:dataset a dcat:Dataset ;
          #By using DQV, we can use dqv:hasQualityAnnotation relates the dcat dataset to the (quality) annotation, 
            dqv:hasQualityAnnotation :note .
            
        :note  
         # instance of  dqv:QualityAnnotation instead of oa:Annotation
            a dqv:QualityAnnotation ;
            oa:hasTarget  ex:dataset  ;
            oa:hasBody :textBody ;
            # added dqv:qualityAssessment
            oa:motivatedBy dqv:qualityAssessment,  dcat:usegeNote .
    
        :textBody a oa:TextualBody ;
            rdf:value "This dataset is not updated, it is served as an example." ;
            dc:language "en" ; 
            dc:format "text/plain"



**Balancing simple and complex solutions** 
There might be reasons for supporting both one of the straightforward solutions (i.e., solution 1 and 2) and one of the more complex pattern based on OA and DQV  (i.e., solution 3 and 4).  
Among the possible reasons, I can count flexibility, reuse of existing patterns.

As far as I remember you cannot have property chain ending by literals, so we might think of  providing some sparql Contruct/ insert  to convert  solution 3 or 4 into 1 or 2. For example, 

    PREFIX dcat: <http://www.w3.org/ns/dcat#>
    PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
    PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
    PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
    PREFIX dqv: <http://www.w3.org/ns/dqv#>
    Prefix oa: <http://www.w3.org/ns/oa#>
    prefix dc: <http://purl.org/dc/elements/1.1/>
    
    Insert { ?a a dcat:Dataset;
    dcat:usageNote ?blang
     }WHERE {
         ?a dqv:hasQualityAnnotation ?note .
         ?note oa:hasBody ?textBody ;
          oa:motivatedBy  dcat:useNote .
         ?textBody a oa:TextualBody ;
                rdf:value ?b;
                dc:language ?lang ; 
                dc:format "text/plain";
      BIND (STRLANG(?b,?lang) AS ?blang)
    }


Probably 1+4 is the one which maximises the reuse of what is already othe there  as it reuses skos, DQV, and OA  being dqv:QualityAnnotation based on  web annotation vocabulary. 

Let's try a  quick vote on the solutions to see how the group is oriented.   I suggest to  exploit the emoticons with the following meaning
- laugh : solution 1
- hooray: solution 2
- confused : solution 3
- heart : solution 4
- rocket : in favour of combined solutions
- eyes : against combined solutions

Combining more that one emoticons people can try to express a quite composite opinion, let's see if it works ;) 
Comments and other attempts of solutions are welcome as well.

-- 
GitHub Notification of comment by riccardoAlbertoni
Please view or discuss this issue at https://github.com/w3c/dxwg/issues/86#issuecomment-470996474 using your GitHub account

Received on Friday, 8 March 2019 16:49:27 UTC