Re: The RDF 1.1 Literal Quiz

On Wed, May 18, 2011 at 2:22 PM, Richard Cyganiak <richard@cyganiak.de>wrote:

> The RDF 1.1 Literal Quiz
> ------------------------
>
> Let's pretend we live in the future and RDF 1.1 has just been published,
> including this working group's attempt to clean up string literals.
>
> Now here's a quiz with some RDF trivia questions.
>
> What are the answers that you'd like to see? Please keep them short --
> along the lines of “Yes”, “No”, “Don't care”, “Don't prefer but ok”, “Oh yes
> please please please”, “WTF!?!?”, “Formal objection!”
>
> (I tried to phrase the questions in terms of user-visible behaviour and not
> spec-internal mechanisms. I hope we can get some non-controversial test
> cases out of this, and pinpoint where we disagree on desired behaviour. If
> you provide responses, then feel free to add additional questions.)
>
>
>
> Q1. Does this RDF graph (written in Turtle) have one triple?
>
>  <a> <b> 1 .
>  <a> <b> "1"^^xsd:integer .
>

Yes.


>
> Q2. Does this RDF graph (written in Turtle) have one triple?
>
>  <a> <c> "foo" .
>  <a> <c> "foo"^^xsd:string .
>

Yes - I thought the whole point of this exercise was to enforce that by
settling on a single representation for that in the abstract syntax.


>
> Q3. Is this be a valid Turtle file?
>
>  <a> <b> "foo"^^rdf:PlainLiteral .
>

Valid Turtle, invalid RDF.


>
> Q4. Is a parser allowed to unify "foo" and "foo"^^xsd:string into a single
> form while parsing?
>

Yes, and hopefully required to.


>
> Q5. Is this a valid N-Triples file?
>
>  <a> <b> "foo" .
>

Yes.


>
> Q6. Is this a valid N-Triples file?
>
>  <a> <b> "foo"^^rdf:PlainLiteral .
>

Valid N-Triples, invalid RDF.


>
> Q7. Is this a valid N-Triples file?
>
>  <a> <b> "foo"@en .
>

Yes.


>
> Q8. Is this a valid N-Triples file?
>
>  <a> <b> "foo"^^xsd:string .
>

Yes.


>
> Q9. Is this true in SPARQL?
>
>  datatype("foo") == xsd:string
>

Yes.


>
> Q10. Is this true in SPARQL?
>
>  datatype("foo") == error
>

No.


>
> Q11. Is this true in SPARQL?
>
>  datatype("foo") == rdf:PlainLiteral
>

I hope not.


>
> Q12. Is this true in SPARQL?
>
>  datatype("foo"@en) == xsd:string
>

Probably not.


>
> Q13. Is this true in SPARQL?
>
>  datatype("foo"@en) == error
>

Don't care.


>
> Q14. Is this true in SPARQL?
>
>  datatype("foo"@en) == rdf:PlainLiteral
>

Don't care.


>
> Q15. Is this true in SPARQL?
>
>  datatype("foo"@en) == rdflang:en
>

Don't care.


>
> Q16. Does the literal in this RDF/XML fragment have a language tag?
>
>  <rdf:Description rdf:about="a" xml:lang="en">
>   <rdf:b>foo</rdf:b>
>  </rdf:Description>
>

Don't care.


>
> Q17. Does the literal in this RDF/XML fragment have a language tag?
>
>  <rdf:Description rdf:about="a" xml:lang="en">
>   <rdf:b rdf:datatype="&xsd;string">foo</rdf:b>
>  </rdf:Description>
>

Don't care.


>
> For each of the following pairs of statements, if the statement on the left
> is true, then is the statement on the right true as well in a system that
> supports datatype inference (specifically, {xsd:string}-Entailment)?
>
> Q18. { <a> <b> "foo" . } => { <a> <b> "foo"^^xsd:string . }
>

Yes.


>
> Q19. { <a> <b> "foo"^^xsd:string . } => { <a> <b> "foo" . }
>

Yes.


>
> Q20. { <a> <b> "foo" . } => { <a> <b> "foo"@en . }
>

No.


>
> Q21. { <a> <b> "foo"@en . } => { <a> <b> "foo" . }
>

No.


>
> Q22. { <a> <b> "foo"@en . } => { <a> <b> "foo"@en-GB . }
>

No.


>
> Q23. { <a> <b> "foo"@en-GB . } => { <a> <b> "foo"@en . }
>

No.


>
> Q24. { <a> <b> "foo"@fr . } => { <a> <b> "foo"@en . }
>


No.

-Alex

Received on Thursday, 19 May 2011 14:40:39 UTC