Changed the osversion to only accept nonNegativeInteger (in the schema).
authorNils Kneuper <crazy-ivanovic@gmx.net>
Thu, 23 Feb 2012 16:20:56 +0000 (17:20 +0100)
committerNils Kneuper <crazy-ivanovic@gmx.net>
Thu, 23 Feb 2012 16:20:56 +0000 (17:20 +0100)
This make checking via scripts that allow "equal" or "less than"
comparisions more easy (or possible at all...).

docs/PXML_schema.xsd
docs/PXML_schema_plaintext.txt

index 335efe5..cbb2154 100644 (file)
                <xs:attribute name="email" use="optional" type="emailAddress" />
        </xs:complexType>
        
-       <!-- type used for version informations (full entry as well as os version) -->
+       <!-- type used for version informations (full entry) -->
        <xs:complexType name="app_version_info">
                <xs:attribute name="major" use="required" type="versionNumber" />
                <xs:attribute name="minor" use="required" type="versionNumber" />
                <xs:attribute name="build" use="required" type="versionNumber" />
                <xs:attribute name="type" use="optional" type="releaseType" />
        </xs:complexType>
+       <!-- type used for OS version information (os version only) -->
        <xs:complexType name="os_version_info">
-               <xs:attribute name="major" use="required" type="versionNumber" />
-               <xs:attribute name="minor" use="required" type="versionNumber" />
-               <xs:attribute name="release" use="required" type="versionNumber" />
-               <xs:attribute name="build" use="required" type="versionNumber" />
+               <xs:attribute name="major" use="required" type="xs:nonNegativeInteger" />
+               <xs:attribute name="minor" use="required" type="xs:nonNegativeInteger" />
+               <xs:attribute name="release" use="required" type="xs:nonNegativeInteger" />
+               <xs:attribute name="build" use="required" type="xs:nonNegativeInteger" />
        </xs:complexType>
        
        <!-- type used for exec entries -->
index 443ab98..cc4d989 100644 (file)
@@ -80,10 +80,10 @@ inside each <application> block:
         (required) build=VERSION_NR
         (optional) type=[alpha|beta|release] (if not specified 'release' will be assumed)
 4) <=1 <osversion>
-        (required) major=VERSION_NR
-        (required) minor=VERSION_NR
-        (required) release=VERSION_NR
-        (required) build=VERSION_NR
+        (required) major=nonNegativeInteger
+        (required) minor=nonNegativeInteger
+        (required) release=nonNegativeInteger
+        (required) build=nonNegativeInteger
 5) =1 <titles> (order matters!)
         (required) =1 <title lang="en_US">TEXT</title> (enforcing that an en_US string is available, has to be listed first)
         (optional) >=0 <title>TEXT</title>
@@ -133,6 +133,7 @@ LANGCODE: [a-zA-Z]{2,3}(_[a-zA-Z0-9]{2,3})*   example: en, eng, en_US, fur_IT
 TEXT: The normalizedString data type also contains characters, but the XML processor will remove line feeds, carriage returns, and tab characters. (XML variable 'normalizedString'!)
 TOKEN: The token data type also contains characters, but the XML processor will remove line feeds, carriage returns, tabs, leading and trailing spaces, and multiple spaces. (XML variable 'token'!)
 VERSION_NR: [a-zA-Z0-9+-]*   example: 1, a, +svn, -svn, 123456789123456789
+nonNegativeInteger: numberical characters only, no matter if 0 or 123456789
 
 fdoCategory=AudioVideo|Audio|Video|Development|Education|Game|Graphics|Network|Office
 fdoSubCategory=Building|Debugger|IDE|GUIDesigner|Profiling|RevisionControl|Translation|Calendar|ContactManagement|Database|Dictionary|Chart|Email|Finance|FlowChart|PDA|ProjectManagement|Presentation|Spreadsheet|WordProcessor|2DGraphics|VectorGraphics|RasterGraphics|3DGraphics|Scanning|OCR|Photography|Publishing|Viewer|TextTools|DesktopSettings|HardwareSettings|Printing|PackageManager|Dialup|InstantMessaging|Chat|IRCClient|FileTransfer|HamRadio|News|P2P|RemoteAccess|Telephony|TelephonyTools|VideoConference|WebBrowser|WebDevelopment|Midi|Mixer|Sequencer|Tuner|TV|AudioVideoEditing|Player|Recorder|DiscBurning|ActionGame|AdventureGame|ArcadeGame|BoardGame|BlocksGame|CardGame|KidsGame|LogicGame|RolePlaying|Simulation|SportsGame|StrategyGame|Art|Construction|Music|Languages|Science|ArtificialIntelligence|Astronomy|Biology|Chemistry|ComputerScience|DataVisualization|Economy|Electricity|Geography|Geology|Geoscience|History|ImageProcessing|Literature|Math|NumericalAnalysis|MedicalSoftware|Physics|Robotics|Sports|ParallelComputing|Amusement|Archiving|Compression|Electronics|Emulator|Engineering|FileTools|FileManager|TerminalEmulator|Filesystem|Monitor|Security|Accessibility|Calculator|Clock|TextEditor|Documentation|Core|KDE|GNOME|GTK|Qt|Motif|Java|ConsoleOnly