- From: Sandro Hawke <sandro@w3.org>
- Date: Thu, 16 May 2013 06:53:31 -0400
- To: W3C RDF WG <public-rdf-wg@w3.org>
At SemTech in SF (in 2-3 weeks) I'm presenting on RDF 1.1. If any of you are going to be there, please let me know. I'd like you to join me on stage for Q&A. I'd love some help preparing answers for the hard questions. Hopefully it'll be useful elsewhere. Right now I'm thinking about it as a FAQ of Design Complaints. If necessary, I can just say "Sorry, that's how it came out", but if there are good reasons for why things are done some particular way, that would be helpful to know. It would be nice if could be a general Design FAQ -- including the 90% of RDF that's awesome -- but people don't seem to ask questions about the good stuff. Just reply by email (probably off-list, or this will get very noisy) and I'll put the answers together on a wiki page. Feel free to suggest more items -- this is just the ones that came to my mind this morning, and my best vague stab at answers. -- Sandro == Why can't predicates be blank nodes? == * Because some people have written code that assumes they are not. (good example?) == Why can't subjects be literals? == * Because some people have written code that assume they are not. (good example?) * Because it would lead more people to bad modeling practice like { "London" rdf:type eg:City } == Why do we have so many kinds of collections/containers? == * No one's come up with a design that's enough better than all the others to make people be willing to give up the others == Why wont you give guidance about whether to use reification or datasets? == == Why are language-tagged strings different from everything else? == * Historically, there was a believe that XML Schema datatypes had to be free from language tagging == Why are there unicode characters disallowed from xsd:string literals? == * Because strings are intended to be displayed; the disallowed characters (like null) can't be displayed. (Other datatypes can be used for representing binary data, although large binary items are best handled as separate resources.) == Why did you change N-Triples to have multiple forms (not so good for testing)? == * Because utf-8 is so convenient, and we didn't think it made testing that much harder or broke that much code using n-triples. == Why the @-signs in '@prefix' and '@base' in Turtle & TriG but not SPARQL == * Historically, they're both derived from N3, but SPARQL dropped the @-sign and Turtle didn't. At this point, there are people using Turtle who don't want to drop the @-sign allowing both might be even more confusing. == Why is TriG disjoint from Turtle, instead of an extension? == * Because some people don't want to write code which can safely load an untrusted dataset into a graph store. (??) == Why isn't TriG a subset of SPARQL GroupGraphPattern (+prefix & base) ? == == Why use TriG instead of SPARQL 'INSERT DATA' files? ==
Received on Thursday, 16 May 2013 10:53:39 UTC