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:
20: package org.netbeans.modules.xslt.model;
21:
22: import javax.xml.namespace.QName;
23:
24: /**
25: * This interface represent attribute value template.
26: * It could represent just simple QName and also it could
27: * be a expression {$var_name}.
28: *
29: * <pre>
30: * <xs:simpleType name="avt">
31: * <xs:annotation>
32: * <xs:documentation>
33: * This type is used for all attributes that allow an attribute value template.
34: * The general rules for the syntax of attribute value templates, and the specific
35: * rules for each such attribute, are described in the XSLT 2.0 Recommendation.
36: *
37: * </xs:documentation>
38: * </xs:annotation>
39: * <xs:restriction base="xs:string"/>
40: * </xs:simpleType>
41: *
42: * </pre>
43: * @author ads
44: *
45: */
46: public interface AttributeValueTemplate {
47:
48: /**
49: * @return QName representation of value
50: */
51: public QName getQName();
52:
53: /**
54: * @return true if this value is template ( not just clear QName )
55: */
56: public boolean isTemplate();
57:
58: /**
59: * @return original value representation.
60: */
61: public String toString();
62: }
|