W3C home > Mailing lists > Public > public-webplatform@w3.org > April 2013

Re: Basic question on Links and Architecture

From: Chris Mills <cmills@opera.com>
Date: Mon, 15 Apr 2013 17:43:47 +0100
Cc: Jonathan Garbee <jonathan@garbee.me>, public-webplatform@w3.org, WPD@theherzes.com
Message-Id: <452E030F-03F6-4F9D-A69B-8FDC7808D9A4@opera.com>
To: Doug Schepers <schepers@w3.org>

On 15 Apr 2013, at 16:52, Doug Schepers <schepers@w3.org> wrote:

> Hi, folks-
> 
> I think David's goal is great, for those pages where it's appropriate. I do agree with Garbee that most of our content is not sequential, however... I suspect it's mostly the tutorial material that's sequential.
> 
> For reference articles, there is no single logical flow to the articles... they could be arranged alphabetically, or by topic cluster, or by shared value keywords, or by specification, or by date finalized, or any number of other useful distinctions and categorizations.
> 
> I like the idea of a simple automated "generate_sequence_links". But I'm wondering how it could be executed efficiently and in a maintainable way. Even for sequential tutorial content, we'd need a master list of article flow or a parameterized argument (in which case, why not just add the link manually?). I could make a MediaWiki extension, but the information on page sequence would have to come from somewhere. David suggests that this master list would reside in the parent page, but sometimes sequences might be multiple levels deep, in which case, the extension would get confused.  Don't get me wrong, I'm just exploring how it would function.

The way is see it working is as follows:

Say you have a page with linked subpages, like so:

HTML
	subtopic #1
	subtopic #2
	subtopic #3

To declare that the main page will use the series navigation template, you declare it using a flag, something like

{{series_navigation}}

Then we give the link to each subpage we want to appear in that main page's navigation a flag of some kind to show that it is to be included in the navigation, so maybe

<a href="  " data-series="1">

When declared, the template goes through and finds all the relevant links and constructs a data set of some kind (an JSON object perhaps) to draw the information from, containing the article info - page name, URL, position in series. And from there, it chucks the series navigation together and puts the right links on each page.

This way, if you want to then repeat a link somewhere else and have it not appear again in the series navigation, you just don't include the data attribute.

> 
> I found an existing extension that seems to do some of what we might need [1], but it's not maintained (a pernicious problem with MediaWiki extensions). Is this worth exploring?
> 
> 
> =====
> On a side note, one of my original plans for this site was that each user could define their own custom navigation flow through a set of pages, and that they could save and share that nav-list with others, so they could link together articles for, say, a reference guide or a school class. Another related aspect was that people could make custom pages out of sections of other pages through transclusion... and in fact, the default view of an "official" page would simply be a templatized collection of page sections: title, summary, syntax, examples, compatibility tables, etc. Each section would be stored as its own document, and could be accessed that way through the API; we would have various kinds of "collections", lists of: page titles and summaries; page titles and syntax; page title and examples; etc. A single example could be reused across multiple articles; a tutorial could include a feature summary or syntax section as a sidebar right there in the context of the tutorial; search results could be faceted to show whichever sections were desired right there in the results.
> 
> But then we decided to start with MediaWiki, and we made some compromises. :P Maybe someday we'll get there.
> 
> [1] http://www.mediawiki.org/wiki/Extension:Hierarchy
> 
> Regards-
> -Doug
> 
> 
> On 4/15/13 10:57 AM, Chris Mills wrote:
>> Aye, agreed. Perhaps we just need to set some kind of
>> generate_prev_next = true flag for pages where we want that page's
>> subpages to have such links?
>> 
>> Chris Mills Opera Software, dev.opera.com W3C Fellow, web education
>> and webplatform.org Author of "Practical CSS3: Develop and Design"
>> (http://goo.gl/AKf9M)
>> 
>> On 15 Apr 2013, at 15:51, Jonathan Garbee <jonathan@garbee.me>
>> wrote:
>> 
>>> I don't think we are doing automated "next page" and "prev page"
>>> links. That is a sign that the content is somehow related, when it
>>> isn't always related. Within articles such as the Beginner's Guide
>>> where the next and previous articles are related somehow we should
>>> find a way to do it. But doing it automatically throughout the
>>> entire site can be very misleading.
>>> 
>>> 
>>> On Mon, Apr 15, 2013 at 10:45 AM, David R. Herz <WPD@theherzes.com>
>>> wrote: I don't want just a useful tree.  If we have a navigation
>>> table/database, couldn't we automate the next page link.  Then
>>> instead of constantly having to update links, we have a link that
>>> accesses the navigation table, looks at the next item in that
>>> number series, and pulls the text to generate the link.  If there
>>> is no next number in the series, then there would be a link to the
>>> next topic, preferably styled differently, so we know we are
>>> moving on.  I also see this as a useful tool for reordering things.
>>> If we change a number in our database, it should likewise change
>>> the layout of the site.  I think I am going to have to draw a
>>> diagram, at least to set this straight in my own mind.
>>> 
>>> David R. Herz wpd@theherzes.com
>>> 
>>> 
>>> -----Original Message----- From: Chris Mills
>>> [mailto:cmills@opera.com] Sent: Monday, April 15, 2013 1:15 PM To:
>>> wpd@theherzes.com Cc: public-webplatform@w3.org Subject: Re: Basic
>>> question on Links and Architecture
>>> 
>>> I agree that something better needs to be done about this. Is there
>>> any kind of plugin that would generate a useful tree for different
>>> article series, if we provided them with certain metadata?
>>> 
>>> I'm definitely aiming to do this with the beginner's course, but
>>> the links would be manual for now.
>>> 
>>> At least we have the global nav now, thanks to Lea, at the bottom
>>> of each page, which is a good step in the right direction. I reckon
>>> that need to have auto generated drop down menus containing links
>>> to the subpages inside each section.
>>> 
>>> And next and previous links inside each article to give the reader
>>> an idea of where to go on to next would also be great.
>>> 
>>> Chris Mills Opera Software, dev.opera.com W3C Fellow, web education
>>> and webplatform.org Author of "Practical CSS3: Develop and Design"
>>> (http://goo.gl/AKf9M)
>>> 
>>> On 15 Apr 2013, at 07:04, "David R. Herz" <WPD@theherzes.com>
>>> wrote:
>>> 
>>>> So here is my question.  I reiterate that I am at the very
>>>> beginning in web design (slowly working my way through the
>>>> beginner's pages, and providing my insight as I go), so I
>>>> apologize in advance if I am asking what appears obvious or is
>>>> already done, but as I wend my way through the pages, I notice
>>>> that there are no links to the next or previous page in a series.
>>>> It's always back to the overlying topic and
>>> down the tree to the next.
>>>> 
>>>> So I am wondering if there is not some kind of dynamic linking
>>>> system that can be used to automatically generate links and keep
>>>> them updated.  I am thinking here of a decimal type
>>>> classification system, contained in a site architecture table to
>>>> keep everything in order,
>>> something like this.
>>>> 
>>>> Page title, Code, link text Index          0    <I would make
>>>> only the zero obligatory for the index> About          1 History
>>>> 1.1 Today         1.2 Future        1.3 Our People     2 The
>>>> Owners    2.1 Developers    2.2 Links          5 Classes
>>>> 4 Beginners     4.1 Young  4.1.1 Older  4.1.2
>>>> 
>>>> etc.
>>>> 
>>>> Then, when a page calls for the next page, it would reference
>>>> the table, see which number is next, and populate the next page
>>>> link accordingly.  To add a page, say Yesterday in About, I can
>>>> call it 1.15, or the wiki can ask me where I want to put it and
>>>> assign a number.  New subsections would just add a decimal point,
>>>> for instance Early History 1.1.1 , Later History 1.1.2, and so
>>>> on.
>>>> 
>>>> And then of course there would be some kind of cross-link
>>>> structure to allow linking to different branches and at different
>>>> levels, and verification system so that if a linked page is
>>>> deleted, a warning would be set up so that the link could be
>>>> updated or removed as
>>> appropriate.
>>>> 
>>>> I would guess there are systems out there than can achieve this
>>>> purpose.  Is there any reason we don't apply one?  Or is this
>>>> just code not appropriate for an HTML document?
>>>> 
>>>> Happy Week,
>>>> 
>>>> David R. Herz wpd@theherzes.com
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>>> 
>>> 
>> 
>> 
> 
> 
Received on Monday, 15 April 2013 16:44:39 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:13:45 UTC