This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
How can I merge two DTD by using XSL ?
- From: Stephane dot Le-Deaut at alcatel dot fr
- To: xsl-list at lists dot mulberrytech dot com
- Date: Tue, 19 Mar 2002 09:42:16 +0100
- Subject: [xsl] How can I merge two DTD by using XSL ?
- Reply-to: xsl-list at lists dot mulberrytech dot com
Hello,
I have a DTD which calls scenario.dtd. In this one I declare an entity which calls xsldefinition.dtd.
....
<!ENTITY % xslDefinition SYSTEM "xsldefinition.dtd">
%xslDefinition;
<!ELEMENT XslTransformError (#PCDATA)>
<!ELEMENT XslTransformTrack (#PCDATA)>
<!ELEMENT XslTransform (InputParameter*, Constant*, OutputParameter?, %xslListProcedure;, XslTransformError, XslTransformTrack)>
<!ATTLIST XslTransform
name CDATA #REQUIRED
description CDATA #IMPLIED
xslSheet %xslList; #REQUIRED
>
My problem is that I have to build the xsldefinition.dtd by using this two files :
The first one xsldefinition1.dtd is like that :
<!ENTITY % xslList " (updateDeliveryFile) ">
<!ENTITY % xslListProcedure " (updateDeliveryFile:XslParameter) ">
<!-- * Proc Xsl : updateDeliveryFile * -->
<!ELEMENT updateDeliveryFile:XslParameter (updateDeliveryFile:InputFile,
updateDeliveryFile:OutputFile, updateDeliveryFile:Parameter)>
<!ELEMENT updateDeliveryFile:InputFile EMPTY>
<!ATTLIST updateDeliveryFile:InputFile
evolutionFile CDATA #REQUIRED
>
<!ELEMENT updateDeliveryFile:OutputFile EMPTY>
<!ELEMENT updateDeliveryFile:Parameter EMPTY>
<!ATTLIST updateDeliveryFile:Parameter
rddVersion CDATA #REQUIRED
dataDirectoryName CDATA #REQUIRED
externalProgramVersion CDATA #REQUIRED
> ...
The second one xsldefinition2.dtd like this :
<!ENTITY % xslList " (makePackageDescriptor) ">
<!ENTITY % xslListProcedure " (makePackageDescriptor:XslParameter) ">
<!-- * Proc Xsl : makePackageDescriptor * -->
<!ELEMENT makePackageDescriptor:XslParameter (makePackageDescriptor:InputFile,
makePackageDescriptor:OutputFile, makePackageDescriptor:Parameter)>
<!ELEMENT makePackageDescriptor:InputFile EMPTY>
<!ATTLIST makePackageDescriptor:InputFile
kitDevelopmentDescriptor CDATA #REQUIRED
applicationDevelopmentDescriptor CDATA #REQUIRED
kitAcaseDescriptor CDATA #IMPLIED
applicationAcaseDescriptor CDATA #IMPLIED
>
<!ELEMENT makePackageDescriptor:OutputFile EMPTY>
<!ATTLIST makePackageDescriptor:OutputFile
packageDescriptor CDATA #REQUIRED
> ...
The result xsldefinition.dtd of the merging should be like this :
<!ENTITY % xslList " (updateDeliveryFile|makePackageDescriptor) ">
<!ENTITY % xslListProcedure "
(updateDeliveryFile:XslParameter|makePackageDescriptor:XslParameter) ">
....
To solve my problem, I 'm trying two solutions :
Is it possible to merge the two files (xsldefinition1.dtd and xsldefinition2.dtd) by using XSL ?
I've already tried to declare successively this two files in the scenario.dtd but I didn't succeed.
My explanation is quite long but tell me if something is not clear, I will give you further information.
Thanks in advance for your help.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list