Skip to content

LODSPeaKr

timrdf edited this page Jan 29, 2012 · 65 revisions

Alvaro Graves has a simple Linked Data publishing kit

This page has my DataFAQs-specific notes about lodspeakr. I'm putting the more general stuff onto his wiki directly. I've forked Alvaro's lodspeakr at https://github.com/timrdf/DataFAQs-lodspeakr to contain datafaqs-specific models and views. The plan it to always merge his latest into mine, with the only difference being my models and views.

Pieces of DataFAQs' lodspeakr

Notes

When loading http://sparql.tw.rpi.edu/datafaqs/epoch, show:

  • A list of epochs (the number of faqts used, and the number of datasets evaluated)

When loading http://sparql.tw.rpi.edu/datafaqs/epoch/2012-01-21, show:

  • The three configuration graphs (datasets, faqt-services, dataset-references) with dump links.
  • The faqt service description graphs (with triple count and dump links)
  • The dataset description graphs (with triple count and dump links)
  • The evaluation description graphs (with triple count and dump links).
    • % passed instances in evaluation
  • list the faqts and the size of the self-describing graphs across epochs.
  • list the datasets and the size of the description graphs across epochs.

Queries

Configuration Graphs for a given epoch (fill in ?epoch). These graphs list the FAqT evaluation services to apply, the Datasets to evaluate, and references from which to obtain additional dataset descriptions.

prefix void:     <http://rdfs.org/ns/void#>
prefix sd:       <http://www.w3.org/ns/sparql-service-description#>
prefix datafaqs: <http://purl.org/twc/vocab/datafaqs#>

select distinct ?gn ?epoch ?config ?triples ?name ?dump
where { 
   graph ?gn {

      ?epoch a datafaqs:Epoch; 
         void:subset ?config 
      .
      ?config a datafaqs:EpochConfigurationGraph .

      optional {             ?config  void:triples  ?triples }
      optional {             ?config  void:dataDump ?dump    }
      optional { [] sd:graph ?config; sd:name       ?name    }
   }
} order by desc(?config) ?gn ?epoch

FAqT self-descriptions provided during a given epoch (fill in ?epoch):

prefix foaf:     <http://xmlns.com/foaf/0.1/>
prefix void:     <http://rdfs.org/ns/void#>
prefix sd:       <http://www.w3.org/ns/sparql-service-description#>
prefix prov:     <http://www.w3.org/ns/prov-o/>
prefix datafaqs: <http://purl.org/twc/vocab/datafaqs#>

select distinct ?autobio ?triples ?about ?gname ?dump
where { 
   graph ?gn {

      ?epoch  a datafaqs:Epoch; 
         void:subset ?autobio 
      .
      ?autobio a prov:Account; 
         prov:wasAttributedTo ?service; # The service was 
         foaf:primaryTopic    ?service  # talking about itself.
      .
      ?service a datafaqs:FAqTService; prov:specializationOf ?about .

      optional {             ?autobio  void:dataDump ?dump    }
      optional {             ?autobio  void:triples  ?triples }
      optional { [] sd:graph ?autobio; sd:name       ?gname   }
   }
}

Dataset descriptions accumulated from dereferencing their URI, their preferredURI, and their VoID file. Other sources of descriptions may be included, based on the behavior of the DatasetReferencer service invoked.

prefix foaf:     <http://xmlns.com/foaf/0.1/>
prefix void:     <http://rdfs.org/ns/void#>
prefix sd:       <http://www.w3.org/ns/sparql-service-description#>
prefix prov:     <http://www.w3.org/ns/prov-o/>
prefix datafaqs: <http://purl.org/twc/vocab/datafaqs#>

select distinct ?gn ?epoch ?meta ?triples ?about ?gname ?dump
where { 
   graph ?gn {

      ?epoch a datafaqs:Epoch; 
         void:subset ?meta 
      .
      ?meta a void:Graph; 
         prov:wasAttributedTo [ a datafaqs:DatasetReferencer ];
         foaf:primaryTopic    [ prov:specializationOf ?about ]
      .
      optional {             ?meta  void:triples  ?triples }
      optional {             ?meta  void:dataDump ?dump    }
      optional { [] sd:graph ?meta; sd:name       ?gname   }
   }
} order by desc(?meta) ?gn ?epoch

The evaluations returned by the FAqT service evaluations when given the Dataset descriptions within the given epoch (fill in ?epoch).

prefix void:     <http://rdfs.org/ns/void#>
prefix sd:       <http://www.w3.org/ns/sparql-service-description#>
prefix prov:     <http://www.w3.org/ns/prov-o/>
prefix datafaqs: <http://purl.org/twc/vocab/datafaqs#>

select distinct ?gn ?epoch ?meta ?triples ?name ?dump
where { 
   graph ?gn {

      ?epoch a datafaqs:Epoch; 
         void:subset ?meta 
      .
      ?meta a datafaqs:Evaluation .
      
      optional {             ?meta  void:triples  ?triples }
      optional {             ?meta  void:dataDump ?dump    }
      optional { [] sd:graph ?meta; sd:name       ?name    }
   }
} order by desc(?meta) ?gn ?epoch

How many things have ephemeral versions of more abstract things? TODO: the same ephemeral is specialization of two distinct abstracts. BAD.

prefix conversion: <http://purl.org/twc/vocab/conversion/>
prefix datafaqs:   <http://purl.org/twc/vocab/datafaqs#>
prefix prov:       <http://www.w3.org/ns/prov-o/>

select distinct ?gn ?abstract ?ephemeral
where {
   graph ?gn {
      ?ephemeral prov:specializationOf ?abstract
   }
} order by ?abstract ?ephemeral

The binary evaluations from the FAqT evaluation services during a given epoch (fill in ?epoch). Evaluation can also be "unknown". The evaluation graph size and dump are also returned in case it is of interest for inspection. TODO: there are too many dump files for each evaluation. It seems that all have each others' dump files. BAD.

prefix dcterms:    <http://purl.org/dc/terms/>
prefix void:       <http://rdfs.org/ns/void#>
prefix sd:         <http://www.w3.org/ns/sparql-service-description#>
prefix prov:       <http://www.w3.org/ns/prov-o/>
prefix datafaqs:   <http://purl.org/twc/vocab/datafaqs#>

select distinct ?abstract ?type ?ephemeral ?date ?triples ?dump
where {
  graph ?gn  {
    ?ephemeral a void:Dataset;
       prov:specializationOf ?abstract ; 
       dcterms:date ?date .
    ?abstract a void:Dataset .
    optional { [] sd:name  ?ephemeral; 
                  sd:graph ?eval .
                           ?eval void:triples ?triples .
       optional {
          ?eval void:dataDump ?dump
       }
    }
  }
  optional {
     graph ?ephemeral {
        ?abstract a ?type .
        filter( ?type = datafaqs:Satisfactory || 
                ?type = datafaqs:Unsatisfactory )
     }
  }
}

All named graphs within the SPARQL endpoint, and their size and dump files if available.

PREFIX void: <http://rdfs.org/ns/void#>
PREFIX sd:   <http://www.w3.org/ns/sparql-service-description#>

select distinct ?name ?triples ?dump
where {
   graph ?name {
      [] a []
   }
   optional {
      graph ?meta {
        [] sd:name  ?name;
           sd:graph ?graph .
        ?graph void:dataDump ?dump .
        optional { 
           ?graph void:triples ?triples 
        }
      }
   }
}
PREFIX prov: <http://www.w3.org/ns/prov-o/>
PREFIX void: <http://rdfs.org/ns/void#>
PREFIX datafaqs: <http://purl.org/twc/vocab/datafaqs#>

SELECT distinct ?gn ?ephemeral ?dataset
WHERE {
  GRAPH <http://datafaqs.tw.rpi.edu/datafaqs/epoch/2012-01-27/config/datasets> {
    ?dataset a datafaqs:CKANDataset
  }
  GRAPH ?gn {
    ?ephemeral prov:specializationOf ?dataset
  }
}

The number of classes in each named graph:

prefix void:     <http://rdfs.org/ns/void#>
prefix sd:       <http://www.w3.org/ns/sparql-service-description#>
prefix datafaqs: <http://purl.org/twc/vocab/datafaqs#>

select ?name ?type count(?s) as ?count
where {
   graph ?name {
      ?s a ?type
   }
} group by ?name ?type order by ?name desc(?count) ?type
PREFIX void:     <http://rdfs.org/ns/void#>
PREFIX sd:       <http://www.w3.org/ns/sparql-service-description#>
PREFIX datafaqs: <http://purl.org/twc/vocab/datafaqs#>

SELECT distinct ?s
WHERE {
   GRAPH <http://datafaqs.tw.rpi.edu/datafaqs/epoch/2012-01-29/dataset/4> {
      ?s ?p []
   }
}
PREFIX void:     <http://rdfs.org/ns/void#>
PREFIX sd:       <http://www.w3.org/ns/sparql-service-description#>
PREFIX datafaqs: <http://purl.org/twc/vocab/datafaqs#>
PREFIX prov:     <http://www.w3.org/ns/prov-o/>
PREFIX dcterms:  <http://purl.org/dc/terms/> 

SELECT distinct ?faqt_service (count(?ephemeral) as ?num_epochs)
WHERE {
   GRAPH ?name {
      ?ephemeral a datafaqs:FAqTService; prov:specializationOf ?faqt_service ; dcterms:date ?date .
   }
}GROUP BY ?faqt_service

Dataset evaluations, their sizes, and their dump files for a given epoch:

PREFIX void:     <http://rdfs.org/ns/void#>
PREFIX sd:       <http://www.w3.org/ns/sparql-service-description#>
PREFIX datafaqs: <http://purl.org/twc/vocab/datafaqs#>
PREFIX prov:     <http://www.w3.org/ns/prov-o/>
PREFIX dcterms:  <http://purl.org/dc/terms/> 
PREFIX foaf:     <http://xmlns.com/foaf/0.1/>

SELECT distinct ?dataset ?triples ?dump
WHERE {
   GRAPH ?gn {
      {{epoch}} void:subset ?abstract .
      []
         a sd:NamedGraph;
         sd:name  ?name;
         sd:graph ?abstract
      .
      ?abstract
         a prov:Account, sd:Graph, void:Graph, datafaqs:Evaluation;
         void:triples         ?triples;
         prov:wasAttributedTo ?faqt_service;
         foaf:primaryTopic    ?ephemeral;
         void:dataDump        ?dump
      .
      ?ephemeral 
         a void:Dataset;
         prov:specializationOf ?dataset
      .
   }
}
prefix void:     <http://rdfs.org/ns/void#>
prefix datafaqs: <http://purl.org/twc/vocab/datafaqs#>

select distinct ?g ?s ?subset
where { 
   graph ?gn {
      ?s a datafaqs:Epoch ; void:subset ?subset
   }
} order by ?subset ?s ?g
Clone this wiki locally