01: /*
02: * The contents of this file are subject to the terms of the Common Development
03: * and Distribution License (the License). You may not use this file except in
04: * compliance with the License.
05: *
06: * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
07: * or http://www.netbeans.org/cddl.txt.
08: *
09: * When distributing Covered Code, include this CDDL Header Notice in each file
10: * and include the License file at http://www.netbeans.org/cddl.txt.
11: * If applicable, add the following below the CDDL Header, with the fields
12: * enclosed by brackets [] replaced by your own identifying information:
13: * "Portions Copyrighted [year] [name of copyright owner]"
14: *
15: * The Original Software is NetBeans. The Initial Developer of the Original
16: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17: * Microsystems, Inc. All Rights Reserved.
18: */
19: package org.netbeans.modules.xslt.model;
20:
21: import java.util.List;
22:
23: /**
24: * <pre>
25: * <xs:element name="character-map" substitutionGroup="xsl:declaration">
26: * <xs:complexType>
27: * <xs:complexContent>
28: * <xs:extension base="xsl:element-only-versioned-element-type">
29: * <xs:sequence>
30: * <xs:element ref="xsl:output-character" minOccurs="0" maxOccurs="unbounded"/>
31: * </xs:sequence>
32: * <xs:attribute name="name" type="xsl:QName" use="required"/>
33: * <xs:attribute name="use-character-maps" type="xsl:QNames" default=""/>
34: * </xs:extension>
35: * </xs:complexContent>
36: * </xs:complexType>
37: * </xs:element>
38: * </pre>
39: *
40: * @author ads
41: *
42: */
43: public interface CharacterMap extends Declaration, QualifiedNameable,
44: UseCharacterMapsSpec {
45:
46: /**
47: * @return unmodifiable list of OutputCharacter components
48: */
49: List<OutputCharacter> getOutputCharacters();
50:
51: /**
52: * Append <code>outputCharacter</code> component to the end of children list.
53: * @param outputCharacter new component
54: */
55: void appendOutputCharacter(OutputCharacter outputCharacter);
56:
57: /**
58: * Insert <code>outputCharacter</code> at <code>position</code> in children list.
59: * @param outputCharacter new component
60: * @param position index in children list
61: */
62: void addOutputCharacter(OutputCharacter outputCharacter,
63: int position);
64:
65: /**
66: * Removes <code>outputCharacter</code> child.
67: * @param outputCharacter child component
68: */
69: void removeOutputCharacter(OutputCharacter outputCharacter);
70: }
|