[XML-SIG] XBEL DTD

Mark Hammond MHammond@skippinet.com.au
Sun, 6 Sep 1998 23:29:24 +1000


Fredrik and Jack both hit exactly on 2 questions I had.  I would really like
some comments on them.  Jack asked:

> I would have used elements only
> for the BOOKMARK and NODE items,
> and used attributes for the rest.
>Can anyone enlighten me which method is best, and why?

Any comments?  The best I came up with is that attributes require quotes,
and elements dont??  But logically I agree many of these things are actually
attributes.  Should they be attributes instead of elements?

And Fredrik asked:
>a name element.  Let's see...  Is the following valid syntax?
>
>    <!ELEMENT NODE     (NAME?, (BOOKMARK|NODE)+)>

I have no idea, and I could not find an answer myself.  Im glad you noticed!
I am running with it for now :-)

Sean asked about the CaseOfTheTags??  No one seemed to go with that idea?  I
kinda like it.

And lastly, the discussion on dates seemed to settle with James indicating
the XML would look like:
<date scheme="iso-8601">2005-12-01</date>
But I am unsure what this means to the DTD??

So the new DTD (only a few mods) now looks like:

<!-- DTD for XBEL - XML Bookmark Exchange Language -->

<!ELEMENT XBEL     (INFO, FOLDER+)>
<!ELEMENT FOLDER   (NAME?, (BOOKMARK|FOLDER)+)>

<!ELEMENT BOOKMARK (NAME, URL, ADDED?, VISITED?, MODIFIED?)>

<!ELEMENT INFO     (OWNER, DATE?, MACHINENAME?)>

<!ELEMENT OWNER    (#PCDATA)>
<!ELEMENT MACHINENAME (#PCDATA)>
<!ELEMENT DATE     (#PCDATA)>

<!ELEMENT NAME     (#PCDATA)>
<!ELEMENT URL      (#PCDATA)>
<!ELEMENT ADDED    (#PCDATA)>
<!ELEMENT VISITED  (#PCDATA)>
<!ELEMENT MODIFIED (#PCDATA)>


Mark.