1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XFastAttributeList.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_xml_sax_XFastAttributeList_idl__
31 #define __com_sun_star_xml_sax_XFastAttributeList_idl__
33 #ifndef __com_sun_star_uno_XInterface_idl__
34 #include
<com
/sun
/star
/uno
/XInterface.idl
>
37 #ifndef __com_sun_star_xml_Attribute_idl__
38 #include
<com
/sun
/star
/xml
/Attribute.idl
>
41 #ifndef __com_sun_star_xml_FastAttribute_idl__
42 #include
<com
/sun
/star
/xml
/FastAttribute.idl
>
45 #ifndef __com_sun_star_xml_sax_SAXException_idl__
46 #include
<com
/sun
/star
/xml
/sax
/SAXException.idl
>
49 //=============================================================================
51 module com
{ module sun
{ module star
{ module xml
{ module sax
{
53 //=============================================================================
55 /** a container for the attributes of an xml element.
57 <br>Attributes are seperated into known attributes and unknown attributes.
58 <p>Known attributes have a local name that is known to the <type>XFastTokenHandler</token>
59 registered at the <type>XFastParser</type> which created the sax event containing
60 this attributes. If an attribute also has a namespace, that must be registered
61 at the <type>XFastParser</type>, else this attribute is also unknown even if
62 the local name is known.
64 interface XFastAttributeList
: com
::sun
::star
::uno
::XInterface
66 /** checks if an attribute is available.<br>
69 contains the integer token from the <type>XFastTokenHandler</type>
70 registered at the <type>XFastParser</type>.<br>
72 If the attribute name has a namespace that was registered with the
73 <type>XFastParser</type>, Token contains the integer token of the
74 attributes local name from the <type>XFastTokenHandler</type> and
75 the integer token of the namespace combined with an arithmetic
79 <TRUE/>, if the attribute is available
81 boolean hasAttribute
( [in] long Token
);
83 /** retrieves the token of an attributes value.<br>
86 contains the integer token from the <type>XFastTokenHandler</type>
87 registered at the <type>XFastParser</type>.<br>
89 If the attribute name has a namespace that was registered with the
90 <type>XFastParser</type>, Token contains the integer token of the
91 attributes local name from the <type>XFastTokenHandler</type> and
92 the integer token of the namespace combined with an arithmetic
96 The integer token of the value from the attribute or <const>FastToken::Invalid</const>
99 if the attribute is not available
102 long getValueToken
( [in] long Token
)
103 raises
( SAXException
);
105 /**retrieves the token of an attributes value.<br>
108 contains the integer token from the <type>XFastTokenHandler</type>
109 registered at the <type>XFastParser</type>.<br>
111 If the attribute name has a namespace that was registered with the
112 <type>XFastParser</type>, Token contains the integer token of the
113 attributes local name from the <type>XFastTokenHandler</type> and
114 the integer token of the namespace combined with an arithmetic
118 This value will be returned if the attribute is not available
121 If the attribute is available it returns the integer token of the value
122 from the attribute or <const>FastToken::Invalid</const>.
123 If not the value of <param>Default</param> is returned.
126 long getOptionalValueToken
( [in] long Token
, [in] long Default );
128 /** retrieves the value of an attributes.<br>
131 contains the integer token from the <type>XFastTokenHandler</type>
132 registered at the <type>XFastParser</type>.<br>
134 If the attribute name has a namespace that was registered with the
135 <type>XFastParser</type>, Token contains the integer token of the
136 attributes local name from the <type>XFastTokenHandler</type> and
137 the integer token of the namespace combined with an arithmetic
141 The string value from the attribute.
144 if the attribute is not available
147 string getValue
( [in] long Token
)
148 raises
( SAXException
);
150 /** retrieves the value of an attributes.<br>
153 contains the integer token from the <type>XFastTokenHandler</type>
154 registered at the <type>XFastParser</type>.<br>
156 If the attribute name has a namespace that was registered with the
157 <type>XFastParser</type>, Token contains the integer token of the
158 attributes local name from the <type>XFastTokenHandler</type> and
159 the integer token of the namespace combined with an arithmetic
163 The string value from the attribute or an empty string if the
164 attribute is not available.
166 string getOptionalValue
( [in] long Token
);
168 /** returns a sequence of attributes which names and or namespaces URLS
169 can not be translated to tokens.
171 sequence
< ::com
::sun
::star
::xml
::Attribute
> getUnknownAttributes
();
173 /** returns a sequence of attributes which names and or namespaces URLS
174 are translated to tokens.
176 sequence
< ::com
::sun
::star
::xml
::FastAttribute
> getFastAttributes
();
179 //=============================================================================