Meeting № 33 Summary #64
devhelpr
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Meeting № 33 Summary
full transcription
recording
Page Node Extension
The group discussed the addition of a page node extension in the spec, which includes optional properties like page number (starting at one following ISO standards) and a page label (distinct from a title). This extension allows pages to function as nodes in the canvas, supporting positioning and grouping relationships. Clarifications were made regarding the use of labels versus titles in UI contexts.
Transclusion Motivation and Concept
Transclusion was introduced as a way to allow a node (B) to be used as a resource in another node (A), effectively supporting multiple appearances of complex node hierarchies on the canvas. The concept is motivated by real-world use cases (e.g., knowledge management apps like Notion) where duplicated content needs to stay synchronized across different locations.
Transclusion Semantics and Implementation Details
The discussion covered how transclusion merges node properties, with node A’s properties overriding node B’s on a resulting "merged" node A'. They also discussed the necessity to replicate child nodes of transcluded nodes to maintain unique identities and positions on the canvas, making transclusion more complex than simple parent-child merging.
Resource and ID Naming Conventions
They evaluated resource addressing within the spec, where nodes are implicitly available as resources using their IDs prefixed with a pound sign (#). The participants recommended explicitly disallowing certain characters in IDs, especially prohibiting IDs that start with a hash mark to avoid conflicts and ambiguity.
MIME Type for Nodes
The group discussed that a standalone node (as a fragment) is not a valid OKF file and debated introducing a new MIME type such as
application/okf-node+jsonto distinguish node data from full OKF files to support tooling and validation.Comparison Between Transclusion and File Inclusion
They compared transclusion (node-based inclusion) with the alternative of importing separate OKF files. It was noted that while both are similar in semantics, transclusion might be preferred for simplifying authoring in single files, whereas file inclusion allows sharing across multiple OKF files. The discussion also included whether both approaches are necessary or if one should be preferred.
Handling of Relations in Transclusion
The group acknowledged the open question of how to handle relations tied to transcluded nodes, especially when nodes get duplicated. They considered implications of sets and relations when nodes are replicated through transclusion.
Groups and Transclusion
They debated whether groups (which are relations rather than nodes) can or should be transcluded. The consensus was currently to restrict transclusion to nodes and their parent-child hierarchies, excluding groups, to avoid complexity.
Potential Export and Fallback Mechanisms
The working group highlighted that if canvases or applications do not support transclusion, then converting transcluded nodes into duplicates upon export is an acceptable fallback, allowing graceful degradation of features.
Action Items
#characters.application/okf-node+json.Takeaways
Beta Was this translation helpful? Give feedback.
All reactions