{"id":7581,"date":"2019-10-21T08:30:50","date_gmt":"2019-10-21T06:30:50","guid":{"rendered":"https:\/\/gis.oneteam.it\/?p=7581"},"modified":"2019-10-18T17:50:39","modified_gmt":"2019-10-18T15:50:39","slug":"arcgis-pro-episodi-migliorare-la-qualita-dei-dati-con-le-attribute-rules","status":"publish","type":"post","link":"https:\/\/gis.oneteam.it\/index.php\/2019\/10\/21\/arcgis-pro-episodi-migliorare-la-qualita-dei-dati-con-le-attribute-rules\/","title":{"rendered":"ArcGIS Pro episodi \u2013 migliorare la qualit\u00e0 dei dati con le Attribute Rules"},"content":{"rendered":"<p>Benvenuti ad un altro episodio della rubrica &#8220;ArcGIS Pro episodi&#8221;. Oggi parliamo delle <em>Attribute Rules,<\/em>\u00a0gi\u00e0 descritte nel nostro <a href=\"https:\/\/gis.oneteam.it\/index.php\/2019\/02\/07\/arcgis-pro-2-3-ecco-le-novita\/\">post<\/a>\u00a0sulle novit\u00e0 di ArcGIS Pro 2.3.<br \/>\nNella versione 2.4 alcune funzionalit\u00e0 delle <em>Attribute Rules<\/em>\u00a0sono state estese anche ai File Geodatabase e non sono pi\u00f9 esclusiva dei Geodatabase Enterprise.<\/p>\n<p>Ma vediamo in questo articolo di cosa si tratta&#8230;<\/p>\n<h2 style=\"text-align: justify;\"><strong>Cosa sono le Attribute Rules?<\/strong><\/h2>\n<p style=\"text-align: justify;\">Le <em>Attribute Rules<\/em> consistono in regole che \u00e8 possibile assegnare ai campi di una Feature Class. Queste regole permettono di compilare automaticamente gli attributi, di evitare errori in fase di editing e di controllare la qualit\u00e0 del dato esistente. La creazione delle regole avviene tramite espressioni scritte in linguaggio Arcade, di cui potete trovare maggiori informazioni sulla pagina <a href=\"https:\/\/developers.arcgis.com\/arcade\/\">Developers<\/a> di ArcGIS Pro.<\/p>\n<p style=\"text-align: justify;\">Le <em>Attribute Rules<\/em> si suddividono in tre sezioni:\u00a0<em>Calculation Rules <\/em>(composte da\u00a0<em>Immediate <\/em>Calculation Rule e\u00a0<em>Batch\u00a0<\/em>Calculation Rule), <em>Constraint Rules<\/em> e <em>Validation Rules.<\/em><\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/evidenziati.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7694\" src=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/evidenziati.jpg\" alt=\"Attribute Rules - Attribute view\" width=\"852\" height=\"203\" srcset=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/evidenziati.jpg 957w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/evidenziati-300x71.jpg 300w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/evidenziati-768x183.jpg 768w\" sizes=\"auto, (max-width: 852px) 100vw, 852px\" \/><\/a><\/p>\n<h5 style=\"text-align: center;\"><em>L&#8217;interfaccia di ArcGIS Pro con<span style=\"color: #ff0000;\"><span style=\"color: #339966;\">\u00a0<\/span><\/span>le tre sezioni delle <\/em>Attribute Rules<\/h5>\n<p>&nbsp;<\/p>\n<h2 style=\"text-align: justify;\">La gestione delle Attribute Rules<\/h2>\n<p>Le <em>Attribute Rules<\/em>\u00a0si possono creare solo dopo aver aggiunto il campo <a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/tool-reference\/tool-errors-and-warnings\/001001-010000\/tool-errors-and-warnings-02701-02725-002710.htm\">GlobalID<\/a> alla Feature Class desiderata. Dalla <em>Attribute Rules View<\/em> si possono creare nuove regole, importarle, esportarle o temporaneamente disabilitarle.<\/p>\n<p>Le funzionalit\u00e0 di\u00a0<em>Batch Calculation Rule<\/em> e le <em>Validation Rules<\/em> rimangono prerogative degli Enterprise Geodatabase\u00a0e non \u00e8 possibile utilizzarle con i File Geodatabase. Per poter utilizzare queste regole \u00e8 essenziale settare il Workspace del proprio geodatabase su Branch Versioning e condividerlo come un Web Feature Layer. \u00c8 inoltre necessario abilitare la Validation capability (<a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/help\/data\/geodatabases\/overview\/share-datasets-with-attribute-rules.htm\">come fare?<\/a>).<\/p>\n<p class=\"icon-ui-notice-triangle trailer-0\"><strong>Attenzione!<\/strong> <em>Aggiungere le <\/em>Attribute Rules<em> impatta la retrocompatibilit\u00e0 del dataset, impedendone l&#8217;utilizzo in ArcMap o in versioni di ArcGIS Pro precedenti alla 2.<\/em>1.<\/p>\n<p style=\"text-align: justify;\">Approfondiamo di seguito le funzionalit\u00e0 offerte dalle <em>Attribute Rules<\/em>.<\/p>\n<h2 style=\"text-align: justify;\"><strong>Calculation Rules\u00a0<\/strong><\/h2>\n<p style=\"text-align: justify;\">In questa sezione \u00e8 possibile impostare delle regole per i campi di una Feature Class in modo da calcolarne automaticamente gli attributi. Le <em>Calculation Rules\u00a0<\/em>si suddividono in <em>Immediate<\/em>\u00a0e <em>Batch<\/em>.<\/p>\n<ul>\n<li>La\u00a0<em>Immediate Calculation Rule\u00a0<\/em>viene validata immediatamente durante le operazioni di editing. Si pu\u00f2 decidere se attivare la regola all&#8217;inserimento, alla modifica o alla eliminazione di una feature.<\/li>\n<li>La\u00a0<em>Batch Calculation Rule\u00a0<\/em>viene invece validata ad un orario definito dall&#8217;utente utilizzando il\u00a0tool <em>Evaluate Rules<\/em> o l&#8217;<em>Error Inspector.<\/em><\/li>\n<\/ul>\n<p>\u00c8 possibile impedire le modifiche agli attributi deselezionando il check &#8220;Editable&#8221;. In questo modo i campi associati alle <em>Calculation Rules<\/em> saranno in modalit\u00e0 &#8220;sola lettura&#8221;.<\/p>\n<p style=\"text-align: justify;\">Prendendo come esempio un layer rappresentante un gasdotto, il lavoro di editing risulterebbe facilitato dall&#8217;utilizzo delle C<em>alculation Rules<\/em>: possiamo impostare una regola per calcolare il campo &#8220;PRESSIONE&#8221;, settandolo automaticamente su &#8220;0&#8221; se il tratto risulta &#8220;DISMESSO&#8221;.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/pipeline2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7702\" src=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/pipeline2.png\" alt=\"Attribute Rules - Calculation Rule\" width=\"638\" height=\"478\" srcset=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/pipeline2.png 830w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/pipeline2-300x225.png 300w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/pipeline2-768x576.png 768w\" sizes=\"auto, (max-width: 638px) 100vw, 638px\" \/><\/a><\/p>\n<h5 style=\"text-align: center;\"><strong><em>Il campo &#8220;PRESSIONE&#8221;\u00a0 viene popolato automaticamente attraverso l&#8217;espressione inserita nella <\/em><\/strong><strong>Calculation Rule<\/strong><\/h5>\n<p style=\"text-align: justify;\">Modificando un record gi\u00e0 esistente, queste regole effettuano in automatico un ricalcolo degli attributi in base alle nuove condizioni.<\/p>\n<h2 style=\"text-align: justify;\"><strong>Constraint Rules<\/strong><\/h2>\n<p style=\"text-align: justify;\">Le <em>Constraint Rules\u00a0<\/em>consentono di specificare i valori permessi per un campo<span style=\"color: #000000;\"> (incluso il campo geometry)<\/span>, in modo da evitare la creazione di features <span style=\"color: #000000;\">non valide<\/span>. L&#8217;output della regola consiste in un messaggio di errore che viene mostrato se, durante l\u2019editing, l\u2019utente immette un valore non consentito. Come per la <em>Immediate Calculation Rule<\/em>, si pu\u00f2 decidere se attivare la regola all&#8217;inserimento, alla modifica o alla eliminazione di una feature.<\/p>\n<p style=\"text-align: justify;\">Nel caso della nostra Feature Class &#8220;Pipeline&#8221;, una <em>Constraint Rule<\/em> pu\u00f2 essere rappresentata dall&#8217;impossibilit\u00e0 di creare tratti pi\u00f9 corti di 10 cm. Il messaggio di errore ci avvisa qualora questa regola venga violata, non permettendo\u00a0la creazione della feature.<\/p>\n<h5 style=\"text-align: justify;\"><a href=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/constraint-pipeline.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7677\" src=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/constraint-pipeline.png\" alt=\"Attribute Rules - Constraint Rule\" width=\"656\" height=\"526\" srcset=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/constraint-pipeline.png 822w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/constraint-pipeline-300x241.png 300w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/constraint-pipeline-768x616.png 768w\" sizes=\"auto, (max-width: 656px) 100vw, 656px\" \/><\/a><\/h5>\n<h5 style=\"text-align: center;\"><strong><em>Il tentativo di creazione di una tratta pi\u00f9 corta di 10 cm ha determinato la comparsa del messaggio di errore, settato attraverso la <\/em><\/strong><strong>Constraint Rule<br \/>\n<\/strong><\/h5>\n<p>&nbsp;<\/p>\n<h2 style=\"text-align: justify;\">Validation Rules<\/h2>\n<p style=\"text-align: justify;\">Funzionalit\u00e0 disponibile solo per gli utilizzatori di Geodatabase di tipo Enteprise, consente di controllare la correttezza delle features <span style=\"color: #000000;\">gi\u00e0 <\/span>esistenti all&#8217;interno di un dataset. La validazione della regola\u00a0 avviene attraverso il tool <em>Evaluate Rules<\/em> o l&#8217;<em>Error Inspector.<\/em><\/p>\n<p style=\"text-align: justify;\">Nel nostro caso si potrebbe settare una regola per\u00a0controllare che non esistano features in stato &#8220;DISMESSO&#8221; con un valore di pressione <span style=\"color: #000000;\">diverso da <\/span>&#8220;0&#8221;.<\/p>\n<p><a href=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validation-rule-3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7693\" src=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validation-rule-3.png\" alt=\"Attribute Rules - Validation Rule\" width=\"276\" height=\"532\" srcset=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validation-rule-3.png 298w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validation-rule-3-156x300.png 156w\" sizes=\"auto, (max-width: 276px) 100vw, 276px\" \/><\/a><\/p>\n<h5 style=\"text-align: center;\"><em>La <\/em>Validation Rule<em>\u00a0permette di identificare le features in stato &#8220;DISMESSO&#8221; e con pressione uguale a 0<\/em><\/h5>\n<h2><span style=\"color: #000000;\"><br \/>\nValidazione<\/span> delle Attribute Rules<\/h2>\n<p>Le regole implementate anche per i File Geodatabase (la\u00a0<em>Immediate Calculation Rule<\/em> e le\u00a0<em>Constraint Rules) <\/em>vengono validate\u00a0immediatamente durante la fase di editing. I messaggi di errore verranno mostrati nell&#8217;interfaccia di ArcGIS Pro.<\/p>\n<p>Le regole ancora ristrette agli Enterprise Geodatabase (la\u00a0<em>Batch Calculation Rule<\/em> e le <em>Validation Rules)<\/em> si possono validare ad un orario deciso dall&#8217;utente attraverso l&#8217;<em>Error Inspector<\/em>\u00a0o il tool <em>Evaluate Rules.<\/em>\u00a0Gli errori riscontrati vengono conservati in un &#8220;Error Group Layer&#8221;, in modo da essere agevolmente corretti o marcati come eccezioni. Dopo la revisione \u00e8 necessario validare nuovamente le regole affinch\u00e9\u00a0le features corrette vengano rimosse dagli Error Layers.<\/p>\n<p>L&#8217;ordine in cui vengono validate le <em>Attribute Rules<\/em> \u00e8 definito dall&#8217;ordine di creazione delle regole. Dalla <em>Attribute Rules View<\/em> \u00e8 possibile cambiare l&#8217;ordine di validazione in modo che le regole non collidano e non si creino errori nel dataset.<\/p>\n<p>Con la produzione della prima <em>Batch Calculation Rule<\/em> o <em>Validation Rule<\/em> verr\u00e0 creato automaticamente un campo &#8220;Validation Status&#8221; all&#8217;interno della Feature Class. Il campo mostrer\u00e0 la presenza di errori nei record e se \u00e8 necessario effettuare il calcolo o la validazione.<\/p>\n<p><a href=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validatiojn-status.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7705\" src=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validatiojn-status.png\" alt=\"\" width=\"646\" height=\"349\" srcset=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validatiojn-status.png 772w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validatiojn-status-300x162.png 300w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2019\/10\/validatiojn-status-768x415.png 768w\" sizes=\"auto, (max-width: 646px) 100vw, 646px\" \/><\/a><\/p>\n<h5 style=\"text-align: center;\"><em>Le possibili configurazioni del campo &#8220;Validation Status&#8221;<br \/>\n(Fonte: <a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/help\/data\/geodatabases\/overview\/evaluate-attribute-rules.htm\">ArcGIS Pro Help<\/a>)<\/em><\/h5>\n<p>&nbsp;<\/p>\n<h2 style=\"text-align: justify;\">In conclusione<\/h2>\n<p style=\"text-align: justify;\">In questo articolo abbiamo analizzato le varie funzionalit\u00e0 che le\u00a0<em>Attribute Rules<\/em>\u00a0offrono agli utenti.\u00a0Implementarle<em>\u00a0<\/em>nel proprio geodatabase render\u00e0 l&#8217;editing in ArcGIS Pro pi\u00f9 scorrevole e preciso, grazie alla possibilit\u00e0 di definire vincoli agli attributi della Feature Class e di collegare intrinsecamente\u00a0i campi in fase di modifica. Le regole disponibili per i File Geodatabase, unite alle <em>Validation Rules<\/em>\u00a0per il controllo sulle features esistenti,\u00a0 garantiranno un significativo miglioramento dell&#8217;integrit\u00e0 degli attributi del dataset.<\/p>\n<p style=\"text-align: justify;\">Ma rivediamo sommariamente i vantaggi di ogni sezione delle <em>Attribute Rules:<\/em><\/p>\n<ul>\n<li><em><strong>Calculation Rules<\/strong>:\u00a0<\/em>la <em>Immediate Calculation Rule<\/em>\u00a0permette di risparmiare tempo durante l&#8217;editing, poich\u00e9 la tabella degli attributi viene compilata automaticamente in funzione della regola scelta. La <em>Batch Calculation Rule<\/em>\u00a0\u00e8 invece pi\u00f9 indicata per calcoli su features gi\u00e0 esistenti oppure per calcoli troppo complessi per essere eseguiti ad ogni modifica.<\/li>\n<li><em><strong>Constraint Rules<\/strong>:\u00a0<\/em>sono consigliate nel caso si voglia evitare la creazione accidentale di features errate, spiegando contestualmente la specifica motivazione (con un messaggio di errore personalizzato).<\/li>\n<li><em><strong>Validation Rules<\/strong>:\u00a0<\/em>sono particolarmente utili per controllare che le features esistenti abbiano i requisiti richiesti.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Puoi scoprire di pi\u00f9 sulle <em>Attribute Rules<\/em> sulla pagina ufficiale di <a href=\"https:\/\/pro.arcgis.com\/en\/pro-app\/help\/data\/geodatabases\/overview\/an-overview-of-attribute-rules.htm\">ArcGIS Pro Help.<\/a><\/p>\n<p style=\"text-align: justify;\">Per maggiori informazioni contatta lo staff GIS di One Team via mail scrivendo a\u00a0<a href=\"mailto:gis@oneteam.it\">gis@oneteam.it<\/a>\u00a0o chiamaci allo 0247719331.<\/p>\n<p style=\"text-align: justify;\">Iscriviti al blog per non perderti i prossimi appuntamenti della serie <strong>ArcGIS Pro episodi<\/strong>!<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/gis.oneteam.it\/index.php\/sliders\/iscriviti\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-6324 size-full\" src=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2017\/11\/button_iscriviti_blog_gis1.png\" sizes=\"auto, (max-width: 322px) 100vw, 322px\" srcset=\"https:\/\/gis.oneteam.it\/wp-content\/uploads\/2017\/11\/button_iscriviti_blog_gis1.png 322w, https:\/\/gis.oneteam.it\/wp-content\/uploads\/2017\/11\/button_iscriviti_blog_gis1-300x65.png 300w\" alt=\"Button_Iscriviti_BLOG_GIS\" width=\"322\" height=\"70\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Benvenuti ad un altro episodio della rubrica &#8220;ArcGIS Pro episodi&#8221;. Oggi parliamo delle Attribute Rules,\u00a0gi\u00e0 descritte nel nostro post\u00a0sulle novit\u00e0 di ArcGIS Pro 2.3. Nella versione 2.4 alcune funzionalit\u00e0 delle Attribute Rules\u00a0sono state estese anche ai File Geodatabase e non sono pi\u00f9 esclusiva dei Geodatabase Enterprise. Ma vediamo in questo articolo di cosa si tratta&#8230;&hellip;<\/p>\n","protected":false},"author":1,"featured_media":7654,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,9,14],"tags":[70,75,81,673,671,670],"class_list":["post-7581","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arcgis-for-desktop","category-arcgis-pro","category-articoli-tecnici","tag-arcgis","tag-arcgis-desktop","tag-arcgis-pro","tag-attribute-rules","tag-enterprise-geodatabase","tag-file-geodatabase"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/posts\/7581","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/comments?post=7581"}],"version-history":[{"count":84,"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/posts\/7581\/revisions"}],"predecessor-version":[{"id":7713,"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/posts\/7581\/revisions\/7713"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/media\/7654"}],"wp:attachment":[{"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/media?parent=7581"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/categories?post=7581"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gis.oneteam.it\/index.php\/wp-json\/wp\/v2\/tags?post=7581"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}