1 <?xml version="1.0" encoding="UTF-8"?>
2 <XMI xmlns:UML="org.omg/standards/UML" verified="false" timestamp="" xmi.version="1.2" >
5 <XMI.exporter>umbrello uml modeller http://uml.sf.net</XMI.exporter>
6 <XMI.exporterVersion>1.1</XMI.exporterVersion>
8 <XMI.model xmi.name="bife" href="/home/luca/website/www/test/bife/core/bife.xmi" />
9 <XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
12 <docsettings viewid="2" documentation="Parse XML data getting widgets." uniqueid="159" />
14 <UML:Class stereotype="" package="BIFE" xmi.id="3" abstract="1" documentation="Base widget class." name="Widget" static="0" scope="200" >
15 <UML:Operation stereotype="" package="" xmi.id="126" type="void" abstract="0" documentation="Constructor." name="BIFE_Widget" static="0" scope="200" >
16 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
18 <UML:Operation stereotype="" package="" xmi.id="127" type="void" abstract="0" documentation="Constructor." name="__construct" static="0" scope="200" >
19 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
21 <UML:Operation stereotype="" package="" xmi.id="4" type="string" abstract="1" documentation="Renders the widget using a template returning a string with the results." name="render" static="0" scope="200" >
22 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template object to render the widget." name="template" static="0" scope="200" />
24 <UML:Attribute stereotype="" package="" xmi.id="125" value="array()" type="array" abstract="0" documentation="Attribute list." name="attrs" static="0" scope="202" />
26 <UML:Class stereotype="" package="BIFE" xmi.id="5" abstract="1" documentation="Base container widget class." name="Container" static="0" scope="200" >
27 <UML:Operation stereotype="" package="" xmi.id="6" type="void" abstract="0" documentation="Adds contents to the container." name="addContents" static="0" scope="200" >
28 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&mixed" abstract="0" documentation="Contents to add to the container." name="contents" static="0" scope="200" />
30 <UML:Operation stereotype="" package="" xmi.id="59" type="string" abstract="0" documentation="Renders the widget using a template returning a string with the results." name="renderContents" static="0" scope="200" >
31 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&HTML_Template_HIT" abstract="0" documentation="Template object to render the widget." name="template" static="0" scope="200" />
33 <UML:Attribute stereotype="" package="" xmi.id="47" value="array()" type="array" abstract="0" documentation="Widget contents." name="contents" static="0" scope="200" />
35 <UML:Class stereotype="" package="BIFE" xmi.id="25" abstract="0" documentation="This is the XML Parser." name="Parser" static="0" scope="200" >
36 <UML:Operation stereotype="" package="" xmi.id="30" type="void" abstract="0" documentation="Constructor." name="BIFE_Parser" static="0" scope="200" >
37 <UML:Parameter stereotype="" package="" xmi.id="1" value="''" type="string" abstract="0" documentation="Fallback class name (none if empty)." name="fallback" static="0" scope="200" />
38 <UML:Parameter stereotype="" package="" xmi.id="2" value="'/tmp'" type="string" abstract="0" documentation="XML cache directory. Empty is no caching will be done." name="cache" static="0" scope="200" />
40 <UML:Operation stereotype="" package="" xmi.id="31" type="void" abstract="0" documentation="Constructor." name="__construct" static="0" scope="200" >
41 <UML:Parameter stereotype="" package="" xmi.id="1" value="''" type="string" abstract="0" documentation="Fallback class name (none if empty)." name="fallback" static="0" scope="200" />
42 <UML:Parameter stereotype="" package="" xmi.id="2" value="'/tmp'" type="string" abstract="0" documentation="XML cache directory. Empty is no caching will be done." name="cache" static="0" scope="200" />
44 <UML:Operation stereotype="" package="" xmi.id="32" type="void" abstract="0" documentation="Destructor." name="__destruct" static="0" scope="200" />
45 <UML:Operation stereotype="" package="" xmi.id="33" type="void" abstract="0" documentation="XML parser start of element handler." name="startElement" static="0" scope="200" >
46 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="resource" abstract="0" documentation="XML parser resource." name="parser" static="0" scope="200" />
47 <UML:Parameter stereotype="" package="" xmi.id="2" value="" type="string" abstract="0" documentation="XML tag name." name="name" static="0" scope="200" />
48 <UML:Parameter stereotype="" package="" xmi.id="3" value="" type="array" abstract="0" documentation="XML tag attributes." name="attrs" static="0" scope="200" />
50 <UML:Operation stereotype="" package="" xmi.id="34" type="void" abstract="0" documentation="XML parser end of element handler." name="endElement" static="0" scope="200" >
51 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="resource" abstract="0" documentation="XML parser resource." name="parser" static="0" scope="200" />
52 <UML:Parameter stereotype="" package="" xmi.id="2" value="" type="string" abstract="0" documentation="XML tag name." name="name" static="0" scope="200" />
54 <UML:Operation stereotype="" package="" xmi.id="35" type="void" abstract="0" documentation="XML parser character data handler." name="characterData" static="0" scope="200" >
55 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="resource" abstract="0" documentation="XML parser resource." name="parser" static="0" scope="200" />
56 <UML:Parameter stereotype="" package="" xmi.id="2" value="" type="string" abstract="0" documentation="XML character data." name="data" static="0" scope="200" />
58 <UML:Operation stereotype="" package="" xmi.id="36" type="void" abstract="0" documentation="Parse a string with XML data." name="parse" static="0" scope="200" >
59 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="XML string to parse." name="data" static="0" scope="200" />
60 <UML:Parameter stereotype="" package="" xmi.id="2" value="true" type="bool" abstract="0" documentation="Indicates if is the last string to parse." name="final" static="0" scope="200" />
62 <UML:Operation stereotype="" package="" xmi.id="37" type="&BIFE_Widget" abstract="0" documentation="Parse a XML file with a complete and valid XML document." name="parseFile" static="0" scope="200" >
63 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Filename to parse." name="filename" static="0" scope="200" />
65 <UML:Operation stereotype="" package="" xmi.id="74" type="&BIFE_Widget" abstract="0" documentation="Parse a XML string with a complete and valid XML document." name="parseString" static="0" scope="200" >
66 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="XML data to parse." name="data" static="0" scope="200" />
68 <UML:Attribute stereotype="" package="" xmi.id="26" value="null" type="BIFE_Widget" abstract="0" documentation="Top level widget." name="root" static="0" scope="202" />
69 <UML:Attribute stereotype="" package="" xmi.id="27" value="null" type="resource" abstract="0" documentation="XML parser resource." name="parser" static="0" scope="202" />
70 <UML:Attribute stereotype="" package="" xmi.id="29" value="array()" type="array" abstract="0" documentation="BIFE widgets stack." name="stack" static="0" scope="202" />
71 <UML:Attribute stereotype="" package="" xmi.id="84" value="''" type="string" abstract="0" documentation="Fallback class to use in case that a widget class is not found." name="fallback" static="0" scope="202" />
72 <UML:Attribute stereotype="" package="" xmi.id="148" value="'/tmp'" type="string" abstract="0" documentation="XML cache directory. Empty if no cahching must be done (for current dir use '.')." name="cache" static="0" scope="202" />
73 <UML:Attribute stereotype="" package="" xmi.id="156" value="array()" type="array" abstract="0" documentation="Files required by the parsed XML file." name="requires" static="0" scope="202" />
75 <UML:Class stereotype="" package="BIFE" xmi.id="61" abstract="1" documentation="Fallback widget to use when no specific widget is implemented." name="Fallback" static="0" scope="200" >
76 <UML:Operation stereotype="" package="" xmi.id="62" type="void" abstract="0" documentation="Constructor." name="BIFE_Fallback" static="0" scope="200" >
77 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of the widget to draw." name="name" static="0" scope="200" />
78 <UML:Parameter stereotype="" package="" xmi.id="2" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
80 <UML:Operation stereotype="" package="" xmi.id="63" type="void" abstract="0" documentation="Constructor." name="__construct" static="0" scope="200" >
81 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of the widget." name="name" static="0" scope="200" />
82 <UML:Parameter stereotype="" package="" xmi.id="2" value="" type="array" abstract="0" documentation="Attributes." name="attrs" static="0" scope="200" />
84 <UML:Attribute stereotype="" package="" xmi.id="129" value="''" type="string" abstract="0" documentation="Name of the widget." name="name" static="0" scope="201" />
86 <UML:Class stereotype="" package="HTML/Template" xmi.id="130" abstract="0" documentation="Hooks vs. IT (HIT) is a simple template implementation, based on hooks and IT template systems." name="HIT" static="0" scope="200" >
87 <UML:Operation stereotype="" package="" xmi.id="136" type="void" abstract="0" documentation="Constructor." name="HTML_Template_HIT" static="0" scope="200" >
88 <UML:Parameter stereotype="" package="" xmi.id="1" value="'.'" type="string" abstract="0" documentation="Root directory where template files are." name="root" static="0" scope="200" />
89 <UML:Parameter stereotype="" package="" xmi.id="3" value="false" type="bool" abstract="0" documentation="If it's true, it looks for template files in PHP's include_path." name="useIncludePath" static="0" scope="200" />
90 <UML:Parameter stereotype="" package="" xmi.id="4" value="''" type="string" abstract="0" documentation="Group of templates to use (a subdirectory in root)." name="group" static="0" scope="200" />
92 <UML:Operation stereotype="" package="" xmi.id="137" type="void" abstract="0" documentation="Constructor." name="__construct" static="0" scope="200" >
93 <UML:Parameter stereotype="" package="" xmi.id="1" value="'.'" type="int" abstract="0" documentation="Root directory where template files are." name="root" static="0" scope="200" />
94 <UML:Parameter stereotype="" package="" xmi.id="3" value="false" type="false" abstract="0" documentation="If it's true, it looks for template files in PHP's include_path." name="useIncludePath" static="0" scope="200" />
95 <UML:Parameter stereotype="" package="" xmi.id="4" value="''" type="string" abstract="0" documentation="Group of templates to use (a subdirectory in root)." name="group" static="0" scope="200" />
97 <UML:Operation stereotype="" package="" xmi.id="138" type="string" abstract="0" documentation="Parse a template returning the results.
99 If $vars is an array, the {[keys]} are replaced with [values] ($val is ignored). If is a string, {$vars} is replaced with $val." name="parse" static="0" scope="200" >
100 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of template to parse." name="name" static="0" scope="200" />
101 <UML:Parameter stereotype="" package="" xmi.id="2" value="''" type="mixed" abstract="0" documentation="Variables to replace in the template." name="vars" static="0" scope="200" />
102 <UML:Parameter stereotype="" package="" xmi.id="3" value="''" type="string" abstract="0" documentation="If $vars is a string, the value to replace for $vars." name="val" static="0" scope="200" />
103 <UML:Parameter stereotype="" package="" xmi.id="4" value="null" type="mixed" abstract="0" documentation="Group to use to parse this template. Null to use the current group." name="group" static="0" scope="200" />
105 <UML:Operation stereotype="" package="" xmi.id="144" type="void" abstract="0" documentation="Parse a template buffering the results.
107 Parse a template appending the results to an internal buffer. If $vars is an array, the {[keys]} are replaced with [values] ($val is ignored). If is a string, {$vars} is replaced with $val." name="parseBuffered" static="0" scope="200" >
108 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of template to parse." name="name" static="0" scope="200" />
109 <UML:Parameter stereotype="" package="" xmi.id="2" value="''" type="mixed" abstract="0" documentation="Variables to replace in the template." name="vars" static="0" scope="200" />
110 <UML:Parameter stereotype="" package="" xmi.id="3" value="''" type="string" abstract="0" documentation="If $vars is a string, the value to replace for $vars." name="val" static="0" scope="200" />
112 <UML:Operation stereotype="" package="" xmi.id="145" type="string" abstract="0" documentation="Gets a parsed buffer." name="getBuffer" static="1" scope="200" >
113 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of the parsed template to get." name="name" static="0" scope="200" />
115 <UML:Operation stereotype="" package="" xmi.id="146" type="void" abstract="0" documentation="Gets a parsed buffer and removes it." name="popBuffer" static="0" scope="200" >
116 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of the buffer to flush." name="name" static="0" scope="200" />
118 <UML:Operation stereotype="" package="" xmi.id="139" type="void" abstract="0" documentation="Sets the group to use and add it to the groups stack." name="pushGroup" static="0" scope="200" >
119 <UML:Parameter stereotype="" package="" xmi.id="1" value="''" type="string" abstract="0" documentation="Group to use." name="group" static="0" scope="200" />
121 <UML:Operation stereotype="" package="" xmi.id="140" type="string" abstract="0" documentation="Removes the group from the groups stack and returns to the previous used group." name="popGroup" static="0" scope="200" />
122 <UML:Operation stereotype="" package="" xmi.id="159" type="bool" abstract="0" documentation="True if the template $name exists in $group (or the current group)." name="exists" static="0" scope="200" >
123 <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="string" abstract="0" documentation="Name of the template." name="name" static="0" scope="200" />
124 <UML:Parameter stereotype="" package="" xmi.id="2" value="null" type="mixed" abstract="0" documentation="Template's group. If it's null it uses the current group." name="group" static="0" scope="200" />
126 <UML:Attribute stereotype="" package="" xmi.id="133" value="'.'" type="string" abstract="0" documentation="Root directory where template files are." name="root" static="0" scope="200" />
127 <UML:Attribute stereotype="" package="" xmi.id="158" value="false" type="bool" abstract="0" documentation="If it's true, it looks for template files in PHP's include_path." name="useIncludePath" static="0" scope="200" />
128 <UML:Attribute stereotype="" package="" xmi.id="134" value="''" type="string" abstract="0" documentation="Group of templates to use (a subdirectory in root)." name="group" static="0" scope="202" />
129 <UML:Attribute stereotype="" package="" xmi.id="135" value="array()" type="array" abstract="0" documentation="Templates cache." name="cache" static="0" scope="202" />
130 <UML:Attribute stereotype="" package="" xmi.id="147" value="array()" type="array" abstract="0" documentation="" name="buffer" static="0" scope="202" />
134 <diagram snapgrid="0" showattsig="1" fillcolor="#ffffc0" showgrid="1" showopsig="0" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="2" documentation="" type="402" showops="1" showpackage="1" name="Core Classes" localid="30000" showstereotype="0" showscope="1" font="Helvetica,9,-1,5,48,0,0,0,0,0" linecolor="#ff0000" >
136 <UML:ConceptWidget usesdiagramfillcolour="0" width="148" showattsigs="601" usesdiagramusefillcolour="0" x="80" linecolour="#ff0000" y="20" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="75" usefillcolor="1" showattributes="1" xmi.id="3" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
137 <UML:ConceptWidget usesdiagramfillcolour="0" width="173" showattsigs="601" usesdiagramusefillcolour="0" x="68" linecolour="#ff0000" y="140" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="60" usefillcolor="1" showattributes="1" xmi.id="5" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
138 <UML:ConceptWidget usesdiagramfillcolour="0" width="123" showattsigs="601" usesdiagramusefillcolour="0" x="93" linecolour="#ff0000" y="241" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="60" usefillcolor="1" showattributes="1" xmi.id="61" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
139 <UML:ConceptWidget usesdiagramfillcolour="0" width="171" showattsigs="601" usesdiagramusefillcolour="0" x="301" linecolour="#ff0000" y="20" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="240" usefillcolor="1" showattributes="1" xmi.id="25" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,48,0,0,0,0,0" />
143 <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="3" widgetaid="5" documentation="" type="500" >
145 <startpoint startx="154" starty="140" />
146 <endpoint endx="154" endy="95" />
149 <UML:AssocWidget totalcounta="2" indexa="1" totalcountb="2" indexb="1" widgetbid="5" widgetaid="61" documentation="" type="500" >
151 <startpoint startx="154" starty="241" />
152 <endpoint endx="154" endy="200" />
157 <diagram snapgrid="1" showattsig="1" fillcolor="#ffffc0" showgrid="1" showopsig="0" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="132" documentation="" type="402" showops="1" showpackage="1" name="HIT Classes" localid="30000" showstereotype="0" showscope="1" font="Helvetica,9,-1,5,50,0,0,0,0,0" linecolor="#ff0000" >
159 <UML:ConceptWidget usesdiagramfillcolour="0" width="195" showattsigs="601" usesdiagramusefillcolour="0" x="50" linecolour="#ff0000" y="40" showopsigs="600" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="225" usefillcolor="1" showattributes="1" xmi.id="130" showoperations="1" showpackage="1" showscope="1" showstereotype="0" font="Helvetica,9,-1,5,50,0,0,0,0,0" />
166 <listitem open="1" type="800" id="-1" label="Views" >
167 <listitem open="1" type="801" id="-1" label="Logical View" >
168 <listitem open="1" type="803" id="-1" label="BIFE" >
169 <listitem open="0" type="813" id="5" label="Container" >
170 <listitem open="0" type="815" id="6" label="addContents" />
171 <listitem open="0" type="814" id="47" label="contents" />
172 <listitem open="0" type="815" id="59" label="renderContents" />
174 <listitem open="0" type="807" id="2" label="Core Classes" />
175 <listitem open="0" type="813" id="61" label="Fallback" >
176 <listitem open="0" type="815" id="62" label="BIFE_Fallback" />
177 <listitem open="0" type="815" id="63" label="__construct" />
178 <listitem open="0" type="814" id="129" label="name" />
180 <listitem open="0" type="813" id="25" label="Parser" >
181 <listitem open="0" type="815" id="30" label="BIFE_Parser" />
182 <listitem open="0" type="815" id="31" label="__construct" />
183 <listitem open="0" type="815" id="32" label="__destruct" />
184 <listitem open="0" type="814" id="148" label="cache" />
185 <listitem open="0" type="815" id="35" label="characterData" />
186 <listitem open="0" type="815" id="34" label="endElement" />
187 <listitem open="0" type="814" id="84" label="fallback" />
188 <listitem open="0" type="815" id="36" label="parse" />
189 <listitem open="0" type="815" id="37" label="parseFile" />
190 <listitem open="0" type="815" id="74" label="parseString" />
191 <listitem open="0" type="814" id="27" label="parser" />
192 <listitem open="0" type="814" id="156" label="requires" />
193 <listitem open="0" type="814" id="26" label="root" />
194 <listitem open="0" type="814" id="29" label="stack" />
195 <listitem open="0" type="815" id="33" label="startElement" />
197 <listitem open="0" type="813" id="3" label="Widget" >
198 <listitem open="0" type="815" id="126" label="BIFE_Widget" />
199 <listitem open="0" type="815" id="127" label="__construct" />
200 <listitem open="0" type="814" id="125" label="attrs" />
201 <listitem open="0" type="815" id="4" label="render" />
204 <listitem open="1" type="803" id="-1" label="HIT" >
205 <listitem open="0" type="813" id="130" label="HIT" >
206 <listitem open="0" type="815" id="136" label="HTML_Template_HIT" />
207 <listitem open="0" type="815" id="137" label="__construct" />
208 <listitem open="0" type="814" id="147" label="buffer" />
209 <listitem open="0" type="814" id="135" label="cache" />
210 <listitem open="0" type="815" id="159" label="exists" />
211 <listitem open="0" type="815" id="145" label="getBuffer" />
212 <listitem open="0" type="814" id="134" label="group" />
213 <listitem open="0" type="815" id="138" label="parse" />
214 <listitem open="0" type="815" id="144" label="parseBuffered" />
215 <listitem open="0" type="815" id="146" label="popBuffer" />
216 <listitem open="0" type="815" id="140" label="popGroup" />
217 <listitem open="0" type="815" id="139" label="pushGroup" />
218 <listitem open="0" type="814" id="133" label="root" />
219 <listitem open="0" type="814" id="158" label="useIncludePath" />
221 <listitem open="1" type="807" id="132" label="HIT Classes" />
224 <listitem open="1" type="802" id="-1" label="Use Case View" />