@prefix rdf:    <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix : <http://www.w3.org/2001/sw/DataAccess/tests/data-r2/regex/manifest#> .
@prefix rdfs:	<http://www.w3.org/2000/01/rdf-schema#> .
@prefix mf:     <http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#> .
@prefix qt:     <http://www.w3.org/2001/sw/DataAccess/tests/test-query#> .
@prefix dawgt:   <http://www.w3.org/2001/sw/DataAccess/tests/test-dawg#> .

<>  rdf:type mf:Manifest ;
    rdfs:label "REGEX" ;
    rdfs:comment "SPARQL regex test cases" ;
    mf:entries (
      :dawg-regex-001 :dawg-regex-002 :dawg-regex-003 :dawg-regex-004
      :regex-quantifier-optional
      :regex-quantifier-zero-or-more
      :regex-quantifier-one-or-more
      :regex-quantifier-counted-exact
      :regex-quantifier-counted-lower-bound
      :regex-quantifier-counted-lower-upper-bounds
      :regex-dot
      :regex-dot-all
      :regex-case-insensitive
      :regex-no-metacharacters
      :regex-no-metacharacters-case-insensitive
      :regex-start-end
      :regex-start-end-multiline
      :regex-char-class-expression
      :regex-negative-char-class-expression
      :regex-ignore-whitespaces
      :regex-ignore-whitespaces-class-expression
    ).

:dawg-regex-001 a mf:QueryEvaluationTest ;
      mf:name    "regex-query-001" ;
      dawgt:approval dawgt:Approved ;
      dawgt:approvedBy <http://lists.w3.org/Archives/Public/public-rdf-dawg/2007AprJun/0029.html> ;
      rdfs:comment
            "Simple unanchored match test" ;
        mf:action
            [ qt:query  <regex-query-001.rq> ;
              qt:data   <regex-data-01.ttl> ] ;
        mf:result  <regex-result-001.ttl> .

:dawg-regex-002 a mf:QueryEvaluationTest ;
      mf:name    "regex-query-002" ;
      dawgt:approval dawgt:Approved ;
      dawgt:approvedBy <http://lists.w3.org/Archives/Public/public-rdf-dawg/2007AprJun/0029.html> ;
      rdfs:comment
          "Case insensitive unanchored match test" ;
      mf:action
          [ qt:query  <regex-query-002.rq> ;
            qt:data   <regex-data-01.ttl> ] ;
      mf:result  <regex-result-002.ttl> .

:dawg-regex-003 a mf:QueryEvaluationTest ;
      mf:name    "regex-query-003" ;
      dawgt:approval dawgt:Approved ;
      dawgt:approvedBy <http://lists.w3.org/Archives/Public/public-rdf-dawg/2007AprJun/0029.html> ;
      rdfs:comment
          "Use/mention test" ;
      mf:action
          [ qt:query  <regex-query-003.rq> ;
            qt:data   <regex-data-01.ttl> ] ;
      mf:result  <regex-result-003.ttl> .

:dawg-regex-004 a mf:QueryEvaluationTest ;
      mf:name    "regex-query-004" ;
      dawgt:approval dawgt:Approved ;
      dawgt:approvedBy <http://lists.w3.org/Archives/Public/public-rdf-dawg/2007AprJun/0029.html> ;
      rdfs:comment
          "str()+URI test" ;
      mf:action
          [ qt:query  <regex-query-004.rq> ;
            qt:data   <regex-data-01.ttl> ] ;
      mf:result  <regex-result-004.ttl> .

:regex-quantifier-optional a mf:QueryEvaluationTest ;
      mf:name    "REGEX with an ? quantifier" ;
      mf:action
          [ qt:query  <regex-quantifier-optional.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-quantifier-optional.srx> .

:regex-quantifier-zero-or-more a mf:QueryEvaluationTest ;
      mf:name    "REGEX with an * quantifier" ;
      mf:action
          [ qt:query  <regex-quantifier-zero-or-more.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-quantifier-zero-or-more.srx> .

:regex-quantifier-one-or-more a mf:QueryEvaluationTest ;
      mf:name    "REGEX with a + quantifier" ;
      mf:action
          [ qt:query  <regex-quantifier-one-or-more.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-quantifier-one-or-more.srx> .

:regex-quantifier-counted-exact a mf:QueryEvaluationTest ;
      mf:name    "REGEX with an {2} quantifier" ;
      mf:action
          [ qt:query  <regex-quantifier-counted-exact.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-quantifier-counted-exact.srx> .

:regex-quantifier-counted-lower-bound a mf:QueryEvaluationTest ;
      mf:name    "REGEX with an {,2} quantifier" ;
      mf:action
          [ qt:query  <regex-quantifier-counted-lower-bound.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-quantifier-counted-lower-bound.srx> .

:regex-quantifier-counted-lower-upper-bounds a mf:QueryEvaluationTest ;
      mf:name    "REGEX with an {2,} quantifier" ;
      mf:action
          [ qt:query  <regex-quantifier-counted-lower-upper-bounds.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-quantifier-counted-lower-upper-bounds.srx> .

:regex-dot a mf:QueryEvaluationTest ;
      mf:name    "REGEX with an . operator" ;
      mf:action
          [ qt:query  <regex-dot.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-dot.srx> .

:regex-dot-all a mf:QueryEvaluationTest ;
      mf:name    "REGEX with an . operator and the s option" ;
      mf:action
          [ qt:query  <regex-dot-all.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-dot-all.srx> .

:regex-case-insensitive a mf:QueryEvaluationTest ;
      mf:name    "REGEX with the i option" ;
      mf:action
          [ qt:query  <regex-case-insensitive.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-case-insensitive.srx> .

:regex-no-metacharacters a mf:QueryEvaluationTest ;
      mf:name    "REGEX with the q option" ;
      mf:action
          [ qt:query  <regex-no-metacharacters.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-no-metacharacters.srx> .

:regex-no-metacharacters-case-insensitive a mf:QueryEvaluationTest ;
      mf:name    "REGEX with the iq option" ;
      mf:action
          [ qt:query  <regex-no-metacharacters-case-insensitive.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-no-metacharacters.srx> .

:regex-start-end a mf:QueryEvaluationTest ;
      mf:name    "REGEX with ^ and $" ;
      mf:action
          [ qt:query  <regex-start-end.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-start-end.srx> .

:regex-start-end-multiline a mf:QueryEvaluationTest ;
      mf:name    "REGEX with ^ and $ and m option" ;
      mf:action
          [ qt:query  <regex-start-end-multiline.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-start-end-multiline.srx> .

:regex-char-class-expression a mf:QueryEvaluationTest ;
      mf:name    "REGEX with [] expression" ;
      mf:action
          [ qt:query  <regex-char-class-expression.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-char-class-expression.srx> .

:regex-negative-char-class-expression a mf:QueryEvaluationTest ;
      mf:name    "REGEX with a [^] expression" ;
      mf:action
          [ qt:query  <regex-negative-char-class-expression.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-negative-char-class-expression.srx> .

:regex-ignore-whitespaces a mf:QueryEvaluationTest ;
      mf:name    "REGEX with the ignore spacing (x) option" ;
      mf:action
          [ qt:query  <regex-ignore-whitespaces.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-ignore-whitespaces.srx> .

:regex-ignore-whitespaces-class-expression a mf:QueryEvaluationTest ;
      mf:name    "REGEX with the ignore spacing (x) option with class expression" ;
      mf:action
          [ qt:query  <regex-ignore-whitespaces-class-expression.rq> ;
            qt:data   <regex-data-quantifiers.ttl> ] ;
      mf:result  <regex-ignore-whitespaces-class-expression.srx> .
