- From: Josh Sled <jsled@asynchronous.org>
- Date: Thu, 13 Jan 2005 10:25:36 -0500
- To: Phil Dawes <pdawes@users.sourceforge.net>
- Cc: www-rdf-interest@w3.org
On Thu, 2005-01-13 at 03:52, Phil Dawes wrote:
> I've written a script (to test the idea) that does pretty-much the
> same translation - if you're interested I'll stick it on the web
> somewhere when I get to work.
Nice. It looks like you go strictly to blank nodes, and have the
"element = property" and "non-leaf-elements are blank-nodes" heuristic.
> N.B. I think it'd also need to handle ordered collections to be
> generically useful (since xml is implicitly ordered).
Yeah, it seems like the pain is to deal with:
<foo>
<barProp>bar</>
<bazProp>baz</>
<items>item1</>
<items>item2</>
</foo>
Since you don't want to have to tell people they need to insert another
level...
What about...
<foo is:aListOf="items">
<!-- ... -->
</>
?
Which, given the content above, becomes:
[ :foo [ :barProp "bar"; :bazProp "baz"
; :items ( "item1" "item2" ) ] ].
With namespace/qname handling as per:
<eg:foo is:aListOf="⪚items">
<!-- ... -->
</>
While I'm writing this out... another pain is striping and typing. I've
been thinking about something like...
<eg:foo is:a="⪚Foo" />
...with an alternative being...
<eg:foo is:a="⪚Foo">
<is:a>&eg2;Bar</is:a>
</>
... with the motivation that anything needing to represent _two_
rdf:types can deal with the weirdness the above presents.
Also, I guess you adopt `is:about="..."` for subjects, and `is:at` for
resource-objects.
Oh yeah, and there's no option to put anything in attributes. It's all
in elements, except as per above.
Thoughts?
...jsled
--
http://asynchronous.org/ - `a=jsled; b=asynchronous.org; echo ${a}@${b}`
Received on Thursday, 13 January 2005 15:23:50 UTC