Author: mukulg
Date: Fri Jan 14 00:44:50 2022
New Revision: 1897022
URL: http://svn.apache.org/viewvc?rev=1897022&view=rev
Log:
committing few test cases related to jira issue XERCESJ-1726
Added:
xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xml (with props)
xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xsd (with props)
Modified:
xerces/java/branches/xs-1.1-tests/src/org/apache/xerces/tests/JiraBugsTests.java
Added: xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xml
URL:
http://svn.apache.org/viewvc/xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xml?rev=1897022&view=auto
==============================================================================
--- xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xml (added)
+++ xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xml Fri Jan 14
00:44:50 2022
@@ -0,0 +1,293 @@
+<extension version="3.7" client="administrator" type="language"
method="upgrade"> <!-- change to client="site" if site pack -->
+ <name>French (fr-FR)</name> <!-- New in 3.7.0: Use only latin ascii
characters. -->
+ <tag>fr-FR</tag>
+ <version>3.7.0.1</version>
+ <creationDate>15/02/2017</creationDate>
+ <author>French translation team : joomla.fr</author>
+ <authorEmail>[email protected]</authorEmail>
+ <authorUrl>www.joomla.fr</authorUrl>
+ <copyright>Copyright (C) 2005 - 2017 joomla.fr et Open Source Matters.
Tous droits réservés</copyright>
+ <license>GNU General Public License version 2 or later; see
LICENSE.txt</license>
+ <description>fr-FR administrator language</description>
+ <files>
+ <filename>fr-FR.plg_captcha_recaptcha.sys.ini</filename>
+ <filename>fr-FR.com_admin.ini</filename>
+ <filename>fr-FR.com_admin.sys.ini</filename>
+ <filename>fr-FR.com_ajax.ini</filename>
+ <filename>fr-FR.com_ajax.sys.ini</filename>
+ <filename>fr-FR.com_associations.ini</filename>
+ <filename>fr-FR.com_associations.sys.ini</filename>
+ <filename>fr-FR.com_banners.ini</filename>
+ <filename>fr-FR.com_banners.sys.ini</filename>
+ <filename>fr-FR.com_cache.ini</filename>
+ <filename>fr-FR.com_cache.sys.ini</filename>
+ <filename>fr-FR.com_categories.ini</filename>
+ <filename>fr-FR.com_categories.sys.ini</filename>
+ <filename>fr-FR.com_checkin.ini</filename>
+ <filename>fr-FR.com_checkin.sys.ini</filename>
+ <filename>fr-FR.com_config.ini</filename>
+ <filename>fr-FR.com_config.sys.ini</filename>
+ <filename>fr-FR.com_contact.ini</filename>
+ <filename>fr-FR.com_contact.sys.ini</filename>
+ <filename>fr-FR.com_content.ini</filename>
+ <filename>fr-FR.com_content.sys.ini</filename>
+ <filename>fr-FR.com_contenthistory.ini</filename>
+ <filename>fr-FR.com_contenthistory.sys.ini</filename>
+ <filename>fr-FR.com_cpanel.ini</filename>
+ <filename>fr-FR.com_cpanel.sys.ini</filename>
+ <filename>fr-FR.com_fields.ini</filename>
+ <filename>fr-FR.com_fields.sys.ini</filename>
+ <filename>fr-FR.com_finder.ini</filename>
+ <filename>fr-FR.com_finder.sys.ini</filename>
+ <filename>fr-FR.com_installer.ini</filename>
+ <filename>fr-FR.com_installer.sys.ini</filename>
+ <filename>fr-FR.com_joomlaupdate.ini</filename>
+ <filename>fr-FR.com_joomlaupdate.sys.ini</filename>
+ <filename>fr-FR.com_languages.ini</filename>
+ <filename>fr-FR.com_languages.sys.ini</filename>
+ <filename>fr-FR.com_login.ini</filename>
+ <filename>fr-FR.com_login.sys.ini</filename>
+ <filename>fr-FR.com_mailto.sys.ini</filename>
+ <filename>fr-FR.com_media.ini</filename>
+ <filename>fr-FR.com_media.sys.ini</filename>
+ <filename>fr-FR.com_menus.ini</filename>
+ <filename>fr-FR.com_menus.sys.ini</filename>
+ <filename>fr-FR.com_messages.ini</filename>
+ <filename>fr-FR.com_messages.sys.ini</filename>
+ <filename>fr-FR.com_modules.ini</filename>
+ <filename>fr-FR.com_modules.sys.ini</filename>
+ <filename>fr-FR.com_newsfeeds.ini</filename>
+ <filename>fr-FR.com_newsfeeds.sys.ini</filename>
+ <filename>fr-FR.com_plugins.ini</filename>
+ <filename>fr-FR.com_plugins.sys.ini</filename>
+ <filename>fr-FR.com_postinstall.ini</filename>
+ <filename>fr-FR.com_postinstall.sys.ini</filename>
+ <filename>fr-FR.com_redirect.ini</filename>
+ <filename>fr-FR.com_redirect.sys.ini</filename>
+ <filename>fr-FR.com_search.ini</filename>
+ <filename>fr-FR.com_search.sys.ini</filename>
+ <filename>fr-FR.com_tags.ini</filename>
+ <filename>fr-FR.com_tags.sys.ini</filename>
+ <filename>fr-FR.com_templates.ini</filename>
+ <filename>fr-FR.com_templates.sys.ini</filename>
+ <filename>fr-FR.com_users.ini</filename>
+ <filename>fr-FR.com_users.sys.ini</filename>
+ <filename>fr-FR.com_weblinks.ini</filename>
+ <filename>fr-FR.com_weblinks.sys.ini</filename>
+ <filename>fr-FR.com_wrapper.ini</filename>
+ <filename>fr-FR.com_wrapper.sys.ini</filename>
+ <!-- this file can be added in the ADMINISTRATOR pack if one
wants to change the fonts used to display the back-end interface.-->
+ <filename>fr-FR.css</filename>
+ <!-- -->
+ <filename>fr-FR.ini</filename>
+ <filename>fr-FR.lib_joomla.ini</filename>
+ <filename>fr-FR.localise.php</filename>
+ <filename>fr-FR.mod_custom.ini</filename>
+ <filename>fr-FR.mod_custom.sys.ini</filename>
+ <filename>fr-FR.mod_feed.ini</filename>
+ <filename>fr-FR.mod_feed.sys.ini</filename>
+ <filename>fr-FR.mod_latest.ini</filename>
+ <filename>fr-FR.mod_latest.sys.ini</filename>
+ <filename>fr-FR.mod_logged.ini</filename>
+ <filename>fr-FR.mod_logged.sys.ini</filename>
+ <filename>fr-FR.mod_login.ini</filename>
+ <filename>fr-FR.mod_login.sys.ini</filename>
+ <filename>fr-FR.mod_menu.ini</filename>
+ <filename>fr-FR.mod_menu.sys.ini</filename>
+ <filename>fr-FR.mod_multilangstatus.ini</filename>
+ <filename>fr-FR.mod_multilangstatus.sys.ini</filename>
+ <filename>fr-FR.mod_popular.ini</filename>
+ <filename>fr-FR.mod_popular.sys.ini</filename>
+ <filename>fr-FR.mod_quickicon.ini</filename>
+ <filename>fr-FR.mod_quickicon.sys.ini</filename>
+ <filename>fr-FR.mod_stats_admin.ini</filename>
+ <filename>fr-FR.mod_stats_admin.sys.ini</filename>
+ <filename>fr-FR.mod_status.ini</filename>
+ <filename>fr-FR.mod_status.sys.ini</filename>
+ <filename>fr-FR.mod_submenu.ini</filename>
+ <filename>fr-FR.mod_submenu.sys.ini</filename>
+ <filename>fr-FR.mod_title.ini</filename>
+ <filename>fr-FR.mod_title.sys.ini</filename>
+ <filename>fr-FR.mod_toolbar.ini</filename>
+ <filename>fr-FR.mod_toolbar.sys.ini</filename>
+ <filename>fr-FR.mod_version.ini</filename>
+ <filename>fr-FR.mod_version.sys.ini</filename>
+ <filename>fr-FR.plg_authentication_cookie.ini</filename>
+ <filename>fr-FR.plg_authentication_cookie.sys.ini</filename>
+ <filename>fr-FR.plg_authentication_gmail.ini</filename>
+ <filename>fr-FR.plg_authentication_gmail.sys.ini</filename>
+ <filename>fr-FR.plg_authentication_joomla.ini</filename>
+ <filename>fr-FR.plg_authentication_joomla.sys.ini</filename>
+ <filename>fr-FR.plg_authentication_ldap.ini</filename>
+ <filename>fr-FR.plg_authentication_ldap.sys.ini</filename>
+ <filename>fr-FR.plg_captcha_recaptcha.ini</filename>
+ <filename>fr-FR.plg_captcha_recaptcha.sys.ini</filename>
+ <filename>fr-FR.plg_content_contact.ini</filename>
+ <filename>fr-FR.plg_content_contact.sys.ini</filename>
+ <filename>fr-FR.plg_content_emailcloak.ini</filename>
+ <filename>fr-FR.plg_content_emailcloak.sys.ini</filename>
+ <filename>fr-FR.plg_content_fields.ini</filename>
+ <filename>fr-FR.plg_content_fields.sys.ini</filename>
+ <filename>fr-FR.plg_content_finder.ini</filename>
+ <filename>fr-FR.plg_content_finder.sys.ini</filename>
+ <filename>fr-FR.plg_content_joomla.ini</filename>
+ <filename>fr-FR.plg_content_joomla.sys.ini</filename>
+ <filename>fr-FR.plg_content_loadmodule.ini</filename>
+ <filename>fr-FR.plg_content_loadmodule.sys.ini</filename>
+ <filename>fr-FR.plg_content_pagebreak.ini</filename>
+ <filename>fr-FR.plg_content_pagebreak.sys.ini</filename>
+ <filename>fr-FR.plg_content_pagenavigation.ini</filename>
+ <filename>fr-FR.plg_content_pagenavigation.sys.ini</filename>
+ <filename>fr-FR.plg_content_vote.ini</filename>
+ <filename>fr-FR.plg_content_vote.sys.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_article.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_article.sys.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_contact.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_contact.sys.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_fields.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_fields.sys.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_image.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_image.sys.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_menu.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_menu.sys.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_module.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_module.sys.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_pagebreak.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_pagebreak.sys.ini</filename>
+ <!-- Spacer to get past a buggy record count! -->
+ <filename>fr-FR.plg_editors-xtd_readmore.ini</filename>
+ <filename>fr-FR.plg_editors-xtd_readmore.sys.ini</filename>
+ <filename>fr-FR.plg_editors_codemirror.ini</filename>
+ <filename>fr-FR.plg_editors_codemirror.sys.ini</filename>
+ <filename>fr-FR.plg_editors_none.ini</filename>
+ <filename>fr-FR.plg_editors_none.sys.ini</filename>
+ <filename>fr-FR.plg_editors_tinymce.ini</filename>
+ <filename>fr-FR.plg_editors_tinymce.sys.ini</filename>
+ <filename>fr-FR.plg_extension_joomla.ini</filename>
+ <filename>fr-FR.plg_extension_joomla.sys.ini</filename>
+ <filename>fr-FR.plg_fields_calendar.ini</filename>
+ <filename>fr-FR.plg_fields_calendar.sys.ini</filename>
+ <filename>fr-FR.plg_fields_checkboxes.ini</filename>
+ <filename>fr-FR.plg_fields_checkboxes.sys.ini</filename>
+ <filename>fr-FR.plg_fields_color.ini</filename>
+ <filename>fr-FR.plg_fields_color.sys.ini</filename>
+ <filename>fr-FR.plg_fields_editor.ini</filename>
+ <filename>fr-FR.plg_fields_editor.sys.ini</filename>
+ <filename>fr-FR.plg_fields_gallery.ini</filename>
+ <filename>fr-FR.plg_fields_gallery.sys.ini</filename>
+ <filename>fr-FR.plg_fields_image.ini</filename>
+ <filename>fr-FR.plg_fields_image.sys.ini</filename>
+ <filename>fr-FR.plg_fields_imagelist.ini</filename>
+ <filename>fr-FR.plg_fields_imagelist.sys.ini</filename>
+ <filename>fr-FR.plg_fields_integer.ini</filename>
+ <filename>fr-FR.plg_fields_integer.sys.ini</filename>
+ <filename>fr-FR.plg_fields_list.ini</filename>
+ <filename>fr-FR.plg_fields_list.sys.ini</filename>
+ <filename>fr-FR.plg_fields_media.ini</filename>
+ <filename>fr-FR.plg_fields_media.sys.ini</filename>
+ <filename>fr-FR.plg_fields_radio.ini</filename>
+ <filename>fr-FR.plg_fields_radio.sys.ini</filename>
+ <filename>fr-FR.plg_fields_sql.ini</filename>
+ <filename>fr-FR.plg_fields_sql.sys.ini</filename>
+ <filename>fr-FR.plg_fields_text.ini</filename>
+ <filename>fr-FR.plg_fields_text.sys.ini</filename>
+ <filename>fr-FR.plg_fields_textarea.ini</filename>
+ <filename>fr-FR.plg_fields_textarea.sys.ini</filename>
+ <filename>fr-FR.plg_fields_url.ini</filename>
+ <filename>fr-FR.plg_fields_url.sys.ini</filename>
+ <filename>fr-FR.plg_fields_user.ini</filename>
+ <filename>fr-FR.plg_fields_user.sys.ini</filename>
+ <filename>fr-FR.plg_fields_usergrouplist.ini</filename>
+ <filename>fr-FR.plg_fields_usergrouplist.sys.ini</filename>
+ <filename>fr-FR.plg_finder_categories.ini</filename>
+ <filename>fr-FR.plg_finder_categories.sys.ini</filename>
+ <filename>fr-FR.plg_finder_contacts.ini</filename>
+ <filename>fr-FR.plg_finder_contacts.sys.ini</filename>
+ <filename>fr-FR.plg_finder_content.ini</filename>
+ <filename>fr-FR.plg_finder_content.sys.ini</filename>
+ <filename>fr-FR.plg_finder_newsfeeds.ini</filename>
+ <filename>fr-FR.plg_finder_newsfeeds.sys.ini</filename>
+ <filename>fr-FR.plg_finder_tags.ini</filename>
+ <filename>fr-FR.plg_finder_tags.sys.ini</filename>
+ <filename>fr-FR.plg_finder_weblinks.ini</filename>
+ <filename>fr-FR.plg_finder_weblinks.sys.ini</filename>
+ <filename>fr-FR.plg_installer_folderinstaller.ini</filename>
+ <filename>fr-FR.plg_installer_folderinstaller.sys.ini</filename>
+ <filename>fr-FR.plg_installer_packageinstaller.ini</filename>
+
<filename>fr-FR.plg_installer_packageinstaller.sys.ini</filename>
+ <filename>fr-FR.plg_installer_urlinstaller.ini</filename>
+ <filename>fr-FR.plg_installer_urlinstaller.sys.ini</filename>
+ <filename>fr-FR.plg_installer_webinstaller.ini</filename>
+ <filename>fr-FR.plg_installer_webinstaller.sys.ini</filename>
+ <filename>fr-FR.plg_quickicon_extensionupdate.ini</filename>
+ <filename>fr-FR.plg_quickicon_extensionupdate.sys.ini</filename>
+ <filename>fr-FR.plg_quickicon_joomlaupdate.ini</filename>
+ <filename>fr-FR.plg_quickicon_joomlaupdate.sys.ini</filename>
+ <filename>fr-FR.plg_quickicon_phpversioncheck.ini</filename>
+ <filename>fr-FR.plg_quickicon_phpversioncheck.sys.ini</filename>
+ <filename>fr-FR.plg_search_categories.ini</filename>
+ <filename>fr-FR.plg_search_categories.sys.ini</filename>
+ <filename>fr-FR.plg_search_contacts.ini</filename>
+ <filename>fr-FR.plg_search_contacts.sys.ini</filename>
+ <filename>fr-FR.plg_search_content.ini</filename>
+ <filename>fr-FR.plg_search_content.sys.ini</filename>
+ <filename>fr-FR.plg_search_newsfeeds.ini</filename>
+ <filename>fr-FR.plg_search_newsfeeds.sys.ini</filename>
+ <filename>fr-FR.plg_search_tags.ini</filename>
+ <filename>fr-FR.plg_search_tags.sys.ini</filename>
+ <filename>fr-FR.plg_search_weblinks.ini</filename>
+ <filename>fr-FR.plg_search_weblinks.sys.ini</filename>
+ <filename>fr-FR.plg_system_cache.ini</filename>
+ <filename>fr-FR.plg_system_cache.sys.ini</filename>
+ <filename>fr-FR.plg_system_debug.ini</filename>
+ <filename>fr-FR.plg_system_debug.sys.ini</filename>
+ <filename>fr-FR.plg_system_fields.ini</filename>
+ <filename>fr-FR.plg_system_fields.sys.ini</filename>
+ <filename>fr-FR.plg_system_highlight.ini</filename>
+ <filename>fr-FR.plg_system_highlight.sys.ini</filename>
+ <filename>fr-FR.plg_system_languagecode.ini</filename>
+ <filename>fr-FR.plg_system_languagecode.sys.ini</filename>
+ <filename>fr-FR.plg_system_languagefilter.ini</filename>
+ <filename>fr-FR.plg_system_languagefilter.sys.ini</filename>
+ <filename>fr-FR.plg_system_log.ini</filename>
+ <filename>fr-FR.plg_system_log.sys.ini</filename>
+ <filename>fr-FR.plg_system_logout.ini</filename>
+ <filename>fr-FR.plg_system_logout.sys.ini</filename>
+ <filename>fr-FR.plg_system_p3p.ini</filename>
+ <filename>fr-FR.plg_system_p3p.sys.ini</filename>
+ <filename>fr-FR.plg_system_redirect.ini</filename>
+ <filename>fr-FR.plg_system_redirect.sys.ini</filename>
+ <filename>fr-FR.plg_system_remember.ini</filename>
+ <filename>fr-FR.plg_system_remember.sys.ini</filename>
+ <filename>fr-FR.plg_system_sef.ini</filename>
+ <filename>fr-FR.plg_system_sef.sys.ini</filename>
+ <filename>fr-FR.plg_system_stats.ini</filename>
+ <filename>fr-FR.plg_system_stats.sys.ini</filename>
+ <filename>fr-FR.plg_system_updatenotification.ini</filename>
+ <filename>fr-FR.plg_system_updatenotification.sys.ini</filename>
+ <filename>fr-FR.plg_twofactorauth_totp.ini</filename>
+ <filename>fr-FR.plg_twofactorauth_totp.sys.ini</filename>
+ <filename>fr-FR.plg_twofactorauth_yubikey.ini</filename>
+ <filename>fr-FR.plg_twofactorauth_yubikey.sys.ini</filename>
+ <filename>fr-FR.plg_user_contactcreator.ini</filename>
+ <filename>fr-FR.plg_user_contactcreator.sys.ini</filename>
+ <filename>fr-FR.plg_user_joomla.ini</filename>
+ <filename>fr-FR.plg_user_joomla.sys.ini</filename>
+ <filename>fr-FR.plg_user_profile.ini</filename>
+ <filename>fr-FR.plg_user_profile.sys.ini</filename>
+ <filename>fr-FR.tpl_hathor.ini</filename>
+ <filename>fr-FR.tpl_hathor.sys.ini</filename>
+ <filename>fr-FR.tpl_isis.ini</filename>
+ <filename>fr-FR.tpl_isis.sys.ini</filename>
+ <!-- This file is mandatory as otherwise the pack can't be
uninstalled. -->
+ <filename file="meta">install.xml</filename>
+ <filename file="meta">fr-FR.xml</filename>
+ </files>
+ <media destination="fr-FR"> <!-- If one needs to add a specific
calendar -->
+ <filename>index.html</filename>
+ <filename>js/index.html</filename>
+ <filename>js/calendar-setup.js</filename>
+ <filename>js/calendar.js</filename>
+ </media>
+ <params />
+</extension>
Propchange: xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xml
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xsd
URL:
http://svn.apache.org/viewvc/xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xsd?rev=1897022&view=auto
==============================================================================
--- xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xsd (added)
+++ xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xsd Fri Jan 14
00:44:50 2022
@@ -0,0 +1,195 @@
+<?xml version="1.0"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+ <!-- ********************** -->
+ <!-- * Top-level elements * -->
+ <!-- ********************** -->
+ <xs:element name="extension">
+ <xs:alternative test="@type='language'"
type="extensionTypeLanguage"/>
+ </xs:element>
+ <!-- ******************************************************** -->
+ <!-- * Structures used from more than one top-level element * -->
+ <!-- ******************************************************** -->
+ <xs:group name="metadata">
+ <xs:all>
+ <xs:element name="name" type="xs:string" minOccurs="0"
maxOccurs="1"/>
+ <xs:element name="creationDate" type="xs:string"
minOccurs="0" maxOccurs="1"/>
+ <xs:element name="author" type="xs:string"
minOccurs="0" maxOccurs="1"/>
+ <xs:element name="authorEmail" type="xs:string"
minOccurs="0" maxOccurs="1"/>
+ <xs:element name="authorUrl" type="xs:anyURI"
minOccurs="0" maxOccurs="1"/>
+ <xs:element name="copyright" type="xs:string"
minOccurs="0" maxOccurs="1"/>
+ <!--
*****************************************************************************
-->
+ <!-- * Disregard the following element, not decoded by
the installation software * -->
+ <!--
*****************************************************************************
-->
+ <xs:element name="license" type="xs:string"
minOccurs="0" maxOccurs="1"/>
+ <xs:element name="version" type="extensionVersionType"
minOccurs="0" maxOccurs="1"/>
+ <xs:element name="description" type="xs:string"
minOccurs="0" maxOccurs="1"/>
+ </xs:all>
+ </xs:group>
+ <xs:simpleType name="methodChoice">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="install"/>
+ <xs:enumeration value="upgrade"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="joomlaVersionChoice">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[23].[0-9]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="extensionVersionType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[0-9]([0-9])*(.[0-9]([0-9])*)+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="tagChoice">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[a-z]{2,3}-[A-Z]{2,3}"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="clientChoice">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="administrator|site"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="typeUpdateServers">
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType">
+ <xs:all>
+ <xs:element name="server"
type="typeServerUpdateServers" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:all>
+ </xs:restriction>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="typeMedia">
+ <xs:all>
+ <xs:element name="filename" type="xs:string"
minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="folder" type="xs:string"
minOccurs="0" maxOccurs="unbounded"/>
+ </xs:all>
+ <xs:attribute name="folder" type="xs:string" use="optional"/>
+ <xs:attribute name="destination" type="xs:string"
use="optional"/>
+ </xs:complexType>
+ <xs:simpleType name="typeParams">
+ <xs:restriction base="xs:string">
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- ************************************ -->
+ <!-- * attributes optional or required? * -->
+ <!-- ************************************ -->
+ <xs:complexType name="typeServerUpdateServers">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="name" type="xs:string"/>
+ <xs:attribute name="type" type="serverChoice"/>
+ <!--
**************************************************** -->
+ <!-- * Include the "priority" attribute here to
prevent * -->
+ <!-- * errors although I have failed to
identify * -->
+ <!-- * code in Joomla! which processes it.
* -->
+ <!--
**************************************************** -->
+ <xs:attribute name="priority"
type="xs:positiveInteger"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="serverChoice">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="extension|collection"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- ********************************************* -->
+ <!-- * Material for Language-specific extensions * -->
+ <!-- ********************************************* -->
+ <xs:complexType name="extensionTypeLanguage">
+ <xs:all>
+ <xs:element name="tag" type="tagChoice" minOccurs="0"
maxOccurs="1"/>
+ <xs:group ref="metadata"/>
+ <xs:element name="files" type="typeLanguageFiles"
minOccurs="1" maxOccurs="unbounded"/>
+ <xs:element name="media" type="typeMedia" minOccurs="0"
maxOccurs="1"/>
+ <xs:element name="params" type="typeParams"
minOccurs="1" maxOccurs="1"/>
+ </xs:all>
+ <xs:attribute name="type" type="xs:string" use="required"
fixed="language"/>
+ <xs:attribute name="method" type="methodChoice"/>
+ <xs:attribute name="version" type="joomlaVersionChoice"/>
+ <xs:attribute name="client" type="clientChoice"/>
+ </xs:complexType>
+ <xs:complexType name="typeLanguageFilesFilename">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="file" type="xs:string"
use="optional"/>
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <!-- * Assuming that the current context is
"/extension/files/filename"
* -->
+ <!-- * check that there are ALL elements in
this context whose values DO match one of:
* -->
+ <!-- * 1)
^([a-z]{2}[a-z]?-[A-Z]{2}\.((((com)|(lib)|(mod(_[a-z][a-z0-9]+)?)|(plg_[a-z][a-z0-9]+(\-[a-z0-9][a-z0-9]+)*)|(tpl))_[a-z][a-z0-9]+(\.sys)?(\.ini))|(ini)|(css)|(localise\.php)))$
* -->
+ <!-- * 2) ^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$
* -->
+ <!-- * 3) ^(install\.xml)$
* -->
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- * Start of Highlighted Lines for Untreated
Kind of Error
* -->
+ <!--
*******************************************************************************************************************************************
-->
+ <xs:assert
test="./text()[matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.((((com)|(lib)|(mod(_[a-z][a-z0-9]+)?)|(plg_[a-z][a-z0-9]+(\-[a-z0-9][a-z0-9]+)*)|(tpl))_[a-z][a-z0-9]+(\.sys)?(\.ini))|(ini)|(css)|(localise\.php)))|([a-z]{2}[a-z]?-[A-Z]{2}\.xml)|(install\.xml)$')]"/>
+ <xs:assert test="if
(./text()[matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.((((com)|(lib)|(mod(_[a-z][a-z0-9]+)?)|(plg_[a-z][a-z0-9]+(\-[a-z0-9][a-z0-9]+)*)|(tpl))_[a-z][a-z0-9]+(\.sys)?(\.ini))|(ini)|(css)|(localise\.php)))|([a-z]{2}[a-z]?-[A-Z]{2}\.xml)|(install\.xml)$')])
then true() else false()"/>
+ <xs:assert test="if (./text()[last()>1]) then
false() else true()"/>
+ <!-- <xs:assert test="if
(./text()[matches(.,'^_finder\.ini$')]) then true() else false()"/>
+ <xs:assert test="if
(./text()[matches(.,'^[a-z]{2}[a-z]?-[A-Z]{2}\.com$)]) then true() else
false()"/> -->
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- * End of Highlighted Lines for Untreated
Kind of Error
* -->
+ <!--
*******************************************************************************************************************************************
-->
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- * Of the elements whose values (./text())
match:
* -->
+ <!-- * 2) ^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$
* -->
+ <!-- * check that ALL have the "file"
attribute.
* -->
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- <xs:assert
test="./text()[matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')]/../@file"/>
+ <xs:assert test="if (true()) then true() else
false()"/>
+ <xs:assert
test="matches(text(),'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')"/>
+ <xs:assert test="if
(matches(text(),'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')) then @file else true()"/>
-->
+ <xs:assert test="if
(matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')) then @file else true()"/>
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- * Check that the ONE element which
matches:
* -->
+ <!-- * 2) ^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$
* -->
+ <!-- * has an attribute "file" with value
"meta".
* -->
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- <xs:assert
test="./text()[matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')]/../@file[.='meta']"/>
+ <xs:assert test="if
(matches(text(),'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')) then @file[.='meta'] else
true()"/> -->
+ <xs:assert test="if
(matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')) then @file[.='meta'] else
true()"/>
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- * Of the elements whose values (./text())
match:
* -->
+ <!-- * 3) ^(install\.xml)$
* -->
+ <!-- * check that ALL have the "file"
attribute.
* -->
+ <!--
*******************************************************************************************************************************************
-->
+ <xs:assert test="if
(./text()[matches(.,'^(install\.xml)$')]) then @file else true()"/>
+ <!--
*******************************************************************************************************************************************
-->
+ <!-- * Check that the ONE element which
matches:
* -->
+ <!-- * 3) ^(install\.xml)$
* -->
+ <!-- * has an attribute "file" with value
"meta".
* -->
+ <!--
*******************************************************************************************************************************************
-->
+ <xs:assert test="if
(./text()[matches(.,'^(install\.xml)$')]) then @file[.='meta'] else true()"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="typeLanguageFiles">
+ <xs:all>
+ <xs:element name="folder" type="xs:string"
minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="filename"
type="typeLanguageFilesFilename" minOccurs="1" maxOccurs="unbounded"/> <!-- For
the "index.<php|html>" file -->
+ </xs:all>
+ <xs:attribute name="folder" type="xs:string" use="optional"/>
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <!-- * Assuming that the current context is "/extension/files"
* -->
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <!-- Of the elements whose values (./text()) match:
* -->
+ <!-- * 1)
^([a-z]{2}[a-z]?-[A-Z]{2}\.((((com)|(lib)|(mod(_[a-z][a-z0-9]+)?)|(plg_[a-z][a-z0-9]+(\-[a-z0-9][a-z0-9]+)*)|(tpl))_[a-z][a-z0-9]+(\.sys)?(\.ini))|(ini)|(css)|(localise\.php)))$
* -->
+ <!-- * check that NONE have the "file" attribute.
* -->
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <xs:assert
test="count(./filename/text()[matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.((((com)|(lib)|(mod(_[a-z][a-z0-9]+)?)|(plg_[a-z][a-z0-9]+(\-[a-z0-9][a-z0-9]+)*)|(tpl))_[a-z][a-z0-9]+(\.sys)?(\.ini))|(ini)|(css)|(localise\.php)))$')]/..[@file])=0"/>
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <!-- * Check there is ONE and ONLY ONE element whose value
(./text()) matches:
* -->
+ <!-- * 2) ^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$
* -->
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <xs:assert
test="count(./filename/text()[matches(.,'^([a-z]{2}[a-z]?-[A-Z]{2}\.xml)$')])=1"/>
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <!-- * Check there is ONE and ONLY ONE element whose value
(./text()) matches:
* -->
+ <!-- * 3) ^(install\.xml)$
* -->
+ <!--
*****************************************************************************************************************************************************************************************
-->
+ <xs:assert
test="count(./filename/text()[matches(.,'^(install\.xml)$')])=1"/>
+ </xs:complexType>
+</xs:schema>
Propchange: xerces/java/branches/xs-1.1-tests/data/jira_bugs/1726_1.xsd
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified:
xerces/java/branches/xs-1.1-tests/src/org/apache/xerces/tests/JiraBugsTests.java
URL:
http://svn.apache.org/viewvc/xerces/java/branches/xs-1.1-tests/src/org/apache/xerces/tests/JiraBugsTests.java?rev=1897022&r1=1897021&r2=1897022&view=diff
==============================================================================
---
xerces/java/branches/xs-1.1-tests/src/org/apache/xerces/tests/JiraBugsTests.java
(original)
+++
xerces/java/branches/xs-1.1-tests/src/org/apache/xerces/tests/JiraBugsTests.java
Fri Jan 14 00:44:50 2022
@@ -17,14 +17,17 @@
package org.apache.xerces.tests;
+import java.io.File;
import java.util.ArrayList;
import java.util.List;
+import javax.xml.transform.sax.SAXSource;
import javax.xml.transform.stream.StreamSource;
import javax.xml.validation.Schema;
import javax.xml.validation.SchemaFactory;
import javax.xml.validation.Validator;
+import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
/**
@@ -564,6 +567,39 @@ public class JiraBugsTests extends Xerce
Validator v = s.newValidator();
v.setErrorHandler(this);
v.validate(new StreamSource(xmlfile));
+ assertNull(fErrSysId);
+ assertNull(fFatErrSysId);
+ } catch(Exception ex) {
+ ex.printStackTrace();
+ assertTrue(false);
+ }
+ }
+
+ public void testJira_1726_1() {
+ String xmlfile = fDataDir+"/jira_bugs/1726_1.xml";
+ String schemapath = fDataDir+"/jira_bugs/1726_1.xsd";
+ try {
+ Schema s = fSchemaFactory.newSchema(new File(schemapath));
+ Validator v = s.newValidator();
+ v.setErrorHandler(this);
+ v.validate(new SAXSource(new InputSource(new
+
java.io.FileInputStream(xmlfile))));
+ assertNull(fErrSysId);
+ assertNull(fFatErrSysId);
+ } catch(Exception ex) {
+ ex.printStackTrace();
+ assertTrue(false);
+ }
+ }
+
+ public void testJira_1726_2() {
+ String xmlfile = fDataDir+"/jira_bugs/1726_1.xml";
+ String schemapath = fDataDir+"/jira_bugs/1726_1.xsd";
+ try {
+ Schema s = fSchemaFactory.newSchema(new File(schemapath));
+ Validator v = s.newValidator();
+ v.setErrorHandler(this);
+ v.validate(new StreamSource(xmlfile));
assertNull(fErrSysId);
assertNull(fFatErrSysId);
} catch(Exception ex) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]