Re: Need opinion on DTD design
- From: stefan.rickfjord@xxxxxxxxx
- Date: 3 Aug 2006 00:53:39 -0700
Hi George!
Thanks a lot for the reply, it is greatly appreciated and I will look
into this immediately!
With best regards, Stefan
George Bina wrote:
Hi Stefan,
I would recommend looking into using a schema language (XML Schema,
Relax NG) instead of a DTD.
With DTD probably the best approach is to use parameter entities to
define the content model for elements and the available attributes. You
can look at DocBook 4 for an example of using parameter entities. Note
that the next version of DocBook, DocBook 5 will provide a Relax NG
schema. More, it should be possible to convert from schema to DTD so if
you need to provide also a DTD then you will be able to do so. DocBook
5 for instance will provide also a DTD and an XML Schema.
Best Regards,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
stefan.rickfjord@xxxxxxxxx wrote:
Hi,
I am a newbie to programming using XML and I'm currently working on a
side-project which will house some database information in a XML-file.
I am writing a DTD to specify the XML-format, mostly for the purpose of
documenting the XML database.
My issue is that I have some fields, e.g.
<!ELEMENT Vehicle ( Car? )>
<!ELEMENT Car ( Gasoline | Diesel )>
<!ELEMENT Gasoline EMPTY>
<!ELEMENT Diesel EMPTY>
but I want to make sure that this database is extendable. I.e. after
using the database for a while in my application I want to be able to
add stuff that I come up with later on, e.g.
<!ELEMENT Motorcycle ( Sportbike | Harley )>
<!ELEMENT Sportbike EMPTY>
<!ELEMENT Harley EMPTY>
I'd rather not add a lot of "Reserved"-elements in the DTD, as this is
not a nice solution. My own little idea is that i'm anyway able to add
items to the DTD further on since I both have the DTD of the XML and
the source of the application using it. Is this correct?
I've looked around and found another way to do this and that is to
include the old DTD as an entity, is that the way to go?
Please excuse my newbie-question, I just want to know if my way of
thinking is correct.
Thanks a lot for reading!
.
- References:
- Need opinion on DTD design
- From: stefan . rickfjord
- Re: Need opinion on DTD design
- From: George Bina
- Need opinion on DTD design
- Prev by Date: Re: Need opinion on DTD design
- Next by Date: Re: XSLT & SABLOTRON: non-XSL instruction
- Previous by thread: Re: Need opinion on DTD design
- Next by thread: Re: Need opinion on DTD design
- Index(es):
Relevant Pages
|