Create a new article
Write your page title here:
We currently have 3,189 articles on s23. Type your article name above or create one of the articles listed here!




    ting17, sunday 10TH of April 2005, 18:00 UTC (20:00 CEST)[edit]


    from server: is-root.de, port: 32123

    See also the talk-page for the ting17_talk. (same as discussion in the orange bar above)



    • ma: Mattis Manzel
    • lk: Lion Kimbro
    • F: Fabi alias MoinMoin:FlorianFesti


    • 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."

    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)

    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]

    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)

    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."


    • 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.


    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]


    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:

    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 -----

    removefrombase : "pages/"
    xmlrpc_v1 : "?action=xmlrpc"

    Wiki's Block -----

    engine: (URL of engine)

    * ugly: What's the "base"?

    Dual-Base method[edit]

    Wiki Engine's Block -----

    xmlrpc_v1: ?action=XML-RPCv1
    page_urls: pages/$NAME/

    Wiki's Block -----

    engine: (URL of engine)
    base: http://thiswiki.example.com/

    • disadvantage: you have to calculate to get the page_url pattern, the page_url pattern is the most common use


    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. {:)}=

    Cookies help us deliver our services. By using our services, you agree to our use of cookies.
    Cookies help us deliver our services. By using our services, you agree to our use of cookies.