ting17, sunday 10TH of April 2005, 18:00 UTC (20:00 CEST)[edit]
ting17_document
from server: is-root.de, port: 32123
See also the talk-page for the ting17_talk. (same as discussion in the orange bar above)
ting17_document
Participants:
- ma: Mattis Manzel
- lk: Lion Kimbro
- F: Fabi alias MoinMoin:FlorianFesti
Minutes:
- Local Names
- Wiki Name Service
- Metadata System (MachineCodeBlock)
Fundamental Issues:
- general metadata
- RSS feeds / RecentChanges
- Local Names / linking systems
MachineCodeBlock for Wiki[edit]
This is what the MachineCodeBlock looks like for an individual wiki instance.
That is, a particular wiki in the world. Not "MoinMoin," but rather, "a particular MoinMoin." Not "MediaWiki," but rather, "a particular Mediawiki wiki, such as the Seattle wiki."
<machinecode> title: Interwiki name base-url: (URL to add the page name to, use $NAME if it goes inside a pattern) front-page: (page name) engine: (URL of MachineCodeBlock) engine-title: name of engine (human readable) description: one line wiki description default-licence: URL (text or machinecodeblock or HTML or two-in-one or...) default-licence-title: human readable license title language: of the content use two chars. neigbour: (URL of neighboring wiki's MachineCodeBlock) neighbor: (URL of another neighboring wiki's MachineCodeBlock...) participant: (URL of a participants' MachineCodeBlock) participant: ... participant: ... maintainer: (URL of host maintainer's MachineCodeBlock) </machinecode>
There may be more things to be added.
update on community-wiki: community-wiki
Time Stamps?[edit]
validuntil: timestamp (XXX get standard name)
L: I'm woried about this, wouldn't you have to change this every day, or however often you update?
F: hmm, good point...
time-to-live: (in days?) time-to-live-s: (in seconds, optional, if people wanted it?)
F: May be we leave this open. There are some technical issues to be clearified before this can get a final state.
host: ?[edit]
host: (URL of MachineCodeBlock representing host information)
L: Conceivably, we may want to link to information about the particular host machine that the wiki is served by, for charting purpose or whatever.
MachineCodeBlock for WikiEngine[edit]
<machinecode> title: Name of wiki engine development-wiki: (URL to machinecode block of development wiki) version: (one version number) wikirpc_v1 : relURL wikirpc_v2 : relURL remove-from-base: (* see discusion below) revisions: ordinals (** see discusion below; alternatives: "iso8601", "milliseconds")
recentchanges : (relURL) rss : (relURL) per-page-rss: (relURL, optional $NAME) page-list : (relURL) plaintext-page-list: (relURL) search : (relURL $PATTERN) search-titles: (relURL, $PATTERN) view-rev : (relURL, $REV, optional $NAME) view-source : (relURL, optional $name) view markup as plain text view-source-rev : (relURL, $REV, optional $name) view markup as plain text view-printable :(relURL, optional $name) printer friendly version view-printable-rev :(relURL, $REV, optional $name) printer friendly version page-info: (relURL, optional $NAME) page-history: (relURL optional $NAME) page-edit: (relURL optional $NAME ) page-edit-rev: (relURL, $REV, optional $NAME) - edit from a version last-diff: (relURL, optional $NAME) rev-to-rev-diff: (relURL, $EARLIER, $LATER, optional $NAME) rev-to-next-diff: (relURL, $EARLIER, optional $NAME) rev-to-current-diff: (relURL, $EARLIER, optional $NAME) </machinecode>
There may be more things to be added.
RSS 0.x, 1.0, 1.x, 2.0, ATOM,...[edit]
L: OH- what about diferent RSS forms?!? yikes. ATOM, too..
L: Well, RSS feeds ARE pretty identifiable,..
Handling Revisions[edit]
How do we deal with the optional $REV stuff?
- "I want a printable version of page Foo v34."
- "I want to view source for version 45."
Dillema:
- If you put $REV into the form, then clients are required to figure out the current version number.
F: we need to provide extra entries for that.
LK: Okay, so like: view-source-rev, view-printable-rev,...
LK: I worry about possibilities stacking up, combinatorial explosions. But perhaps we can just pick favorites.
F: We do only provide that entries that the engine supports. May be not even all.
Optional Names[edit]
When $NAME is optional, that means: if page $NAME isn't found, it's appended at the end.
This is because people are used to Intermaps that say, "foo http://blahblah/?page=", where the page is supposed to be automatically appended at the end.
Older Material[edit]
Multiple Versions of Engines[edit]
Ah, we may have one MachineCode block per version.
I think that's the way to do this, since information may change version to version.
Customized Engines[edit]
If you create a customized version of an engine, provide your own <machinecode> block.
Parameters[edit]
Several services need to recieve parameters:
- revision (number?)
LK: We do this with things like "$REV" or "$EARLIER" and "$LATER".
F: That's not the point. The point is: How does the revision number look like and wher do we get it from?
LK: Hm, I would feel that that's beyond the scope of the imediate specification.
LK: I don't know what differnt engines use, beyond just: '1", "2", "3", and naming dates ISO8601 or whatever.
F: Moin uses timestamp in milliseconds AFAIK.
LK: Ah, I see. I think a user has to name the revision, for now. Maybe we should have an entry: "revision-numbers:" with the value: "iso8601", "ordinals", or "miliseconds", for now.
F: yes, but we'll ahve a look at it later on as this depends on the wiki engine implementations.
LK: If someone makes up a new form, they can just make up a value, I suppose.
LK: Let's put an entry in our format, and (**) it to look down here.
- $PATTERN
- URL quoting?
- What is allowed?
May be just leave this open and beyond this standard.
Relative URLS[edit]
relURL's:
wikirpc_v1 : "?action=xmlrpc2"
(I suspect whatever we come up with, will be used in most MachineCodeBlocks.) (ah, I see: they go on top of the base URL) (I'm worried about those wiki that do page names like:
http://wiki.example.net/pagename/ )
(see more, following, on ways of doing page/xml-rpc pointing)
Posible Ways of Doing Page & XML-RPC pointing[edit]
The issue is:
- Some wiki name pages like so: http://wiki.example.com/page/FooBar/
- but they might have XML-RPC like so: http://wiki.example.com/xml-rpc
- The wiki engine needs to be able to provide the typical paterns as arelative Url from one base.
- But,
Also, some engines allow customizing the URL pattern. A wiki needs to be able to overide some typical information from the WikiEngine.
Remove-From-Base method[edit]
Wiki Engine's Block -----
<machinecode> removefrombase : "pages/" xmlrpc_v1 : "?action=xmlrpc" ... </machinecode>
Wiki's Block -----
<machinecode> ... engine: (URL of engine) ... </machinecode>
* ugly: What's the "base"?
Dual-Base method[edit]
Wiki Engine's Block -----
<machinecode> ... xmlrpc_v1: ?action=XML-RPCv1 page_urls: pages/$NAME/ ... </machinecode>
Wiki's Block -----
<machinecode> ... engine: (URL of engine) base: http://thiswiki.example.com/ ... </machinecode>
- disadvantage: you have to calculate to get the page_url pattern, the page_url pattern is the most common use
Closing[edit]
F: I am getting tiered. Are there any important points left?
LK: I don't think so; I need to depart for a couple hours; Let's call this it, for now; Our "sketch" of how thes work.
F: *arg* we forgot the most important part, no page list
LK: RSS feed. {:)}=
LK: per-page, and per-whole-wiki.
LK: true!
F: Ok, let's call it a day!
LK: agreed! {:)}= It's been good.
LK: Take care, I'll see you later. {:)}=