dleslie 2002/06/05 07:39:44
Modified: java/src/org/apache/xalan/processor XSLTSchema.java
Log:
Restored pre-Xalan3 source file!
Revision Changes Path
1.25 +164 -263
xml-xalan/java/src/org/apache/xalan/processor/XSLTSchema.java
Index: XSLTSchema.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/processor/XSLTSchema.java,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- XSLTSchema.java 4 Jun 2002 19:11:04 -0000 1.24
+++ XSLTSchema.java 5 Jun 2002 14:39:44 -0000 1.25
@@ -86,9 +86,6 @@
XSLTAttributeDef hrefAttr = new XSLTAttributeDef(null, "href",
XSLTAttributeDef.T_URL, true);
- XSLTAttributeDef hrefAttrOpt = new XSLTAttributeDef(null, "href",
- XSLTAttributeDef.T_URL, false);
-
XSLTAttributeDef elementsAttr = new XSLTAttributeDef(null, "elements",
XSLTAttributeDef.T_SIMPLEPATTERNLIST,
true);
@@ -250,20 +247,6 @@
XSLTAttributeDef xslVersionAttr =
new XSLTAttributeDef(Constants.S_XSLNAMESPACEURL, "version",
XSLTAttributeDef.T_NMTOKEN, false);
- //dml for result-document
- XSLTAttributeDef resultDocFormatAttr =
- new XSLTAttributeDef(null, "format",
- XSLTAttributeDef.T_QNAME, false);
- // dml for output
- XSLTAttributeDef includeContentTypeAttr = new XSLTAttributeDef(null,
- "include-content-type",
- XSLTAttributeDef.T_YESNO,
- false);
- XSLTAttributeDef escapeUriAttributesAttr = new XSLTAttributeDef(null,
- "excape-uri-asttributes",
- XSLTAttributeDef.T_YESNO,
- false);
-
XSLTElementDef charData = new XSLTElementDef(this, null, "text()",
null /*alias */, null /* elements */, null,
/* attributes */
new ProcessorCharacters(),
@@ -284,12 +267,9 @@
XSLTAttributeDef xslResultAttr =
new XSLTAttributeDef(Constants.S_XSLNAMESPACEURL, "*",
XSLTAttributeDef.T_CDATA, false);
- XSLTElementDef[] templateElements = new XSLTElementDef[24];
- XSLTElementDef[] templateElementsAndParams = new XSLTElementDef[25];
- XSLTElementDef[] templateElementsAndSort = new XSLTElementDef[25];
- //exslt
- XSLTElementDef[] exsltFunctionElements = new XSLTElementDef[25];//
although should exclude some template elements.
-
+ XSLTElementDef[] templateElements = new XSLTElementDef[21];
+ XSLTElementDef[] templateElementsAndParams = new XSLTElementDef[22];
+ XSLTElementDef[] templateElementsAndSort = new XSLTElementDef[22];
XSLTElementDef[] charTemplateElements = new XSLTElementDef[15];
XSLTElementDef resultElement = new XSLTElementDef(this, null, "*",
null /*alias */,
@@ -313,8 +293,8 @@
xslVersionAttr,
xslResultAttr,
resultAttr },
- new ProcessorUnknown(),
- ElemUnknown.class /* class
object */, 20, true);
+
new ProcessorUnknown(),
+ ElemUnknown.class /* class object */, 20, true);
XSLTElementDef xslValueOf = new XSLTElementDef(this,
Constants.S_XSLNAMESPACEURL, "value-of",
null /*alias */, null /* elements */,
@@ -505,67 +485,8 @@
new XSLTAttributeDef[]{ spaceAttr },
new ProcessorTemplateElem(),
ElemFallback.class /* class object */,
20, true);
- //exslt
- XSLTElementDef exsltFunction =
- new XSLTElementDef(this,
- Constants.S_EXSLT_FUNCTIONS_URL,
- "function",
- null /*alias */,
- exsltFunctionElements /* elements */,
- new XSLTAttributeDef[]{ nameAttrRequired },
- new ProcessorExsltFunction(),
- ElemExsltFunction.class /* class object
*/);
- XSLTElementDef exsltResult =
- new XSLTElementDef(this,
- Constants.S_EXSLT_FUNCTIONS_URL,
- "result",
- null /*alias */,
- templateElements /* elements */,
- new XSLTAttributeDef[]{ selectAttrOpt },
- new ProcessorExsltFuncResult(),
- ElemExsltFuncResult.class /* class object
*/);
-
- //XSLT 2.0
- XSLTElementDef xslResult = new XSLTElementDef(this,
- Constants.S_XSLNAMESPACEURL,
- "result",
- null /*alias */,
- templateElements /* elements */,
- new XSLTAttributeDef[]{ selectAttrOpt },
- new ProcessorFuncResult(),
- ElemFuncResult.class /* class object
*/);
- XSLTElementDef[] xslFunctionElements = new XSLTElementDef[]
- {xslParam, xslVariable,
- xslMessage, xslComment,
- xslResult};
- XSLTElementDef xslFunction = new XSLTElementDef(this,
- Constants.S_XSLNAMESPACEURL,
- "function",
- null,
- xslFunctionElements,
- new XSLTAttributeDef[]{ nameAttrRequired
},
- new ProcessorFunction(),
- ElemFunction.class /* class object */);
-
- XSLTElementDef xslPrincipalResultDocument =
- new XSLTElementDef(this,
- Constants.S_XSLNAMESPACEURL,
"principal-result-document",
- null /*alias */,
- templateElements,
- new XSLTAttributeDef[]{resultDocFormatAttr,
hrefAttrOpt},
- new ProcessorResultDocument(),
- ElemPrincipalResultDocument.class);
-
- XSLTElementDef xslResultDocument =
- new XSLTElementDef(this,
- Constants.S_XSLNAMESPACEURL,
"result-document",
- null /*alias */,
- templateElements,
- new XSLTAttributeDef[]{resultDocFormatAttr,
hrefAttr},
- new ProcessorResultDocument(),
- ElemResultDocument.class);
-
int i = 0;
+
templateElements[i++] = charData; // #PCDATA
// char-instructions
@@ -591,22 +512,22 @@
templateElements[i++] = xslAttribute;
templateElements[i++] = resultElement;
templateElements[i++] = unknownElement;
- templateElements[i++] = xslResult;
- templateElements[i++] = exsltResult;
- templateElements[i++] = xslResultDocument; // May NOT appear in
xslFunction or exsltFunction.
int k;
for (k = 0; k < i; k++)
{
templateElementsAndParams[k] = templateElements[k];
- templateElementsAndSort[k] = templateElements[k];
- exsltFunctionElements[k] = templateElements[k];
}
+
templateElementsAndParams[k] = xslParam;
- templateElementsAndSort[k] = xslSort;
- exsltFunctionElements[k] = xslParam;
+ for (k = 0; k < i; k++)
+ {
+ templateElementsAndSort[k] = templateElements[k];
+ }
+
+ templateElementsAndSort[k] = xslSort;
i = 0;
charTemplateElements[i++] = charData; // #PCDATA
@@ -640,176 +561,156 @@
new ProcessorInclude(),
null /* class object */,
20, true);
-
- XSLTElementDef[] topLevelElements = new XSLTElementDef[]
- {includeDef,
- importDef,
- // resultElement,
- whiteSpaceOnly,
- unknownElement,
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "strip-space",
- null /*alias */,
- null /* elements */,
- new XSLTAttributeDef[]{
- elementsAttr },
- new ProcessorStripSpace(),
- null /* class object */, 20, true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "preserve-space",
- null /*alias */,
- null /* elements */,
- new XSLTAttributeDef[]{
- elementsAttr },
- new
ProcessorPreserveSpace(),
- null /* class object */, 20, true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "output",
- null /*alias */,
- null /* elements */,
- new XSLTAttributeDef[]{
- nameAttrOpt /*2.0-dml */,
- methodAttr,
- versionAttr,
- encodingAttr,
- omitXmlDeclarationAttr,
- standaloneAttr,
- doctypePublicAttr,
- doctypeSystemAttr,
- cdataSectionElementsAttr,
- indentAttr,
- mediaTypeAttr,
- includeContentTypeAttr,
- escapeUriAttributesAttr,
-
XSLTAttributeDef.m_foreignAttr },
- new ProcessorOutputElem(), null /*
class object */, 20, true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "key",
- null /*alias */,
- null /* elements */, // EMPTY
- new XSLTAttributeDef[]{
nameAttrRequired,
- matchAttrRequired,
- useAttr },
- new ProcessorKey(), null /* class
object */, 20, true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "decimal-format",
- null /*alias */,
- null /* elements */, // EMPTY
- new XSLTAttributeDef[]{
- nameAttrOpt,
- decimalSeparatorAttr,
- groupingSeparatorAttr,
- infinityAttr,
- minusSignAttr,
- NaNAttr,
- percentAttr,
- perMilleAttr,
- zeroDigitAttr,
- digitAttr,
- patternSeparatorAttr },
- new ProcessorDecimalFormat(),
- null /* class object */, 20,
true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "attribute-set",
- null /*alias */,
- new XSLTElementDef[]{
- xslAttribute } /*
elements */,
- new XSLTAttributeDef[]{
- nameAttrRequired,
- useAttributeSetsAttr },
- new ProcessorAttributeSet(),
- null /* class object */, 20,
true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "variable",
- null /*alias */,
- templateElements /* elements */,
- new XSLTAttributeDef[]{
- nameAttrRequired,
- selectAttrOpt },
- new ProcessorGlobalVariableDecl(),
- ElemVariable.class /* class
object */, 20, true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "param",
- null /*alias */,
- templateElements /* elements */,
- new XSLTAttributeDef[]{
- nameAttrRequired,
- selectAttrOpt },
- new ProcessorGlobalParamDecl(),
- ElemParam.class /* class object
*/, 20, true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "template",
- null /*alias */,
- templateElementsAndParams /*
elements */,
- new XSLTAttributeDef[]{
- matchAttrOpt,
- nameAttrOpt,
- priorityAttr,
- modeAttr,
- spaceAttr },
- new ProcessorTemplate(),
ElemTemplate.class /* class object */, true, 20, true),
- new XSLTElementDef(
- this,
- Constants.S_XSLNAMESPACEURL,
- "namespace-alias",
- null /*alias */,
- null /* elements */, // EMPTY
- new XSLTAttributeDef[]{
- stylesheetPrefixAttr,
- resultPrefixAttr },
- new ProcessorNamespaceAlias(),
null /* class object */, 20, true),
- new XSLTElementDef(
- this,
-
Constants.S_BUILTIN_EXTENSIONS_URL,
- "component",
- null /*alias */,
- new XSLTElementDef[]{
- new XSLTElementDef(
- this,
-
Constants.S_BUILTIN_EXTENSIONS_URL,
- "script",
- null /*alias */,
- new XSLTElementDef[]{
- charData } /*
elements */,
- new
XSLTAttributeDef[]{
- new
XSLTAttributeDef(
- null,
- "lang",
-
XSLTAttributeDef.T_NMTOKEN,
- true),
- new
XSLTAttributeDef(
- null, "src",
XSLTAttributeDef.T_URL, false) },
- new
ProcessorLRE(),
-
ElemExtensionScript.class /* class object */, 20, true) }, // EMPTY
- new
XSLTAttributeDef[]{
- new
XSLTAttributeDef(
- null,
"prefix", XSLTAttributeDef.T_NMTOKEN, true),
- new
XSLTAttributeDef(
- null,
"elements", XSLTAttributeDef.T_STRINGLIST, false),
- new
XSLTAttributeDef(
- null,
"functions", XSLTAttributeDef.T_STRINGLIST, false) },
- new ProcessorLRE(),
ElemExtensionDecl.class /* class object */),
- exsltFunction, xslFunction/* exslt,
stylesheet function*/,
- xslPrincipalResultDocument}; //end of
topevelElements
-
+ XSLTElementDef[] topLevelElements = new XSLTElementDef[]{ includeDef,
+ importDef,
+ //
resultElement,
+ whiteSpaceOnly,
+ unknownElement,
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+
"strip-space",
+ null /*alias
*/,
+ null /*
elements */,
+ new
XSLTAttributeDef[]{
+ elementsAttr
},
+ new
ProcessorStripSpace(),
+ null /*
class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+
"preserve-space",
+ null /*alias
*/,
+ null /*
elements */,
+ new
XSLTAttributeDef[]{
+ elementsAttr
},
+ new
ProcessorPreserveSpace(),
+ null /*
class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+ "output",
+ null /*alias
*/,
+ null /*
elements */,
+ new
XSLTAttributeDef[]{
+ methodAttr,
+
versionAttr,
+
encodingAttr,
+
omitXmlDeclarationAttr,
+
standaloneAttr,
+
doctypePublicAttr,
+
doctypeSystemAttr,
+
cdataSectionElementsAttr,
+ indentAttr,
+
mediaTypeAttr,
+
XSLTAttributeDef.m_foreignAttr },
+ new
ProcessorOutputElem(), null /* class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+ "key",
+ null /*alias
*/,
+ null /*
elements */, // EMPTY
+ new
XSLTAttributeDef[]{ nameAttrRequired,
+
matchAttrRequired,
+
useAttr },
+
new ProcessorKey(), null /* class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+
"decimal-format",
+ null /*alias
*/,
+ null /*
elements */, // EMPTY
+
new XSLTAttributeDef[]{
+
nameAttrOpt,
+
decimalSeparatorAttr,
+
groupingSeparatorAttr,
+
infinityAttr,
+
minusSignAttr,
+
NaNAttr,
+
percentAttr,
+
perMilleAttr,
+
zeroDigitAttr,
+
digitAttr,
+
patternSeparatorAttr },
+
new ProcessorDecimalFormat(),
+ null /*
class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+
"attribute-set",
+ null /*alias
*/,
+ new
XSLTElementDef[]{
+ xslAttribute
} /* elements */,
+ new
XSLTAttributeDef[]{
+
nameAttrRequired,
+
useAttributeSetsAttr }, new ProcessorAttributeSet(),
+
null /* class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+ "variable",
+ null /*alias
*/,
+
templateElements /* elements */,
+ new
XSLTAttributeDef[]{
+
nameAttrRequired,
+
selectAttrOpt }, new ProcessorGlobalVariableDecl(),
+
ElemVariable.class /* class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+ "param",
+ null /*alias
*/,
+
templateElements /* elements */,
+ new
XSLTAttributeDef[]{
+
nameAttrRequired,
+
selectAttrOpt }, new ProcessorGlobalParamDecl(),
+
ElemParam.class /* class object */, 20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+ "template",
+ null /*alias
*/,
+
templateElementsAndParams /* elements */,
+ new
XSLTAttributeDef[]{
+
matchAttrOpt,
+
nameAttrOpt,
+
priorityAttr,
+ modeAttr,
+ spaceAttr
}, new ProcessorTemplate(), ElemTemplate.class /* class object */, true, 20,
true),
+
new XSLTElementDef(
+ this,
+
Constants.S_XSLNAMESPACEURL,
+
"namespace-alias",
+ null
/*alias */,
+ null /*
elements */, // EMPTY
+ new
XSLTAttributeDef[]{ stylesheetPrefixAttr,
+
resultPrefixAttr },
+
new ProcessorNamespaceAlias(), null /* class object */,
20, true),
+ new
XSLTElementDef(
+ this,
+
Constants.S_BUILTIN_EXTENSIONS_URL,
+ "component",
+ null /*alias
*/,
+ new
XSLTElementDef[]{
+ new
XSLTElementDef(
+ this,
+
Constants.S_BUILTIN_EXTENSIONS_URL,
+ "script",
+ null
/*alias */,
+ new
XSLTElementDef[]{ charData } /* elements */,
+ new
XSLTAttributeDef[]{
+ new
XSLTAttributeDef(
+ null,
+
"lang",
+
XSLTAttributeDef.T_NMTOKEN,
+
true),
+ new
XSLTAttributeDef(null, "src", XSLTAttributeDef.T_URL, false) },
+
new ProcessorLRE(),
+
ElemExtensionScript.class /* class object */, 20, true) }, // EMPTY
+
new XSLTAttributeDef[]{ new XSLTAttributeDef(null, "prefix",
XSLTAttributeDef.T_NMTOKEN, true),
+
new XSLTAttributeDef(null, "elements",
XSLTAttributeDef.T_STRINGLIST, false),
+
new XSLTAttributeDef(null,
"functions", XSLTAttributeDef.T_STRINGLIST, false) }, new ProcessorLRE(),
ElemExtensionDecl.class /* class object */) };
XSLTAttributeDef excludeResultPrefixesAttr =
new XSLTAttributeDef(null, "exclude-result-prefixes",
XSLTAttributeDef.T_STRINGLIST, false);
@@ -887,4 +788,4 @@
{
return m_availElems.containsKey(elemName);
}
-}
+}
\ No newline at end of file
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
