Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reach Out To Other Open Standards #10

Open
shaggygi opened this issue May 5, 2019 · 25 comments
Open

Reach Out To Other Open Standards #10

shaggygi opened this issue May 5, 2019 · 25 comments

Comments

@shaggygi
Copy link
Contributor

shaggygi commented May 5, 2019

This new data modeling language is interesting and I can see potential. However, I have to wonder would it be better to reach out to other open standards groups instead of reinventing the wheel. I'm sure there are many in the wild, but I sort of like the following example.

There is a BACnet (Building Automation and Control Networks) abstract model now released/published as Annex Y. Here is a link to early draft.

Understanding this is within the umbrella of BACnet (which has to do much about IoT), but you can actually use the model to describe almost anything (not just specific to BACnet) including devices, objects, people, buildings, protocols, etc.. In addition, the specification generally explains the modeling language and includes examples of how to format in XML and JSON.

Just curious. Keep up the good work and I look forward to future releases.

@briancr-ms
Copy link
Member

Thanks for your comments about other standards. You gave BACnet as an example. Which modeling standards do you currently use and which ones would be most important to you to see supported?

@shaggygi
Copy link
Contributor Author

shaggygi commented May 6, 2019

Thanks for the reply.

I have not really used a modeling standard, at least in any meaningful way. If I did, I would seriously consider advocating the BACnet abstract model. And as mentioned, even though that is under the BACnet spec, it is outlined in a way that could model various topics and not just a protocol. You can see a Java concept implementation here.

There is also another tagging standards (and is also related to building automation) called Project Haystack.

@shaggygi
Copy link
Contributor Author

shaggygi commented May 7, 2019

I'm going to try and dust off my notes and create an example comparing it to one of the devices in the current catalog. Give me a few days.

@gizmochief7
Copy link

While I do agree that other open standards should be brought into the mix. I don't necessarily think Microsoft is reinventing the wheel any more than those open standards are reinventing the idea of UPnP.

If I was to suggest other standards that I currently use, I would love to see full integration with OpenAPI 3.0 aka Swagger. The primary reason for this is the vast ecosystem it has and abundance of tooling that exist that can autogenerate both server and client code in many of the most popular languages with only the OpenAPI.json specification file as input. This reenforces the "API first" mentality. Another powerful feature of OpenAPI ecosystem is the Swagger-UI which can generate an API specification webpage to visually and intuitively introduce your API to other developers.

Other non API standards but large IoT open source projects I'd love to see this integration with would be Home Assistant platform and Tasmota

Joking side note: Microsoft should just buy Espressif for the ESP32, just saying

@shaggygi
Copy link
Contributor Author

Side note... would it be possible to use this format with gRPC?

@ChrisGMsft
Copy link
Contributor

We would appreciate more input from others in the community regarding alignment with existing standards. We'll have a more formal process for this, but in the meantime we'd encourage others to add their vote. Thanks!

@imrankhan1984
Copy link

I agree with the open standards. Also why not look into standard ontology works like Smart Appliance REFerence (SAREF) ontology from Etsi.org and Semantic Sensor Network (SSN) from W3C and reuse well-defined concepts.

@imrankhan1984
Copy link

A good place to start is Web of Things (WoT) Thing Description. They support inclusion of external vocabularies like SAREF, IoT-Schema.org and SSN into their description model.

@briancr-ms
Copy link
Member

Thanks for all the comments and ideas on this thread! We have been looking at these (and other) vocabularies and want to enable them to be used with IoT plug & play. Please keep the feedback on this thread coming--we want to hear what vocabularies you're interested in and any other standards you're interested in.

@shaggygi
Copy link
Contributor Author

@briancr-ms Thanks for the update. If possible, it would be nice to see some type of roadmap or current thinking... even if it isn't detailed and not completely understood where this project is headed.

As mentioned before, I'm interested in this space. However, coming from my perspective being an outsider, it is a little worrisome to invest based on the little repo traffic since the announcement.

Are there any updates to DTDL, early APIs to tinker with, possible dev boards/files and samples to evaluate, etc.?

Being involved with the .NET IoT project, I can see where we could benefit from this, but not sure if the timing is right yet.

Thanks again.

@ChrisGMsft
Copy link
Contributor

@shaggygi we do have a preview coming, at which point you'll be able to evaluate the APIs and samples. Stay tuned!

@shaggygi
Copy link
Contributor Author

shaggygi commented Jun 10, 2019

Another area to see how it could fit is the Open Data Initiative and Common Data Model that Microsoft is driving.

While I briefly looked at CDM, it seems like you could make standard entities for the telemetry, interfaces, commands and such based on the CDM standard instead. That way the data could be used with the same tooling, APIs, apps, services and systems that already work with CDM.

@psereiko
Copy link

psereiko commented Aug 6, 2019

The process automation industry has used a standard called EDDL for many many years. Here's a link https://www.amazon.de/EDDL-Electronic-Device-Description-Language/dp/3835632434
EDDL is also a IEC standard IEC 61804-3.

@shaunco
Copy link

shaunco commented Sep 25, 2019

Just to add to the mix, with Microsoft being a platinum member of the Open Connectivity Foundation, it would also make sense to use oneIoTa resource models instead of creating an entirely new set of device data models.
https://oneiota.org

@eoursel
Copy link

eoursel commented Nov 20, 2019

I would raise the same question about OPC UA (IEC62541) Information Models especially devices models based on IEC62541-100. Is someone is working to map the OPC UA Metamodel to DTDL? Any progress on the subject?

Regards,

@mrentsch65
Copy link

In this context I would like to point to AutomationML, they provide the most mature ecosystem:
https://www.automationml.org/o.red.c/dateien.html

@Manu3756
Copy link

Also the Asset Administration Shell by Plattform Industrie 4.0 should be mentioned here.

@kolotu
Copy link

kolotu commented May 28, 2020

I would also suggest to add the semantic IoT modelling project Eclipse Vorto here. The concept is very similar - the official repository for Vorto models provides some tooling around the models.

@OR13
Copy link

OR13 commented Jul 26, 2020

@juusoautiosalo
Copy link

A recent article "Digital Twin and Internet of Things—Current Standards Landscape" might provide useful information for this issue.

Table 1 in Section "4. Summary" gives a quick comparison overview on these standards:

@briancr-ms
Copy link
Member

Thanks for the pointer to this article. It's a good look at the landscape and includes many of the standards we have been looking at and working with.

@ahernandez-allegion
Copy link

See other related issues:

#20
#43

@psereiko
Copy link

FieldComm Group has recently released the Process Automation - Device Information Model (PA-DIM) specification based on OPC UA information modeling. You can review the spec here:
https://library.fieldcommgroup.org/10098/TS10098/1.0/#page=1

@oising
Copy link

oising commented Jan 23, 2021

Hah. The comments on this thread are all you need to know about how easy it is for people to agree on a standard.

@shaggygi
Copy link
Contributor Author

Yup, sad i even created the issue. Muting now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests