Comments (3)
This only makes sense if there can be multiple schemas and schema locations, depending on extensions, application profiles etc.
from jsoncanvas.
This also helps to document that a JSON Schema exists to validate the document. A text editor might use that to automatically enable linting.
from jsoncanvas.
I think it makes sense to define a $schema
for the node objects. Most applications will want more complexity than a single text
attribute on a node. Nodes often represent services or lambdas. Applications using the node
API should be allowed to shove their own metadata inside the node for the data relevant to their application's purposes.
e.g., an application which uses the infinite canvas to manage an ETL process. Such an application would need more than a text
node. They would likely need additional attributes for each node to help define each ETL process. With the existing API, there is no way to include those additional attributes.
The $schema
attribute should not be required for import/export of .canvas
files since that would hurt interoperability between projects. They should still be able to load the graph relationship of the nodes/edges without necessarily needing to understand the custom $schema
used by a different application.
Is what I described within the scope of your suggestion @dolmen ?
from jsoncanvas.
Related Issues (20)
- Create JSON Schema to further define and constrain the spec. HOT 7
- List of implementations HOT 2
- question: Are the preset color values part of the spec? HOT 1
- Custom node types or additional metadata? HOT 2
- BGL and jsoncanvas HOT 2
- node width and height should be optional HOT 11
- group types nodes are containing types but don't specify dimensions HOT 4
- are file nodes always local relative paths? HOT 2
- Properly reference standards JSON Canvas is based on
- Proposal: Edges additional properties HOT 3
- Proposal: Edge offset property
- What is the purpose of the numerical color values? HOT 6
- Proposal: canvasz — a zipped canvas file, which packages a the markdown files along with it HOT 2
- Doc: add link to sourcecode HOT 1
- Need for clarification: toEnd & fromEnd HOT 1
- Canvas Spec should include version for migrations purposes. HOT 1
- use VazirMatn font for default font for fa HOT 3
- How to handle edges that can link to groups HOT 2
- [idea] Will be nice to have this in a vscode plugin. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jsoncanvas.