Subject: Re: [xsl] Cannot include namespaces [XSLT 1.0] xsltproc From: pankaj.c@xxxxxxxxxxxxxxxxxx Date: Wed, 25 Aug 2010 14:46:54 +0530 |
>but if it changes the behaviour of the >transformation, then my guess would be it's one of those DTDs that adds >default namespace declarations to elements. These DTDs were designed by >the devil to make XSLT programmers go insane. It seems to me this case only. I have just modified my xsltproc command to xsltproc -o /Applications/Pankaj/main.xml --noout --novalid /Applications/Pankaj/Elsevier_Books.xsl /Applications/Pankaj/main.xml where novaild =>[Skip loading the document's DTD] and perfect namespaces are added to <chapter>. but alas I miss the external entities († etc). it's one of those DTDs that adds >default namespace declarations to elements Below is the DTD If you look at top level namespaces defination they are included by default. "Is there a way to over rule this. Modifying DTD will be my last option and desirable. " <!ENTITY % top-level.att "xmlns CDATA #FIXED %ESBK.xmlns; version CDATA #FIXED '5.2' xmlns:ce CDATA #FIXED %ESCE.xmlns; xmlns:xlink CDATA #FIXED %XLINK.xmlns; xml:lang %language; 'en'"> !-- Typical invocation: <!ENTITY % common.ent PUBLIC "-//ES//ELEMENTS common element pool version 1.1.0//EN//XML" "common110.ent"> %common.ent; --> <!-- namespaces and public identifiers --> <!ENTITY % ESCE.xmlns "'http://www.elsevier.com/xml/common/dtd'"> <!ENTITY % ESSB.xmlns "'http://www.elsevier.com/xml/common/struct-bib/dtd'" > <!ENTITY % ESTB.xmlns "'http://www.elsevier.com/xml/common/table/dtd'" > <!ENTITY % XLINK.xmlns "'http://www.w3.org/1999/xlink'" > <!ENTITY % CALS.xmlns "'http://www.elsevier.com/xml/common/cals/dtd'" > Here what the root dtd looks like. <!-- Supported doctypes: book, chapter, simple-chapter, examination, fb-non-chapter, glossary, index, introduction, bibliography Typical invocation: <!DOCTYPE book PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE chapter PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE simple-chapter PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE examination PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE fb-non-chapter PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE glossary PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE index PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE introduction PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> or <!DOCTYPE bibliography PUBLIC "-//ES//DTD book DTD version 5.2.1//EN//XML" "book521.dtd"> --> <!-- set local parameter entities --> <!ENTITY % local.spar.data "| ce:index-flag"> <!ENTITY % local.par.data "| ce:index-flag"> <!ENTITY % local.textfn.data "| ce:br"> <!-- include the latest version of the common element pool --> <!ENTITY % common.ent PUBLIC "-//ES//ELEMENTS common element pool version 1.1.3//EN//XML" "common113.ent"> %common.ent; <!-- namespaces and public identifiers --> <!ENTITY % ESBK.xmlns "'http://www.elsevier.com/xml/bk/dtd'"> <!-- attribute type entities --> <!ENTITY % docsubtype "(bk|chp|scp|exm|gls|idx|itr|bib|app|bio|for|pre|ack|ctr|rev|htu|ded)"> <!-- attribute group entities --> <!ENTITY % top-level.att "xmlns CDATA #FIXED %ESBK.xmlns; version CDATA #FIXED '5.2' xmlns:ce CDATA #FIXED %ESCE.xmlns; xmlns:xlink CDATA #FIXED %XLINK.xmlns; xml:lang %language; 'en'"> <!-- elsevier-book --> <!ELEMENT book ( info, top, ce:floats?, front?, body, rear? )> <!ATTLIST book %top-level.att; docsubtype %docsubtype; #FIXED "bk"> <!ELEMENT info ( ce:pii, ce:doi?, ce:isbn, ce:issn?, ce:document-thread?, ce:copyright, ce:imprint?, ce:doctopics? )> <!ELEMENT top ( %titles;, ce:edition?, ce:copyright-line, cover-image?, ce:editors*, ce:author-group*, dedication*, ce:sections )> <!ELEMENT cover-image ( ce:figure )> <!ELEMENT dedication ( ce:simple-para+ ) > <!ELEMENT front ( ce:include-item+ ) > <!ELEMENT body ( volume | part | section | ce:include-item )+ > <!ELEMENT volume ( ce:label?, ce:title?, ce:author-group*, ( part | section | ce:include-item )+ )> <!ATTLIST volume %common-reqref.att; %common-role.att;> <!ELEMENT part ( ce:label?, ce:title?, ce:author-group*, ( section | ce:include-item | ce:further-reading )+ )> <!ATTLIST part %common-reqref.att; %common-role.att;> <!ELEMENT section ( ce:label?, ce:title?, ce:author-group*, ( ce:include-item | ce:further-reading )+ )> <!ATTLIST section %common-reqref.att; %common-role.att;> <!ELEMENT introduction ( info, ce:floats?, ce:title, ce:author-group*, ce:sections?, ( ce:bibliography | ce:further-reading )* )> <!ATTLIST introduction %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #FIXED "itr"> <!ELEMENT chapter ( ce:footnote*, info, ce:floats?, ce:label?, ce:title, ce:subtitle?, ce:author-group*, ce:displayed-quote?, poem?, outline?, objectives?, ce:nomenclature?, ce:acknowledgment?, ce:intro?, ( ce:sections | subchapter | exam )+, ( ( ce:bibliography | ce:further-reading )+, ( ce:section | exam )* )? )> <!ATTLIST chapter %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #FIXED "chp"> <!ELEMENT simple-chapter ( ce:footnote*, info, ce:floats?, ce:label?, ce:title, ce:subtitle?, ce:author-group*, ce:displayed-quote?, poem?, outline?, objectives?, ce:nomenclature?, ce:acknowledgment?, ce:intro?, ( ce:sections | subchapter | exam )*, ( ( ce:bibliography | ce:further-reading )+, ( ce:section | exam )* )? )> <!ATTLIST simple-chapter %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #FIXED "scp"> <!ELEMENT subchapter ( ce:footnote*, ce:label?, ce:title, ce:author-group*, ce:displayed-quote?, ce:nomenclature?, ce:acknowledgment?, ce:intro?, ( ce:sections | subchapter | exam )+, ( ce:bibliography | ce:further-reading )+, ( ce:section | exam )* )> <!ATTLIST subchapter %common-reqref.att; %common-role.att;> <!ELEMENT rear ( rearpart+ )> <!ELEMENT rearpart ( ce:label?, ce:title?, ce:author-group*, ce:include-item+ )> <!ATTLIST rearpart %common-reqref.att; %common-role.att;> <!ELEMENT fb-non-chapter ( info, ce:floats?, ce:label?, ce:title, ( ce:author-group | ce:nomenclature | ce:para | ce:section )*, ce:bibliography? , ce:further-reading?)> <!ATTLIST fb-non-chapter %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #REQUIRED> <!ELEMENT exam ( ce:title?, ce:exam-questions, ce:exam-answers? )> <!ELEMENT outline ( ce:list )> <!ELEMENT objectives ( ce:section-title?, ce:para+ )> <!ELEMENT poem ( ce:title?, ce:author?, stanza+, ce:source? )> <!ELEMENT stanza ( line+ )> <!ELEMENT line ( %richstring.data; )* > <!ELEMENT examination ( info, ce:floats?, ce:label?, ce:title, ce:author-group*, ce:intro?, exam* )> <!ATTLIST examination %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #FIXED "exm"> <!ELEMENT glossary ( info, ce:label?, ce:glossary* )> <!ATTLIST glossary %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #FIXED "gls"> <!ELEMENT index ( info, ce:label?, ce:index* )> <!ATTLIST index %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #FIXED "idx"> <!ELEMENT bibliography ( info, ce:label?, ce:further-reading* )> <!ATTLIST bibliography %common-reqref.att; %top-level.att; %common-role.att; docsubtype %docsubtype; #FIXED "bib">
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Cannot include namespaces, Michael Kay | Thread | Re: [xsl] Cannot include namespaces, Michael Kay |
Re: [xsl] Good quality XSLT course , Andrew Welch | Date | Re: [xsl] Cannot include namespaces, Michael Kay |
Month |