shex-test
Version:
Shape Expressions library tests.
310 lines (282 loc) • 13.8 kB
text/turtle
BASE <http://www.w3.org/ns/shex#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX sx: <http://www.w3.org/ns/shex#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
[] a sx:Schema ;
sx:start <Schema> ;
sx:shapes
<Annotation>,
<EachOf>,
<NodeConstraint>,
<OneOf>,
<Schema>,
<SemAct>,
<SemActList1Plus>,
<Shape>,
<ShapeAnd>,
<ShapeExternal>,
<ShapeNot>,
<ShapeOr>,
<IriStem>,
<IriStemRange>,
<TripleConstraint>,
<Wildcard>,
<facet_holder>,
<numericLiteral>,
<objectValue>,
<shapeExpr>,
<shapeExprList1Plus>,
<shapeExprList2Plus>,
<tripleExpression>,
<tripleExpressionList1Plus>,
<tripleExpressionList2Plus>,
<valueSetValue>,
<valueSetValueList1Plus> .
<Schema> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:Schema ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:startActs ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <SemActList1Plus> ]
[ a sx:TripleConstraint ; sx:predicate sx:start ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <shapeExpr> ]
[ a sx:TripleConstraint ; sx:predicate sx:shapes ; sx:min 0 ; sx:max -1 ;
sx:valueExpr <shapeExprList1Plus> ] ) ] .
<shapeExpr> a sx:ShapeOr ;
sx:shapeExprs ( <ShapeOr> <ShapeAnd> <ShapeNot> <NodeConstraint> <Shape> <ShapeExternal> ) .
<ShapeOr> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:ShapeOr ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:shapeExprs ;
sx:valueExpr <shapeExprList2Plus> ] ) ] .
<ShapeAnd> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:ShapeAnd ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:shapeExprs ;
sx:valueExpr <shapeExprList2Plus> ] ) ] .
<ShapeNot> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:ShapeNot ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:shapeExpr ;
sx:valueExpr <shapeExpr> ] ) ] .
<NodeConstraint> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:NodeConstraint ) ] ]
[ a sx:OneOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate sx:nodeKind ;
sx:valueExpr
[ a sx:NodeConstraint ; sx:values ( sx:iri sx:bnode sx:literal sx:nonliteral ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:datatype ;
sx:valueExpr [ a sx:NodeConstraint ; sx:nodeKind sx:iri ] ]
<stringFacet>
<numericFacet>
[ a sx:TripleConstraint ; sx:predicate sx:values ; sx:min 1 ; sx:max -1 ;
sx:valueExpr <valueSetValueList1Plus> ] ) ] ) ] .
<Shape> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:Shape ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:closed ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( true false ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:extra ; sx:min 0 ; sx:max -1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:nodeKind sx:iri ] ]
[ a sx:TripleConstraint ; sx:predicate sx:expression ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <tripleExpression> ]
[ a sx:TripleConstraint ; sx:predicate sx:semActs ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <SemActList1Plus> ]
[ a sx:TripleConstraint ; sx:predicate sx:annotation ; sx:min 0 ; sx:max -1 ;
sx:valueExpr <SemActList1Plus> ] ) ] .
<ShapeExternal> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:ShapeExternal ) ] ] .
<SemAct> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:SemAct ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:name ;
sx:valueExpr [ a sx:NodeConstraint ; sx:nodeKind sx:iri ] ]
[ a sx:TripleConstraint ; sx:predicate sx:code ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:string ] ] ) ] .
<Annotation> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:Annotation ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:predicate ;
sx:valueExpr [ a sx:NodeConstraint ; sx:nodeKind sx:iri ] ]
[ a sx:TripleConstraint ; sx:predicate sx:object ; sx:valueExpr <objectValue> ] ) ] .
<facet_holder> a sx:Shape ;
sx:expression [ a sx:EachOf ; sx:expressions ( <stringFacet> <numericFacet> ) ] .
<stringFacet> a sx:OneOf ;
sx:expressions (
[ a sx:TripleConstraint ; sx:predicate sx:length ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:minlength ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:maxlength ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:pattern ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:string ] ] ) .
<numericFacet> a sx:OneOf ;
sx:expressions (
[ a sx:TripleConstraint ; sx:predicate sx:mininclusive ;
sx:valueExpr <numericLiteral> ]
[ a sx:TripleConstraint ; sx:predicate sx:minexclusive ;
sx:valueExpr <numericLiteral> ]
[ a sx:TripleConstraint ; sx:predicate sx:maxinclusive ;
sx:valueExpr <numericLiteral> ]
[ a sx:TripleConstraint ; sx:predicate sx:maxexclusive ;
sx:valueExpr <numericLiteral> ]
[ a sx:TripleConstraint ; sx:predicate sx:totaldigits ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:fractiondigits ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ] ) .
<numericLiteral> a sx:ShapeOr ;
sx:shapeExprs (
[ a sx:NodeConstraint ; sx:datatype xsd:integer ]
[ a sx:NodeConstraint ; sx:datatype xsd:decimal ]
[ a sx:NodeConstraint ; sx:datatype xsd:double ] ) .
<valueSetValue> a sx:ShapeOr ;
sx:shapeExprs ( <objectValue> <IriStem> <IriStemRange> ) .
<objectValue> a sx:ShapeOr ;
sx:shapeExprs (
[ a sx:NodeConstraint ; sx:nodeKind sx:iri ]
[ a sx:NodeConstraint ; sx:nodeKind sx:literal ] ) .
<IriStem> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:IriStem ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:stem ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:string ] ] ) ] .
<IriStemRange> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:IriStemRange ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:stem ;
sx:valueExpr [ a sx:ShapeOr ; sx:shapeExprs (
[ a sx:NodeConstraint ; sx:datatype xsd:string ]
<Wildcard> ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:exclusion ; sx:min 0 ; sx:max -1 ;
sx:valueExpr [ a sx:ShapeOr ; sx:shapeExprs (
<objectValue>
<IriStem> ) ] ] ) ] .
<Wildcard> a sx:ShapeAnd ;
sx:shapeExprs (
[ a sx:NodeConstraint ; sx:nodeKind sx:bnode ]
[ a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:Wildcard ) ] ] ] ) .
<tripleExpression> a sx:ShapeOr ;
sx:shapeExprs ( <TripleConstraint> <OneOf> <EachOf> ) .
<OneOf> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:OneOf ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:min ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:max ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:expressions ;
sx:valueExpr <tripleExpressionList2Plus> ]
[ a sx:TripleConstraint ; sx:predicate sx:semActs ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <SemActList1Plus> ]
[ a sx:TripleConstraint ; sx:predicate sx:annotation ; sx:min 0 ; sx:max -1 ;
sx:valueExpr <Annotation> ] ) ] .
<EachOf> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr
[ a sx:NodeConstraint ; sx:values ( sx:EachOf ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:min ; sx:min 0 ; sx:max 1 ;
sx:valueExpr
[ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:max ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:expressions ;
sx:valueExpr <tripleExpressionList2Plus> ]
[ a sx:TripleConstraint ; sx:predicate sx:semActs ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <SemActList1Plus> ]
[ a sx:TripleConstraint ; sx:predicate sx:annotation ; sx:min 0 ; sx:max -1 ;
sx:valueExpr <Annotation> ] ) ] .
<tripleExpressionList2Plus> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:first ;
sx:valueExpr <tripleExpression> ]
[ a sx:TripleConstraint ; sx:predicate rdf:rest ;
sx:valueExpr <tripleExpressionList1Plus> ] ) ] .
<tripleExpressionList1Plus> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:first ;
sx:valueExpr <tripleExpression> ]
[ a sx:TripleConstraint ; sx:predicate rdf:rest ;
sx:valueExpr
[ a sx:ShapeOr ; sx:shapeExprs (
[ a sx:NodeConstraint ; sx:values ( rdf:nil ) ]
<tripleExpressionList1Plus> ) ] ] ) ] .
<TripleConstraint> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:type ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( sx:TripleConstraint ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:inverse ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( true false ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:negated ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:values ( true false ) ] ]
[ a sx:TripleConstraint ; sx:predicate sx:min ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:max ; sx:min 0 ; sx:max 1 ;
sx:valueExpr [ a sx:NodeConstraint ; sx:datatype xsd:integer ] ]
[ a sx:TripleConstraint ; sx:predicate sx:predicate ;
sx:valueExpr [ a sx:NodeConstraint ; sx:nodeKind sx:iri ] ]
[ a sx:TripleConstraint ; sx:predicate sx:valueExpr ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <shapeExpr> ]
[ a sx:TripleConstraint ; sx:predicate sx:semActs ; sx:min 0 ; sx:max 1 ;
sx:valueExpr <SemActList1Plus> ]
[ a sx:TripleConstraint ; sx:predicate sx:annotation ; sx:min 0 ; sx:max -1 ;
sx:valueExpr <Annotation> ] ) ] .
<SemActList1Plus> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:first ; sx:valueExpr <SemAct> ]
[ a sx:TripleConstraint ; sx:predicate rdf:rest ;
sx:valueExpr [ a sx:ShapeOr ; sx:shapeExprs (
[ a sx:NodeConstraint ; sx:values ( rdf:nil ) ]
<SemActList1Plus> ) ] ] ) ] .
<shapeExprList2Plus> a sx:Shape ; sx:closed true ;
sx:expression [ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:first ; sx:valueExpr <shapeExpr> ]
[ a sx:TripleConstraint ; sx:predicate rdf:rest ; sx:valueExpr <shapeExprList1Plus> ] ) ] .
<shapeExprList1Plus> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:first ; sx:valueExpr <shapeExpr> ]
[ a sx:TripleConstraint ; sx:predicate rdf:rest ;
sx:valueExpr [ a sx:ShapeOr ; sx:shapeExprs (
[ a sx:NodeConstraint ; sx:values ( rdf:nil ) ] <shapeExprList1Plus> ) ] ] ) ] .
<valueSetValueList1Plus> a sx:Shape ; sx:closed true ;
sx:expression
[ a sx:EachOf ; sx:expressions (
[ a sx:TripleConstraint ; sx:predicate rdf:first ; sx:valueExpr <valueSetValue> ]
[ a sx:TripleConstraint ; sx:predicate rdf:rest ;
sx:valueExpr [ a sx:ShapeOr ; sx:shapeExprs (
[ a sx:NodeConstraint ; sx:values ( rdf:nil ) ]
<valueSetValueList1Plus> ) ] ] ) ] .