On Fri, Apr 20, 2001 at 03:36:00PM -0600, Sean M. Burke wrote:
> At 04:47 PM 2001-04-20 -0400, Ronald J Kimball wrote:
> >Sure it's feasible; you just have to set up the A NAME anchors
> >appropriately.
> >
> ><A NAME="sec1">
> ><A NAME="sec1-foos">
> ><A NAME="sec2">
> ><A NAME="sec2-foos">
>
> So if the HTML anchorname for something is made from its section name, a
> '-', and its item name, that means that you can't easily HTMLify a
> Potter-syntax link like L<text|Foo:baz> (where there's an item but no
> section) -- because you'd need to actually look at the document Foo (in its
> HTML output, which might not exist yet? in its POD original?), and see
> what section contains a 'baz' item, so that you can know what to use for
> 'somesection' in <A HREF="/path/to/Foo/somesection-baz">.
This is still easy. For example:
<A NAME="sec1">
Section 1
<A NAME="sec1-foos">
<A NAME="-foos">
Section 1, Item foos
<A NAME="sec2">
Section 2
<A NAME="sec2-foos">
<A NAME="-foos">
Section 2, Item foos
> That's what I mean saying that Stephen Potter's suggestion (such as I
> understood it) made HTMLification hard, all for the sake of some extra
> semantics that we've gotten this far without (and that I for one never
> missed).
Other people have missed it, though. And this suggestion doesn't make
HTMLification hard. You're just not trying hard enough to see how it would
work.
> Making HTMLification /easy/ would be if one could translate
> L<text|Foo/stuff> without having to inspect the document Foo. If one
> accepts that there is a section-target/item-target distinction and that
> they are mutually exclusive (i.e., they're two different namespaces for
> target-names in a document), then a pod2html could turn L<Foo/"whatever">
> into href="/path/to/Foo#s_whatever" and L<Foo/whatever> into
> href="/path/to/Foo#i_whatever", with those s_ and i_ prefixes to keep the
> namespaces separate.
With the accompanying arbitrary restriction against using the same item in
two different sections.
> Conversely, if one accepts my proposal that there is no section-target /
> item-target distinction, then they both happily fold into
> href="/path/to/Foo#whatever".
With the accompanying arbitrary restriction against using the same label
for both an item and a section.
> In neither of THOSE cases (of non-Potter syntax) does HTMLification mean
> having to look at the target document.
None of these cases, including Potter's suggested syngtax, make
HTMLification hard. The target document simply needs to set up all the
appropriate NAME anchors at each location.
> >> Also, if I read it right, your proposal is incompatible with existing POD;
> >>[...]
> >Ugh. L<> is broken. Personally, I'd like to see it fixed, even if it
> >breaks compatibility with existing POD. Perhaps with a converter from old
> >L<> style to new L<> style.
>
> Parts of L<...> are pointlessly ambiguous, and if we get people to avoid
> those (by deprecating in perlpod as I suggested; and by making podchecker
> scream), and then clarify this section-target/item-target distinction, or
> lack thereof, then it's FIXED. Tra la! Then we can turn on the fountains,
> bring out the giant peaches, and declare it a reflowering of happytime on
> Earth.
See above regarding arbitrary restrictions. :)
> Moreover: if one /were/ to change link syntax to something incompatible,
> one might as well just use a new sequence, say, H<...> (h for hypertext).
> At least there you can /tell/ the old from the new (L<...> from H<...>),
> which is a minimal requirement on any sane data format.
> However, I don't think a new sequence is warranted.
Or something like:
L<P<page>S<section>I<item>T<text>>
where each of the pieces is optional. This would also solve the problem of
E<sol> and E<verbar>. Just a crazy idea I had recently, though. :)
Ronald