Closed Cupham closed 5 years ago
thank you for the contribution! Is there any particular issue why device type number 108 could not be included?
This implementation seems solid, some further tests need to be cleared. I'm sure @Alfiva will accept this once he reviews it.
As this ontology models device, and there is also the device ontology, we need to create a mapping ontology, and figure out how to sort these kind of ontologies in the repo; my guess is that they should be independent ontologies.
Thank for your reply. The 108th device called DR Controller (Demand Response Controller) is an abstract device which is not so popular and very hard to implement. Please check the readme.md file in the repository.
I am not so sure what to do next but I followed the lighting ontology to create this. If you need me to do anything else, please let me know.
Best Regards, PHAM, Van Cu
The ontology seems correctly built, but, as @amedranogil pointed out, there are certain duplications or concflicts with already existing ontologies. Here I summarize some of the ones I found:
Then there is the other topic metnioned before about not extending from ont.device. The core of ont.device is the concept of ValueDevice, that is, a sensor or controller that has a single centric hasValue property. Most, if not all, of the resources in echonet ontology have multiple important properties, so in theory it would be OK to not extend from ValueDevice and instead extend from Device in general.
However in many cases they could be narrowed down to a most important measured value, plus a host of additional properties. For example: The echonet resource GasSensor could simply be an extension of ont.device's own GasSensor, using its main hasValue property as the PROPERTY_HAS_GAS_DETECTION_STATUS property in echonet, and adding the other extra properties THRESHOLD_LEVEL and MEASURED_VALUE_OF_GAS_CONCENTRATION.
Including the ontolgoy could then lead to some duplicated resources, and we would need to do some ontology mapping to solve those conflicts. We haven't done that kind of mapping yet, so that would have to wait. So yes, we could include this ontology, but with all the disclaimers and warining pointing out that it should not yet be used by the general public unless they know what they are doing, I think.
I don't know, I leave that up to discussion.
P.S: If I get nitpicky I'd also say there is no need to end every package name with ...RelatedDevices
Hello @Alfiva !
Sorry for being late for the discussion. First of all, thank you very much for spending your time to read my implementation.
The echonet ontology is a part of an effort to support for ECHONET specification in the universAAL ecosystem. According to the specification (https://echonet.jp/wp/wp-content/uploads/pdf/General/Standard/Release/Release_J_en/Appendix_Release_J_e.pdf), the current specification supports up-to 108 type of different devices with very detail properties and property restrictions (enum, value range, etc.). The current ont.device is not able to reflect the specification (please if you have time, just look at the echonet specification) so I think it is really necessary to have this ontology.
The purpose of this work is to save other developers time from reading the specification if they want to integrate with ECHONET Lite devices (mostly from Japan) into the univerAAL ecosystem. Please refer to this paper https://ieeexplore.ieee.org/document/8326218
P/S1: About the 'RelatedDevice' naming, it is written in the specification so I just keep it, however, it can be adjusted of course.
Best Regards, Pham Van Cu
OK, as I said, we can include the ont provided all disclaimers are properly displayed (we can do that in the wiki and/or perhaps a README). Then for me it's OK. I don't know what others have to say. The only pending thing is to see why the check is failing but I can't seem to be able to read why. Any idea anyone else? Regarding "RelatedDevice", if it's part of the specs then I guess it's OK.
I will handle the checking and let you know soon.
Thank you very much!
Hello @Alfiva ,
This is Pham. I replaced some enum type into Float, Integer and String types to simpler the converting forward/backward (from echonet frame into enum <=> enum into echonet frame). I committed the source code again, however, Travis check is failing again. I read the ci.sh file and I do not know whether this sentence if [ "$TRAVIS_REPO_SLUG" != "universAAL/$MY_REPO" ] || [ "$TRAVIS_PULL_REQUEST" != "false" ] || [ "$TRAVIS_BRANCH" != "master" ]; then exit 1 fi caused the error or not? I want to merge the ECHONET ontology into the uAAL platform github so that other developers from Europe (University of Genova, University of Orebo) can use it without the manually installation.
Thank you for your time!
Best Regards, Pham Van Cu
Hello @Cupham and thanks for the effort. I am not sure about the error either, but others who are more familiar with it might. Unfortunately this is a busy week and it may take a few days to review so please hold on to that.
Hello @Alfiva , This is Pham again. Sorry to ask again but how about the review of the proposed ontology?
Thank You
Pham
It's OK for me, as I said before I was expecting someone else could look into the failed check, because I don't know why that happens.
@Alfiva I am sorry, but I will not be able to do this review. Currently I am working on other (VERY cool) developments for universAAL :smiley:
The ontology code is "reviewed" and can be merged, the only pending thing is this problem with the CI. Who can look into this? @cstockloew ?
Hello @Alfiva, @amedranogil,@cstockloew !
After reading the CI configuration file, I think that it does not allow the pull request. The condition _if [ "$TRAVIS_REPO_SLUG" != "universAAL/$MY_REPO" ] || [ "$TRAVIS_PULL_REQUEST" != "false" ] || [ "$TRAVISBRANCH" != "master" ]; then exit 1 fi [ "$TRAVIS_PULL_REQUEST" != "false" ] means a pull request
it will exit with 1 (error) for every pull request. Could you please adjust the condition?
Best Regards, Pham
I just merged the pull request now, we have kept it stalled for quite long already. If the CI config fails for pull requests, it will work now that it's in master. If it doesn't we can always backtrack.
Hello @Alfiva ,
I believe that it passed the test. Thank you very much for your time. In the near future, I would like to merge it with the Saref ontology for better interoperability. Best Regard, Pham
Hello, I've been working with SAREF and I recommend the integration with UniversAAL platform. In particular, I created an extension for electrocardiogram (coined SAREF4health) - which shall be used in the current ETSI STF for e-Health and aging well - and it may be interesting for you. Emphasis was given to represent time series. The ontology is here: https://github.com/jonimoreira/INTER-IoT-EWS/blob/master/WP1-Ontology%20translations%20and%20rules/src/Ontologies/SAREF/saref4health.ttl
The paper is here: http://ebooks.iospress.nl/volumearticle/50262
Let me know if you are interested in integrating SAREF4health in UniversAAL, I can help. I have ECG wearables (Shimmer3) and the MyDriving mobile app (MS Azure IoT use case) is changed to send data to a context broker (as JSON-LD). The solution was successfully tested within the INTER-IoT project. Best regards, Joao
The ECHONET ontology covers 107/108 types of device specified in the ECHONET Specification (Release J 2017)
Signed-off-by: cupham cupham@wl204148.jaist.ac.jp