[Jslib] Re: RDF redesign

Martin T. Kutschker Martin.T.Kutschker@blackbox.net
Fri, 9 Nov 2001 21:09:16 +0100


This is a multi-part message in MIME format.

------=_NextPart_000_0009_01C16962.CA9294C0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable


  Eric Plaster <plaster@urbanrage.com> schrieb in im Newsbeitrag: =
public.mozdev.jslib/3BE977FD.30405@urbanrage.com...

  Well, maybe this is a good time to give a status report on what I have =
done so far.  Working on a chart of functionallity, I took an OOD point =
of view and broke out what was common and what was (as I preceived it) =
to be unique to a class.  So if you look in the jslib/libraries/rdf =
directory there should be the following files/classes:
This overall looks good to me.

  As you can see, I've eliminated the need for NC, or a root node.  The =
new classes works more on the graph idea.  You ask the RDF class for a =
seq, and it either returns a RDFContainer of type "seq" or it returns =
null.  You can then manipulate that seq by using setAttribute, =
getSubNodes, addNode, etc...

Well, I think that it is good that you don't need NC or a root, but you =
should be able to use it. A root node, may come in handy (if only set =
"temporarily", like the Javascript with statement). And don't you need =
NCs to turn the nodes into something useful be it a RDF thingy like Seq =
or your very own tag?

  So...
  Now that that is all said and done.  I'm thinking about rearranging it =
again.  I have to do some more thinking about it, but here is what I was =
kind of thinking:

  You have a "rdf" class.  For this class you can query resources =
(RDFResource), with this resource, you can set subject, predicate, or =
object.

It would be great that with the help of the RDF classes you may perform =
any operation on the graph you want to. But keep in mind that they will =
be most useful on graphs that can be interpreted and displayed by =
Mozilla's template generator. The templates are usually parts of a graph =
interpreted as a tree. So the classes should still focus on that. If I =
want to mess around with assertions, etc I can use Mozilla's interfaces.
   Then you can also add any sub resources if you want (remember you can =
make any li into a seq with one call, and without looseing any arcs).  =
Thus any RDFResource can be changed into a RDFContainer...

If I have a graph like this:

 <li about=3D"urn:blah">
  <Seq />
 </li>

Do you think the li IS A Seq? Graph or not, I don't think it would be a =
meaningful RDF if one would make arcs for li and Seq to the same node. =
But likely I am still not grasping the true meaning of RDF.

Masi

------=_NextPart_000_0009_01C16962.CA9294C0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE></TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 5.50.4616.200" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3D"Andale Mono" size=3D2></FONT>&nbsp;</DIV>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV>Eric Plaster &lt;<A=20
  href=3D"mailto:plaster@urbanrage.com">plaster@urbanrage.com</A>&gt; =
schrieb in=20
  im Newsbeitrag: <A=20
  =
href=3D"mailto:public.mozdev.jslib/3BE977FD.30405@urbanrage.com">public.m=
ozdev.jslib/3BE977FD.30405@urbanrage.com</A>...</DIV>
  <DIV><BR>Well, maybe this is a good time to give a status report on =
what I=20
  have done so far. &nbsp;Working on a chart of functionallity, I took =
an OOD=20
  point of view and broke out what was common and what was (as I =
preceived it)=20
  to be unique to a class. &nbsp;So if you look in the =
jslib/libraries/rdf=20
  directory there should be the following files/classes:</DIV><FONT=20
  face=3D"Andale Mono" size=3D2></FONT></BLOCKQUOTE>
<DIV><FONT face=3D"Andale Mono" size=3D2>This overall looks good to =
me.</FONT></DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV>As you can see, I've eliminated the need for NC, or a root node.=20
  &nbsp;The new classes works more on the graph idea. &nbsp;You ask the =
RDF=20
  class for a seq, and it either returns a RDFContainer of type "seq" or =
it=20
  returns null. &nbsp;You can then manipulate that seq by using =
setAttribute,=20
  getSubNodes, addNode, etc...<BR></DIV></BLOCKQUOTE>
<DIV>Well, I think that it is good that you don't need NC or a root, but =
you=20
should be able to use it. A root node, may come in handy (if only set=20
"temporarily", like the Javascript with statement). And don't you need =
NCs to=20
turn the nodes into something useful be it a RDF thingy like Seq or your =
very=20
own tag?</DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV>So...<BR>Now that that is all said and done. &nbsp;I'm thinking =
about=20
  rearranging it again. &nbsp;I have to do some more thinking about it, =
but here=20
  is what I was kind of thinking:<BR><BR>You have a "rdf" class. =
&nbsp;For this=20
  class you can query resources (RDFResource), with this resource, you =
can set=20
  subject, predicate, or object.</DIV>
  <DIV>&nbsp;</DIV></BLOCKQUOTE>
<DIV>It would be great that with the help of the RDF classes you may =
perform any=20
operation on the graph you want to. But keep in mind that they will be =
most=20
useful on graphs that can be interpreted and displayed by Mozilla's =
template=20
generator. The templates are usually parts of a graph interpreted as a =
tree. So=20
the classes should still focus on that. If I want to mess around with=20
assertions, etc I can use Mozilla's interfaces.</DIV>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV>&nbsp;Then you can also add any sub resources if you want =
(remember you=20
  can make any li into a seq with one call, and without looseing any =
arcs).=20
  &nbsp;Thus any RDFResource can be changed into a RDFContainer...</DIV>
  <DIV>&nbsp;</DIV></BLOCKQUOTE>
<DIV>If I have a graph like this:</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&lt;li about=3D"urn:blah"&gt;</DIV>
<DIV>&nbsp; &lt;Seq /&gt;</DIV>
<DIV>&nbsp;&lt;/li&gt;</DIV>
<DIV>&nbsp;</DIV>
<DIV>Do you think the li IS A Seq? Graph or not, I don't think it would =
be a=20
meaningful RDF if one would make arcs for li and Seq to the same node. =
But=20
likely I am still not grasping the true meaning of RDF.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Masi</DIV></BODY></HTML>

------=_NextPart_000_0009_01C16962.CA9294C0--