- 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