XML Sapiens

From Wikipedia, the free encyclopedia

XML Sapiens – a paradigm of the managed sites building, a way for the independent aspects’ effective integration: data, design, and functionality.

This integration can be achieved by means of input of 3 basic meta-objects into the document:

  • container of managed content for the certain document (QC);
  • general container of content for a group of documents (SDC);
  • container of USE-case-oriented functionality script (DDC).

[edit] Overview

XML Sapiens specification describes XML-based markup user interface language for content management systems

[edit] General Model

Image:XML_Sapiens_en.gif

[edit] Document aspects aggregation model using XSL

Image:Xmlsapiens_separation_model.gif

Related article: Data, its presentation and user interface forms

[edit] Examples

The following is an example of XML Sapiens HTML template.

 <html ..>
 <body>
 <sapi:apply name="sdc.common_header.value" />
 <div><sapi:apply name="ddc.menu.value" /></div>
 <h1><sapi:apply name="qc.title.value" /></h1>
 <div><sapi:apply name="qc.body.value" /></div>
 </body>
 </html>

The following is an example of XML Sapiens WML template.

 <?xml version="1.0"?>
 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
 "http://www.wapforum.org/DTD/wml_1.1.xml">
 <wml>
 <card id="cont1" title="Content 1">
 <p><sapi:apply name="qc.content1.value" /></p>
 </card>
 <card id="cont2" title="Content 2">
 <p><sapi:apply name="qc.content2.value" /></p>
 </card>
 </wml>

The following is an example of XML Sapiens DDC.

 <?xml version="1.0"?>
 <sapi version="1.0" xmlns:sapi="http://www.xmlsapiens.org/spec/sapi.dtd"> 
        <sapi:ddc name="menu" title="ddc" ns="site1">
        <sapi:choose>
                <sapi:when exp="TRUE">  
                <sapi:for-each select="get_tree()" name="enum">
                                <sapi:choose>
                                <sapi:when exp="eq(this.this.currentpage.value,1)">
                                        <sapi:code>
                                           <a class="active" sapi:href="this.this.HREF.value">
                                           <sapi:apply name="this.this.TITLE.value" />
                                           </a>
                                        </sapi:code>
                                        </sapi:when>
                                <sapi:when exp="neq(this.this.currentpage.value,1)">
                                        <sapi:code>
                                           <a class="inact" sapi:href="this.this.HREF.value">
                                           <sapi:apply name="this.this.TITLE.value" />
                                           </a>
                                        </sapi:code>
                                        </sapi:when>
                                </sapi:choose>
                        </sapi:for-each>
                </sapi:when>
        </sapi:choose>
        </sapi:ddc>
 </sapi>

[edit] See also

[edit] External links

[edit] Validators


In other languages