Markdown Version | Session Recording
Session Date/Time: 14 May 2025 12:00
ASDF
Summary
The fourth interim meeting of the ASDF Working Group focused primarily on significant updates to the NIPY draft, specifically versions 04 and 05. Bart van Leeuwen presented the changes, which included full leveraging of SDF, simplified APIs, protocol mapping, and new API extensions. Extensive discussion followed, with detailed feedback on the SDF registration API, DELETE operation implications, and error code handling. The working group also discussed candidate drafts for adoption, noting the need for broader review and planned hackathon activities at IETF 123 in Madrid to progress implementation and testing. A virtual interim meeting was scheduled for June 18th.
Key Discussion Points
- Meeting Logistics: Chairs Lorenzo Bigagli and Michael Richardson welcomed participants. Michael Richardson served as scribe. The Note Well was reviewed.
- Working Group Status Update: ASDF was restarted in June 2024. Progress since the last interim (April 2025) includes new versions of
draft-ietf-asdf-nipy-04and-05, as well as updates for instance information and compact notation drafts. - NIPY Updates (Bart van Leeuwen):
- Draft-ietf-asdf-nipy-04 and -05 Released: Draft-04 contained most major changes, with Draft-05 providing fine-tuning based on implementation feedback. Comments are requested via mailing list or GitHub issues.
- Core Architectural Changes:
- Full leveraging of SDF to register interaction models for IoT devices, simplifying APIs. NIPY operations are now REST operations on SDF affordances.
- Introduction of
protocolMapkeyword within SDF affordances for mapping to protocol-specific implementations (e.g., SDF propertyheartRateto a BLE characteristic). - A new architecture section was added to the draft.
- API Refinements:
- SDF registration APIs now register a model generally, rather than against specific device or group IDs. This removes the ID from the registration API, addressing previous feedback.
- The
valuefield in actions is now optional. - Failure responses and error codes have been redesigned.
- Support for API extensions (e.g., bulk, firmware download, conditional read) was introduced, allowing for compound APIs.
- Eventing encoding is now CBOR-based (previously Protobuf).
- Batching has been included in the CDDL definition.
- Extensive examples and new appendices (OpenAPI model, protocol mapping, extensions, SDF models with protocol mapping) have been added.
- Request ID was moved from the body to the header for responses.
- Draft-ietf-asdf-nipy-05 Specifics:
- Schema definitions were consolidated into a dedicated section.
- Addressing a corner case with MQTT topics,
dataAppIDwas added to the default topic, and custom topic names can now be defined. - For potentially extensive extension APIs (like firmware upgrade), asynchronous responses were introduced, allowing clients to poll or define callbacks for completion.
- Conditional read APIs were updated, and more error codes were added.
- Upcoming Work: Draft-06 will include a manifest in SKIM (for tying SDF models to device versions/firmware) and an IANA registration section. Broader review of the draft is now requested.
- Discussion on NIPY Updates:
- MQTT and CBOR: Michael Richardson confirmed that CBOR over MQTT is performant and sends binary data directly. NIPY also supports webhooks and websockets.
- SDF Registration API Details:
SDFrefparameter: Ari and Carsten suggested renaming the path parameter fromSDFreftoSDFnameto better reflect it refers to the SDF global definition name, with the value being percent-encoded in the URL. Bart agreed to consider this change.- Return Values: Discussion on whether the registration API should return just the
SDFnamestring or a JSON object wrapping it. While a JSON object allows for future extensibility, Carsten suggested direct string return if no immediate extensions are foreseen. The possibility of posting/returning multiple SDF definitions was also raised. DELETEOperation: Ari questioned typical use cases for deleting an SDF model. While potentially useful for development or deleting entire classes of faulty devices, concerns were raised about implications if the model is still in use by registered devices. It was suggested to consider if such a deletion should error, force deletion, or allow a graceful transition. Bart will consider this.- Error Codes: Ari questioned the need for NIPY-specific granular error codes in the payload in addition to HTTP status codes. Carsten suggested leveraging the
problem-detailsRFC (RFC 7807) for standardized error reporting.
- IETF 123 Hackathon Plans (Madrid):
- Bart confirmed interest in bringing NIPY gateway implementation (or using a cloud-based one with a local AP for BTLE) to the hackathon.
- Michael Richardson will post a message to hackathon mailing lists to solicit collaborators and devices (e.g., BTLE).
- Ari and Carsten expressed enthusiasm for participating in the NIPY hackathon.
- Working Group Candidate Drafts for Adoption:
- General Concern: Michael Richardson highlighted the challenge of getting sufficient non-author review for candidate drafts due to the working group's small size.
draft-ietf-asdf-digital-twin-architecture-and-affordances: Ken suggested looking at how this document interacts with other drafts (e.g., mapping concepts in NIPY). Yungyong stated that she and Dr. Hong would submit updated contributions for the July meeting and requested additional editors. Michael Richardson offered to assist as an editor and plan hackathon time in Madrid with Hzang Lee (who plans to attend).draft-ietf-asdf-sdf-compact-notation: Ken emphasized the need for implementation and testing with various SDF models at the hackathon to determine its practical usefulness beyond a "gimmick."
- Next Virtual Interim Meeting:
- There was a general sense of agreement among participants that another virtual interim would be beneficial given the current traction.
- June 18th (same time slot) was proposed and accepted by those present.
- Ari announced a related Thinking Research Group interim on June 19th focused on data modeling topics, including SDF live with M2M Matter bridging, which would be relevant to the ASDF WG.
Decisions and Action Items
- Decision: The next virtual interim meeting for the ASDF Working Group is scheduled for June 18th, at the same time slot as today's meeting.
- Action Item: Michael Richardson to post a message to the IETF hackathon mailing lists to recruit collaborators and solicit devices (e.g., BTLE) for NIPY implementation testing at IETF 123.
- Action Item: Bart van Leeuwen to consider feedback on the NIPY draft, including:
- Renaming
SDFreftoSDFnamein the API path. - The structure of the SDF registration API return value (direct string vs. JSON object).
- Implications and error handling for
DELETEoperations when models are still in use. - Granularity of NIPY-specific error codes and the potential use of RFC 7807 (problem-details).
- Renaming
- Action Item: Ari Keränen (in coordination with Lorenzo Bigagli) to create GitHub issues for the detailed comments and feedback raised during the NIPY discussion.
- Action Item: Yungyong Oh and Dr. Hong to submit updated contributions for
draft-ietf-asdf-digital-twin-architecture-and-affordancesfor the July meeting. - Action Item: Michael Richardson to coordinate with Yungyong Oh and Hzang Lee on editing
draft-ietf-asdf-digital-twin-architecture-and-affordances, including planning hackathon time at IETF 123. - Action Item: Lorenzo Bigagli to schedule the virtual interim meeting for June 18th.
Next Steps
- NIPY Draft Review: Working group members are encouraged to provide broader review of
draft-ietf-asdf-nipy-05and submit feedback as GitHub issues or mailing list comments. - NIPY Development: Bart van Leeuwen and co-authors will prepare
draft-ietf-asdf-nipy-06, incorporating planned additions like the manifest in SKIM and an IANA registration section. - SDF Compact Notation: Explore implementation and testing of
draft-ietf-asdf-sdf-compact-notationat the IETF 123 hackathon. - Digital Twin Architecture: Await updated contributions for
draft-ietf-asdf-digital-twin-architecture-and-affordancesand proceed with editing. - IETF 123 Hackathon (Madrid): Dedicated time will be spent on NIPY implementation, SDF Compact Notation testing, and Digital Twin Architecture editing.
- Virtual Interim Meeting: The next virtual interim is scheduled for June 18th to continue discussions on draft progression and feedback.
- Thinking Research Group Interim: Participants are encouraged to attend the Thinking Research Group interim on June 19th, which will cover related data modeling topics, including SDF live with M2M Matter bridging.