- From: Danny Ayers <danny666@virgilio.it>
- Date: Wed, 15 Oct 2003 20:22:53 +0200
- To: "Sean B. Palmer" <sean@mysterylights.com>
- Cc: <www-archive@w3.org>
> [Some out of date notes that I was preparing. I've actually gone a lot > further than this and implemented a schema-aware RDF editor, which I'm > just about to post about to rdfweb-dev. Figured that I'd send the > history to www-archive just for a laugh.] [Great stuff. I'll comment here, then when you open the magix box we can compare.] > One of the proposals for Notation3, and something that I used in N3S, > is the following syntax: > > @use Person, name, nick, knows > <http://xmlns.com/foaf/0.1/> . > > Which is very similar to Python import syntax! > > from http://xmlns.com/foaf/0.1/ import > Person, name, nick, knows. > > Of course. Looks good. I take it there's a good reason not to just use the Python syntax..? > > (at command line) > > Person-> > > name-> Dan Brickley > > nick-> danbri > > knows-> > > Person-> > > name-> Libby Miller > > nick-> libby > > I realise that this was just a very quick sketch of what you'd like to > be able to achieve, but it has an interesting mix of nice features and > practical problems that I'd like to investigate. The obvious thing > missing is typing--I suppose everything's typed as a URI if it's > recognized from the config file, though, and typed as a literal > otherwise. Yep, that was what I had in mind, though I hadn't really thought it through very much (yes I did, yes I did!). Looking back on this I think literal "quotes" probably would be a good idea anyway, make it clearer. > It appears that the "->" things are actually redundant. But this > current syntax assumes striping. It shows you how to descend into new > objects, but not get out of them ("<-", perhaps?). Yep, it is redundant, but it's easier to see what's going on as you type, or e.g. if you saved it in a file as a macro. It's really a cut down version of what I tend to use because I can't remember n3 : subject -predicate-> object I'd pondered striping a bit, and had thought that a blank line could represent dropping back to 'root' (i.e. new statement). I also considered various nasty variations on ditto marks ", but it got very insecty. Just try adding > another property to the danbri Person root node... > > nick-> libby > <- > email danbri@example.org That ain't bad at all, you know... > And what happens if you want to use classes as subjects/objects in the > graph itself, rather than to type? For example, if I wanted to type > :Person rdf:type rdfs:Class. Would I have to put the statement on a > single line to denote that? In other words: > > Person-> > type-> Class > > becomes > > [ a :Person; rdf:type rdfs:Class ] . > > but > > Person type-> Class > > becomes > > :Person rdf:type rdfs:Class . > > It gets quite confusing quite quickly, but I like the principle of > easy RDF creation. Heh, yes and yes. > What I'd like to be able to do is load the names in from schemata > automatically. Seems like that's why we have a Semantic Web in the > first place... to put machine readable data up on the Web. You could > specify a list of cascading preferred schemata, so that if there are > duplicate terms in different ones the one with the higher preference > wins. But this may have the "import * from x" problem. Yep. I like that a lot. An alternative to clash handling might be to force 'standard' prefixes - dc:title, foaf:title etc. Cheers, Danny.
Received on Wednesday, 15 October 2003 14:30:27 UTC