The web is made up of webpages which link to one another with hypertext links.

[Lots of documents linked together.]

As well as webpages you may also link to pictures, music files, videos, plain text, and so on.

[Documents linked to other documents, including non-hypertext documents.]

But it would also be possible to introduce new kinds of things for the web.

Webpages can only link to other files. Those files could be other webpages, or they could be pictures, plain text, music files, and so on.

What if we conceptually extend the web so that webpages can link to non-electronic things, such as people? Now we can say that some page was written by such and such a person, and that this person is the father of the person who wrote the other page here.

So we did three things here:

  1. The web now includes things which aren't files. Let's call them nodes.
  2. We can link webpages, files, and nodes together without limit. Let's call these links arcs.
  3. We give arcs descriptions so that we know what they're for.

In a webpage we'd normally put the description in the link text, but a node can be anything so it doesn't necessarily have any text in it.

What might a node look like when you load it in your browser? Well, it could just show all of the arcs between itself and its neighbouring nodes. But that would be pretty boring.

When the Safari browser saves a webpage, it gives you the option of saving the whole thing along with all the images and other things that it depends on. It saves this into an archive. You can imagine saving a whole load of browser tabs in this way, so that you'd end up with an archive which has lots of webpages and files in it which you could browse offline.

Similarly, we could make a kind of archive which describes nodes and arcs. We'll call this a net, because it's storing a little network of information. You could put a kind of flag in the net to tell people where to start. If you made a small net out of a book, for example, you'd want people to start at the first chapter.

Using nets is a bit like writing. When you write, you can say anything you want. With nets, you might make a net which says that Alice, a person node, hates Bob. Then somebody else might make one saying, on the other hand, that Alice loves Bob. You can link anything you want in any way.

http://example.org/people-net (web document)
http://example.org/people-net#AliceĀ (person? bit of a web document?)
person://example.org/Alice (person)

nodes are modular!

You might separate information out. So in one net you could give a list of some interesting webpages that Alice has written. In another net, you might give a list of her friends. Or you could include both of these nets in a kind of supernet. (But think of it more like repeating a tab in a browser.)