PARTICIPANT THREE

 - Spots that first-class links are directional
 - Spots that embedded and 1st class representations are same link and that an edit in one place will update the others
 - Preempted that editing the edit-time transcluded text will push out changes, that that includes creating pages, and the empty fills in, "very nice"
 - Understood generic links and aid=_ ; that could do inline but would go away if wrong
 - Sufficiently interested in anchors to show the native transclusion, and that aid is forcefully node-scoped

8:02 VILLAINS
P: Ah, so that text (one film) is the same as that text (other film). Right.
 - Spots that it's not completely the same; just first paragraph, other bits not quite the same
 - Edits Henchmen in Spy Who Loved Me, determines text isn't "cleverly transcluded or anything, just part of this node, so I'd have to change it in two places"
 - Asks if should try transclusion <I: Yeah, if you want>
 - Puts [trans markup around section of text correctly, uses quick reference
P: (of the existing Jaws text being used as element content [intro para]) and that's got links in already, which have anchor IDs, but I'm assuming that if I leave them there the system will fix them, cause they're now part of the new node. So I'll save that.
P: And hopefully this should look exactly like it did before, but now that's a separate node.
 - Looks same
 - Goes to look in relation table, finds Jaws is transcluded, goes to Jaws, checks it contains the text
 - Copies text out of Moonraker (edit), as "it's got some subtle differences"
 - Pastes into Jaws, compares and merges
 - Copies and merges in other parts from film articles (on a roll, let them)
P: So that's now a full description including the text from both nodes
 - Deletes copies parts from film article and saves Jaws node
 - Checks that its links appear to link to the right places
 - Puts empty trans in other film page (Moonraker)
P: The system should put in the rest of the text for me
P: And it has done, apart from the links are missing <bug>
 - They're there in the source
P: The link IDs are Henchmen In Moonraker IDs, even though they're now actually in the Jaws node, and I'm looking at...
 - Explain that that doesn't matter; autogenned unique but just a namespace
P: So, that happens before the transclusion.
 - Takes out now-duplicated text from Spy Who Loved Me
P: Ah. In the Henchment in The Spy Who Loved Me there's actually a bit more detail, that I missed last time. Explaining...how he only actually wore the teeth for a few minutes. And that explanation's better than the explanation in the other node. So I'm gonna cut that...I'm gonna add it to the...the transclusion section of the same, edit box...to elaborate. And that should edit the transclusion and therefore it'll edit the other node as well.
 - Save. (Links come back; bug with linkbase updating somewhere in there.)
P: If I look at Henchmen in Moonraker now, I've made an improvement to that, so I should be able to reproduce <see? had just been talking about reproducing bug> it.
P: Yes, and the text has now appeared in both.
 - With links, too
P: And if I reload Jaws node...that's got everything. So that's...exactly what I'd have wanted. It's done...it's got the text in both.
 - Only did first paragraph or so, rather than whole Jaws section:
P: Because all this stuff is talking about...his appearance in the /film/, and the other node appeared to talk about the other film. I didn't read it very carefully. But I did make---I did explicitly /do/ that. Because I thought, the rest of the page was about, his appearance in each film.

18:33 CAKE
 - Immediate edit, sees that "it's just plain text right the way through at the moment"
P: So...obviously I can't use wiki text like I'm used to where I just put square brackets. At least it doesn't say at the bottom in the quick reference that I can do so.
 - Flour
P: Hmm, I don't know whether the wiki markup permits whitespace; I assume it /doesn't/.
 - Then spots that things can be escaped with backslashes, so uses Sweetening\ Agent
 - Sugar, binding\ agent, etc., reading out the full markup every time; nouns etc.
P: I'm finding all the things that if I were reading this in Wikipedia I'd have expected to be linked.
P: <to self> Are there any other links I'd do anything interesting with? I think I've covered all the markup that I'd want to use to do the different kinds of links. So I'll save that to make sure it's worked.
P: So yeah they're all read because obviously those nodes don't exist.
P: So sweetening agent links to a node called Sweetening%20Agent which is what I expected obviously it's displayed properly but in the URL that's what it's done. So the escaping's worked.
P: The links are wrapping over whitespace in the text which is what I expected. And they're all displayed at the bottom as links with the right text in the relations, so that's done what I expected.

I: Would you have considered generic linking for that?
P: Hmm...yeah, I sup---I hadn't thought of that. But some of the things in this, like sweetening agent...it's pretty obvious that if you write those words, it means exactly that. I mean /sugar/ you could generically link, but then it can mean other things. ... Uh, having not /used/ generic links, it probably wouldn't have occured to me to use one there. But, now you mention it, I could easily have done that in lots of these cases. I'll edit it and see what happens.
P: Can't remember the markup for generic links so I'll open the homepage and look at the markup for that.
 - Edits Demo.GenericLink
P: So it's got these attributes. ... So this is showing me a complicated...node with, /text/ in the attributes.
P: There's a list of attributes where the---it knows what I think I want, and an other box where I can type markup.
P: What I was going to try and do, is enter this generic link directly in the text. <I: Ok>
P: So...the link to sugar, change link...<I: So you've removed all the ID and things> removed everything apart from the link and the text. So I want sourceQuery...so it's still of type Link. I didn't really need to put that <type=Link>, because that's the default.
 - Puts in sourceQuery=CONTAINS('sugar') to=sugar
P: I'm expecting that to be it, I'll just check Demo.GenericLink again. It's got a target. But I'm putting 'to' in the markup. <I: Right> So is that right or not, I don't know. [pause]
 - Explain that it's fromq in the markup
P: Ah, so the markup is different <I: yeah> from when you type it in, as what it ends up as when you...
I: It's different, the---elements in the document to the attributes on the links that get creat---
P: So, fromq=CONTAINS('sugar') . Is that right? <I: yeah> And that will create a link object...with...different parameters than the ones that I've named. <I: yes> But it'll have the right ones to do the thing. Ok, so I'll save that.
P: So, sugar is still linked...it's linked /twice/ now.
I: <to self> Link 1 and link /version/ 1
P: So if I go to...if I click on one of these links. That's the source /and/ sourceQuery. <I: Mmm> So it's created a link that is both generic and specific. <I: Mmm. That's interesting.>
P: I wouldn't have expected that to work. So I'm editing the link node itself, which is empty of text. It has a source, a sourceQuery, and a target. I'm just going to delete the source, but leave the sourceQuery. And save.
P: Now it's got the properties I'd have expected. So I'll go back to...no, that's not the way you do it, you can't click on the generic link query <CONTAINS in relation table>. Go back to Cake via the Homepage.
P: And that links to sugar by Cake.Link.1 version 2, with a subscript.
P: Ah...there's no other word "sugar" in the text. So I'll add one to see what would happen. Because obviously the real cake node with all the text in would have it in.
P: Sugar with a capital S at the beginning, I wonder if that'll work.
 - adds "test sugar test"
P: I've just put some extra text at the bottom with the word sugar in to see what would happen.
P: And...only the first one in the paragraph has linked. And it doesn't have this version number again. ... I think something's gone wrong. I'm just going to edit it again to see the source.
I: <something incomprehensible asked to self about anchor ID for that>
P: But it's showing the generic link twice. ... It's done it again---this is both a specific link and a generic link. <I: Hmm> And it hasn't caught the other sugar, on the same line.
 - Point out that that is intentional, first match only.
 - It's also got the capital one (bug is probably failure to case insensitive match in seen set; at time hypothesis might be that one above was regular link as well)
P: It is [a regular link] /now/; it's made that into a regular link /and/ a generic link. Something weird's happened.
 - I: It has an aid of 2, which is wrong
P: And it's got properties duplicated over and over, and it contains another link. It's obviously...
I: Right. I don't think generic links like being inserted inline because it's giving them anchor IDs. And that then makes things go wrong.
 - Except that the AID doesn't belong to the link, Phil. It's in the source attribute...
P: Ok.
I: Can you just try deleting that whole nest of links and just putting the word sugar?
 - Does
I: The generic link still exists so it should come back.
P: But it doesn't exist in the node. But I'm not sure it's generic now; I think it's generic /and/ specific. But hopefully...yep! Er...it's linked in /both/ places. And the link clearly links to /both/ anchors, but there's only one link. So I'll go---I'll follow the link at the bottom...it's /still/ a specific link---it's still got a source as well as a query. <I: Even though you've now deleted Cake.anch---> Even though I've now deleted than anchor.
P: Ah, no, this is an old revision.
I: It not necessarily is, actually. It'll always say old if you specify a version, even if it's actually the latest version.
P: So I can still edit this, can I? View current version; the current version is the same anyway. So I'll delete the source again. Right, it's now definately /just/ a generic link.
 - Back to Cake via Homepage
P: Right, both of them are linked, via the latest version of Cake.Link[.x]. I go to Cake link, and it's still as we expected, it's a generic link.
 - Look at source of Cake
 - Note that duplicate link is probably case-smashing problem
P: Ah, it has repeated this link, look <[link [link ... ]]>
 - Both places
P: So it's putting a link where the link already exists.
P: The link now has an I...should a generic link have an ID?
I: Yes. And that ID will be whatever you called your generic link.
P: Cake.Link.1. That could have been called anything, couldn't it.
I: Yeah, that'll be something autogenerated, then. Yes, because you didn't specify one, did you, you left it to autogenerate. <P: Yeah.> And that's a perfectly sensible ID. Yes, that would have been free.
 - State anchor.1 link.2 anchor.3 bug (for when first adding to page).
I: <muttering about [link[link very broken>
P: But I.../this/ time, all I did was view the node and then edit it. <I: Hmm> and the links have recursed. Which obviously shouldn't have happened either.
I: <uncertainty>
P: So it's detecting the text of a generic link when there's already a generic link around that.
 - I: AIDs are blank this time, at least
 - I: Try changing Sugar to sugar (and removing spew again)
P: So now we have the word sugar in the document three times, but they're all lowercase. And two of them are in the same paragraph.
P: Right. Only the /first/ one is linked.
I: Edit it...
P: Ah, so what you meant when you said only the first one is linked...ah no, it's still put it in recursively.
I: Now /three/ times!
 - It's a bug. Carry on.

31:35 MULTIPLE UNITS
 - Identifies that we have two nodes looking it "lots of detail" about the specific train networks in each country.
P: So what would be nice is if we could pull the summary from each of these into an overall node...by transclusion. That makes a lot of sense.
P: So I'll go...to the Homepage, I don't know how to create a node that doesn't link to anywhere.
 - Adds a link to Homepage to do it. Notes redness "because it doesn't go anywhere yet".
 - Reads 'may create' text and creates.
P: I'm going to edit Elektrichka so I can see how to structure the page.
P: So you just start writing. So...
 - Puts some "generic text" about how they're a type of train used in many countries
 - Puts headings, having looked at markup in Elektrichka, notes will want to transclude bits under these
 - Can't remember how to do transclusion, so back to Homepage to look at demos
P: So Demo.3 includes a bit of markup to transclude another node...but it transcludes a /whole/ node. So what I'm going to end up with is a /summary/ of the node about Ireland...will actually be a node itself.
P: If I edit Demo.3 see it's just [trans...and...I'll need to give that summary bit a name, won't I. It won't add a to= automatically...but I don't need to give it an ID or anything. So I'm going to go over to MultipleUnitsOfIreland...
P: Ah. So the text of this means it can't just be transcluded directly because it talks about the contents of the page. So I could either transclude the whole thing...or just the top bit.
 - Sticks transclusion in leading of the Ireland node, names it MultipleUnitsOfIreland.Summary.1, skips over the "this page", puts the rest of the paragraph as another, .2.
P: Close square bracket, because the next bit says "this page lists all these", which isn't going to be true in the other page", and then the rest of the paragraph I'm going to transclude again.
P: ...this talks about "lists below" as well, so maybe I won't do that...because that bit of text isn't really relevant for the other page.
P: I'm going to assume that I only wanted the summary from this <I: yep> and I won't bother transcluding the rest of the page.
P: So I don't need to give it such a complicated name; I'll change it to MultipleUnitsOfIreland.Summary, and just transclude the first paragraph. <I: ok>
P: So if I save this, the text should look exactly like it does now. ... And it does, but I can see the transclusion at the bottom in the relations. So I'll edit the Russia one.
 - Takes the last bit of the intro paragraph, as it's the most useful bit of the summary
P: So I'm just going to link the last bit of the first paragraph in that node. And I think I'll link the next paragraph as well. So I'll just put square brackets around the line break. <I: ok> Save that.
P: Right...oh. It says "can't autoparagraph inside a nested element"; I was worried something like that would happen.
P: So...ah, it's written an error into the markup. So I'll delete the error. Um. But all the text is still there, so I'm going to put a paragraph around the first bit, close. Paragraph around the second bit. So there's two paragraph objects inside a transclusion object.
P: Hopefully that will then...create the transclusion, if it didn't create it just now. But if it did it'll update this anyway, so it wouldn't matter.
P: "Non-text element 'para' deep inside paragraph". I've confused it now.
I: Whoa. And the heading has become everything. <39:21>
P: It's all a heading. <quieter> It's all a heading.
I: That's... <P: What did I do wrong there? Let's try and work it out.> I'm not sure you /did/ do anything wrong. I think that may be another bug.
 - I: incorrect square bracket hypothesis (temporarily forgetting tree parser)
P: Well, I've obviously broken that.
I: I think it broke itself.
 - Instead goes to transcluded node via relations table, Elektrichka.Summary, "which has some errors in it now"
 - Long pause, 26s
P: So I've edited the transcluded node so that it's just got two para elements in. And that looks right. So now I'm going to go back to Elektrichka.
I: So what did it have before then? <was probably writing down bug>
P: It had two errors inside it. <I: oh right> So it could explain. So I'm going to edit Elektrichka again. Actually, no I'm not; I'm going to go to the history, and find the version before I broke it.
 - Diversion to view current version; still broken
 - Views revision 2, as before participants edits because of different IP
 - Edits it to delete text and replace it with empty transclusion.
 - Oops, missed a bit; don't worry about it
P: So it hasn't successfully transcluded in the new paragraph. It's transcluded in all the text, but the fact that it's in two paragraphs has been lost. <I: Mmm> So that's a bug as well.
 - Transcludes each into MultipleUnits under the heading
P: And that looks fine apart from the fact that the paragraph bit is missing from the transclusion.
 - Explicit two [para]s in Elektrichka.Summary, renders fine /there/.
I: What is somebody wants to correct something about the summary?
P: Um, well, they can edit it wherever they see it, and it will change in both.
 - Ok, start closing tabs
P: And when they edit any node, they'll see that it's a transclusion and that will make them aware that it will change in other places. So they can go to the transclusion and follow the relations to find out where it's gonna change if that's going to be a problem.

44:15 BELGIUM
P: <immediately> Ok, so, these attributes are the properties...of...Belgium. <I: Yep>
P: So...my inner semantic web is kicking in, and saying "are these properties of Belgium, or the properties of /the node/ Belgium?" Now these are properties of Belgium, aren't they. Because if this was a link, they'd be properties of the link. <I: yes>
P: But, that /node/ is different from the /link/, they're different objects, so that's fine, it is actually conceptually logical. Which is nice.
P: So...these attributes look like they're predefined.
P: Ah, so official language, there's three of them, so it's just repeated, and that's like a, "and again". So if I want to add another one, obviously those boxes are all already there.
P: Oh, EU Accession's there but it's empty. So I can just add the date there.
 - Enters date in YYYY-MM-DD format
P: And that's the same syntax as used in the other date fields.
P: So I'm going to save it. How did it know that that should be there, I wonder?
P: So, EU Accession Date is now there, and is linked.
P: <click> Ah, so I can view EU Accession as it's---it knows it's a property because it has a domain and a range. That's interesting.
P: And the date is a link as well, in the attributes...but it's to a node that doesn't exist.
 - I: doesn't do literals
P: But it knows EU Accession is a date, because that's specified /in the node/ EU Accession. <I: Yeah> Which is very neat.
I: So have you worked out why some of them have showed up in that table?
P: Because presumably Belgium has a class...of some kind; it has a type Country, so I'll go to Country. <reads> "Countries are logical divisions of landmasses."
P: But a Country doesn't have any other...text in it. So what defines...that these particular attributes appear in countries?
I: It is as you found on the Accession, it's done by the domain.
P: Ah, ah, because EU Accession has a domain Country, so anything that's a Country automatically gets that in. So if I edited that, and put in another---a different domain, it would go away from this.
I: You can try if you want.
P: Presumably it won't let me because things are using it.

P: Alright, I've changed the domain quite happily <I: to chicken>
 - Belgium via Homepage
P: Belgium's still got Country, it's still got an EU Accession.
I: That's 'cause it's still---this instance still has that attribute.
P: Yep but, the domain has changed in the other node. So if I went in it wouldn't show me any blank EUAccession for that country now because it doesn't know to do so.
 - Prompt to go edit Belgium
P: It hasn't listed it---ah, I see. But it's now under "Other". <I: Hmm> Because these are things that it's not---it doesn't have by virtue of its class, they're just other properties that anything can have. <I: Yep> That's very interesting. That's cool.
 - Put it back? No.

49:00 LONDON UNDERGROUND
 - Notes it starts with summary, then history.
 - Considers this a "general fact" rather than part of the history; "the history already describes the details of this"
 - Edits to add fact after first sentence. Restate not bother with history, "already explains it in more detail".
 - TiL: goes straight to LU section and reads.
P: Right, so is that text, the same as the other text...no, so there's not transclusion or anything there happening. But there could have been. And maybe it would be worth having some. Because that fact is just the same text and...the text in Transport in London is really summarising the other node, so it could do that by transclusions if it were...the right...thing to do in each context. So I'll edit LondonUnderground and change it to a transclusion.
 - Square brackets "around the whole text I just wrote" (in LU), adds trans link, name LondonUnderground.Age
 - Checks editing one while other saving is good idea; state has proper locking
 - Adds empty transclusion to end of TiL summary of LU
P: Just check that the LondonUnderground node still looks right.
 - Has picked out single sentence for sharing
P: Yeah, because the text of the other page (TiL) is already a better summary in /this/ context. <I: Ok> So that was the only bit I wanted to transclude in this case.
 - And it works; I: state about how this is probably the problem of mixed inline/block before
P: <of before> Oh, because I wasn't transclusing a whole paragraph; I was trying to transclude the /end/ of the paragraph, and a linebreak.

53:37 SHELF
 - Familiar with disambig pages
P: Ah ok, so I can see there, three links which link specifically to Shelf...in the relations at the bottom of the Shelf node.
 - Opens albatross (by relations table), hypothesise ice shelf
 - Also opens river, hypothesise west yorkshire, "so I'm going to hover over that, find out what its name is" (in the browser status bar)
 - Spots link quickly in river article, edits to=; "The word shelf in the text can stay."
 - Abatross
P: So where does this link to shelf? I'm going to go down [to the relations table] links to Shelf there...ah, I was hoping I would be able to see it on the screen at the same time but I can't <crosshighlighting>. Ah there's shelf.
 - Reads context, determines continental shelf, changes mind to ice, would check to be sure
 - Edits Albatross (looks up page name for IceShelf as before while loading)
P: I am looking through the source; this is rather complicated. It's just occured to me I could probably looked at the link itself, couldn't I. <I: Mmm> So I'll do that instead. I'll go back...find the link to Shelf...via Black-Browed Albatross.Link.68 so I'll edit that <I: via the relations table>.
P: Yep, so, I can see it there in the relations, it's target is Shelf. So that wants to link to IceShelf.
P: And this is only a specific link; only got that one anchor, so it can't have changed it anywhere else.
P: So I'm going to go back to BBA...no I'm not. I clicked on BBA and that showed me the contents <of the anchor> which isn't what I meant, so I'll use the back button instead. <I: Mmm>
 - Refresh
P: Ah, I can see it's moved in the list; it now links to IceShelf; the link's got the same ID as it had before. The text looks the same but Shelf is now linking to IceShelf if I hover over it. So that's doing the right thing. The other page has finished loading and that's doing the right thing.
P: If I go back to Shelf disambiguation, I can refresh it...look at the relations and now I can see that nothing links to it. <I: Excellent.>

57:51 FINAL COMMENTS
P: Er, apart from the bugs, which are...I see why that transclusion over the edge of things isn't going to work, but well may you can...rearrange the model of it so that you can have like partial...paragraphs or something? It's quite a difficult one. It's a problem with transclusion as because you're trying to---you're often trying to address across the boundaries of---of elements. Um, but it would be really annoying to have a trans---/two/ seperate transclusions just because they're in two paragraphs.
I: Yeah. Ok.
P: So you need some kind of helpful syntax if you wanted to support that I think.
P: Erm. I think it's /awesome/. I love the fact that you can create relations just by writing text in...and that you can give something a property just by creating a, erm, a node which describes that class.
P: I'm finding myself wondering whether there's hierarchy of things there, so I could say "oh this---this is a country, and it's of type EuropeanCountry", <I: hmm> and have properties that only EuropeanCountries have. <I: ok> And have it inherit and things like that. I don't know if that would be useful in a real context, but...I...the expressivity of the linking structure implies to me that it would---it would work if I knew how, <I: cool> because it can do every other thing.

 - "absolutely" see results
 - Yes voucher

