ICM – Computer Science Major – Course unit on Interoperability of Data and Semantics and M1 Cyber Physical and Social Systems – Course unit on System Modeling
Institut Henri Fayol - MINES Saint-Étienne
|
Warning
|
This is the 2024 edition. Wait for input. |
Objectives and deliverable
You will gain experience through this practical work, where you need to demonstrate your know-how based on screenshots, documents, and programs.
The deadline for this practical work is 2026-01-14
|
Note
|
submit your work as LASTNAME.zip to https://ecampus.emse.fr/mod/assign/view.php?id=34361 (expiration date/time: 2026-01-15 01:00 )
|
The zip should contain one directory per section below. Each directory must contain screenshots, documents, or the sources of a program, that together demonstrate you acquired each know-how listed in the corresponding section.
|
Note
|
For this practical work it’s ok to use LLMs. Just make sure the output does what I ask ! |
Example: Sources of a program
If a Section 01 - xyz mentions:
Write a python script to…
Your deliverable MUST contain a folder (named for ex. 01) with the sources of a simple script to do what is asked.
|
Tip
|
You SHOULD use any relevant existing libraries for addressing the problems, and use generative AI techniques if appropriate. |
|
Warning
|
Not a word document. Not a pdf document. Not a screenshot. No temporary files such as libraries or .venv folders.
|
Example: Videos or screenshots
If a Section 01 - xyz mentions:
Show me you can …
Your deliverable MUST contain a folder (named for ex. 01) with the a video or a sequence of screenshots that demonstrate you know how to do what is asked.
|
Warning
|
Not a word document. Not a pdf document. |
Example: Documents
If a Section 01 - xyz mentions:
Write a document that …
Your deliverable MUST contain a folder (named for ex. 01) with the sources of the document (valid, with the right extension, etc).
|
Warning
|
Not a word document. Not a pdf document. Not a screenshot. |
01 - Multimedia files
You should have made some videos and screenshots from the TFSD practical work.
Write a bash script that, given a directory, will:
-
find all the videos and compress them somehow using the
ffmpegCLI tool -
find all the images and ensure they are in
pngwith width 600 px using theImageMagickCLI tool
Put the sources of the script in the report, and a (compressed) video that demonstrates its use.
02 - ENTSO-E
ENTSO-E, the European Network of Transmission System Operators, represents 40 electricity transmission system operators (TSOs) from 36 countries across Europe, thus extending beyond EU borders. ENTSO-E was established and given legal mandates by the EU’s Third Package for the Internal energy market in 2009, which aims at further liberalising the gas and electricity markets in the EU.
ENTSO-E’s Central Information Transparency Platform provides free access to fundamental data and information on pan-European wholesale energy generation, transmission, and consumption.
Documents are typically available as XML, with the schema defined at https://gitlab.entsoe.eu/transparency . In particular, file urn-entsoe-eu-wgedi-codelists.xsd will be of interest to this exercise (a pdf version of the content available in this file is available here)
The Energy Identification Coding (EIC) scheme is managed and maintained by ENTSO-E for the harmonisation and implementation of standardised electronic data interchanges, to facilitate cross-border exchanges and to efficiently and reliably identify different objects and parties relating to the Internal Energy Market (IEM) and its operations. Allocated international EIC Codes can be downloaded as XML here. Access to the EIC codes issued by Local Issuing Offices (LIO) can be found on the EIC LIO websites.
The description of an outage is described in the document iec62325-451-6-outage_v4_0.xsd, and folder transparency/xml-examples/Outages contains several examples of xml documents reporting outages.
-
Show me you can validate your XML documents online.
-
Show me you can prettify your XML documents online.
-
Show me you use a text editor with syntax highlighting for XML
-
Show me you can validate a XML document in your text editor
-
Show me you can prettify (format) a XML document in your text editor
-
Show me you can validate a XML document against a XML schema
-
Show me you can run a XPath query
-
Show me you can generate a set of classes for your preferred programming language (python, java, c++, …) from a XML Schema document
-
Show me you can unmarshall an example document into instances of your objects
-
Write a script to parse an XML document reporting an outage, and query it to print a human-readable report of it.
03 - schema.org description
Write a JSON-LD document using the schema.org vocabulary (< 50 lines) that describes the general information about product https://www.senetic.fr/product/LS100-WL-868M
|
Tip
|
Some information is embedded in the source of the html file (with itemscope and itemtype attributes), it’s ok if you find a way to extract and use them.
|
-
Show you can validate your JSON-LD markup on the JSON-LD playground.
-
Show you can validate your document on the Schema Markup Validator.
04 - Open Data portals
Open data portals often expose some API for programmatic access. For example:
-
One can query the French open data catalog https://data.gouv.fr/ using the API https://www.data.gouv.fr/api/1/ , which is quite well documented.
-
data.gov.uk API uses the CKAN API and its extensions. The documentation is available here: https://guidance.data.gov.uk/get_data/api_documentation/
Your goal is to report on the recommended/enforced/used metadata/formats/schemas for some type of data in some open data portal.
|
Tip
|
you may limit the analysis to 10-15 datasets only. |
A few examples:
-
street lighting in the US https://catalog.data.gov/dataset/?q=street+light
-
electric vehicle charging stations in FR https://www.data.gouv.fr/fr/datasets/?q=stations+recharge
-
cycling routes in DE https://www.govdata.de/suche?q=Radweg