{"id":228,"date":"2019-03-14T09:54:17","date_gmt":"2019-03-14T08:54:17","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/"},"modified":"2020-01-31T11:26:58","modified_gmt":"2020-01-31T10:26:58","slug":"data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/","title":{"rendered":"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform"},"content":{"rendered":"<p>Imagine you are in the monitoring and control room of your city, where all relevant <span id=\"urn:batch-analysis-ff8bace3-5b7b-4c12-bf0a-899ac23a4c60\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> coming from sensors, <span id=\"urn:batch-analysis-52adac63-4ffa-4443-a420-48a1d1805398\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/mobile_device\">mobile devices<\/span>, social media streams, IoT devices, vehicles and so on are displayed on multifunctional dashboards. Imagine you can read on those dashboards predictions and user behaviour analysis, which can support your decisions and address your <span id=\"urn:batch-analysis-d9df47d2-7694-490b-aa08-202995cbc7d0\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/strategy\">strategies<\/span>. As IT professionals, we know this is the work of separate, interlaced technologies, not magic, and we like to move from the initial sense of wonder to understanding and confidence.<\/p>\n<p>Snap4City, an open-source platform that allows us to create solutions for <span id=\"urn:batch-analysis-b27df502-144a-491d-bccb-c26bc18c1728\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/smart_city\">smart cities<\/span>, is the best testbed to learn how this magic happens. Snap4City is developed by DISIT Lab (Distributed Systems and Internet Technologies Lab) of University of Florence and is currently in use to aggregate open <span id=\"urn:batch-analysis-e8f0b433-18f8-4de6-bfd7-fb903d9a56a7\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> and private <span id=\"urn:batch-analysis-b30285c4-ed0d-4c0c-89e2-4970102de223\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> from and to some local administrations in <span id=\"urn:batch-analysis-64201ca5-d021-490a-90b7-e733856d0de9\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/italy\">Italy<\/span>.<\/p>\n<p>Being a framework that must produce and provide some kind of value from data exploitation, at Snap4City&#8217;s core is the ability to aggregate and integrate <span id=\"urn:batch-analysis-ed7e7065-e886-433a-a1cf-12a4ccb50af5\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> from different providers, in different protocols.<\/p>\n<h2>The 5 Vs of Smart Cities Data<\/h2>\n<p>The aims, problems and challenges for Snap4City are to turn <span id=\"urn:batch-analysis-92f1cff9-692b-4567-8308-7610c86e4cdd\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> from disparate sources into actionable information. In fact, Snap4City provides a platform able to ingest and take advantage of large amounts of spread <span id=\"urn:batch-analysis-063038ed-0e9d-4089-b068-928e485d0d8d\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span>, exploiting data integration and reasoning to deliver new services and application to citizens and administrators.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-3370\" title=\"Private and public data, from static and real-time sources\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/02\/02-screenshot-01.png\" alt=\"\" width=\"700\" height=\"396\"><\/p>\n<p><em>Img 1: Private and public data, from static and real-time sources<\/em><\/p>\n<p>This data can be provided in many different protocols and formats, and from many different sources. Moreover, the <span id=\"urn:batch-analysis-14a7c234-13d7-4d1a-b370-9c5a17085652\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> is not aligned, for example, the same street names, dates or tags may differ when provided by different sources.<\/p>\n<p>Snap4City must be able to manage a diversity of data types &#8211;&nbsp;<strong>variety<\/strong> &#8211; that are being created with rapidly increasing speed by technological advances &#8211;&nbsp;<strong>velocity<\/strong>. This huge amount of information &#8211;&nbsp;<strong>volume<\/strong> &#8211; can change its exact flow from time to time &#8211;&nbsp;<strong>variability<\/strong> &#8211; and the infrastructure required to collect and interpret <span id=\"urn:batch-analysis-d92a0af3-3823-485c-aef2-fcc945f58d75\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> must produce insights &#8211;&nbsp;<strong>value<\/strong>.<\/p>\n<p>Those are the five relevant characteristics of a big data problem\/solution, a.k.a. \u201ct<strong>he 5 Vs of big <span id=\"urn:batch-analysis-619b8766-1c04-4d23-9b5a-0d3cae91a53e\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span><\/strong>\u201d.<\/p>\n<h2>Modalities and Strategies for Data Ingestion<\/h2>\n<p>Snap4City platform gathers information from several sources. <span id=\"urn:batch-analysis-d8cfcdf6-175d-47fe-9db6-f3dc778e6829\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">Data<\/span> can be provided in any format and via any protocol. This means that <span id=\"urn:batch-analysis-4cae1153-1d54-491c-a30b-fefb2c03baaa\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> can be both structured and non-structured, as well as flowing as static <span id=\"urn:batch-analysis-cccccd25-3feb-413a-802e-f527f4d4883f\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> or as real time data, with or without metadata descriptors.<\/p>\n<p>Static <span id=\"urn:batch-analysis-f8869447-c06e-4990-84ac-64b0a7f75cf3\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> can be imported in Snap4City via <span id=\"urn:batch-analysis-9691518d-5ed3-42e4-bfb2-aba18e7ef398\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> driven, stream, sporadic and\/or periodic processes. Static <span id=\"urn:batch-analysis-68c8afdb-9eba-4810-8c18-be4a73d7bf77\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> is typically ingested with DataGate for automated ingestion, while both static and real-time <span id=\"urn:batch-analysis-e24336cc-4e33-4a61-a91b-1be13828eee1\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> can be ingested through Node-RED, Apache NiFi, and custom procedures in the form of ETL processes (Extract, Transform, Load). Several different formats and structures can be addressed by creating specific ETL processes for each data source family.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-3371\" title=\"Schematic of semantic data aggregation in Snap4City\/Km4City\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/02\/02-screenshot-02.png\" alt=\"\" width=\"700\" height=\"396\"><\/p>\n<p><em>Img 2: Schematic of semantic data aggregation in Snap4City\/Km4City<\/em><\/p>\n<p>The mined\/acquired data is subsequently stored into noSQL <span id=\"urn:batch-analysis-08afbe34-61a9-4c59-8828-0228bd3e6ee7\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/table_database\">database<\/span>. From here, information can be exploited for data analytics, dashboards, etc.<\/p>\n<h2>ETL Processes for Data Ingestion<\/h2>\n<p>ETL processes are used for data gathering, collecting files from HTTP\/FTP protocols. Some ETL processes that have been developed and are now in place to manage data ingestion for the <span id=\"urn:batch-analysis-ec51283d-9dee-4206-91dc-d9e1a590c302\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/smart_city\">Smart City<\/span> of Florence and Tuscany are accessible on <a href=\"https:\/\/github.com\/disit\/smart-city-etl\">DISIT Lab Github project page<\/a>.<\/p>\n<p>These include <span id=\"urn:batch-analysis-1b3dcc5f-dc8b-448e-b9ac-2a75dcf1f304\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/management\">management<\/span> for <span id=\"urn:batch-analysis-e21ebe58-3e46-4639-a16c-259fc21d6d43\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> from traffic sensors, parking lots, weather forecast, cost of fuels, environmental <span id=\"urn:batch-analysis-5867404d-533c-4921-82ac-4e7176ad7c59\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span>, etc. Examples of sources and data ingestion processes by ETL and Snap4City applications are crawling public web pages for collecting hospital triage statuses, periodically reading from <span id=\"urn:batch-analysis-3989cb2d-bf97-49cb-8d09-2d9002d7f538\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/web_server\">web server<\/span> data in GTFS format about public transportation schedule, stops, paths, etc., integrating civic number location from OpenStreetMap to Snap4City Knowledge Base.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-3372\" title=\"Example of batch processing in Snap4City integrated ETL development environment for dynamic data ingestions\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/02\/02-screenshot-03.png\" alt=\"\" width=\"700\" height=\"393\"><\/p>\n<p><em>Img 3:&nbsp; Example of batch processing in Snap4City integrated ETL development environment for dynamic data ingestions<\/em><\/p>\n<h2>Node-RED Blocks for Data Ingestion<\/h2>\n<p>To manage and ingest real time data and for IoT applications, Snap4City provides several Node-RED blocks for accessing <span id=\"urn:batch-analysis-c424b9f4-0fe5-480b-9f77-60b0ccebde49\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> in a specific format (XML, CSV, HTML, YALM, JSON) and translates them into the JavaScript Object representation. Once the <span id=\"urn:batch-analysis-9e34d378-24bf-45bd-a217-147825a61d58\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> is represented in this target format, it can be easily and uniformly processed and transformed for the application needs.<\/p>\n<p>The same Node-RED blocks can be exploited for exporting a value in the JavaScript Object representation in the corresponding format. Once the <span id=\"urn:batch-analysis-762cd089-1bc6-4474-9cfe-77c5e7d3eec2\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> has been processed, it can be visualised on a dashboard or stored in a Big Data Storage and\/or Knowledge Base by using dedicated Node-RED blocks.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-3373\" title=\"Example of Node-RED flow in Snap4City integrated development environment for event driven, real time data ingestion\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/02\/02-screenshot-04.png\" alt=\"\" width=\"700\" height=\"393\"><\/p>\n<p><em>Img 04: Example of Node-RED flow in Snap4City <span id=\"urn:batch-analysis-6356e09c-18b0-44e6-b87b-548a3de4c537\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/integrated_development_environment\">integrated development environment<\/span> for event driven, real time data ingestion<\/em><\/p>\n<p>Detailed information about how to create ETL process and Node-Red flows in Snap4City can be found on the&nbsp;<a href=\"https:\/\/www.snap4city.org\/drupal\/node\/161\">project website<\/a>.<\/p>\n<h2>Semantic Modeling and City Knowledge Base<\/h2>\n<p>Being strictly related to <span id=\"urn:batch-analysis-adac32c3-a40c-459e-b91e-c5897b195062\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> moving to and from sensors and actuators placed on territory, Snap4City must deal with complex and interrelated geospatial info. For example, Snap4City must be able to manage restricted traffic zone gates, or environmental sensors for air quality, pollution, rain or public light pillars, must know public buses routes or POIs inside a defined area and so on.<\/p>\n<p>Any entity managed by Snap4City is mapped into a <a href=\"http:\/\/www.disit.org\/drupal\/?q=home&amp;axoid=urn%3Aaxmedis%3A00000%3Aobj%3Aed964c20-d166-48fc-92f6-3b317f347e5e\">smart-city dedicated ontology<\/a>. This ontology and the related knowledge model enables the description of <span id=\"urn:batch-analysis-bcc5a90f-7d02-4e89-8c9c-d62da87d600a\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/smart_city\">smart cities<\/span>. It is not small and can be viewed as consisting of various macro classes or macro categories:<\/p>\n<ul>\n<li>Administration &#8211; PA, Municipality, Province, Region, Resolution,<\/li>\n<li>Street guide &#8211; Road, RoadElement, AdministrativeRoad, Milestone, StreetNumber, RoadLink, Junction, Entry, Node, EntryRule and Maneuver,<\/li>\n<li>Points-of-Interest &#8211; includes all services, activities, which may be useful to the citizen and that may have the need to reach<\/li>\n<li>Local public transport &#8211; Ride, Route, RouteSection, BusStopForeast, Lot, BusStop, RouteLink,<\/li>\n<li>Sensors &#8211; macro-class relative to <span id=\"urn:batch-analysis-72dfeb72-062b-4e83-97ae-e46d3ecf1874\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> coming from sensors, from parking lot status to weather<\/li>\n<li>Temporal &#8211; include concepts related to time (time instants and time intervals) in the ontology, so that you can associate a timeline to the recorded events and can be able to make predictions<\/li>\n<li>Metadata &#8211; set of triples associated with the context of each dataset, useful to ingestion process<\/li>\n<\/ul>\n<p>&nbsp;<br \/>\nAfter ingestion, <span id=\"urn:batch-analysis-2c3c2458-4990-43b9-8c17-0ca2118f23bc\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> flows through several phases in order to have semantically interoperable <span id=\"urn:batch-analysis-55604cde-7117-4370-b465-5ae2391bcb8d\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span>. First is data quality improvement, in order to resolve inconsistencies and incompleteness. Usual problems in this phase are locations and street names, and normalisation of dates, times and numbers.<\/p>\n<p>A subsequent phase is data mapping, where <span id=\"urn:batch-analysis-ad602b18-f06c-422b-b217-88e31c2db41b\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> is transformed to RDF triples (a triple is the atomic data entity in the Resource Description Framework data model and codifies a statement about semantic <span id=\"urn:batch-analysis-4ddebd6e-2110-4564-be41-1d1bfcecb4d3\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> in the form of subject\u2013predicate\u2013object expressions).<br \/>\nMapped <span id=\"urn:batch-analysis-7d88608d-3369-49b1-8062-a1652c367c39\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> in triples have to be uploaded (and indexed) to a RDF Store, where a dataset may be connected with the others if entities refer to the same triples.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-3374\" title=\"Data ingested by Snap4City displayed on Linked Open Graph interface\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/02\/02-screenshot-05.png\" alt=\"\" width=\"700\" height=\"396\"><\/p>\n<p><em>Img 05: <span id=\"urn:batch-analysis-fd672864-4d19-423e-b8e7-f2b7e1771fec\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">Data<\/span> ingested by Snap4City displayed on Linked Open Graph interface<\/em><\/p>\n<p>Applications can access all managed <span id=\"urn:batch-analysis-4a5e83bf-e4de-4017-a382-808ebf89c488\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> using dedicated SPARQL endpoint. Examples of application accessing the info collected by Snap4City are ServiceMap (http:\/\/servicemap.disit.org) for a map based access and Linked Open Graph (http:\/\/log.disit.org) for browsing the <span id=\"urn:batch-analysis-85a268e9-620b-40e4-8cbf-a1bf8a583adb\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> directly from SPARQL\/Linked Data sources.<\/p>\n<h2><strong>Snap4City Hack<\/strong><\/h2>\n<p>Snap4City platforms and solutions are available at <a href=\"https:\/\/www.snap4city.org\">Snap4city.org<\/a> website, where you can register and start exploring its <span id=\"urn:batch-analysis-f31c921b-4c15-4325-9ada-73c987b1a85b\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/feature_machine_learning\">features<\/span>. But if you want <strong>to really challenge your skills and propose your innovative solutions for connected cities, you can join the upcoming Snap4City Hack, the big online hackathon on the topics of <span id=\"urn:batch-analysis-e08eb059-daec-4854-8a8a-c3598ca6baf0\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/smart_city\">Smart City<\/span> and IoT.<\/strong><\/p>\n<blockquote><p><q>Snap4City launched a big online Hackathon on Ecological Watch, Social and Service Evolution, Stimulating Business Growth, City Aware.<\/q><\/p><\/blockquote>\n<p>Using Snap4City tools to manage IoT, Big Data and analytics, the hackathon challenges will cover different themes &#8211;&nbsp;<strong>Ecological Watch, Social and Service Evolution, Stimulating Business Growth, City Aware<\/strong> &#8211; and real <span id=\"urn:batch-analysis-4877a7d7-03c1-432a-831b-042c023c498d\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/data\">data<\/span> from cities such as <strong>Helsinki or Antwerp<\/strong>.<\/p>\n<p>Further information on the Hackathon is available on the on <a href=\"https:\/\/www.snap4city.org\/hackathon\">Snap4City.org\/hackathon<\/a> website.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Imagine you are in the monitoring and control room of your city, where all relevant data coming from sensors, mobile devices, social media streams, IoT devices, vehicles and so on are displayed on multifunctional dashboards. Imagine you can read on those dashboards predictions and user behaviour analysis, which can support your decisions and address your&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\">Read more<\/a><\/p>\n","protected":false},"author":30,"featured_media":229,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_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":"","footnotes":""},"categories":[16],"tags":[],"collections":[],"class_list":{"0":"post-228","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-big-data","8":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform - Codemotion Magazine<\/title>\n<meta name=\"description\" content=\"Codemotion and Facebook organized the Tech Leadership Training boot camp, heres a personal reportage from one of our attendees.\" \/>\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.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform\" \/>\n<meta property=\"og:description\" content=\"Codemotion and Facebook organized the Tech Leadership Training boot camp, heres a personal reportage from one of our attendees.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-03-14T08:54:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-01-31T10:26:58+00:00\" \/>\n<meta name=\"author\" content=\"Luca Ferretti\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Luca Ferretti\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\"},\"author\":{\"name\":\"Luca Ferretti\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/00344cc4e23bb0758378ab701b57f1a1\"},\"headline\":\"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform\",\"datePublished\":\"2019-03-14T08:54:17+00:00\",\"dateModified\":\"2020-01-31T10:26:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\"},\"wordCount\":1372,\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg\",\"articleSection\":[\"Big Data\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\",\"name\":\"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg\",\"datePublished\":\"2019-03-14T08:54:17+00:00\",\"dateModified\":\"2020-01-31T10:26:58+00:00\",\"description\":\"Codemotion and Facebook organized the Tech Leadership Training boot camp, heres a personal reportage from one of our attendees.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg\",\"width\":1200,\"height\":400},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AI\/ML\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Big Data\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Codemotion.Italy\/\",\"https:\/\/x.com\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/00344cc4e23bb0758378ab701b57f1a1\",\"name\":\"Luca Ferretti\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a7c16ad1483e63c6ae25d1370bfab6252a285d959ed68a5e385f98e66f0b420a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a7c16ad1483e63c6ae25d1370bfab6252a285d959ed68a5e385f98e66f0b420a?s=96&d=mm&r=g\",\"caption\":\"Luca Ferretti\"},\"description\":\"Affezionato al caro vecchio C, passato non troppo recentemente alle pi\u00c3\u00b9 arzigogolate frontiere del Web, Luca Ferretti ha da poco scelto il suo motto su Twitter: I break stuff, I build relationships. \u00c3\u02c6 cos\u00c3\u00ac, tra una ispezione del DOM e una apparizione nella stanza accanto per discutere con il team del frontend di un pixel messo storto, tra una traduzione di Ubuntu e un rebuild dei sorgenti di GNOME (rigorosamente di notte), che trascorre le sue giornate nell'incessante ricerca della perfezione ;-)\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/author\/luca-ferretti\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform - Codemotion Magazine","description":"Codemotion and Facebook organized the Tech Leadership Training boot camp, heres a personal reportage from one of our attendees.","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.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/","og_locale":"en_US","og_type":"article","og_title":"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform","og_description":"Codemotion and Facebook organized the Tech Leadership Training boot camp, heres a personal reportage from one of our attendees.","og_url":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2019-03-14T08:54:17+00:00","article_modified_time":"2020-01-31T10:26:58+00:00","author":"Luca Ferretti","twitter_card":"summary_large_image","twitter_image":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Luca Ferretti","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/"},"author":{"name":"Luca Ferretti","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/00344cc4e23bb0758378ab701b57f1a1"},"headline":"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform","datePublished":"2019-03-14T08:54:17+00:00","dateModified":"2020-01-31T10:26:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/"},"wordCount":1372,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg","articleSection":["Big Data"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/","url":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/","name":"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg","datePublished":"2019-03-14T08:54:17+00:00","dateModified":"2020-01-31T10:26:58+00:00","description":"Codemotion and Facebook organized the Tech Leadership Training boot camp, heres a personal reportage from one of our attendees.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg","width":1200,"height":400},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/data-gathering-and-knowledge-management-for-smart-cities-in-snap4city-platform\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"AI\/ML","item":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/"},{"@type":"ListItem","position":3,"name":"Big Data","item":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/big-data\/"},{"@type":"ListItem","position":4,"name":"Data Gathering and Knowledge Management for Smart Cities in Snap4City Platform"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/00344cc4e23bb0758378ab701b57f1a1","name":"Luca Ferretti","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a7c16ad1483e63c6ae25d1370bfab6252a285d959ed68a5e385f98e66f0b420a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a7c16ad1483e63c6ae25d1370bfab6252a285d959ed68a5e385f98e66f0b420a?s=96&d=mm&r=g","caption":"Luca Ferretti"},"description":"Affezionato al caro vecchio C, passato non troppo recentemente alle pi\u00c3\u00b9 arzigogolate frontiere del Web, Luca Ferretti ha da poco scelto il suo motto su Twitter: I break stuff, I build relationships. \u00c3\u02c6 cos\u00c3\u00ac, tra una ispezione del DOM e una apparizione nella stanza accanto per discutere con il team del frontend di un pixel messo storto, tra una traduzione di Ubuntu e un rebuild dei sorgenti di GNOME (rigorosamente di notte), che trascorre le sue giornate nell'incessante ricerca della perfezione ;-)","url":"https:\/\/www.codemotion.com\/magazine\/author\/luca-ferretti\/"}]}},"featured_image_src":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-600x400.jpg","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-600x400.jpg","author_info":{"display_name":"Luca Ferretti","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/luca-ferretti\/"},"uagb_featured_image_src":{"full":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg",1200,400,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-150x150.jpg",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-300x100.jpg",300,100,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-768x256.jpg",768,256,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-1024x341.jpg",1024,341,true],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg",1200,400,false],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg",1200,400,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920.jpg",100,33,false],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-180x128.jpg",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-896x400.jpg",896,400,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-400x225.jpg",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-600x400.jpg",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/03\/smart-home-3988583_1920-600x400.jpg",600,400,true]},"uagb_author_info":{"display_name":"Luca Ferretti","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/luca-ferretti\/"},"uagb_comment_info":0,"uagb_excerpt":"Imagine you are in the monitoring and control room of your city, where all relevant data coming from sensors, mobile devices, social media streams, IoT devices, vehicles and so on are displayed on multifunctional dashboards. Imagine you can read on those dashboards predictions and user behaviour analysis, which can support your decisions and address your&#8230;&hellip;","lang":"en","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/228","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/30"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=228"}],"version-history":[{"count":3,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/228\/revisions"}],"predecessor-version":[{"id":3123,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/228\/revisions\/3123"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/229"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=228"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=228"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=228"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=228"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}