Re: [docbook] docbook5 and adding elements (long)
Do you know of a good step-by-step example of customizing Docbook5 with RelaxNG? Have you seen the DocBook 5.0 Transition Guide? It has examples: http://www.docbook.org/docs/howto/ Bob Stayton Sagehill Enterprises DocBook Consulting [EMAIL PROTECTED] - Original Message - From: Kells Kearney [EMAIL PROTECTED] To: Bob Stayton [EMAIL PROTECTED] Cc: docbook@lists.oasis-open.org Sent: Friday, March 16, 2007 3:33 PM Subject: Re: [docbook] docbook5 and adding elements (long) On 3/15/07, Bob Stayton [EMAIL PROTECTED] wrote: Hi Kells, The DTD version of DocBook 5 does not have the %local.* parameter entities. All of the customization features are in the RelaxNG version, from which the DTD version is generated. Oh? Ooops! I didn't notice that in this variation. Thanks! If you don't want to customize the RelaxNG and generate a DTD from it, you Sigh. I'd love to customize the RelaxNG and generate a DTD from it, but unfortunately I really don't have the knowledge about how to do that, so I would really appreciate one good example to show me how. I'd like to do things the right way if I could. Do you know of a good step-by-step example of customizing Docbook5 with RelaxNG? ie no hand-waving and the rest is left as an exercise for the reader or implementation is trivial, just a simple example from which I can download the example files, execute commands and have a 90% chance of having the example work out of the box can just edit a copy of the DocBook 5 DTD. Because it is a flat structure with no parameter entities, editing it is straightforward, if sometimes tedious. You need to add your new element as you have, and you also need to edit any content models of elements that are to contain your new element. If you don't do that, then although the element name is valid, there is no place in the document where its position is valid. If I'm understanding you correctly, you mean that I need to put the new element into an appropriate place in the grammar so that there's enough context for the element to be properly processed. Is that right? If so, that makes sense but that generality isn't clear enough to help me at this stage of my understanding. I don't think you want to use ENTITY as the attribute type for server. Such an attribute would contain the name of an unparsed entity declared elsewhere, and I don't see that for server1, server2, etc. I think you want CDATA there. Okay. In your test.xml sample, the elements are not actually in the DocBook namespace. You declare the namespace with a db prefix, but you don't use the prefix. If you declare the namespace without a prefix, then your elements will be in that default namespace. Your app.xsl needs to import the stock docbook stylesheet (perhaps it does and you aren't showing that). Then the template that matches on Docbook elements must have the namespace prefix match=db:app. Then the call-template uses a name of db:prompt, but you don't define a template with that name. Also, it is unusual to define a template name using a namespace prefix. It looks a bit like you are trying to invoke the template that handles the prompt element to handle your app element, but XSLT doesn't work that way. Okay. Wow, this is really frustrating. :( The impression I'm getting is that I need to use XSL-FO to get what I want. Is that right? You might consider dropping back to DocBook4 so you don't have to deal with namespaces at the same time you are figuring other things out. Do you really need DocBook5? E No, I guess not, but isn't Docbook5 supposed to save the universe? :) Quite honestly, LaTeX would be a much faster path for me to getting publication-quality print output (after all, it was generating good stuff for me 15 years ago! :), but there a number of compelling advantages (IMO) to using Docbook. (I think! :) Bob Stayton Sagehill Enterprises DocBook Consulting [EMAIL PROTECTED] - Original Message - From: Kells Kearney [EMAIL PROTECTED] To: docbook@lists.oasis-open.org Sent: Tuesday, March 13, 2007 4:13 PM Subject: [docbook] docbook5 and adding elements (long) I've taken a look through the e-mail archives, and I've tried googling, but I'm unable to find an answer to why I can't do something that should be quite simple. :( I've found documentation for how to do it using Docbook 4.x (and had no luck using it with Docbook 5), but it *seems* like a good thing to do it in Docbook 5. (Right?) I'm hoping that some kind soul can help me understand what it is that I'm doing wrong. I think that all I need is one good example. Thanks in advance! kells What I'm trying to do: I would like to be able to create an application-specific prompt to create documentation for the application. The prompt looks like: app: server_name where I'd like to define server_name in an entity as an attribute with a reasonable default. To
Re: [docbook] docbook5 and adding elements (long)
Bob Stayton wrote: Do you know of a good step-by-step example of customizing Docbook5 with RelaxNG? Have you seen the DocBook 5.0 Transition Guide? It has examples: http://www.docbook.org/docs/howto/ A very good read IMHO. If you search through the archives of this mailing list, I posted a 'mini' docbook, simple or some such title, which is a reduction to a tiny subset. It really is well designed for customisation. A dream compared to the entity method. http://www.dpawson.co.uk/nodesets/entries/051130.html and http://lists.oasis-open.org/archives/docbook-apps/200511/msg00107.html hth regards -- Dave Pawson XSLT XSL-FO FAQ. http://www.dpawson.co.uk - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[docbook] v5 feature request.
Could I request a (negative) addition to the schema please. define name=db._any a:documentationAny element from almost any namespace/a:documentation element anyName except nsName/ nsName ns=http://www.w3.org/1999/xhtml/ !-- DP Added for litprog-- nsName ns=http://nwalsh.com/xmlns/litprog/fragment/ /except /anyName zeroOrMore choice ref name=db._any.attribute/ text/ ref name=db._any/ /choice /zeroOrMore /element /define This to enable the schema to work with the litprog work that Norm has done. Also, for the record, though I believe Jirka has reported it. define name=db.computeroutput.inlines choice choice text/ ref name=db.ubiq.inlines/ ref name=db.os.inlines/ ref name=db.technical.inlines/ ref name=db.markup.inlines/ /choice ref name=db.co/!-- DP. Error Duplicated below? -- ref name=db.co/ /choice /define A duplicate reference to db.co regards regards -- Dave Pawson XSLT XSL-FO FAQ. http://www.dpawson.co.uk - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [docbook] docbook5 and adding elements (long)
I have to apologize to both Dave and Bob, but they've given me far too much credit for understanding. :) I'm hoping that I can impose on your patience for just a little longer. On 3/17/07, Dave Pawson [EMAIL PROTECTED] wrote: Bob Stayton wrote: Do you know of a good step-by-step example of customizing Docbook5 with RelaxNG? Have you seen the DocBook 5.0 Transition Guide? It has examples: http://www.docbook.org/docs/howto/ I had read this before, but it doesn't actually show the basic mechanics so that I can just use it. For instance, * What programs are used to convert between the compact syntax and XML syntax? Thanks to the links from Dick Hamilton I understand that James Clark's 'trang' is most often used, but I'd never know that from the Transition Guide. * How do you use the resulting RelaxNG XML file in a real-world XML document? I gather from Bob Stayton's reply that I should convert the RNG files (my customizations + the Docbook5 RNG) to a DTD. I guess that means that I should just put a !DOCTYPE book SYSTEM mynew.DTD in the front of the document. Does that mean that I then throw out the namespaces? I think that the previous example of asmbook (extending Docbook5 with register and instruction elements) is really close, so with perhaps just a little bit of corrections and gap filling I'll have a good foundation to build up and test my understanding. Would it be possible for someone to post the (hopefully small) corrections to that example? Thanks to everyone so far for their kindness! A very good read IMHO. If you search through the archives of this mailing list, I posted a 'mini' docbook, simple or some such title, which is a reduction to a tiny subset. It really is well designed for customisation. A dream compared to the entity method. http://www.dpawson.co.uk/nodesets/entries/051130.html and http://lists.oasis-open.org/archives/docbook-apps/200511/msg00107.html hth regards -- Dave Pawson XSLT XSL-FO FAQ. http://www.dpawson.co.uk - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [docbook] docbook5 and adding elements (long)
* How do you use the resulting RelaxNG XML file in a real-world XML document? The RNG files (or DTD files, if that's what you want to use) don't go in the XML file you are authoring. They are used by your editor to prevent you from entering invalid data and/or by your validator to identify documents that aren't conformant (and would likely not transform correctly once the stylesheets are applied). On 3/17/07, Kells Kearney [EMAIL PROTECTED] wrote: I have to apologize to both Dave and Bob, but they've given me far too much credit for understanding. :) I'm hoping that I can impose on your patience for just a little longer. On 3/17/07, Dave Pawson [EMAIL PROTECTED] wrote: Bob Stayton wrote: Do you know of a good step-by-step example of customizing Docbook5 with RelaxNG? Have you seen the DocBook 5.0 Transition Guide? It has examples: http://www.docbook.org/docs/howto/ I had read this before, but it doesn't actually show the basic mechanics so that I can just use it. For instance, * What programs are used to convert between the compact syntax and XML syntax? Thanks to the links from Dick Hamilton I understand that James Clark's 'trang' is most often used, but I'd never know that from the Transition Guide. * How do you use the resulting RelaxNG XML file in a real-world XML document? I gather from Bob Stayton's reply that I should convert the RNG files (my customizations + the Docbook5 RNG) to a DTD. I guess that means that I should just put a !DOCTYPE book SYSTEM mynew.DTD in the front of the document. Does that mean that I then throw out the namespaces? I think that the previous example of asmbook (extending Docbook5 with register and instruction elements) is really close, so with perhaps just a little bit of corrections and gap filling I'll have a good foundation to build up and test my understanding. Would it be possible for someone to post the (hopefully small) corrections to that example? Thanks to everyone so far for their kindness! A very good read IMHO. If you search through the archives of this mailing list, I posted a 'mini' docbook, simple or some such title, which is a reduction to a tiny subset. It really is well designed for customisation. A dream compared to the entity method. http://www.dpawson.co.uk/nodesets/entries/051130.html and http://lists.oasis-open.org/archives/docbook-apps/200511/msg00107.html hth regards -- Dave Pawson XSLT XSL-FO FAQ. http://www.dpawson.co.uk - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- http://chris.chiasson.name/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [docbook] docbook5 and adding elements (long)
Kells Kearney wrote: Have you seen the DocBook 5.0 Transition Guide? It has examples: http://www.docbook.org/docs/howto/ I had read this before, but it doesn't actually show the basic mechanics so that I can just use it. For instance, * What programs are used to convert between the compact syntax and XML syntax? Thanks to the links from Dick Hamilton I understand that James Clark's 'trang' is most often used, but I'd never know that from the Transition Guide. Then you need to read up on Relax NG. * How do you use the resulting RelaxNG XML file in a real-world XML document? I gather from Bob Stayton's reply that I should convert the RNG files (my customizations + the Docbook5 RNG) to a DTD. I guess that means that I should just put a !DOCTYPE book SYSTEM mynew.DTD in the front of the document. Does that mean that I then throw out the namespaces? No. You can validate with a Schema. Schema = dtd|W3C xsd | relax NG 'Jing' from James Clark allows you to validate an XML instance against a schema (relax ng in this case) I think that the previous example of asmbook (extending Docbook5 with register and instruction elements) is really close, so with perhaps just a little bit of corrections and gap filling I'll have a good foundation to build up and test my understanding. Would it be possible for someone to post the (hopefully small) corrections to that example? Not without hand holding. You go do the reading and come back with the questions. I'm sure you'll get help. regards -- Dave Pawson XSLT XSL-FO FAQ. http://www.dpawson.co.uk - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [docbook] docbook5 and adding elements (long)
Kells Kearney wrote: * What programs are used to convert between the compact syntax and XML syntax? Thanks to the links from Dick Hamilton I understand that James Clark's 'trang' is most often used, but I'd never know that from the Transition Guide. That's why customization examples are provided in both syntaxes (XML and compact) so you can choose syntax which better suits your toolchain. * How do you use the resulting RelaxNG XML file in a real-world XML document? Usually you need schema only for editing and for validation of your XML files: http://www.docbook.org/docs/howto/#editors http://www.docbook.org/docs/howto/#validators If there is something unclear about usage of editors or validators as described, let me know, I will try to improve text. -- -- Jirka Kosek e-mail: [EMAIL PROTECTED] http://xmlguru.cz -- Professional XML consulting and training services DocBook customization, custom XSLT/XSL-FO document processing -- OASIS DocBook TC member, W3C Invited Expert, ISO/JTC1/SC34 member -- Want to speak at XML Prague 2007 = http://xmlprague.cz/cfp.html signature.asc Description: OpenPGP digital signature
Re: [docbook] v5 feature request.
Dave Pawson wrote: Could I request a (negative) addition to the schema please. define name=db._any a:documentationAny element from almost any namespace/a:documentation element anyName except nsName/ nsName ns=http://www.w3.org/1999/xhtml/ !-- DP Added for litprog-- nsName ns=http://nwalsh.com/xmlns/litprog/fragment/ /except /anyName Unfortunately you hit one of the very few limits of RELAX NG. You can not use general patterns inside anyName, so it is not possible to add new excluded namespace simply by combining new namespace name with an existing pattern for excluded namespaces. You have to redefine whole pattern for db._any. -- -- Jirka Kosek e-mail: [EMAIL PROTECTED] http://xmlguru.cz -- Professional XML consulting and training services DocBook customization, custom XSLT/XSL-FO document processing -- OASIS DocBook TC member, W3C Invited Expert, ISO/JTC1/SC34 member -- Want to speak at XML Prague 2007 = http://xmlprague.cz/cfp.html signature.asc Description: OpenPGP digital signature