[XML-SIG] XBEL revision possibility?

Fred L. Drake Fred L. Drake, Jr." <fdrake@acm.org
Tue, 16 Mar 1999 11:58:28 -0500 (EST)


  I happened to be at Norm Walsh's Web site the other day, and was
reminded that he's exporting a couple of XBEL files.  This made me
think about things I still want to add to Grail's XBEL support (export 
w/o access information, export of part of a bookmarks list, and import 
of an XBEL instance into an existing bookmarks list).  Then I thought, 
"import" isn't always what's wanted; I'd like to be able to use XLink
to refer to a published XBEL file.  An application such as Grail can
then load the linked instance as needed, presenting it as a subtree of 
the containing tree.
  Looking at the XBEL 1.0 DTD to see how to go about doing this, I
didn't see a way to do this and still have a valid XBEL 1.0 document.
What is missing is an element that can be used as the link element;
none of the existing elements really make sense in that role anyway.
  I propose the addition an an element <link> which provides a simple
link and supports all the XLink attributes and those from %node.att;.
This element is added to %nodes.mix; and is defined by the DTD
fragment appended below my signature.
  Comments?


  -Fred

--
Fred L. Drake, Jr.	     <fdrake@acm.org>
Corporation for National Research Initiatives


<!--=================== Link ======================================-->

<!-- <link> is intended to be used as an anchor for a link to another
     XBEL instance; I don't know of any way to specify this
     constraint. Hopefully I have all the XLink stuff in the right
     way.  The parameter entities are taken directly from an XLink
     working draft.
  -->

<!ENTITY % locator.att
   "href          CDATA               #REQUIRED"
>
<!ENTITY % link-semantics.att
   "inline        (true|false)        'true'
    role          CDATA               #IMPLIED"
>
<!ENTITY % simple-link-semantics.att
   "inline        (true|false)        'true'"
>
<!ENTITY % remote-resource-semantics.att
   "role          CDATA               #IMPLIED
    title         CDATA               #IMPLIED
    show          (embed|replace|new) #IMPLIED
    actuate       (auto|user)         #IMPLIED
    behavior      CDATA               #IMPLIED"
>
<!ENTITY % local-resource-semantics.att
   "content-role  CDATA               #IMPLIED
    content-title CDATA               #IMPLIED"
>

<!ELEMENT link (#PCDATA)>

<!ATTLIST link
            %node.att;
	    xml:link  CDATA	#FIXED "simple"
	    %locator.att;
	    %remote-resource-semantics.att;
	    %local-resource-semantics.att;
	    %simple-link-semantics.att;
>