Organizing notes with XML

Ian Rastall

Usenet Archive
Joined
Jun 19, 2003
Messages
92
Reaction score
0
I've been Googling for a couple days on this, without hitting the mark, and I'm wondering if anyone can help. I'm interested in building a personal knowledge base with XML (although "knowledge base" may not be the right term). For example, if I'm at a site about tea, and I want to briefly note down the history of Russian Caravan tea, and then cross-reference it with other notes, how would I go about doing that? I've been reading about mind mapping, on the one hand, and topic mapping/RDF/OWL on the other. It looks as if neither approach has the right granularity. The first seems to connect concepts, and the second seems to connect documents. I'm thinking more along the lines of snippets of a couple paragraphs ... to write down the information, describe it, and link it to related information.

Are there any XML-based markup languages designed for this sort of thing?

Ian
 

Stefan Ram

Usenet Archive
Joined
Sep 3, 2001
Messages
3,281
Reaction score
0
Ian Rastall said:
I've been reading about mind mapping, on the one hand, and topic mapping/RDF/OWL on the other. It looks as if neither approach has the right granularity. The first seems to connect concepts, and the second seems to connect documents. I'm thinking more along the lines of snippets of a couple paragraphs ... to write down the information, describe it, and link it to related information.

You might create a note - or a "snippet" - and assign a URI to it. The you can use RDF to make all sorts of assertions about it, connecting it to either concepts or other documents.

Is there anything you are still missing with such an approach?
Are there any XML-based markup languages designed for this sort of thing?

XHTML might be used to write the snippets and the
meta-elements and link-elements in the head-element of an XHTML document can contain all sorts of information about how this document is related to concepts and other documents.

Is there anything you need and can't implement in this way?
 

Ian Rastall

Usenet Archive
Joined
Jun 19, 2003
Messages
92
Reaction score
0
You might create a note - or a "snippet" - and assign a URI to it. The you can use RDF to make all sorts of assertions about it, connecting it to either concepts or other documents.

Is there anything you are still missing with such an approach?

I'll keep that approach in mind, as I may go that route.
XHTML might be used to write the snippets and the
meta-elements and link-elements in the head-element of an XHTML document can contain all sorts of information about how this document is related to concepts and other documents.

Is there anything you need and can't implement in this way?

An entire document is too much code for a note. I may be looking at a database, which I wanted to avoid, as I don't know the first thing about them. (Granted, I don't know much about XML. :)) There is software out there that does this sort of thing, but I like the idea of being able to put this web of notes on the WWW. To put each note on a separate page would be wasteful. I suppose a database *is* what I'm thinking of. <sigh>

Ian
 

Ian Rastall

Usenet Archive
Joined
Jun 19, 2003
Messages
92
Reaction score
0
I'm thinking more along the lines of snippets of a couple paragraphs ... to write down the information, describe it, and link it to related information.

Are there any XML-based markup languages designed for this sort of thing?

I'm sorry for being vague. From what I understand of the semantic web concept, it's a way of linking web pages together by way of their concepts, as well as chunks of information inside those pages. What I'm wondering is, what if *all you have* are chunks of information? What if you want to organize them according to some grand taxonomy, like the Dewey Decimal system. I'm talking about a markup language for note-taking that catalogues knowledge in a well-defined system. I'm just not sure how to do it, and since I'm just starting out with XML, I don't know what route to take in my learning to accomplish this goal. Not to mention that, as I learn, I want to be able to catalogue that process, so even if I don't know exactly how to mark up those chunks of information, I should at least have an idea of the general system I'll be using.

I was hoping there was already a system like that in place, since it doesn't seem like an original idea. The problem with Google is I don't know what terms to search under. "Knowledge mapping", "mind mapping", "information systems", "conceptual mapping", and "knowledge base" all turn up similar systems, but nothing exactly like what I'm looking for. If anyone has any ideas on the subject, I'd be very grateful.

Ian
 

Stefan Ram

Usenet Archive
Joined
Sep 3, 2001
Messages
3,281
Reaction score
0
Ian Rastall said:
I'm talking about a markup language for note-taking that catalogues knowledge in a well-defined system. (...) If anyone has any ideas on the subject, I'd be very grateful.

It is too early to say much about my system, i.e., the
documentation is not yet finished, so I can neither offer links to the documentation (because it's not yet finished), nor write all about it here (because that would take too long.)

But I can offer a partially working example.

Assume, I observed a resource offering a real-time schedule for the suburban public traffic system in Berlin and I want to make a note about it, so that I can find it later.

I am linking it to a description "Echtzeit-Fahrplan der BVG", i.e., "real-time schedule of the BVG ('BVG' is the name of a transportation service provider)", I am linking it to its URI, and I am linking it to the notion "schedule for berlin".

Then I have a tool to publish this on the web, which happens to be already working, so you can see the output here:

http://purl.net/stefan_ram/garnoo/n!steralog!resource!BVG'20in'20Echtzeit

(This system is experimental and therefore the URI is
temporary and might not work in several weeks from now.)

How do I find that note again, when I need it later?

I might have forgotten the name of the service, so I start at the concept "Berlin":

http://purl.net/stefan_ram/garnoo/n!steralog!notion!Berlin

There I find an arrow to a notion "Fahrplan für Berlin" ("schedule for Berlin"), which "is-for-location" Berlin, i.e., something that is localized for the location Berlin.

(Actually its funny how Englisch and German is mixed on these pages: local notions are given in the local language.)

I might now go to that notion "traffic schedule for Berlin":

http://purl.net/stefan_ram/garnoo/n!steralog!notion!Fahrplan'20f'fcr'20Berlin

And there I find the resource "BVG in Echtzeit", which happens to be ("isa") such a schedule.

I might as well have started at the concept of "traffic schedule"

http://purl.net/stefan_ram/garnoo/n!steralog!notion!Fahrplan

to find the real-time public transportation time schedule for Berlin.

This was more of a "bookmark" than a "note", but because arbitrary text can be contained, it might have been a note about anything else, like an idea or a book:

http://purl.net/stefan_ram/garnoo/n!steralog!resource!Accelerated'20C'2b'2b

Now, one might ask, how such a note is entered into that system? I am using a plain text editor with a special language and that language - unfortunately - is a part of the system, which is not yet documented and also in a preliminary status and still subject to change. So I can not say much about it here - a year later from now on, I might be able to link to a web page describing it in more detail.

The information system given above also contains only some test data - so while one is free to browse it, not much can be found there. Most of the information contained are charters for certain german language newsgroups. A year later from now on possibly more information can be found there and it might be possible to find information about it (when URIs have changed) by its name "Garnoo".

And, as a universal information system, Garnoo is designed to be/include its own documentation/description: A part of this which already is working: You can activate links on one of the above Garnoo page to find a small description of a notion, e.g., activate the link "outset" to find a short description of the meaning of "outset" in Garnoo.

OK, a minor part already /is/ documented, it is the language "Garpagal" used as an intermediate language to produce the above web pages from the data base. That documentation is here:

http://www.purl.org/stefan_ram/pub/garpagal

NB: Garpagal is an /output/ language of the system, not an input language. I.e., it is not the language used to enter information into the database.

And, I am using a modified version of XML called "Unotal" as a syntactical framework, which is also not yet documented properly. In a few words: An element in Unotal has the form

<&type name=value body>

instead of the XML-form

<type name=value>body</type>

Here are some notes about Unotal:

http://www.purl.org/stefan_ram/pub/unotal_en
 

Stefan Ram

Usenet Archive
Joined
Sep 3, 2001
Messages
3,281
Reaction score
0
Ian Rastall said:
An entire document is too much code for a note.

An XHTML-document might look like this "<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
<head><title></title></head><body><p></p></body></html>"

So it needs at least about 200 characters, which is not that much.

For storage purposes, it might be stored abbreviated as "<html><head><title></title></head><body></body></html>", the doctype declaration and other parts can be inserted upon delivery of the document to an external client. This is about one line overhead per document (or "note").

XHTML documents might be stored within a database. So the choice of XHTML as a language does not decide on the storage system (filesystem or database). Mutiple XML documents might even be stored within a single file, but this makes it harder to refer to one of them. For the purpose of being refered to, an XHTML document should have its own URI.
There is software out there that does this sort of thing, but I like the idea of being able to put this web of notes on the WWW. To put each note on a separate page would be wasteful.

What is wasted this way?

Putting multiple notes in a single document makes sense when they share properties - which then can be given as meta- and link-elements in the head element. Thus, an XHTML document might be dedicated to a topic and collect notes about that topic.
 

Ian Rastall

Usenet Archive
Joined
Jun 19, 2003
Messages
92
Reaction score
0
It is too early to say much about my system, i.e., the documentation is not yet finished [...] But I can offer a partially working example.

Thanks, Stefan. That's the kind of thing I'm thinking of, so I'll definitely keep up on its progress.

As I mentioned, my main concern right now is how to represent a chunk, rather than a document ... since browsers are designed for documents. There are no "concept browsers", AFAIK (and I wouldn't even know what one looked like.) So to view the knowledge base with a browser, the notes would have to be grouped together on pages, or the page would have to be dynamic and call up entries from a database. I'm thinking of this as one way of teaching people online ... like teaching HTML, where it's possible at any time to veer off in a different direction, say to go from "paragraph tags" to "CSS text formatting" to "history of CSS" ... or to go from HTML to networking to hardware ... to learn, IOW, in whatever fashion suits the mind of the learner, rather than having the path laid out for them. As far as what I myself could do to further this idea, all I could really do is codify all the chunks of knowledge that I pick up along the way. If I could find a simple way to do it, perhaps with PHP or Perl, then it would be as simple as taking regular notes, but they would be automatically organized in such a way that they become re-usable ... not just for me, but for anyone.

Anyway, after talking a bit on here about it, I think the idea is clearer now. Thanks for your thoughts on the matter.

Ian
 

Ian Rastall

Usenet Archive
Joined
Jun 19, 2003
Messages
92
Reaction score
0
XHTML documents might be stored within a database. So the choice of XHTML as a language does not decide on the storage system (filesystem or database).

I hadn't considered that. It's a good idea.

Ian
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
548,208
Messages
3,104,798
Members
249,594
Latest member
henrywalsh

Latest Threads

Top