ShEx Fancy Demo Problem: stems

Hi Eric,

I’m having problems defining an IRI stem as the object of a Shape Expression.

Previously I had the following definition

BASE <http://base.example/#>

PREFIX dcat: <http://www.w3.org/ns/dcat#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX dctypes: <http://purl.org/dc/dcmitype/>
PREFIX foaf: <http://foaf.example/#>
PREFIX freq: <http://purl.org/cld/freq/>
PREFIX lexvo: <http://lexvo.org/id/iso639-3/>
PREFIX pav: <http://purl.org/pav/>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX sd: <http://www.w3.org/ns/sparql-service-description#>
PREFIX void: <http://rdfs.org/ns/void#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

start = <EntryLevelShape>

<EntryLevelShape> {
    rdf:type (dctypes:Dataset),
    dct:title xsd:string,  ### should be rdf:langString
    dct:description xsd:string, ### should be rdf:langString
    dct:publisher IRI,
    (foaf:page IRI)?,
    dct:license IRI,
    dct:accrualPeriodicity freq:~?
}

which validated the following RDF

BASE <http://rdf.ebi.ac.uk/chembl/>

PREFIX dcat: <http://www.w3.org/ns/dcat#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX dctypes: <http://purl.org/dc/dcmitype/>
PREFIX foaf: <http://foaf.example/#>
PREFIX freq: <http://purl.org/cld/freq/>
PREFIX lexvo: <http://lexvo.org/id/iso639-3/>
PREFIX pav: <http://purl.org/pav/>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX sd: <http://www.w3.org/ns/sparql-service-description#>
PREFIX void: <http://rdfs.org/ns/void#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

<chembl>
    rdf:type dctypes:Dataset ;
    dct:title "ChEMBL"@en ;
    dct:description "ChEMBL is a database of bioactive drug-like small molecules, it contains 2-D structures, calculated properties (e.g. logP, Molecular Weight, Lipinski Parameters, etc.) and abstracted bioactivities (e.g. binding constants, pharmacology and ADMET data). The data is abstracted and curated from the primary scientific literature, and cover a significant fraction of the SAR and discovery of modern drugs. We attempt to normalise the bioactivities into a uniform set of end-points and units where possible, and also to tag the links between a molecular target and a published assay with a set of varying confidence levels. Additional data on clinical progress of compounds is being integrated into ChEMBL at the current time."@en ;
    dct:publisher <http://www.ebi.ac.uk/> ;
    foaf:page <https://www.ebi.ac.uk/chembl> ;
    dct:license <http://creativecommons.org/licenses/by-sa/3.0/>;
    dct:accrualPeriodicity freq:quarterly
.

However, I now get the following error message from the schema parser
Line 25, column 33: Expected "#", "%", "*", "+", ",", ":", "=", "?", "[", "\\", "_", "{", "|", "}", [ \t\r\n], [0-9], [A-Z] or [a-z] but "~" found.

If I put brackets around the value, so I have '(freq:~)?’ the schema will parse, but it does not match the corresponding triple in the RDF and I get the following message

Errors:
 ☹   expected <http://rdf.ebi.ac.uk/chembl/chembl> <http://purl.org/dc/terms/accrualPeriodicity> <http://purl.org/cld/freq/quarterly>. to match <http://purl.org/dc/terms/accrualPeriodicity> (<http://purl.org/cld/freq/>~)?


Is this a feature that you have not fully implemented? It is something that we use quite a bit in the HCLS validator.

Thanks,

Alasdair


Alasdair J G Gray
Lecturer in Computer Science, Heriot-Watt University, UK.
Email: A.J.G.Gray@hw.ac.uk<mailto:A.J.G.Gray@hw.ac.uk>
Web: http://www.macs.hw.ac.uk/~ajg33

ORCID: http://orcid.org/0000-0002-5711-4872

Telephone: +44 131 451 3429
Twitter: @gray_alasdair
Arrange a Meeting: http://doodle.com/agray






----- 
Sunday Times Scottish University of the Year 2011-2013
Top in the UK for student experience
Fourth university in the UK and top in Scotland (National Student Survey 2012)


We invite research leaders and ambitious early career researchers to 
join us in leading and driving research in key inter-disciplinary themes. 
Please see www.hw.ac.uk/researchleaders for further information and how
to apply.

Heriot-Watt University is a Scottish charity
registered under charity number SC000278.

Received on Friday, 23 May 2014 14:54:18 UTC