Giter VIP home page Giter VIP logo

Comments (10)

chrbertsch avatar chrbertsch commented on July 22, 2024 1

The expiration date should be stored in the model internally, so that we can return fmi2status = fmi2warning when calling fmi2SetupExperiment from an expired FMU

Couldn't you do this already now? The FMU could inquire the system time and return fmi2status = fmi2warning if it considers itself obsolete. Explanations of this behavior can be stored in the FMUs documentation.

What would be the benefit of standardizing an obsolete attribute?

from fmi-standard.

pmai avatar pmai commented on July 22, 2024 1

As a side note, there are efforts underway in the SmartSE project, and other places, to standardize a set of model meta data (using the SRMD format from SSP Traceability, or alternatively other formats). Embedding this kind of meta data into an FMU is one of the approaches of using it. I think that additional information like release status, obsoleteness, etc. should be handled in these kinds of standards, and not the core FMI standard.

from fmi-standard.

hyumo avatar hyumo commented on July 22, 2024

I understand we have interface definition stuff like protobuf or SSP, but it involves more communication sometimes.

from fmi-standard.

andreas-junghanns avatar andreas-junghanns commented on July 22, 2024

It is found that variable names (especially IOs and parameters) are very difficult to modify once we distribute the first functioning version of an FMU to the users. Updating IOs usually involves a lot of communication and meetings with different teams and users in a large organization or across different suppliers. I am sure it is a pain point for a lot of FMU users. It would be great if we can solve this in future fmi standards.

Maybe like the proposal in #1817?

from fmi-standard.

hyumo avatar hyumo commented on July 22, 2024

Yeah, I think the proposal should be able to fix the issue. However, personally speaking, I think a dynamic FMU might be an overkill, and sometimes people want to be able to unzip the fmu and browse through the modelDescription.xml to understand what's actually inside the model.

Or maybe add attributes like an expirationDate or maintenancePeriod to the fmu itself would be great too, we can have LTS (long term support) FMUs and we can have experimental FMUs. Just like food, it is the buyers' (fmu importers) opinion if consuming expired food (fmu) is healthy or not.

from fmi-standard.

hyumo avatar hyumo commented on July 22, 2024

The expiration date should be stored in the model internally, so that we can return fmi2status = fmi2warning when calling fmi2SetupExperiment from an expired FMU

from fmi-standard.

TorstenBlochwitz avatar TorstenBlochwitz commented on July 22, 2024

@hyumo : Could you please explain the use-case and the semantics of the proposed "obsolete" attribute for variables? To be honest, I don't really understand the intention.

from fmi-standard.

hyumo avatar hyumo commented on July 22, 2024

The expiration date should be stored in the model internally, so that we can return fmi2status = fmi2warning when calling fmi2SetupExperiment from an expired FMU

Couldn't you do this already now? The FMU could inquire the system time and return fmi2status = fmi2warning if it considers itself obsolete. Explanations of this behavior can be stored in the FMUs documentation.

What would be the benefit of standardizing an obsolete attribute?

Sorry, I was jumping roles between an importer and an exporter, and this idea is for sure not very ripe. I want to tell the user story a bit more in detail below.

As a user/importer, I might want to get a fmi2warning if the FMU is expired, and I also want to know the reason for the warning. It could be logged to the console if logging is enabled. However, as a user I don't want to get this warning as a surprise, it would be great if the FMU expiration information is stored in the modelDescription.xml so that a good import tool can choose to warn e.g. 1 month ahead of the expiration date. Just like Dymola, it warns its user that the license expires in 1 month in the graphics viewer, it is annoying, but its existence is to annoy people

As an FMU exporter, yes, I can definitely embed this time bomb information into an FMU, but this information is only stored internally in the FMU binary, it might surprise my user if they don't have too much knowledge about the FMU suddenly become "broken" (user yelling: why the FMU was returning fmi2success for the last 10 months, but now it always returns fmi2warning).

from fmi-standard.

chrbertsch avatar chrbertsch commented on July 22, 2024

I propose to use existing mechanisms like fmi2warning in combination with a information provided in the FMUs documentation, or use addetional meta-information e.g. from the SSP Tracebility information for your purpose, and not extend the FMI standard with this information.

from fmi-standard.

chrbertsch avatar chrbertsch commented on July 22, 2024

FMI design meeting:

Pierre: meta-data should handled by SSP traceability or other layered standards.
Attribute per variable: This would be a separate issue.
Expiration can be handled inside the binary and documented in the FMU documentation.

from fmi-standard.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.