xsl-list
[Top] [All Lists]

Re: Importing multiple XML files into one XML file

2004-04-14 09:22:49
At 2004-04-14 15:46 +0000, Chisanga Mwelwa wrote:
I appreciate your help on my previous problem - your solution is working well!

However - I am now trying to recursively  import multiple XML files eg:

You previously advised me to use this "structure" - it works fine...
...
but what I would like to do is extend the entity structure "recursively" - note "dob-stuff" in the example below...

Now you are getting beyond simple hierarchical structure ... your implication in "recursion" is that each referenced XML fragment will, in turn, reference their own XML fragments of their own value-space for entity names. This is not possible in XML.

Having multiple levels is fine, but each level cannot be independent of other levels ... all declarations must be made up front:

<!-- employees.xml -->
<!DOCTYPE EMPLOYEES
[
<!ENTITY emp-stuff SYSTEM "employee.xml">
<!ENTITY dob-stuff SYSTEM "dob.xml">
]>
<EMPLOYEES>
<OFFICE name="Town Hall">
 &emp-stuff;
</OFFICE>
</EMPLOYEES>

<!-- employee.xml -->
<EMPLOYEE>
  <NAME>Jo Blogs</NAME>
  &dob-stuff;
</EMPLOYEE>

<!-- dob.xml -->
  <DOB>1-12-1980</DOB>

When I use external parsed general entities, each module and lesson is in its own fragment and all fragments are declared up front with unique names relevant to the module and lesson.

You would need to guarantee uniqueness in your example for all fragments and you start losing what benefits you implied in your original post.

Consider what David has suggested regarding abandoning the syntactic approach and using XSLT to assemble your final structure from independent pieces. When using the entity structures the pieces are all dependent on the declarations in the "top-most" piece.

I hope this helps.

............................. Ken

--
Public courses: Spring 2004 world tour of hands-on XSL instruction
Each week:   Monday-Wednesday: XSLT/XPath; Thursday-Friday: XSL-FO
Hong Kong May 17-21; Bremen Germany May 24-28; Helsinki June 14-18

World-wide on-site corporate, govt. & user group XML/XSL training.
G. Ken Holman                 mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0    +1(613)489-0999 (F:-0995)
Male Breast Cancer Awareness  http://www.CraneSoftwrights.com/s/bc



<Prev in Thread] Current Thread [Next in Thread>