Validation schemas for Application Packaging Standard 1.0 in RelaxNG format
Download validation schemas in RelaxNG format: aps10-rng-schemas.zip
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="apache:htaccess" xmlns:apache="http://apstandard.com/ns/1/apache" xmlns="http://relaxng.org/ns/structure/1.0">
<empty/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="apache:required-module" xmlns:apache="http://apstandard.com/ns/1/apache" xmlns="http://relaxng.org/ns/structure/1.0">
<text/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="aspnet:permissions" xmlns:aspnet="http://apstandard.com/ns/1/aspnet" xmlns="http://relaxng.org/ns/structure/1.0">
<optional>
<attribute name="writable">
<value>true</value>
</attribute>
</optional>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="aspnet:handler" xmlns:aspnet="http://apstandard.com/ns/1/aspnet" xmlns="http://relaxng.org/ns/structure/1.0">
<choice>
<element name="aspnet:disabled">
<empty/>
</element>
<zeroOrMore>
<element name="aspnet:extension">
<text/>
</element>
</zeroOrMore>
</choice>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="aspnet:version" xmlns:aspnet="http://apstandard.com/ns/1/aspnet" xmlns="http://relaxng.org/ns/structure/1.0">
<choice>
<value>1.0</value>
<value>2.0</value>
</choice>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns:sa="http://apstandard.com/ns/1" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<start>
<ref name="Application"/>
</start>
<define name="AnyElement">
<element>
<anyName/>
<zeroOrMore>
<choice>
<attribute>
<anyName/>
</attribute>
<text/>
<ref name="AnyElement"/>
</choice>
</zeroOrMore>
</element>
</define>
<define name="DefinedByAspect">
<ref name="AnyElement"/>
</define>
<define name="Requirement">
<ref name="DefinedByAspect"/>
</define>
<define name="UrlHandler">
<ref name="DefinedByAspect"/>
</define>
<define name="Permission">
<ref name="DefinedByAspect"/>
</define>
<define name="Setting">
<element name="sa:setting">
<attribute name="id"/>
<optional>
<attribute name="global">
<value>true</value>
</attribute>
</optional>
<optional>
<attribute name="installation-only">
<value>true</value>
</attribute>
</optional>
<zeroOrMore>
<element name="sa:name">
<optional>
<attribute name="xml:lang"/>
</optional>
<data type="string"/>
</element>
</zeroOrMore>
<zeroOrMore>
<element name="sa:description">
<optional>
<attribute name="xml:lang"/>
</optional>
<data type="string"/>
</element>
</zeroOrMore>
<zeroOrMore>
<element name="sa:error-message">
<optional>
<attribute name="xml:lang"/>
</optional>
<data type="string"/>
</element>
</zeroOrMore>
<choice>
<group>
<attribute name="type">
<value>boolean</value>
</attribute>
<optional>
<attribute name="default-value">
<data type="boolean"/>
</attribute>
</optional>
</group>
<group>
<attribute name="type">
<choice>
<value>string</value>
<value>password</value>
</choice>
</attribute>
<optional>
<attribute name="min-length">
<data type="nonNegativeInteger"/>
</attribute>
</optional>
<optional>
<attribute name="max-length">
<data type="nonNegativeInteger"/>
</attribute>
</optional>
<optional>
<choice>
<attribute name="regex">
<data type="string"/>
</attribute>
<attribute name="charset">
<data type="string"/>
</attribute>
</choice>
</optional>
<optional>
<attribute name="default-value">
<data type="string"/>
</attribute>
</optional>
</group>
<group>
<attribute name="type">
<value>integer</value>
</attribute>
<optional>
<attribute name="min">
<data type="integer"/>
</attribute>
</optional>
<optional>
<attribute name="max">
<data type="integer"/>
</attribute>
</optional>
<optional>
<attribute name="default-value">
<data type="integer"/>
</attribute>
</optional>
</group>
<group>
<attribute name="type">
<value>float</value>
</attribute>
<optional>
<attribute name="min">
<data type="float"/>
</attribute>
</optional>
<optional>
<attribute name="max">
<data type="float"/>
</attribute>
</optional>
<optional>
<attribute name="default-value">
<data type="float"/>
</attribute>
</optional>
</group>
<group>
<attribute name="type">
<value>email</value>
</attribute>
<optional>
<attribute name="default-value">
<data type="string"/>
</attribute>
</optional>
</group>
<group>
<attribute name="type">
<value>domain-name</value>
</attribute>
<optional>
<attribute name="default-value">
<data type="string"/>
</attribute>
</optional>
</group>
<group>
<attribute name="type">
<value>enum</value>
</attribute>
<optional>
<attribute name="default-value"/>
</optional>
<oneOrMore>
<element name="sa:choice">
<attribute name="id"/>
<zeroOrMore>
<element name="sa:name">
<optional>
<attribute name="xml:lang"/>
</optional>
<text/>
</element>
</zeroOrMore>
</element>
</oneOrMore>
</group>
</choice>
</element>
</define>
<define name="SettingGroup">
<element name="sa:group">
<zeroOrMore>
<element name="sa:name">
<optional>
<attribute name="xml:lang"/>
</optional>
<data type="string"/>
</element>
</zeroOrMore>
<oneOrMore>
<ref name="Setting"/>
</oneOrMore>
</element>
</define>
<define name="Requirements">
<element name="sa:requirements">
<zeroOrMore>
<element name="sa:choice">
<oneOrMore>
<element name="sa:requirements">
<attribute name="id"/>
<oneOrMore>
<ref name="Requirement"/>
</oneOrMore>
</element>
</oneOrMore>
</element>
</zeroOrMore>
<zeroOrMore>
<ref name="Requirement"/>
</zeroOrMore>
</element>
</define>
<define name="SubMapping">
<element name="sa:mapping">
<attribute name="url"/>
<optional>
<choice>
<attribute name="path">
<data type="string">
<param name="minLength">1</param>
</data>
</attribute>
<attribute name="virtual">
<value>virtual</value>
</attribute>
</choice>
</optional>
<zeroOrMore>
<choice>
<ref name="UrlHandler"/>
<ref name="Permission"/>
</choice>
</zeroOrMore>
<zeroOrMore>
<ref name="SubMapping"/>
</zeroOrMore>
</element>
</define>
<define name="Mapping">
<element name="sa:mapping">
<attribute name="url"/>
<choice>
<attribute name="path">
<data type="string">
<param name="minLength">1</param>
</data>
</attribute>
<attribute name="virtual">
<value>virtual</value>
</attribute>
</choice>
<zeroOrMore>
<choice>
<ref name="UrlHandler"/>
<ref name="Permission"/>
</choice>
</zeroOrMore>
<zeroOrMore>
<ref name="SubMapping"/>
</zeroOrMore>
</element>
</define>
<define name="Application">
<element name="sa:application">
<element name="sa:name">
<text/>
</element>
<optional>
<element name="sa:packager-uri">
<data type="anyURI"/>
</element>
</optional>
<element name="sa:version">
<text/>
</element>
<element name="sa:release">
<text/>
</element>
<optional>
<element name="sa:homepage">
<data type="anyURI"/>
</element>
</optional>
<optional>
<element name="sa:package-homepage">
<data type="anyURI"/>
</element>
</optional>
<optional>
<element name="sa:default-prefix">
<text/>
</element>
</optional>
<zeroOrMore>
<element name="sa:summary">
<optional>
<attribute name="xml:lang"/>
</optional>
<text/>
</element>
</zeroOrMore>
<zeroOrMore>
<element name="sa:description">
<optional>
<attribute name="xml:lang"/>
</optional>
<text/>
</element>
</zeroOrMore>
<optional>
<element name="sa:icon">
<attribute name="path"/>
</element>
</optional>
<zeroOrMore>
<element name="sa:screenshot">
<attribute name="path"/>
<oneOrMore>
<element name="sa:description">
<optional>
<attribute name="xml:lang"/>
</optional>
<text/>
</element>
</oneOrMore>
</element>
</zeroOrMore>
<optional>
<element name="sa:license">
<attribute name="must-accept">
<data type="boolean"/>
</attribute>
<oneOrMore>
<element name="sa:text">
<optional>
<attribute name="xml:lang"/>
</optional>
<optional>
<element name="sa:name">
<text/>
</element>
</optional>
<choice>
<element name="sa:url">
<data type="anyURI"/>
</element>
<element name="sa:file">
<text/>
</element>
</choice>
</element>
</oneOrMore>
</element>
</optional>
<optional>
<element name="sa:configuration-script-language">
<text/>
</element>
</optional>
<optional>
<choice>
<element name="sa:patchable-from">
<attribute name="version"/>
<attribute name="release"/>
</element>
<oneOrMore>
<element name="sa:patches">
<attribute name="version"/>
<attribute name="release"/>
</element>
</oneOrMore>
</choice>
</optional>
<optional>
<choice>
<element name="sa:upgradable-from">
<attribute name="version"/>
<attribute name="release"/>
</element>
<oneOrMore>
<element name="sa:upgrades">
<attribute name="version"/>
<attribute name="release"/>
</element>
</oneOrMore>
</choice>
</optional>
<element name="sa:changelog">
<zeroOrMore>
<element name="sa:version">
<attribute name="version"/>
<attribute name="release"/>
<oneOrMore>
<element name="sa:entry">
<optional>
<attribute name="xml:lang"/>
</optional>
<text/>
</element>
</oneOrMore>
</element>
</zeroOrMore>
</element>
<optional>
<element name="sa:entry-points">
<oneOrMore>
<element name="sa:entry">
<element name="sa:path">
<data type="anyURI"/>
</element>
<oneOrMore>
<element name="sa:label">
<optional>
<attribute name="xml:lang"/>
</optional>
<text/>
</element>
</oneOrMore>
<zeroOrMore>
<element name="sa:description">
<optional>
<attribute name="xml:lang"/>
</optional>
<text/>
</element>
</zeroOrMore>
</element>
</oneOrMore>
</element>
</optional>
<optional>
<element name="sa:installed-size">
<data type="nonNegativeInteger"/>
</element>
</optional>
<optional>
<element name="sa:categories">
<oneOrMore>
<element name="sa:category">
<text/>
</element>
</oneOrMore>
</element>
</optional>
<optional>
<element name="sa:languages">
<oneOrMore>
<element name="sa:language">
<data type="string">
<param name="pattern">[a-z]{2,3}</param>
</data>
</element>
</oneOrMore>
</element>
</optional>
<element name="sa:settings">
<zeroOrMore>
<ref name="Setting"/>
</zeroOrMore>
<zeroOrMore>
<ref name="SettingGroup"/>
</zeroOrMore>
</element>
<ref name="Requirements"/>
<ref name="Mapping"/>
</element>
</define>
</grammar>
Download
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns:cgi="http://apstandard.com/ns/1/cgi" xmlns:h="http://apstandard.com/ns/1/cgi/handlers" xmlns="http://relaxng.org/ns/structure/1.0">
<define name="handlerType">
<attribute name="h:handler-type">
<choice>
<value>executable</value>
<value>perl</value>
<value>php</value>
<value>python</value>
<value>ssi</value>
</choice>
</attribute>
</define>
<start>
<element name="cgi:handler">
<choice>
<element name="cgi:disabled">
<empty/>
</element>
<zeroOrMore>
<element name="cgi:extension">
<optional>
<ref name="handlerType"/>
</optional>
<text/>
</element>
</zeroOrMore>
<element name="cgi:all-files">
<optional>
<ref name="handlerType"/>
</optional>
</element>
</choice>
</element>
</start>
</grammar>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="d:db" xmlns:d="http://apstandard.com/ns/1/db" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<element name="d:id">
<text/>
</element>
<optional>
<element name="d:default-name">
<text/>
</element>
</optional>
<element name="d:can-use-tables-prefix">
<data type="boolean"/>
</element>
<element name="d:server-type">
<text/>
</element>
<element name="d:server-min-version">
<text/>
</element>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:allow-url-fopen" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="boolean"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:extension" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0">
<text/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:file-uploads" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="boolean"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:function" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0">
<text/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:magic-quotes-gpc" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="boolean"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:max-execution-time" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="integer"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:memory-limit" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="integer"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:permissions" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0">
<optional>
<attribute name="writable">
<value>true</value>
</attribute>
</optional>
<optional>
<attribute name="readable">
<value>false</value>
</attribute>
</optional>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:post-max-size" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="integer"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:register-globals" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="boolean"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:safe-mode" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="boolean"/>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:short-open-tag" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<data type="boolean"/>
</element>
.rng
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:handler" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0">
<choice>
<element name="php:disabled">
<empty/>
</element>
<zeroOrMore>
<element name="php:extension">
<text/>
</element>
</zeroOrMore>
</choice>
</element>
Download
<?xml version="1.0" encoding="UTF-8"?>
<element name="php:version" xmlns:php="http://apstandard.com/ns/1/php" xmlns="http://relaxng.org/ns/structure/1.0">
<optional>
<attribute name="min"/>
</optional>
<optional>
<attribute name="max-not-including"/>
</optional>
</element>