Sun GlassFish Web Space Server 10.0 Secure Web Access Add-On Guide

Public Interface (RuleSet DTD)

RuleSet DTD:

<?xml version="1.0" encoding="UTF-8"?>
<!--
  CDDL HEADER START
  The contents of this file are subject to the terms
  of the Common Development and Distribution License
  (the License). You may not use this file except in
  compliance with the License.

  You can obtain a copy of the License at
  http://www.sun.com/cddl/cddl.html and legal/CDDLv1.0.txt
  See the License for the specific language governing
  permission and limitations under the License.

  When distributing Covered Code, include this CDDL
  Header Notice in each file and include the License file
  at legal/CDDLv1.0.txt.
  If applicable, add the following below the CDDL Header,
  with the fields enclosed by brackets [] replaced by
  your own identifying information:
  "Portions Copyrighted [year] [name of copyright owner]"

  Copyright 2008 Sun Microsystems Inc. All Rights Reserved
  CDDL HEADER END
-->

<!--
    The following constraints are not represented in DTD, but taken care
    programatically
    1. In a Rule, All Mandatory attributes cannot be "*".
    2. Only one instance of the below elements is allowed, but in any order.
	1)HTMLRules
	2)JSRules
	3)XMLRules
    3. ID should alway be in lower case.
-->
<!ENTITY % gtype 'GROUPED'>
<!ENTITY % stype 'SCATTERED'>

<!ENTITY % eURL 'URL'>
<!ENTITY % eEXPRESSION 'EXPRESSION'>
<!ENTITY % eDHTML 'DHTML'>
<!ENTITY % eDJS 'DJS'>
<!ENTITY % eSYSTEM 'SYSTEM'>

<!ENTITY % ruleSetElements '(HTMLRules | JSRules | XMLRules)?'>
<!ENTITY % htmlElements '(Form | Applet | Attribute | JSToken)*'>
<!ENTITY % jsElements '(Variable | Function)*'>
<!ENTITY % xmlElements '(Attribute | TagText)*'>

<!ELEMENT RuleSet (%ruleSetElements;,%ruleSetElements;,%ruleSetElements;)>
<!ATTLIST RuleSet
	type (%gtype; | %stype;) "GROUPED"
	id ID #REQUIRED
	extends CDATA "none"
>

<!ELEMENT HTMLRules (%htmlElements;)>
<!ATTLIST HTMLRules
	type (%gtype; | %stype;) "GROUPED"
	id CDATA "html_rules"
>
<!ELEMENT Form EMPTY>
<!ATTLIST Form
	name CDATA #REQUIRED
	field CDATA #REQUIRED
	valuePatterns CDATA ""
	source CDATA "*"
>

<!ELEMENT Applet EMPTY>
<!ATTLIST Applet
	code CDATA #REQUIRED
	param CDATA "*"
	valuePatterns CDATA ""
	source CDATA "*"
>
<!ELEMENT JSToken (#PCDATA)>


<!ELEMENT JSRules (%jsElements;)>
<!ATTLIST JSRules
	type (%gtype; | %stype;) "GROUPED"
	id CDATA "js_rules"
>

<!ELEMENT Variable (#PCDATA)>
<!ATTLIST Variable
	name CDATA ""
	type (%eURL; | %eEXPRESSION; | %eDHTML; | %eDJS; | %eSYSTEM;) "EXPRESSION"
	source CDATA "*"
>

<!ELEMENT Function EMPTY>
<!ATTLIST Function
	name CDATA #REQUIRED
	paramPatterns CDATA #REQUIRED
	type (%eURL; | %eEXPRESSION; | %eDHTML; | %eDJS;) "EXPRESSION"
	source CDATA "*"
>


<!ELEMENT XMLRules (%xmlElements;)>
<!ATTLIST XMLRules
	type (%gtype; | %stype;) "GROUPED"
	id CDATA "xml_rules"
>
<!ELEMENT TagText EMPTY>
<!ATTLIST TagText
	tag CDATA #REQUIRED
	attributePatterns CDATA ""
	source CDATA "*"
>
<!ELEMENT Attribute EMPTY>
<!ATTLIST Attribute
	name CDATA #REQUIRED
	tag CDATA "*"
	valuePatterns CDATA ""
	type (%eURL; | %eDHTML; | %eDJS; ) "URL"
	source CDATA "*"
>

Note –

You can use * as a part of rule value except that mandatory attribute values cannot be just *. Such rules are ignored, but the message is logged in the RuleSetInfo log file. For information on this log file, see Debug File Names.