FrontPage SiteMap RecentChanges HowTo Blog

Matching Pages:

RSS

Belize, National Day, Malta, Independence Day, Armenia, National Day

PlainLink

Definition: Link PlainText Plainly. An integral part of a PlainTextWiki

High Level Claims

Communities naturally define Terms as words, phrases and titles through private usage and public standards.
Word definitions are set by dictionary, thesaurus and technical reference but vary across time because of popular usage.
Phrase definitions are set by ‘standards’ such as books, lyrics, poems, TV, movies, news, etc.
Titles are the proper names of things.
Some Term usage is restricted by TradeMark or CopyRight law.
Humans link Terms to Definitions in their heads as they read or listen. It is almost like a LinkLanguage without technology.
Foreigners influence definitions according to community trust and acceptance.

Technical

Terms may contain spaces, are case insensitive, never need CamelCase or []‘s or ’-’ or ’_’ or an type of LinkSyntax?. Each term links whenever the database contains a page title that matches that term. This means most page titles will contain spaces, but the href for the URL could still replace the space with a ’_’ to avoid the ugly %20 in the address bar.

Example

For instance, if there were a page defining the Term “Corporate Goals”, then any other page that contained the phrase “corporate goals” in it’s text (irrespective of case) would generate a hyperlink to the “Corporate Goals” page.

So, by writing:

Corporate goals have erroneously been separated from governmental and communal goals.

Would cause the “Corporate Goals” page to link in the rendered HTML even though it is not surrounded by []‘s, is not CamelCase, and has no _ or - between words.

By doing this, the definitions made by the community become transparent - or ‘exposed’ to those that are not already “in the know” about their existence.

A perfect implementation will be much more work.

We would also want to capture singular and plural variations with and without ‘helper’ words:

corporate goal
goals of incorporation
goal of a corporation
incorporate with the goal
incorporate for the purpose
goal of any corporation
reason corporations exist
goals of corporations
why we incorporate
goals of some corporations
why groups organize as a unified body
goals of all corporations
… seemingly infinite variations

Some of this can be done with regular expressions, but in the end, especially as synonyms are employed will require a parser and language analysis system maybe similar to what is used in text adventure games that try to determine what the player means.

Because of the high complexity it may seem Terms with spaces would be useless for now, but the applicability comes in those that are well known and do not vary or vary only slightly.


Implementations

Research

non-implementations

Other Ideas that may apply

Comments

Interesting ideas.

(rant follows. It’s a knee-jerk reaction. Any relationship to the real points of this page are probably only coincidence).

I like to distinguish between

  • ideas I can implement in software, vs.
  • ideas for the (documented or undocumented) ettiquite of a particular community.

I find that people who first encounter wiki often get a vision of how to “improve” the wiki in many ways. Unfortunately, everyone’s vision seems to be different. Also, people seem to get one monolithic vision that includes several ideas. I try to pull apart these visions into individual ideas (see Wiki Features). (This doesn’t always work – sometimes 2 ideas that build on each other, such that either idea, by itself, makes no sense). Some ideas may be good ideas no one has ever though of before. But almost always there are other ideas mixed into the vision that are fairly common – either ideas that have been accepted and implemented into some wiki, or ideas that have been heavily debated and ultimately rejected for one reason or another.

In particular, All Titles link without markup. is something that goes into the software. It has already been implemented on a couple of wiki.

On the other hand, Authors own their own comments outside of the definition area. and A user implicitly votes through [Accept], [Hide] or [Reject] of comments and changes. are things that could be part of the ettiquite of almost any wiki, without any change in the software.

On the gripping hand, I don’t understand Interface customization is an implicit vote for changes to default behavior.. What is the connection to “PlainLink”?

David,

User Ownership: You say this can be implemented through ‘ettiquite’, but I don’t agree when the number of users reaches even a moderate size. This will scale much better through HardSecurity.

Implicit Voting: I think this is important because that is how it works in the “real world”. As people use human language in their own style, it shapes and finally even redefines terms over time.

My understanding of PlainLink is still the clear idea of:

  • “Automatically link text to other related text.”

Going deeper into it, I suspect we would have an explanation of how it works.

That is a mechanism.

But I suspect you’re also interested in talking about this other idea, about how communities negotiate terms.

I’m removing “: Human language contains an implicit LinkLanguage as the definition of each ‘Term’.”

The main reason:

  • LinkLanguage, by definition, requires technology assistance. There are other conditions as well; it’s emphatically not plain human spoken language. By definition.

The side reason:

  • If I have to replace that line with something else, I would pick: “Definitions determine the meaning of language.” But (A) that’s already there, and (B) I disagree with that, as a foundation.

I think that, speaking in general, unanalytical terms: Yes, that’s true. You pack a group of definitions together, and you’ve got a language.

But if we were going to build on that, (and we build on ideas as part of our TheoryBuilding in wiki,) then I’d note the cracks in the foundation:

Phrases very commonly are interpreted in radically different ways, by outsiders. And phrases that are being born frequently have indeterminant meaning, even within the community of origin. One of my favorite examples, MindTheGap, resolves to a near-mythic story, not even a particular meaning! Many languages include words that function like that. (“Freedom?”) Or, meaning may be consciously negotiated. But the negotiators may have different ideas about what came out of the negotiation, and the negotiation does not apply at all to outsiders, who may still try to make sense of what you’re saying. Outsiders frequently make up a meaning for the phrase, for themselves, and even adopt the term by different meaning!

So I would be cautious about saying: “Definitions determine the meaning of language,” if you intend to build on that.

Definitions lower the barriers to entry by letting the new user understand what has already been agreed upon.

“This will scale much better through HardSecurity.”

You may be right. However, many people guessed wrong in predicting that the original wiki, or wikipedia, would never last unless it implemented hard security. I don’t think anyone guessed correctly in predicting how successful they would be.

May I ask what makes you so confident that statement is true?

I would be very, very interested in reading something that proved it was true, either through some sort of experiment or using some logical proof.

Is there anything I can do, to help you get such a website online? In all the software I’ve ever dealt with, “get it partially working first, let people try it out, then see how to improve it” was always better than “get the whole thing completely programmed first, before letting anyone try it out”.

Hey David.

Sorry for the lengthy pause, I’ve been offline for over a week now and just returned today.

The MeatBall HardSecurity page doesn’t quite fit what I’m trying to paint, but some points coincide.

Maybe what I’m looking for is more along the lines of “Liquid Security”. I want strangers to be able to “help out”, and actually want to treat any supposed SPAM ‘valid’ if it can find a ‘community’ (a view) which appreciates that content.

I’m imagining differing communities as alternate ‘views’ of the same wiki - where all content would be recorded, but only ‘relevant’ information would appear to a reader that sets his preferences (and implicitly votes) according to whether he accepts, hides or rejects the changes of others.

I also think it is important that users may choose to ‘protect’ their identity at any point - so they may begin building ‘weight’ within whatever ‘community’ appreciates their content.

By ‘scale’ I am mostly talking about the trouble of ‘manual’ SPAM housekeeping, and how to keep it “under control” (out of view) through policy while insuring that content can be marked ‘valid’ by any who does appreciate it, so that group can carve out their own space without bothering others.

I hope this helps answer your questions, but I know it is far from complete.

I spend most of my time trying to understand why physical world policy is failing to meet the needs of most of the world’s population, but a WikiVenture? is profound in this regard because it is a portal between the physical and virtual worlds. A wiki represents not only the virtual content that users add, del and adjust, it also represents the capacity of the physical computer to store, process and deliver the content.

The question of ‘control’ (and therefore security) is central to this issue. The control of property that might most effectively be held in ‘common’ is often held private by CorporateGoals that work against that community in subtle ways.

You say that WikiPedia is very successful, but many would argue that the ‘guards’ that work there are not ‘loose’ enough…

Is there anything I can do, to help you get such a website online?

Yes. To me this is the same as my interpretation of a goal proposed by sigi - to begin a wiki that is truely owned and operated by every ‘member’ of the community, with no ‘gurus’ to kowtow to.

I would like to start such an operation based on PlainTextWiki ideas (which also needs much polish), but am still trying to learn Perl and/or PHP. I know much of what I propose has already been done by others, but it needs to be pulled together before we can begin hosting. I’m thinking refining some OddMuse plugins would be an obvious choice, and have looked through the code more than once, but am still procrastinating because of lack of skill.

Feel free to join us on #oddmuse on Freenode (IRC) and ask code questions. This will help you focus on the aspects of Perl that you need to make the changes you want. I think starting with such a project, fiddling with a working program and changing it step by step is a very powerful approach.

BTW, see also ViewPoint

Alex: Thanks for the offer. I’ll stop by when I can get myself organized enough to make sensible requests.

Bayle: Thanks for the link. I like the The “perfect” objective” section especially, and hope to incorporate some of those into policy.

perhaps we can start this like an embryo with community wiki as mother-wiki .
everyone, who is interested, can participate in a page, named WikiFromScratch
and if it becomes a shape (a big enough group) then may be, a new wiki is born ..

It’s known I guess that I would be very interested in such as well and that I had been thinking about it on editable titles quiete a while ago. Does it exist already for any wiki engine?

A friend of mine has constructed a wiki-like tool that does exactly what this page describes (including words with spaces). The script is coded in [[PHP?]]. I’ve used it myself. My friend has not yet released it in any way, though. I’ll ask him if he is interested in releasing…

I tried the MediaWiki extension after Lion showed me this page when I asked him about this concept. It worked for what I wanted to do - I didn’t check if it satisfied all your scenarios though…

Patrick, what exactly would need to be changed to make http://www.mediawiki.org/wiki/Extension:AutoLink do what you want it to do?

The MediaWiki extension doesn’t have a good way to fixup word variations and suffixes or prefixes. For now a person must make a bunch of REDIRECT pages to achieve that.

I tried it out a couple weeks ago and noticed pages containing the text of newly created pages were not re-rendered as a result of the new page creation (I didn’t really expect this would be the case, I’m just trying to give a complete answer here).

But these problems are not so bad that I wouldn’t begin using it if I didn’t have other issues. The reason I haven’t started using it is because I also need the features of PlainTextWiki before I can abandon my terrible Emacs Lisp static generator (etym.el). I also don’t like the size and complexity of MediaWiki, and want to use PlainText files instead of a database for storage.

Thanks for asking.

Just heard about this today: http://www.smartmobs.com/2008/02/11/open-calais-semantic-news-api/

This might be worth taking a look at. At least to learn what they are doing.

Working with MicroContent seems to be making me much more aware of the danger of applying “generalizations” too broadly, since it seems that statements that are valid in some (or even many) contexts frequently become false in others.

Obviously, there are some merits to a PlainLink. An interesting aspect of watching various proponents advocate these benefits, stems from considering would happen if a PlainLink is recognized and automatically rendered in a particular context as a hyperlink. For example…

  • When a block of MicroContent appears in such a context and the Author does NOT want an automatic PlainLink generated, then it becomes necessary to add some sort of “nolink:…” markup. This effectively recognizes that one or other of the two environments will be better, depending on how frequently the default rendering of the “link:…” or “nolink:…” markup produces the result desired by either the Author, or by the Community for which the text is primarily intended.
  • Furthermore, if the text becomes a MicroContent block that appears in multiple wiki environments with different PlainLink rendering defaults, it will either have to have some form of attached meta-markup or it will have to be cloned (creating a separate copy that can appear differently in each environment.)

I suspect that, in practice, these considerations are likely to become sufficiently complicated that the choice of which rendering method should be used will merely result in an “It depends…” situation. If so, then the decision as to which default to apply becomes very local and may be nothing more than “Yet another local wiki markup difference” that may impede communication between wiki communities.

Hans,

I can see your point of view from the perspective of the author having more control than was available before hyperlinking existed. By attaching a link to a term (one or more words), the author can ‘force’ the reader to understand the text in that way.

But what about traditional interpretation? What happens if you print some of that text onto paper? Will the reader still understand what you mean?

One of the - maybe the most - important features of PlainLink is an attempt to use local collective intelligence to interpret text that was written outside of the context of that community.

For instance: I occasionally speak to people about Free Software because it is so valuable. But if I am not careful, they can easily get the wrong impression. Imagine I say “You should look around the internet for free software. You can download and use it without paying anything to anybody!”. If I don’t also talk about “free as in freedom”, the listener is likely to think I am suggesting they break Copyright law by downloading ‘warez’.

So PlainLink is about returning the control of interpretation to the reader where it has always been, and requires an author to be careful about wording and completeness to insure the audience receives the message as he intended.

Maybe one of PaperLink? or UserLink? or CommunityLink? would be a better name for this idea.

About your second point, I’m sure it’s clear that when a person speaks or writes without hyperlinking the audience must be taken into account because interpretation varies between communities and is a local choice - it always has been.

Hans’ point above makes me think that it could almost be useful to create some other shared-meaning signifier , outside of page-names and links, that would allow InterCommunity? cooperation, without forcing specific technological solutions upon any one community. This could be in the form of semantic tags, which could be programmatically matched up. Meaning: related to what we discussed in TagsVsMnemonics we create shared BonaFidaTags?, and then we also allow MnemonicTags?. These tags can be assigned to MicroContent objects. Create a way to map these objects across communities. Local page titles are then only relevant to local communities, and so is CamelCase or PlainLink, or whatever.

People will never wholesale adopt a LinkLanguage solution, so it is pretty futile to bang against that wall, IMO. Better to choose the solution you and your community like the best, but also leave a way that you can connect with other communities.

Patrick…

I’ve indented some responses under a few of the particular points you raised, to distinguish. I am unlikely to have time to engage in discussion about these items during the next few month, but (who knows) I may need a break or simply allow myself to be provoked a bit more. :-)

With respect to…

  • … “author having more control than was available before hyperlinking existed.”
    • The Author always has initial control of the message as its “sender”. The Audience control is generally limited to “accept” (input) or “ignore”.
    • This is not new, it has always been the case.
    • This applies regardless of medium (i.e. its as true of a “speech” as it is of a “book” as it is of posted “hypertext”).
  • “One of the - maybe the most - important features of PlainLink is an attempt to use local collective intelligence to interpret text that was written outside of the context of that community.”
    • I am equally suspicious of “collective intelligence” as I am of statements that “the company (or group) acted …”. In my opinion… individuals act, not Groups. If individuals within a group act in a collaborative or concerted manner, then it may appear that the Group is acting, and that becomes a convenient simplification, but IF individuals have free will THEN they have the right to remain apart from some (or even many) of the Group’s collective actions.
  • “What happens if you print some of that text onto paper?”
    • I’m sure you can find the existing research that suggests that humans process “displayed” and “printed” text differently. The existing theory is that ‘reflected’ and ‘transmitted’ light encoded signals are are processed in different parts of the brain. Not only that, but HTML was designed for browsers and produces notoriously poor result when simply printed.
      • If I care enough about a message that I an sending to an Audience, I will select the medium that maximizes the likelihood I will create the result I wish to achieve by sending the message. Obviously this quickly gets complicated, which is another reason I generally find it better to limit my communications to those messages that contribute to progressing towards particular Objectives.
  • … “PlainLink is about returning the control of interpretation to the reader where it has always been.”
    • I fundamentally disagree with this statement, but perhaps only because I’ve taken it out of its intended context.

Sam…

I am running out of time, but…

  • I think that the TransClusion of a MicroContent block into a another context, does effectively qualify (or chage) its meaning.
    • I am quite open-minded about “semantic tags” and other, additional ways of enhancing the meaning (e.g. adding illustrations that are “worth a thousand words”, etc), but my recent experience suggests I can achieve the most efficient success by simply placing content ‘statements’ in the right context.
    • One issue that I consider fundamentally important is the simple decision regarding when to use a hyperlink or a TransClusion. This get much more complicated when considering all of the other, similar techniques such as…
      • footnotes
      • onMouseOver displays

I’m planning to spend some time elaborating on this during the next couple of weeks.

(Patrick… I almost missed the sub bullets you created simply because of their formatting, so I’ve added a bit of markup in an effort to distinguish the ‘speakers’.)

  • Hwo: The Author always has initial control of the message as its “sender”. The Audience control is generally limited to “accept” (input) or “ignore”.
    • But there is more than “accept” or “ignore”, there is something between those which I have been calling “interpret”. I am not saying a reader changes what the writer/speaker is saying for everyone else, but that the reader/listener is the ONLY one that can interpret the text/speech for himself. The writer/speaker wants the reader to understand him, but readers vary in their beliefs, abilities, backgrounds, etc., so communication is almost never perfect.
      • Agreed, but this is a problem for that the “sender” of a message has very limited influence over and it applies only in the case that a particular subset of the Audience has decided not to simply “ignore” or has not fully “agreed” (and then ‘tuned out’). There is quite a bit of research that suggests most Audiences retain as little as less than 10% of what they “hear”. Given that this is just one of the problems that impedes effective communications, I am quite skeptical about being able to determine how any members of an Audience may “interpret” any message I try to deliver. Consider the fact that after most major presentations, fewer than five percent of the Audience will linger to ask questions or in any way try to establish subsequent contact with the presenter. In practice, all any Author can do is judge the appeal of the message on the basis of a sample of some feedback (e.g. applause, ranking questionaires, repeat invitations, …). Even in the very special and limited case of these wikis, where a discussion may develop, there is likely a larger “lurking” Audience whose reaction cannot be measured. As such, the Author cannot practically tailor a message for their “interpretation”. In the context of this page, suggesting that the use of a PlainLink empowers the Audience by giving it control of the message, as opposed to the Author, just doesn’t mean anything to me as an Author.
  • Hwo: I am equally suspicious of “collective intelligence” as I am of statements that “the company (or group) acted …”. In my opinion… individuals act, not Groups. If individuals within a group act in a collaborative or concerted manner, then it may appear that the Group is acting, and that becomes a convenient simplification, but IF individuals have free will THEN they have the right to remain apart from some (or even many) of the Group’s collective actions.
    • Yes, I see what you mean here. For a group to agree on definitions is a contiuous battle, which is why common usage slowly drives dictionaries to change.
  • Hwo: I’m sure you can find the existing research that suggests that humans process “displayed” and “printed” text differently. The existing theory is that ‘reflected’ and ‘transmitted’ light encoded signals are are processed in different parts of the brain.
    • This is a very interesting idea which I have never heard. I’ve been thinking lately I would like an old dot-matrix printer so I could cheaply print out some of the stuff I’ve been meaning to read (since all these damn ink-jet printers are so artificially expensive to operate). I have wondered why I wanted this so badly and found it was difficult to fully describe. I wonder if what you say here is part of it…
  • Hwo: If I care enough about a message that I an sending to an Audience
    • Well, I’m trying to describe a situation where you (the author) cannot control who consumes the message - such as when you write on most anywhere on the web (such as this wiki), or if you were to publish a book that anyone could purchase.

… “PlainLink is about returning the control of interpretation to the reader where it has always been.”

    • Hwo: I fundamentally disagree with this statement, but perhaps only because I’ve taken it out of its intended context.
      • Are you saying that you, as a reader, have misinterpreted the meaning of my text? That is the very point I was trying to make - that it is you, the reader, that controls the interpretation. As a writer, I must struggle to be clear and only hope the reader understands it the way I intended.
        • Not at all. I distinctly said that I fundamentally disagree with “returning control to the reader” (and seem to have made the mistake of adding an attempt to soften this ‘strong’ statement by adding a polite, plausible explanation :-) ) I think our different perspectives on this may not be as far apart as they may appear. Other matters will likely preclude me pursuing this much further, however.

I think that authors want to make their messages less ambiguous, not more, and thus, while they do seek to extend the repertoire of available tools, they also seek to maintain (or increase) their control over the meaning of their works. I only know a few examples of highly refined art where the author aims for ambiguity – so that different people will receive different messages – but he stills strives to remain in control and either have a common theme to these messages, or divide the groups of people somehow – by making the messages strong and seemingly unambiguous to individuals, yet very ambiguous to the whole group. A watered down, weak message is not worth much for the readers – the more meaning is coming from themselves or the context, the less important the writing is. At some point it becomes completely unnecessary, you could as well just have a page listing the links, or even just look at the page index of the wiki – and have the same message.

This doesn’t mean that the insights we gain from ourselves or our surroundings are not important – but there are better ways to get to them.

Radomir… I find myself in complete agreement with your views.

That being said, however, I also find that I have to repeat many of my component messages to various Audiences over time. This is likely because the topics I present fall into a relatively narrow range, within which I am considered to be an expert and within which I continue to do a lot of research. As the result, I generally have new findings that folks want updates on, and yet there are always new members of any Audience, so it seems necessary to repeat quite a bit of material.

I started using TransClusion extensively in order to have a more efficient way of maintaining material and providing background information, as efficiently as possible. In these particular cases, I am merely trying to convey factual information and I am not necessarily trying to imprint the Audience with a strong message or “call to action”.

Since I know that with some Audiences that I actually do wish to “motivate”, I need to “strenghen” the message in order to “provoke” them into action, I fully appreciate that there are at least two (and inevitably many more) significantly different styles of communication that I may elect to use, depending on my primary communications objective.

Obviously, this is a relatively large topic of discussion and it may be drifting away from the original intent of “PlainLink”, so I think I need to shift my focus to other matters for a while.


On BlueMoon wiki, I use the following syntax : Here is a sample of text and you can visit the ((summary of previous explanations)), if you like. This creates a link towards the page SummaryOfPreviousExplanations?.

The name of the page is internally camel case, the look of the link is not.

More, the name of the page has no accents, so in french for instance ((avis de l’interné)) gets AvisDeLInterne?, where Interne can indeed mean either “interne” or “interné”. But, as a matter of fact, this ambiguity never occurs in practice, because it is too rare.

I forgot to give the URL of my wiki. One of its page is there : http://92.243.19.149/cgi-bin/bluemoon/wiki.pl?action=lire&theuth=68&page=wikis&zone=wikis&version= This is still a work in progress, numerous features should be added to the parser.

It is an original wiki because it is programmable : it is possible to change the way the wiki works by editing pages of command, and, indeed, of code. Pages are not made of texts, but of codes, which can also be texts. – NicolasMontessuit

Hi Nicolas,

I’m not understanding how this applies to PlainLink. Could you rewrite this in a shorter form in your native tounge (French?)? Then I’ll send it through some translation engines, post the results here, and… at that point one of the French/English writers here might even offer a translation. – PatrickAnderson

Nicolas Montessuit wrote:

> The name of the page is internally camel case, the look of the link is not.

There is no reason to make the page name camel case. CamelCase is unneeded at all levels. The natural shape of plain text is sufficient. It simplifies many things to have the phrase appearing in text and the page name (or alias) be identical. That is the goal of PlainLink and TitleLink.

I do think it would be nice to change SPACE into ’_’ to avoid the %20 problem.

> More, the name of the page has no accents, so in french for instance ((avis de
>  l'interné)) gets AvisDeLInterne, where Interne can indeed mean either "interne" or
> "interné".

There is also no reason to remove non-ASCII characters, as any serious file system or database can handle unicode entries, so why not just create pages with names exactly as the user attempts?

On the other hand, there are exceptions that must be %escaped%, such as the ASCII control characters, plus characters that are special to filesystems or to URIURL such as: SPACE, , \, :,

> It is an original wiki because it is programmable : it is possible to change the way
> the wiki works by editing pages of command, and, indeed, of code.  Pages are not made
> of texts, but of codes, which can also be texts.

That sounds like a good project.

PlainLink was originally about plain, unexecutable text - or DATA, but I do want to interpret CODE sections as controls such as buttons, or to dump data from a process or from other parts of the OS. – PatrickAnderson

Define external redirect: BonaFidaTags AvisDeLInterne MnemonicTags CommunityLink PaperLink GakiGaki SummaryOfPreviousExplanations InterCommunity UserLink LinkSyntax PHP WikiVenture

EditNearLinks: GeboGebo BlueMoon GaGaParser TradeMark NicolasMontessuit CopyRight MeatBall TestPage ProWiki MediaWiki CamelCase ViewPoint PatrickAnderson HardSecurity UseMentionProblem

Languages:

The same page on other sites:
MeatBall:PlainLink