We have a bunch of XML that's chunked into files. The files are
stitched together via entity references, e.g.:
main.xml
----
<?xml version="1.0" encoding="utf-8"?>
<!ENTITY chunk1 SYSTEM "chunk1.xml">
<!ENTITY chunk1-1 SYSTEM "chunk1-1.xml">
<main>
... content ...
&chunk1;
... content ...
</main>
chunk1.xml
----
<?xml version="1.0" encoding="utf-8"?>
<!--
<!ENTITY chunk1-1 SYSTEM "chunk1-1.xml">
-->
<chunk1>
... content ...
&chunk1-1;
... content ...
</chunk1>
chunk1-1.xml
----
<?xml version="1.0" encoding="utf-8"?>
<chunk1-1>
...content...
</chunk1-1>
In general, we'd like to load this content into ML via WebDAV and
continue to have the chunks stay as separate files, but be able to
stitch the uber doc back together. We are using ML 4.0 so it seems
like we should be converting these entity/includes into xincludes...
We've done this by hand and it works nicely
We are unclear if we should perform this transform using XSL 2.0 or a
scripting language like Perl prior to loading the content into ML or
if there is a good way (possibly using CPF) to perform this
"enrichment" once we have the data loaded into ML.
So some thoughts/areas of interest:
At first blush, the xinclude resolution code does seem a bit slow, but
this is early days and we don't think it will matter if this part of
our processing is a little slower. Are there tricks for speeding up
xinclude resolution when we are using the xinc:node-expand function?
We have noticed that using the xdmp:document-load on the main.xml
document resolves all entities and we end up with one uber document,
which in theory we could then break back apart and insert xincludes.
Loading the same data via WebDAV does not seem to perform entity
resolution so we end up with individual files and no clear way to
stitch them back together. Is this different behavior intended?
We have reviewed the xquery spec and have not found any simple way to
iterate across entity declarations that are in scope or to find
"entity nodes" that are used in the document and perform some
transform on them... seems like we'd have to use string processing in
xquery to do this fixup?
Any thoughts, comments, suggestions would be greatly appreciated,
-- Bindu Wavell <[EMAIL PROTECTED]>
Consultant
Flatirons Solutions, Copr.
_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general