Re: [Refdb-users] xnotes
Status: Beta
Brought to you by:
mhoenicka
From: Bruce D'A. <bd...@fa...> - 2003-11-26 22:30:02
|
On Nov 26, 2003, at 4:06 PM, Markus Hoenicka wrote: >> I think it'd be better to put the date into an attribute on the main >> xnote element. Example: <xnote date="20031125"> > > I don't like that as it requires additional non-xml parsing in any > stylesheet working on these data. Not that this is difficult per se, > but people will change the order of Y-M-D or forget the zeros in > one-digit dates or use two-digit years if they are given a chance > to. Every stylesheet will have to deal with the odd cases and user > ignorance. Using a date element with subelements solves all these > issues. Though with the schema languages, you can precisely validate the data attribute. I understand your point though, even if it does add a lot additional markup that seems like overkill for me, particularly when this is in essence a data stamp that can be automated (via a macro on a template, or in a gui client). >> I've managed to get my own notes schema to work with MODS. What I'm >> now looking at is merging it with xnote. Feedback would help. > > Why don't you go ahead and post your current schema (also converted to > DTD for the boneheads)? There's room for improvements in the current > implementation of notex.dtd, and I'd like to learn from your > experience. Here's the notes DTD (converted with Trang; the mods-bn stuff cannot be represented in a DTD). My focus has been on annotation markup, while your's the larger structure. Both are important, and I like what you've done. Annotations, unfortunately, have been dropped. <!-- start = biblio-notes --> <!ELEMENT ns1:biblio-notes (title?,note*,keyword*)> <!ATTLIST ns1:biblio-notes xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ELEMENT ns1:title (#PCDATA)> <!ATTLIST ns1:title xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ELEMENT ns1:keyword (#PCDATA)> <!ATTLIST ns1:keyword xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ELEMENT ns1:note (p)*> <!ATTLIST ns1:note xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ATTLIST note ID ID #IMPLIED user CDATA #IMPLIED href CDATA #IMPLIED xml:lang CDATA #IMPLIED date NMTOKEN #IMPLIED refs IDREFS #IMPLIED seealso IDREFS #IMPLIED unit NMTOKEN #IMPLIED start NMTOKEN #IMPLIED end NMTOKEN #IMPLIED> <!ENTITY % Citation.attlist " refs IDREFS #IMPLIED seealso IDREFS #IMPLIED unit NMTOKEN #IMPLIED start NMTOKEN #IMPLIED end NMTOKEN #IMPLIED"> <!ENTITY % ext.Blocks ""> <!-- main elements --> <!ENTITY % Blocks "p|blockquote %ext.Blocks;"> <!ENTITY % ext.Inlines ""> <!ENTITY % Inlines "#PCDATA|em|q|span %ext.Inlines;"> <!ELEMENT ns1:p (%Inlines;|%Blocks;)*> <!ATTLIST ns1:p xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ATTLIST p %Citation.attlist;> <!ELEMENT ns1:q (%Inlines;)*> <!ATTLIST ns1:q xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ATTLIST q %Citation.attlist;> <!ELEMENT ns1:blockquote (p)*> <!ATTLIST ns1:blockquote xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ATTLIST blockquote %Citation.attlist;> <!ELEMENT ns1:em (%Inlines;)*> <!ATTLIST ns1:em xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ATTLIST em source (original|added) #IMPLIED> <!ELEMENT ns1:span (%Inlines;)*> <!ATTLIST ns1:span xmlns:ns1 CDATA #FIXED 'http://refdb.sourceforge.net/biblio-notes-ns'> <!ATTLIST span type CDATA #IMPLIED xml:lang CDATA #IMPLIED> <!ENTITY % attlist.pagebreak ""> |