{"id":1544,"date":"2020-05-13T11:17:48","date_gmt":"2020-05-13T11:17:48","guid":{"rendered":"https:\/\/wetransform.eu\/?post_type=news-and-events&#038;p=1544"},"modified":"2022-07-12T12:08:54","modified_gmt":"2022-07-12T12:08:54","slug":"halestudio-advanced-functions","status":"publish","type":"news-and-events","link":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/","title":{"rendered":"hale\u00bbstudio: Making Best Use of Advanced Functions"},"content":{"rendered":"<p>After last week's focus on Groovy, today we will take a closer look on other advanced functions and functionalities of hale\u00bbstudio that often get overlooked but provide great value.<br \/>\nMaking good use of these functionalities can help you on your way to becoming a more efficient hale\u00bbstudio power user.<\/p>\n<p>For the remainder of this article it's assumed that you have working knowledge of hale studio and are familiar with its terminology.<br \/>\nFor a primer on hale studio concepts, please refer to <a href=\"http:\/\/help.halestudio.org\/latest\/nav\/0_3\">the online help<\/a>.<\/p>\n<h2>Synchronize Schema Explorer and Alignment View<\/h2>\n<p>In large and complex source and\/or target schemas, it can become difficult to find a specific source type or attribute.<br \/>\nIf you have the type or attribute relation open in the Alignment view, the button &quot;Synchronise with cell selection&quot; (highlighted in the screenshot below) can simplify navigation.<br \/>\nWhen active, hale studio will jump to the source and target types or attributes of the selected mapping in the Schema Explorer.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/synchronize-with-cell-selection.png\" alt=\"hale\u00bbstudio button synchronise with cell selection\" \/><\/p>\n<h2>Spatial Join<\/h2>\n<p>An advanced feature of hale studio is its ability to join objects of your source dataset based on the spatial relationship of their geometries with the <code>Spatial Join<\/code> transformation function.<br \/>\nIn contrast, the regular <code>Join<\/code> is limited to the equality of textual attributes.<br \/>\nFor the comparison of geometries, <code>Spatial Join<\/code> supports all modes of the <a href=\"https:\/\/en.wikipedia.org\/wiki\/DE-9IM\">Dimensionally Extended nine-Intersection Model<\/a>: <code>contains<\/code>, <code>covered by<\/code>, <code>covers<\/code>, <code>crosses<\/code>, <code>equals<\/code>, <code>intersects<\/code>, <code>overlaps<\/code>, <code>touches<\/code>, and <code>within<\/code>.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/spatialjoin.png\" alt=\"hale\u00bbstudio Spatial Join example\" \/><\/p>\n<p>Internally, <code>Spatial Join<\/code> is powered by a spatial index that is built when hale studio imports the source data.<br \/>\nYou can leverage the spatial index in your own Groovy scripts via the helper functions <code>_.geom.spatialIndexQuery<\/code> and <code>_.geom.boundaryCovers<\/code>.<br \/>\nMake sure to check out <a href=\"https:\/\/wetransform.eu\/news-and-events\/groovy-week-spatial-index\/\">our previous post on the subject<\/a> if you would like to learn more about using the spatial index in Groovy scripts!<\/p>\n<h2>Filtering Data with Contexts<\/h2>\n<p>In hale studio, a context on a schema element can be used to restrict the element to certain instances or property values.<br \/>\nAfter setting a context on a schema element, the effect of mapping cells defined on that element is limited to the instances or property values that match the context condition.<\/p>\n<p>A special type of context is the index context that can be used in cases where the order of elements in the source instance conveys a special meaning.<br \/>\nIn the example below, the information on the language of a name is given implicitly through the order in which the names appear.<br \/>\nThe first name is in German, the second name is in English, and the third one is in Italian.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/index-context.png\" alt=\"hale\u00bbstudio index context example\" \/><\/p>\n<p>More information about contexts is available in the <a href=\"http:\/\/help.halestudio.org\/latest\/topic\/eu.esdihumboldt.hale.doc.user\/html\/concepts\/contexts.html\">hale studio help<\/a>.<br \/>\nThere you can also find <a href=\"http:\/\/help.halestudio.org\/latest\/topic\/eu.esdihumboldt.hale.doc.user\/html\/tasks\/schema\/define_context.html?cp=0_5_0_1\">a tutorial on how to create contexts<\/a>.<\/p>\n<h2>Make the Most of the Map View<\/h2>\n<p>The Map view of hale studio provides you with a cartographic representation of both source and transformed data.<br \/>\nBoth can be displayed alongside each other, with different layouts to choose from.<br \/>\nAn often overlooked feature of the Map view is that you can select geometries by clicking on them and then inspect the properties of the corresponding object in the data view.<br \/>\nYou can also select multiple instances, just hold the <code>Ctrl<\/code> key when you click.<br \/>\nSelected instances are highlighted in red, as can be seen in the screenshot below.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/map-view-highlight.png\" alt=\"hale\u00bbstudio Map view with geometry selected and highlighted\" \/><\/p>\n<p>You can find the data views for source and transformed instances directly beneath the map.<br \/>\nTo show the properties of the objects selected in the map, activate the <code>Use instances selected in the application<\/code> mode in the upper left corner of the data view.<\/p>\n<p>Vice versa you can also filter the data view and highlight the geometries of the filtered instances in the map.<br \/>\nTo do that, first activate the <code>Random\/filtered source data instances<\/code> mode in the data view (upper left corner), then enter the desired filter expression and finally activate the globe button in the upper right corner of the data view.<br \/>\nIn the screenshot below, the source objects were filtered for a specific value of the <code>bodenart<\/code> property.<br \/>\nThe geometries of the filtered objects are highlighted in red in the map.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/map-view-filter.png\" alt=\"hale\u00bbstudio Map view with the geometries of filtered objects highlighted\" \/><\/p>\n<p>Happy transforming!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>After last week&#8217;s focus on Groovy, today we will take a closer look on other advanced functions and functionalities of hale\u00bbstudio that often get overlooked but provide great value. Making good use of these functionalities can help you on your way to becoming a more efficient hale\u00bbstudio power user. For the remainder of this article [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[12],"tags":[21,46],"class_list":["post-1544","news-and-events","type-news-and-events","status-publish","hentry","category-general","tag-halestudio","tag-tutorial"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>hale\u00bbstudio: Making Best Use of Advanced Functions - wetransform<\/title>\n<meta name=\"description\" content=\"Today we will take a closer look at the advanced functions and functionalities of hale\u00bbstudio to help you become a power user.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"hale\u00bbstudio: Making Best Use of Advanced Functions\" \/>\n<meta property=\"og:description\" content=\"Today we will take a closer look at the advanced functions and functionalities of hale\u00bbstudio to help you become a power user.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/\" \/>\n<meta property=\"og:site_name\" content=\"wetransform\" \/>\n<meta property=\"article:modified_time\" content=\"2022-07-12T12:08:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/synchronize-with-cell-selection.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@wetransformto\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data1\" content=\"3\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/\",\"url\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/\",\"name\":\"hale\u00bbstudio: Making Best Use of Advanced Functions - wetransform\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/wetransform.to\\\/de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/wetransform.eu\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/synchronize-with-cell-selection.png\",\"datePublished\":\"2020-05-13T11:17:48+00:00\",\"dateModified\":\"2022-07-12T12:08:54+00:00\",\"description\":\"Today we will take a closer look at the advanced functions and functionalities of hale\u00bbstudio to help you become a power user.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/#primaryimage\",\"url\":\"https:\\\/\\\/wetransform.eu\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/synchronize-with-cell-selection.png\",\"contentUrl\":\"https:\\\/\\\/wetransform.eu\\\/wp-content\\\/uploads\\\/2022\\\/05\\\/synchronize-with-cell-selection.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/halestudio-advanced-functions\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/wetransform.to\\\/de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"News & Events\",\"item\":\"https:\\\/\\\/wetransform.to\\\/de\\\/neuigkeiten-veranstaltungen\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"hale\u00bbstudio: Making Best Use of Advanced Functions\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\\\/\\\/wetransform.to\\\/de\\\/#website\",\"url\":\"http:\\\/\\\/wetransform.to\\\/de\\\/\",\"name\":\"wetransform\",\"description\":\"Making environmental data useful and accessible\",\"publisher\":{\"@id\":\"http:\\\/\\\/wetransform.to\\\/de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\\\/\\\/wetransform.to\\\/de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"http:\\\/\\\/wetransform.to\\\/de\\\/#organization\",\"name\":\"wetransform\",\"url\":\"http:\\\/\\\/wetransform.to\\\/de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"http:\\\/\\\/wetransform.to\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/wetransform.to\\\/wp-content\\\/uploads\\\/2022\\\/07\\\/large-logo-whitebg.png\",\"contentUrl\":\"https:\\\/\\\/wetransform.to\\\/wp-content\\\/uploads\\\/2022\\\/07\\\/large-logo-whitebg.png\",\"width\":1024,\"height\":1024,\"caption\":\"wetransform\"},\"image\":{\"@id\":\"http:\\\/\\\/wetransform.to\\\/de\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/wetransformto\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/wetransform-gmbh\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"hale\u00bbstudio: Making Best Use of Advanced Functions - wetransform","description":"Today we will take a closer look at the advanced functions and functionalities of hale\u00bbstudio to help you become a power user.","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:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/","og_locale":"de_DE","og_type":"article","og_title":"hale\u00bbstudio: Making Best Use of Advanced Functions","og_description":"Today we will take a closer look at the advanced functions and functionalities of hale\u00bbstudio to help you become a power user.","og_url":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/","og_site_name":"wetransform","article_modified_time":"2022-07-12T12:08:54+00:00","og_image":[{"url":"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/synchronize-with-cell-selection.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_site":"@wetransformto","twitter_misc":{"Gesch\u00e4tzte Lesezeit":"3\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/","url":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/","name":"hale\u00bbstudio: Making Best Use of Advanced Functions - wetransform","isPartOf":{"@id":"http:\/\/wetransform.to\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/#primaryimage"},"image":{"@id":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/#primaryimage"},"thumbnailUrl":"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/synchronize-with-cell-selection.png","datePublished":"2020-05-13T11:17:48+00:00","dateModified":"2022-07-12T12:08:54+00:00","description":"Today we will take a closer look at the advanced functions and functionalities of hale\u00bbstudio to help you become a power user.","breadcrumb":{"@id":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/#primaryimage","url":"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/synchronize-with-cell-selection.png","contentUrl":"https:\/\/wetransform.eu\/wp-content\/uploads\/2022\/05\/synchronize-with-cell-selection.png"},{"@type":"BreadcrumbList","@id":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/halestudio-advanced-functions\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wetransform.to\/de\/"},{"@type":"ListItem","position":2,"name":"News & Events","item":"https:\/\/wetransform.to\/de\/neuigkeiten-veranstaltungen\/"},{"@type":"ListItem","position":3,"name":"hale\u00bbstudio: Making Best Use of Advanced Functions"}]},{"@type":"WebSite","@id":"http:\/\/wetransform.to\/de\/#website","url":"http:\/\/wetransform.to\/de\/","name":"wetransform","description":"Making environmental data useful and accessible","publisher":{"@id":"http:\/\/wetransform.to\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/wetransform.to\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"http:\/\/wetransform.to\/de\/#organization","name":"wetransform","url":"http:\/\/wetransform.to\/de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"http:\/\/wetransform.to\/de\/#\/schema\/logo\/image\/","url":"https:\/\/wetransform.to\/wp-content\/uploads\/2022\/07\/large-logo-whitebg.png","contentUrl":"https:\/\/wetransform.to\/wp-content\/uploads\/2022\/07\/large-logo-whitebg.png","width":1024,"height":1024,"caption":"wetransform"},"image":{"@id":"http:\/\/wetransform.to\/de\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/wetransformto","https:\/\/www.linkedin.com\/company\/wetransform-gmbh\/"]}]}},"_links":{"self":[{"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/news-and-events\/1544","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/news-and-events"}],"about":[{"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/types\/news-and-events"}],"author":[{"embeddable":true,"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/comments?post=1544"}],"version-history":[{"count":3,"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/news-and-events\/1544\/revisions"}],"predecessor-version":[{"id":3313,"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/news-and-events\/1544\/revisions\/3313"}],"wp:attachment":[{"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/media?parent=1544"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/categories?post=1544"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wetransform.to\/de\/wp-json\/wp\/v2\/tags?post=1544"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}