Re: [docbook-apps] xml:base problem with nested XIncludes

2009-07-03 Thread Ron Catterall

Hi Bob

All I see is the XEP default image if I do not do the copy first.  When 
I do the copy the picture appears OK.  However, the sizing of the 
default image does change when I change the sizing in my xml.  This 
seems reasonable, set up the space first then fetch the image to put in it.


1. Java - I'm on a Mac, OSX 10.4.11 and Java 1.5.  Java is not included 
in the Oxygen Mac download as far as I know.


2. the fullpath information 
(src=url(file:/Library/WebServer/Documents/_XML/_test//Library/WebServer/Documents/_XML/_test/images/Old_road_grass-54.jpg)) 
is inserted before FO processing:
fo:marker 
marker-class-name=section.head.markerPictures/fo:markerfo:block 
font-size=20.7359997ptPictures/fo:block/fo:block/fo:block/fo:block/fo:block/fo:blockfo:block 
space-before.minimum=0.5em space-before.optimum=1em 
space-before.maximum=2em space-after.minimum=0.5em 
space-after.optimum=1em space-after.maximum=2em 
keep-together.within-column=always id=LowRoadfo:block 
space-before.optimum=1em space-before.minimum=0.8em 
space-before.maximum=1.2em font-weight=bold font-size=12pt 
hyphenate=false space-after.minimum=0.4em 
space-after.optimum=0.6em space-after.maximum=0.8em 
keep-with-next.within-column=alwaysFigure A.1. Medieval 
Road/fo:blockfo:block id=d0e17 
text-align=centerfo:external-graphic 
src=url(file:/Library/WebServer/Documents/_XML/_test//Library/WebServer/Documents/_XML/_test/images/Old_road_grass-54.jpg) 
width=100% height=auto content-width=9.0cm content-height=auto 
content-type=content-type:image/jpeg 
text-align=center/fo:blockfo:block space-before.optimum=1em 
space-before.minimum=0.8em space-before.maximum=1.2emMedieval 
Road/fo:block/fo:block/fo:block/fo:block/fo:block/fo:block/fo:flow/fo:page-sequence/fo:root


3. 1.75.1 - yes, my paths are:
for built-in Oxygen stylesheet:
...10.3/oxygen/frameworks/docbook/xsl/fo/docbook.xsl
for the 1.75.1 stylesheet, I installed it here:
...10.3/oxygen/frameworks/docbook/5.0/docbook-xsl-ns-1.75.1/fo/docbook.xsl

4. More confusion.
The problem first arose in an article I was writing, I got the XEP 
default images without the copy step.  I extracted from my article the 
test files I sent, which also give the XEP default images without the 
copy step.
I have now updated from XEP 4.10 to XEP 4.15 and the problem has gone 
away in my real article, I see the images correctly without the copy 
step.  However, the problem has not gone away with the test files, I 
still get the XEP default images when the copy step is omitted - (the 
.fo output above is with FO processing switched off, but my FO processor 
in Oxygen is at 4.15 level).


Ron

Bob Stayton wrote:

Hi Ron,
Yes, I see the picture without running the copy stylesheet to resolve 
XIncludes first, and I get no error message from XEP about the missing 
graphic.  I doubt if it is the XEP version, since it doesn't do any 
manipulations of the path of a graphic.  Regarding the Java version, it 
seems that Oxygen for Windows and Linux always ships with a Java VM 
(currently 1.6.0_11), so I'm presuming it is using that for the 
transforms too.


I keep wondering where the full path information is coming from.  Try 
changing your transformation scenario in Oxygen to not run the XSL-FO 
process, and just save the .fo to a file.  If you peek in that FO file, 
that will tell you whether the src attribute in the fo:external-graphic 
has a full path (and correct or incorrect one).


BTW, my installation of Oxygen 10.3 does not include a 
docbook-xsl-1.75.1 under the frameworks directory of Oxygen.  Did you 
install that?


Bob Stayton
Sagehill Enterprises
b...@sagehill.net


- Original Message - From: Ron Catterall r...@catterall.net
To: Bob Stayton b...@sagehill.net; docbook-apps@lists.oasis-open.org
Sent: Thursday, July 02, 2009 2:32 PM
Subject: Re: [docbook-apps] xml:base problem with nested XIncludes



Hi Bob

Could it be XEP 4.10?  I'll move to 4.13 and check.  I can't see the 
Java version being responsible.  I checked several times with my 
too-chain, it is reproducible with XEP 4.10.


Bob Stayton wrote:

Hi Ron,
I'm not able to duplicate this problem.  I'm using your files with 
Oxygen 10.3, DocBook XSL 1.75.1, Saxon 6 and XEP 4.13, Java 1.6.0_05.



Do you see the picture without doing the 'copy' xsl first?  I don't.


Two things:

1.  I didn't see where you described the directory structure 
containing your files.  As far as I can tell, they all reside in the 
the current directory, except the graphic which is in a subdirectory 
named 'images'. Is that correct?  I wasn't clear what you expected 
the src attribute in the fo file to be, as compared to what you got.


Sorry, I omitted the directory structure.  You are right, the files 
are all in one directory and images is a subdirectory.  I expected 
images/...jpg


2.  Normally the XInclude processor does not add xml:base unless an 
included file is in a different directory, and that doesn't seem to 
be the case here.


The XInclude

Re: [docbook-apps] xml:base problem with nested XIncludes

2009-07-02 Thread Bob Stayton

Hi Ron,
I'm not able to duplicate this problem.  I'm using your files with Oxygen 
10.3, DocBook XSL 1.75.1, Saxon 6 and XEP 4.13, Java 1.6.0_05.


Two things:

1.  I didn't see where you described the directory structure containing your 
files.  As far as I can tell, they all reside in the the current directory, 
except the graphic which is in a subdirectory named 'images'.  Is that 
correct?  I wasn't clear what you expected the src attribute in the fo file 
to be, as compared to what you got.


2.  Normally the XInclude processor does not add xml:base unless an included 
file is in a different directory, and that doesn't seem to be the case here.


I'm wondering where the full path information came from, because it does not 
appear to be in the XML files.  Normally a processor will work with relative 
paths, but the error message indicates a full path.  Is a catalog involved 
here?


Bob Stayton
Sagehill Enterprises
b...@sagehill.net


- Original Message - 
From: Ron Catterall r...@catterall.net

To: docbook-apps@lists.oasis-open.org
Sent: Thursday, July 02, 2009 1:09 PM
Subject: [docbook-apps] xml:base problem with nested XIncludes



Hi

A problem with nested XIncludes that I raised in 2005 has either not
been resolved, or has risen again in DB5 and 1.75.1.  The problem is in
the value of xml:base which results in the generation of bad paths to
files referenced in a nested XInclude.  A sample program to demonstrate
the problem is below, and the separate files are attached.  XEP reports
the bad paths - see below - but fop just fails to produce any diagnostic
output.  A work around is to pre-process the XIncludes and appropriate
xsl code is in the file copy.xsl

root0.xml XIncludes root1.xml which XIncludes file0.xml which references
a jpg file in a figure.  The file cannot be found because the xml:base
is wrongly applied.

Tool chain Oxygen 10.3, DB5, XSL 1.75.1, Saxon-6.5.5 and 
XEP-4.10-20070727.

java version 1.5.0_19
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02-306)
Java HotSpot(TM) Client VM (build 1.5.0_19-138, mixed mode)



---File: root0.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE article
article
  xml:id=test xmlns=http://docbook.org/ns/docbook; version=5.0
xml:lang=EN
info
titleMain title/title
/info
para/para
xi:include href=root1.xml xmlns:xi=http://www.w3.org/2001/XInclude/
/article



---File: root1.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE appendix
appendix xml:id=file0 xmlns=http://docbook.org/ns/docbook;
version=5.0 xml:lang=EN
info
titleroot1 title/title
/info
xi:include href=file0.xml xmlns:xi=http://www.w3.org/2001/XInclude/
/appendix



---File: file0.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE section
section xml:id=Pictures xmlns=http://docbook.org/ns/docbook;
version=5.0 xml:lang=EN
infotitlePictures/title/info
figure xml:id=LowRoadtitleMedieval Road/title
mediaobject
imageobject role=xhml
imagedata fileref=images/Old_road_grass-54X.jpg format=JPG
width=100% contentwidth=12.0cm align=center/
/imageobject
imageobject role=fo
imagedata fileref=images/Old_road_grass-54.jpg format=JPG
width=100% contentwidth=9.0cm align=center/
/imageobject
captionpara  role=StartMedieval Road/para/caption
/mediaobject
/figure
/section



---File: root.xsl
?xml version=1.0 encoding=UTF-8?
xsl:stylesheet xmlns:xsl=http://www.w3.org/1999/XSL/Transform;
version=1.0
xsl:import
href=/Applications/Utilities/oxygen/10.3/oxygen/frameworks/docbook/5.0/docbook-xsl-ns-1.75.1/fo/docbook.xsl/
/xsl:stylesheet



---XEP failure report
---The image file referred to in file0.xml cannot be found.
---Nested Xinclude problem - XEP gives the bad filename
[error] Failed to create image
file:/Library/WebServer/Documents/_XML/_test//Library/WebServer/Documents/_XML/_test/images/Old_road_grass-54.jpg
of type image/jpeg
[error] java.io.FileNotFoundException:
/Library/WebServer/Documents/_XML/_test/Library/WebServer/Documents/_XML/_test/images/Old_road_grass-54.jpg
(No such file or directory)



If the nested Xincludes are expanded first using the following XSL, then
the nested problem is avoided and all is well, the image file is found
and displayed
---File: copy.xsl
?xml version=1.0 encoding=UTF-8?
xsl:stylesheet version=1.0
xmlns:xsl=http://www.w3.org/1999/XSL/Transform;
exclude-result-prefixes=xi xmlns:xi=http://www.w3.org/2001/XInclude;
xsl:output indent=yes method=xml encoding=UTF-8/
xsl:strip-space elements=*/
!-- Match document --
xsl:template match=/
xsl:apply-templates mode=copy select=./
/xsl:template
!-- Deep copy template --
xsl:template match=*|text()|@* mode=copy
xsl:copy
xsl:apply-templates mode=copy select=@*/
xsl:apply-templates mode=copy/
/xsl:copy
/xsl:template
!-- exclude some attributes added by the XInclude part --
xsl:template match=@*[name()='xml:base'] mode=copy/
!-- Handle default matching --
xsl:template match=*/
/xsl:stylesheet


Ron
--
Ron Catterall Ph.D. D.Sc.
r...@catterall.net
http://catterall.net





Re: [docbook-apps] xml:base problem with nested XIncludes

2009-07-02 Thread Ron Catterall

Hi Bob

Could it be XEP 4.10?  I'll move to 4.13 and check.  I can't see the 
Java version being responsible.  I checked several times with my 
too-chain, it is reproducible with XEP 4.10.


Bob Stayton wrote:

Hi Ron,
I'm not able to duplicate this problem.  I'm using your files with 
Oxygen 10.3, DocBook XSL 1.75.1, Saxon 6 and XEP 4.13, Java 1.6.0_05.



Do you see the picture without doing the 'copy' xsl first?  I don't.


Two things:

1.  I didn't see where you described the directory structure containing 
your files.  As far as I can tell, they all reside in the the current 
directory, except the graphic which is in a subdirectory named 
'images'.  Is that correct?  I wasn't clear what you expected the src 
attribute in the fo file to be, as compared to what you got.


Sorry, I omitted the directory structure.  You are right, the files are 
all in one directory and images is a subdirectory.  I expected images/...jpg


2.  Normally the XInclude processor does not add xml:base unless an 
included file is in a different directory, and that doesn't seem to be 
the case here.


The XInclude processing seems to be fine, no problems.  It is only the 
file that is referenced by the nested XInclude that gets the wrong (full 
and duplicated) path and I don't see the picture.  As I remember the 
2005 problem did not generate full paths, it just duplicated the 
'images' directory.  maybe I am wrong in thinking it the same problem.


I'm wondering where the full path information came from, because it does 
not appear to be in the XML files.  Normally a processor will work with 
relative paths, but the error message indicates a full path.  Is a 
catalog involved here?



No, nothing via a catalog.  The only full path I have is for docbook.xsl

I'll post when I've checked with XEP 4.13.

Ron



Bob Stayton
Sagehill Enterprises
b...@sagehill.net


- Original Message - From: Ron Catterall r...@catterall.net
To: docbook-apps@lists.oasis-open.org
Sent: Thursday, July 02, 2009 1:09 PM
Subject: [docbook-apps] xml:base problem with nested XIncludes



Hi

A problem with nested XIncludes that I raised in 2005 has either not
been resolved, or has risen again in DB5 and 1.75.1.  The problem is in
the value of xml:base which results in the generation of bad paths to
files referenced in a nested XInclude.  A sample program to demonstrate
the problem is below, and the separate files are attached.  XEP reports
the bad paths - see below - but fop just fails to produce any diagnostic
output.  A work around is to pre-process the XIncludes and appropriate
xsl code is in the file copy.xsl

root0.xml XIncludes root1.xml which XIncludes file0.xml which references
a jpg file in a figure.  The file cannot be found because the xml:base
is wrongly applied.

Tool chain Oxygen 10.3, DB5, XSL 1.75.1, Saxon-6.5.5 and 
XEP-4.10-20070727.

java version 1.5.0_19
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02-306)
Java HotSpot(TM) Client VM (build 1.5.0_19-138, mixed mode)



---File: root0.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE article
article
  xml:id=test xmlns=http://docbook.org/ns/docbook; version=5.0
xml:lang=EN
info
titleMain title/title
/info
para/para
xi:include href=root1.xml xmlns:xi=http://www.w3.org/2001/XInclude/
/article



---File: root1.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE appendix
appendix xml:id=file0 xmlns=http://docbook.org/ns/docbook;
version=5.0 xml:lang=EN
info
titleroot1 title/title
/info
xi:include href=file0.xml xmlns:xi=http://www.w3.org/2001/XInclude/
/appendix



---File: file0.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE section
section xml:id=Pictures xmlns=http://docbook.org/ns/docbook;
version=5.0 xml:lang=EN
infotitlePictures/title/info
figure xml:id=LowRoadtitleMedieval Road/title
mediaobject
imageobject role=xhml
imagedata fileref=images/Old_road_grass-54X.jpg format=JPG
width=100% contentwidth=12.0cm align=center/
/imageobject
imageobject role=fo
imagedata fileref=images/Old_road_grass-54.jpg format=JPG
width=100% contentwidth=9.0cm align=center/
/imageobject
captionpara  role=StartMedieval Road/para/caption
/mediaobject
/figure
/section



---File: root.xsl
?xml version=1.0 encoding=UTF-8?
xsl:stylesheet xmlns:xsl=http://www.w3.org/1999/XSL/Transform;
version=1.0
xsl:import
href=/Applications/Utilities/oxygen/10.3/oxygen/frameworks/docbook/5.0/docbook-xsl-ns-1.75.1/fo/docbook.xsl/ 


/xsl:stylesheet



---XEP failure report
---The image file referred to in file0.xml cannot be found.
---Nested Xinclude problem - XEP gives the bad filename
[error] Failed to create image
file:/Library/WebServer/Documents/_XML/_test//Library/WebServer/Documents/_XML/_test/images/Old_road_grass-54.jpg 


of type image/jpeg
[error] java.io.FileNotFoundException:
/Library/WebServer/Documents/_XML/_test/Library/WebServer/Documents/_XML/_test/images/Old_road_grass-54.jpg 


(No such file or directory)



If the nested Xincludes are expanded first using the following 

Re: [docbook-apps] xml:base problem with nested XIncludes

2009-07-02 Thread Bob Stayton

Hi Ron,
Yes, I see the picture without running the copy stylesheet to resolve 
XIncludes first, and I get no error message from XEP about the missing 
graphic.  I doubt if it is the XEP version, since it doesn't do any 
manipulations of the path of a graphic.  Regarding the Java version, it 
seems that Oxygen for Windows and Linux always ships with a Java VM 
(currently 1.6.0_11), so I'm presuming it is using that for the transforms 
too.


I keep wondering where the full path information is coming from.  Try 
changing your transformation scenario in Oxygen to not run the XSL-FO 
process, and just save the .fo to a file.  If you peek in that FO file, that 
will tell you whether the src attribute in the fo:external-graphic has a 
full path (and correct or incorrect one).


BTW, my installation of Oxygen 10.3 does not include a docbook-xsl-1.75.1 
under the frameworks directory of Oxygen.  Did you install that?


Bob Stayton
Sagehill Enterprises
b...@sagehill.net


- Original Message - 
From: Ron Catterall r...@catterall.net

To: Bob Stayton b...@sagehill.net; docbook-apps@lists.oasis-open.org
Sent: Thursday, July 02, 2009 2:32 PM
Subject: Re: [docbook-apps] xml:base problem with nested XIncludes



Hi Bob

Could it be XEP 4.10?  I'll move to 4.13 and check.  I can't see the Java 
version being responsible.  I checked several times with my too-chain, it 
is reproducible with XEP 4.10.


Bob Stayton wrote:

Hi Ron,
I'm not able to duplicate this problem.  I'm using your files with Oxygen 
10.3, DocBook XSL 1.75.1, Saxon 6 and XEP 4.13, Java 1.6.0_05.



Do you see the picture without doing the 'copy' xsl first?  I don't.


Two things:

1.  I didn't see where you described the directory structure containing 
your files.  As far as I can tell, they all reside in the the current 
directory, except the graphic which is in a subdirectory named 'images'. 
Is that correct?  I wasn't clear what you expected the src attribute in 
the fo file to be, as compared to what you got.


Sorry, I omitted the directory structure.  You are right, the files are 
all in one directory and images is a subdirectory.  I expected 
images/...jpg


2.  Normally the XInclude processor does not add xml:base unless an 
included file is in a different directory, and that doesn't seem to be 
the case here.


The XInclude processing seems to be fine, no problems.  It is only the 
file that is referenced by the nested XInclude that gets the wrong (full 
and duplicated) path and I don't see the picture.  As I remember the 2005 
problem did not generate full paths, it just duplicated the 'images' 
directory.  maybe I am wrong in thinking it the same problem.


I'm wondering where the full path information came from, because it does 
not appear to be in the XML files.  Normally a processor will work with 
relative paths, but the error message indicates a full path.  Is a 
catalog involved here?



No, nothing via a catalog.  The only full path I have is for docbook.xsl

I'll post when I've checked with XEP 4.13.

Ron



Bob Stayton
Sagehill Enterprises
b...@sagehill.net


- Original Message - From: Ron Catterall r...@catterall.net
To: docbook-apps@lists.oasis-open.org
Sent: Thursday, July 02, 2009 1:09 PM
Subject: [docbook-apps] xml:base problem with nested XIncludes



Hi

A problem with nested XIncludes that I raised in 2005 has either not
been resolved, or has risen again in DB5 and 1.75.1.  The problem is in
the value of xml:base which results in the generation of bad paths to
files referenced in a nested XInclude.  A sample program to demonstrate
the problem is below, and the separate files are attached.  XEP reports
the bad paths - see below - but fop just fails to produce any diagnostic
output.  A work around is to pre-process the XIncludes and appropriate
xsl code is in the file copy.xsl

root0.xml XIncludes root1.xml which XIncludes file0.xml which references
a jpg file in a figure.  The file cannot be found because the xml:base
is wrongly applied.

Tool chain Oxygen 10.3, DB5, XSL 1.75.1, Saxon-6.5.5 and 
XEP-4.10-20070727.

java version 1.5.0_19
Java(TM) 2 Runtime Environment, Standard Edition (build 
1.5.0_19-b02-306)

Java HotSpot(TM) Client VM (build 1.5.0_19-138, mixed mode)



---File: root0.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE article
article
  xml:id=test xmlns=http://docbook.org/ns/docbook; version=5.0
xml:lang=EN
info
titleMain title/title
/info
para/para
xi:include href=root1.xml 
xmlns:xi=http://www.w3.org/2001/XInclude/

/article



---File: root1.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE appendix
appendix xml:id=file0 xmlns=http://docbook.org/ns/docbook;
version=5.0 xml:lang=EN
info
titleroot1 title/title
/info
xi:include href=file0.xml 
xmlns:xi=http://www.w3.org/2001/XInclude/

/appendix



---File: file0.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE section
section xml:id=Pictures xmlns=http://docbook.org/ns/docbook;
version=5.0 xml:lang=EN
infotitlePictures/title/info
figure xml:id