Author: robweir Date: Sat Sep 29 20:26:50 2012 New Revision: 1391867 URL: http://svn.apache.org/viewvc?rev=1391867&view=rev Log: Initial XSLT script and data for consultants directory
Added: incubator/ooo/devtools/consultants/ incubator/ooo/devtools/consultants/consultants.xml incubator/ooo/devtools/consultants/consultants.xsd incubator/ooo/devtools/consultants/strings_en.xml incubator/ooo/devtools/consultants/strings_it.xml incubator/ooo/devtools/consultants/to-html.xsl Added: incubator/ooo/devtools/consultants/consultants.xml URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/consultants/consultants.xml?rev=1391867&view=auto ============================================================================== --- incubator/ooo/devtools/consultants/consultants.xml (added) +++ incubator/ooo/devtools/consultants/consultants.xml Sat Sep 29 20:26:50 2012 @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> +<consultants> + <consultant> + <name>John Doe</name> + <logo>jdoe.jpg</logo> + <country>ES</country> + <country>PT</country> + <practice>Extensions</practice> + <description>At John Doe we do application developement for OpenOffice. Give us your requirements and we'll give you a quote. + No job is too small.</description> + <website>http://www/jdoe.com/services.html</website> + <email>j...@doe.com</email> + <phone>123-456-7890</phone> + </consultant> + <consultant> + <name>Joe Bloggs, LLC</name> + <logo>jbloggs.jpg</logo> + <country>DE</country> + <country>CH</country> + <country>AT</country> + <practice>Deployment</practice> + <practice>Migration</practice> + <description>Joe Bloggs, LLC provides custom deployment and migration servives for small and medium business moving to OpenOffice. We work with the client from initial + evaluation and piloting, through deployment and beyond. References and whitepaper are available on our website.</description> + <website>http://www/jbloggsllc.com/openoffice.html</website> + <email>j...@jbloggsllc.com</email> + <phone>123-456-7890</phone> + </consultant> + + +</consultants> \ No newline at end of file Added: incubator/ooo/devtools/consultants/consultants.xsd URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/consultants/consultants.xsd?rev=1391867&view=auto ============================================================================== --- incubator/ooo/devtools/consultants/consultants.xsd (added) +++ incubator/ooo/devtools/consultants/consultants.xsd Sat Sep 29 20:26:50 2012 @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> + <xs:element name="consultants"> + <xs:complexType> + <xs:sequence> + <xs:element maxOccurs="unbounded" ref="consultant"/> + </xs:sequence> + </xs:complexType> + </xs:element> + + <xs:element name="consultant"> + <xs:complexType> + <xs:sequence> + <xs:element ref="name"/> + <xs:element maxOccurs="unbounded" ref="country"/> + <xs:element maxOccurs="unbounded" ref="practice"/> + <xs:element ref="description"/> + <xs:element ref="website"/> + <xs:element minOccurs="0" ref="email"/> + <xs:element minOccurs="0" ref="phone"/> + </xs:sequence> + </xs:complexType> + </xs:element> + + <xs:element name="name" type="xs:string"/> + <xs:element name="country" type="xs:string"/> + <xs:element name="practice" type="practice"/> + <xs:element name="description" type="description"/> + <xs:element name="website" type="xs:anyURI"/> + <xs:element name="email" type="email-address"/> + <xs:element name="phone" type="xs:string"/> + + + <xs:simpleType name="email-address"> + <xs:restriction base="xs:string"> + <xs:pattern value="[^@]+@[^\.]+\..+"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="description"> + <xs:restriction base="xs:string"> + <xs:minLength value="0"/> + <xs:maxLength value="300"/> + </xs:restriction> + </xs:simpleType> + + <xs:simpleType name="practice"> + <xs:restriction base="xs:string"> + <xs:enumeration value="Deployment"/> + <xs:enumeration value="Migration"/> + <xs:enumeration value="Extensions"/> + <xs:enumeration value="Training"/> + <xs:enumeration value="Customization"/> + <xs:enumeration value="Other"/> + </xs:restriction> + </xs:simpleType> + +</xs:schema> Added: incubator/ooo/devtools/consultants/strings_en.xml URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/consultants/strings_en.xml?rev=1391867&view=auto ============================================================================== --- incubator/ooo/devtools/consultants/strings_en.xml (added) +++ incubator/ooo/devtools/consultants/strings_en.xml Sat Sep 29 20:26:50 2012 @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<strings> + <string id="page-title">Apache OpenOffice Consultants</string> + + <string id="disclaimer-text">Although most individual users are able to install and use Apache OpenOffice without any help, or with the assistance of volunteers on our community support forum and mailing lists, + some users, especially corporate users, may have more complex requirements that require commercial services in order to optimize their deployments. The following + individuals and firms offer services that may be of interest. The information provided here was provided by the entities named, and is not verified or endorsed by + the Apache OpenOffice project. We offer this listing as a service to the ecosystem.</string> + + <string id="submission-instructions">Consultants who wish to add their listing here should refer to these instructions: </string> + + <string id="name-header">Name</string> + <string id="area-header">Area of Practice</string> + <string id="countries-header">Countries</string> + <string id="description-header">Description</string> + <string id="contact-header">Contact</string> + +</strings> \ No newline at end of file Added: incubator/ooo/devtools/consultants/strings_it.xml URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/consultants/strings_it.xml?rev=1391867&view=auto ============================================================================== --- incubator/ooo/devtools/consultants/strings_it.xml (added) +++ incubator/ooo/devtools/consultants/strings_it.xml Sat Sep 29 20:26:50 2012 @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<strings> + <string id="page-title">Apache OpenOffice Consultants</string> + + <string id="disclaimer-text">Although most individual users are able to install and use Apache OpenOffice without any help, or with the assistance of volunteers on our community support forum and mailing lists, + some users, especially corporate users, may have more complex requirements that require commercial services in order to optimize their deployments. The following + individuals and firms offer services that may be of interest. The information provided here was provided by the entities named, and is not verified or endorsed by + the Apache OpenOffice project. We offer this listing as a service to the ecosystem.</string> + + <string id="submission-instructions">Consultants who wish to add their listing here should refer to these instructions: </string> + + <string id="name-header">Name</string> + <string id="area-header">Area of Practice</string> + <string id="countries-header">Countries</string> + <string id="description-header">Description</string> + <string id="contact-header">Contact</string> + +</strings> \ No newline at end of file Added: incubator/ooo/devtools/consultants/to-html.xsl URL: http://svn.apache.org/viewvc/incubator/ooo/devtools/consultants/to-html.xsl?rev=1391867&view=auto ============================================================================== --- incubator/ooo/devtools/consultants/to-html.xsl (added) +++ incubator/ooo/devtools/consultants/to-html.xsl Sat Sep 29 20:26:50 2012 @@ -0,0 +1,94 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + + <xsl:output method="html"/> + + <!-- + + Load the UI strings from the locale-appropriate resource file. An input XSLT parameter called 'locale' should contain the locale. + + The resource files should be named strings_<locale>.xml and be in the same directory as the XSLT script. + + --> + + <xsl:variable name="fileName" select="concat('strings_', $locale, '.xml')"/> + <xsl:variable name="localizedStrings" select="document($fileName)/*"/> + + <xsl:variable name="disclaimer-text" select="$localizedStrings/string[@id='disclaimer-text']/text()"/> + <xsl:variable name="submission-instructions" select="$localizedStrings/string[@id='submission-instructions']/text()"/> + <xsl:variable name="page-title" select="$localizedStrings/string[@id='page-title']/text()"/> + <xsl:variable name="name-header" select="$localizedStrings/string[@id='name-header']/text()"/> + <xsl:variable name="area-header" select="$localizedStrings/string[@id='area-header']/text()"/> + <xsl:variable name="countries-header" select="$localizedStrings/string[@id='countries-header']/text()"/> + <xsl:variable name="description-header" select="$localizedStrings/string[@id='description-header']/text()"/> + <xsl:variable name="contact-header" select="$localizedStrings/string[@id='contact-header']/text()"/> + + +<!-- Main template deals with the introductory text and the basic table declaration --> + <xsl:template match="/"> + <html> + <head> + <title><xsl:value-of select="$page-title"/></title> + </head> + <body> + + <h1><xsl:value-of select="$page-title"/></h1> + + <p><xsl:value-of select="$disclaimer-text"/></p> + + <p><xsl:value-of select="$submission-instructions"/><a href="consultant-submission.html">consultant-submission.html</a></p> + + <br/> + + <table border="1"> + <tr> + <th><xsl:value-of select="$name-header"/></th> + <th><xsl:value-of select="$area-header"/></th> + <th><xsl:value-of select="$countries-header"/></th> + <th width="50%"><xsl:value-of select="$description-header"/></th> + <th><xsl:value-of select="$contact-header"/></th> + </tr> + <xsl:for-each select="consultants/consultant"> + <xsl:sort select="name"/> + <xsl:apply-templates select="."/> + </xsl:for-each> + </table> + </body> + </html> + </xsl:template> + + + <!-- This template handles the per-consultant information, for each row of the table --> + + <xsl:template match="consultant"> + <tr> + <td> + <a rel="nofollow" href="{website}"><xsl:value-of select="name"/></a> + </td> + <td> + <xsl:for-each select="practice"> + <xsl:value-of select="."/> + <br/> + </xsl:for-each> + + </td> + <td> + <xsl:for-each select="country"> + <xsl:value-of select="."/> + <br/> + </xsl:for-each> + + </td> + <td> + <xsl:value-of select="description"/> + </td> + <td> + <xsl:value-of select="email"/> + <br/> + <xsl:value-of select="phone"/> + </td> + </tr> + + </xsl:template> + +</xsl:stylesheet>