

{"id":1230,"date":"2014-09-18T08:41:26","date_gmt":"2014-09-18T08:41:26","guid":{"rendered":"http:\/\/www.w3computing.com\/systemsanalysis\/?p=1230"},"modified":"2017-08-22T17:47:49","modified_gmt":"2017-08-22T17:47:49","slug":"process-validation","status":"publish","type":"post","link":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/","title":{"rendered":"The Process of Validation"},"content":{"rendered":"<p>It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then a syntax test can check the length of the data entered and check for proper class and composition. Only after the syntax is correct are the semantics, or meaning, of the data validated. This includes a range, reasonable, or value test, followed by a check digit test.<\/p>\n<p>GUI screens help to reduce the number of human input errors when they incorporate radio buttons, check boxes, and drop-down lists. When radio buttons are used, one should be set as the default, and the only way it would be unchecked is if the user clicks a different radio button. In the case of drop-down lists, the first choice should contain a message informing the user to change the list. If the first choice is still selected when the form is submitted, a message should inform the user to select a different option.<\/p>\n<p>Usually validating a single field is done with a series of IF . . . ELSE statements, but there are also pattern validation methods. Usually these patterns are found in the database design (as in Microsoft Access) but may be included in programming languages, such as Perl, JavaScript, and XMLschemas. The patterns are called regular expressions and contain symbols that represent the type of data that must be present in a field. Table shown below illustrates characters used in JavaScript regular expressions.<\/p>\n<style>\r\r\n\r\r\ntable#t60 {\r\r\n    border-collapse: collapse;\r\r\n\tborder-width: 0px;\r\r\n\tborder-style: outset;\r\r\n    margin: 20px 0;\r\r\n\tline-height: 2.0em;\r\r\n    text-align: left;\r\r\n    vertical-align: top;width: 100%;border-top: 1px solid #94DBFF;border-bottom: 1px solid #94DBFF;box-shadow: 0 2px 3px rgba(0, 0, 0, 0.4);\r\r\n\t\r\r\n}\r\r\ntable#t60 thead tr {\r\r\n\r\r\n}\r\r\ntable#t60 thead tr th.t60 {\r\r\n    color: #333333;\r\r\n\tbackground: none repeat scroll 0 0 #D1F0FF;\r\r\n    font-size: 1em;\r\r\n    letter-spacing: 0;\r\r\n    line-height: 1.2;\r\r\n\tfont-size: 1.1em;\r\r\n    padding: 4px;\r\r\n    text-transform: none;\r\r\n    text-align: left;border-bottom: 1px solid #94DBFF;\r\r\n}\r\r\n\r\r\ntable#t60 thead tr th#t60.start {\r\r\n\r\r\n}\r\r\ntable#t60 thead tr th#t60.end {\r\r\n\r\r\n}\r\r\ntable#t60 tbody tr {\r\r\n    background: none repeat scroll 0 0 #F0FAFF;\r\r\n}\r\r\ntable#t60 tbody tr.table-alternate {\r\r\n    background: none repeat scroll 0 0 #FCFEFF;\r\r\n}\r\r\ntable#t60 tbody tr td {\r\r\n    padding: 5px;\r\r\n\tborder-width: 0px;\r\r\n\tfont-size: 1.0em;\r\r\n\tborder-top: medium none;border-bottom: 1px solid #94DBFF;\r\r\n    text-align: left;\r\r\n\tline-height: 1.2;\r\r\n\tvertical-align: top;\r\r\n}\r\r\ntable#t60 tbody tr td#n1 {\r\r\n\twidth: 20%;\r\r\n\t}table#t60 tbody tr td#n2 {\r\r\n\twidth: 80%;\r\r\n\t}\r\r\ntable#t60 tbody tr:hover td {\r\r\n}\r\r\ntable#t60 tfoot tr {\r\r\n}\r\r\n\r\r\ntable#t60 tfoot tr td {\r\r\n    background: none repeat scroll 0 0 #D1F0FF;\t\r\r\n\tpadding: 4px;\r\r\n\tborder-width: 0px;\r\r\n\tfont-size: 1.0em;\r\r\n\tborder-top: medium none;\r\r\n    text-align: left;\r\r\n}\r\r\n<\/style><table id=\"t60\">\r\r\n\t\t<thead>\r\r\n\t\t\t<tr><th scope=\"col\" class=\"t60\" id=\"n1\">Character Code<\/th><th scope=\"col\" class=\"t60\" id=\"n2\">Meaning Used in Regular Expression Validation<\/th><\/tr><\/thead>\r\r\n\t<tbody><tr class=\"table-alternate row1\"> <td id=\"n1\" class=\"start\">\\d\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\r\n\r\n<\/pre><\/td><td id=\"n2\" >Any digit 0\u20139<\/td><\/tr><tr class= \"table-noalt row2\"><td id=\"n1\" class=\"start\">\\D<\/td><td id=\"n2\" >Any nondigit character<\/td><\/tr><tr class=\"table-alternate row3\"> <td id=\"n1\" class=\"start\">\\w<\/td><td id=\"n2\" >Any letter, number, or underscore<\/td><\/tr><tr class= \"table-noalt row4\"><td id=\"n1\" class=\"start\">\\W<\/td><td id=\"n2\" >Any character other than a letter, number, or underscore<\/td><\/tr><tr class=\"table-alternate row5\"> <td id=\"n1\" class=\"start\">.<\/td><td id=\"n2\" >Matches any character<\/td><\/tr><tr class= \"table-noalt row6\"><td id=\"n1\" class=\"start\">[characters]<\/td><td id=\"n2\" >Matches the characters in the brackets<\/td><\/tr><tr class=\"table-alternate row7\"> <td id=\"n1\" class=\"start\">[char-char]<\/td><td id=\"n2\" >Matches the range of characters<\/td><\/tr><tr class= \"table-noalt row8\"><td id=\"n1\" class=\"start\">[a\u2013z][A\u2013Z][0\u20139]<\/td><td id=\"n2\" >Will accept any letter or digit<\/td><\/tr><tr class=\"table-alternate row9\"> <td id=\"n1\" class=\"start\">[^characters]\t\t\t\r\n<\/td><td id=\"n2\" >Match anything other than the characters<\/td><\/tr><tr class= \"table-noalt row10\"><td id=\"n1\" class=\"start\">[^char-char]<\/td><td id=\"n2\" >Match anything outside the range of characters<\/td><\/tr><tr class=\"table-alternate row11\"> <td id=\"n1\" class=\"start\">[^a\u2013z]<\/td><td id=\"n2\" >Will accept anything except lowercase letters<\/td><\/tr><tr class= \"table-noalt row12\"><td id=\"n1\" class=\"start\">{n}<\/td><td id=\"n2\" >Match exactly n occurrences of the preceding character<\/td><\/tr><tr class=\"table-alternate row13\"> <td id=\"n1\" class=\"start\">{n,}<\/td><td id=\"n2\" >Match at least n occurrences of the character<\/td><\/tr><tr class= \"table-noalt row14\"><td id=\"n1\" class=\"start\">\\s<\/td><td id=\"n2\" >Any white space formatting character (tab, new line, return, etc.)<\/td><\/tr><tr class=\"table-alternate row15\"> <td id=\"n1\" class=\"start\">\\S<\/td><td id=\"n2\" >Any nonwhite space character<\/td><\/tr><\/tbody><\/table>\n<p>An example of pattern validation used to test an email address is<\/p>\n<p style=\"padding-left: 30px;\">[A-Za-z0-9]\\w{2,}@[A-Za-z0-9]{3,}\\.[A-Za-z]{3}\/<\/p>\n<p>The meaning of this pattern is as follows: The first letter must be any uppercase letter, lowercase letter, or number ([A-Za-z0-9]). This is followed by two or more characters that are any letter, number, or an underscore (\\w{2,}). There must then be an @ symbol, followed by at least three letters or numbers, a period, and exactly three characters after the period.<\/p>\n<p>A cross-reference check assumes that the validity of one field may depend on the value of another field. An example of a cross-reference check is checking for a valid date. In one very special case, the validity of the day of the month depends on the year. That is, February 29 is only valid during leap years. Once single fields have been checked, you can perform cross-reference checks. Obviously, if one of the fields is incorrect, the cross-reference check is meaningless and should not be performed.<\/p>\n<p>XML documents may be validated by comparing them to a document type definition (DTD) or a schema (refer to Chapter 8). The DTD will check to see whether the format of the document is valid, but a schema is much more powerful and will check the type of data, such as a short or long integer, a decimal number, or date. A schema will also check a range of values, the number of digits to the left and right of a decimal point, and the values of codes. There are free tools to validate a DTD or schema. IEXMLTLS is a Microsoft extension to Internet Explorer that adds new menu options when the user right-clicks in an XML document.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then a syntax test can check the length of the data entered and check for proper class and composition. Only after the syntax is correct [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[18],"tags":[],"class_list":["post-1230","post","type-post","status-publish","format-standard","category-designing-accurate-data-entry-procedures","entry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>The Process of Validation<\/title>\n<meta name=\"description\" content=\"It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Process of Validation\" \/>\n<meta property=\"og:description\" content=\"It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/w3computing\" \/>\n<meta property=\"article:published_time\" content=\"2014-09-18T08:41:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-08-22T17:47:49+00:00\" \/>\n<meta name=\"author\" content=\"w3computing.com\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"w3computing.com\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/\"},\"author\":{\"name\":\"w3computing.com\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#\\\/schema\\\/person\\\/8395166dc0b94b38a3aeb88dafbd63ce\"},\"headline\":\"The Process of Validation\",\"datePublished\":\"2014-09-18T08:41:26+00:00\",\"dateModified\":\"2017-08-22T17:47:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/\"},\"wordCount\":540,\"articleSection\":[\"Designing Accurate Data Entry Procedures\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/\",\"url\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/\",\"name\":\"The Process of Validation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#website\"},\"datePublished\":\"2014-09-18T08:41:26+00:00\",\"dateModified\":\"2017-08-22T17:47:49+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#\\\/schema\\\/person\\\/8395166dc0b94b38a3aeb88dafbd63ce\"},\"description\":\"It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/process-validation\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Systems Analysis\",\"item\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Designing Accurate Data Entry Procedures\",\"item\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/designing-accurate-data-entry-procedures\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The Process of Validation\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#website\",\"url\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/\",\"name\":\"\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#\\\/schema\\\/person\\\/8395166dc0b94b38a3aeb88dafbd63ce\",\"name\":\"w3computing.com\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Process of Validation","description":"It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/","og_locale":"en_US","og_type":"article","og_title":"The Process of Validation","og_description":"It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then","og_url":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/","article_publisher":"https:\/\/www.facebook.com\/w3computing","article_published_time":"2014-09-18T08:41:26+00:00","article_modified_time":"2017-08-22T17:47:49+00:00","author":"w3computing.com","twitter_misc":{"Written by":"w3computing.com","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/#article","isPartOf":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/"},"author":{"name":"w3computing.com","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#\/schema\/person\/8395166dc0b94b38a3aeb88dafbd63ce"},"headline":"The Process of Validation","datePublished":"2014-09-18T08:41:26+00:00","dateModified":"2017-08-22T17:47:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/"},"wordCount":540,"articleSection":["Designing Accurate Data Entry Procedures"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/","url":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/","name":"The Process of Validation","isPartOf":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#website"},"datePublished":"2014-09-18T08:41:26+00:00","dateModified":"2017-08-22T17:47:49+00:00","author":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#\/schema\/person\/8395166dc0b94b38a3aeb88dafbd63ce"},"description":"It is important to validate each field until it is either valid or an error has been detected. The order of testing data is to first check for missing data. Then","breadcrumb":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/process-validation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Systems Analysis","item":"https:\/\/www.w3computing.com\/systemsanalysis\/"},{"@type":"ListItem","position":2,"name":"Designing Accurate Data Entry Procedures","item":"https:\/\/www.w3computing.com\/systemsanalysis\/designing-accurate-data-entry-procedures\/"},{"@type":"ListItem","position":3,"name":"The Process of Validation"}]},{"@type":"WebSite","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#website","url":"https:\/\/www.w3computing.com\/systemsanalysis\/","name":"","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.w3computing.com\/systemsanalysis\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#\/schema\/person\/8395166dc0b94b38a3aeb88dafbd63ce","name":"w3computing.com"}]}},"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p4NNeA-jQ","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/posts\/1230","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/comments?post=1230"}],"version-history":[{"count":0,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/posts\/1230\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/media?parent=1230"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/categories?post=1230"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/tags?post=1230"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}