XLink-like implimentation...

Subject: XLink-like implimentation...
From: Guy_Murphy@xxxxxxxxxx
Date: Mon, 29 Mar 1999 10:47:33 +0100
Hi.

I have an initial implimentation of an XLink-like description produced
using an HTC for IE5. I'm posting here as I believe XLink or something
similar has a lot to offer the XSL user in incorporating the product of XSL
in a large application framework.

You can find a brief example of this at
http://www.guy-murphy.easynet.co.uk/xlink.htm

Note there is an error in the representation of the link on this page and
should read actuate="user" rather than actuate="load". This is the result
of my beginning to impliment transformation inclusion during load, and has
no functional impact.

Also note that the current implimentation is not feature complete, and as
mentioned will support transclusion during load, and out-of-line or
external links (probably to anchors only).

Over the week, I'll be moving my site
(http://www.guy-murphy.easynet.co.uk)[IE5] over to the use of this linkage,
so my hope is that any bugs or limitations will emerge during this process.

The other significant change to come will be changing the syntax from...

     <xl:loc name="artS1" for="art1" ref="xsl/article.xsl" role="style" />
     <xl:loc name="artS2" for="art2" ref="xsl/article.xsl" role="style" />

To support...

     <xl:loc name="artS1" for="art1,art2" ref="xsl/article.xsl"
role="style" />

and changing the reference for the resulting views to...

     <xl:loc for="artS1_art1" ref="#holder1" role="target" show="embed-end"
 />

Basically resulting views will be indexed as the composite of the data name
 and the style name used to produce them, rather than
a the style name, requiring a seperate style loc for each view.

At present the current synatx is...

     <xl:link type="extended" actuate="load" title="A really interesting
document">
          <xl:loc name="art1" ref="xml/articles/dmr1.xml" role="data" />
          <xl:loc name="art2" ref="xml/articles/dmr2.xml" role="data" />
          <xl:loc name="artS1" for="art1" ref="xsl/article.xsl"
role="style" />
          <xl:loc name="artS2" for="art2" ref="xsl/article.xsl"
role="style" />
          <xl:loc for="artS1" ref="#holder1" role="target" show="embed-end"
 />
          <xl:loc for="artS2" ref="#holder2" role="target" show="replace"
/>
          a link
     </xl:link>

<xl:link...> is mandatory...
     type.... may be extended or simple... extended links provide
individual locators, whereas simple links simply provide a
          ref for the file and a target.

     actuate... should be user, but will support other forms of actuation

<xl:loc...> is used for extended links...
     name... must be a unique ID
     role... must be data | style | target
     for... is an IDref required for style and target locs, signifying what
 they apply to.
     ref... is a file resource for data and style locs, and either an
element or frame for target locs. If an element it must
          be prepended with #, if a frame no # should be used.
     show... for target locs should be prepend | append | replace |
embed-start | embed-end | embed... and signifies how
          the view should be placed with reference to the target.

I realise this is a very brief rundown, I should have complete
documentation that makes a little more sense by the end of the week.

Once the component is finished, it should represent one solution for
one-to-many, and many-to-one transformations.

Any suggestions for feature additions are welcome, any bug reports should
wait until after the next version.

Comments wholy unrelated to XSL should probably be made off list to me in
private (such as what are HTCs?), I think the broad
issues of linking data and style for transformation might be work examining
 on list as IMHO it has alot to do with the practical use of
XSL.

Cheers
     Guy
     guy_murphy@xxxxxxxxxx



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread