This is the mail archive of the docbook@lists.oasis-open.org mailing list for the DocBook project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [docbook] Dtd, Xsd or RNG/RNC as your choice of schema technologyfor your docset?


Hi Rajal,

> I have a question for the community with regards to XML based
> authoring.. In a hypothetical scenario, if you were to redo all your
> documentation in XML in your enterprise (lets consider we create a
> custom book format – that maybe extended from docbook).. which schema
> technology would you choose to define your template rules - DTD, XSD or
> RNG/RNC format?

How about going with Relax NG and then get also XML Schema and DTD versions using TRANG?

> The main issues I want to consider in making the decision is:
>
>    1. Authoring tools available. Cause non-technical folks would be
>       authoring content and thus authoring tools need to support the
>       schema technology we use.

This should not be a problem as you will have Relax NG, XML Schema and DTD.

>    2. Content Management Repository and Storage requirements. (I don’t
>       see schema technology being too much of an issue here, except
>       possibly validation content that is being checked-in/checked-out).

This can also benefit from the availability of Relax NG, XML Schema and DTD as you will be able to validate with whatever the CMS supports.

>    3. Developing publishing tools.. (mostly XSL, so I don’t think schema
>       technology is an issue as long as the instance document validates
>       with the schema).

If you will have XSLT 2.0 stylesheets processed with a Schema Aware XSLT 2.0 processor then having an XML Schema can make a difference but that will restrict you to XML Schema only.

> My current thoughts are:
>
>    1. I’d rather use RNG/RNC technology as my docset will exist for
>       several years and would thus benefit in adopting newer
>       technologies at the start..
>    2. However RNG/RNC has very limited support in GUI based authoring
>       tools to help tech-writers, I think..

As I said, you should be able to easily get XSD and DTD versions from Relax NG so you should be able to use any tool. Of course if you choose to express in Relax NG constraints that cannot be represented in XML Schema or DTD then the tools that will work with the XML Schema or DTD will offer less editing/validation support.

>    3. I could use XSDs: One big issue I had with XSDs were that we could
>       not define our own entities  e.g. “&compName;” cannot be defined
>       to output the Company Name consistently.. And we really need this
>       functionality.. (xinclude may be the answer)..
>    4. Also with XSDs we can’t use the internal DOCTYPE for each document
>       and thus overwrite some of the external entity declaration in each
>       instance..

Hmm... XML Schema and DTDs can work together. In oXygen and you can tell the parser (through the preferences dialog) to validate only against the XML Schema thus ignore the DTD for validation so you get all the DTD support except validation (entities, internal subset) and the XML Schema validation in the same document.

>    5. DTD is safest in some sense, but all new enhancements are being
>       done in XSD and RNG/RNC technologies only.. So it’s not the best
>       idea to start a new docset with DTDs anymore.

Yes.

Best Regards,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]