-
Notifications
You must be signed in to change notification settings - Fork 278
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
Add a metadata section #204
Comments
I vote for having it as meta-data as it is more generic. One can have various notes within this k/v store. |
Non-technical users should not per se add notes in the json data itself, but use an editor, which can easily number keys for notes ("note1", "note2"). |
Sure. |
+1. We've been using a similar construct ( |
|
👍 |
Is this for a single metadata object in the resume document, or effectively a reserved key in any object, I think it's the former, while #133 is the latter. |
I'd like to see this in every object within the document as opposed to a single top level. As long as it's optional I don't see this as a source of too much pain. Could be worth adding to #223 ? |
@phumke I am against. The file is going to be a lot more heavy. |
@aloisdg it will be heavier, but it provides much deeper filtering and searching. |
@phumke You want to query object by version? I am not sure that I understand. |
I took the time to read #133 . This is more tags than metada alas semver.(but you dont like the term tag). Nice issue by the way.
Yes. As @stp-ip wrote, we are heading for the first solution aka one header metadata to rules them all. For the second, I am still against because of the weight of this. I dont think it should be in the schema (at least for now). I see two solutions:
It is same problem than the support of different languages. |
True, the metadata and different languages really start to add a lot of weight to the full master resume. I still think the metadata is useful at levels lower than the top, in which case the question becomes how to handle this. The idea of splitting this out into separate files is interesting. Quick pros and cons: Separate Files:
Single File:
Long and short of it, both solutions need more tooling support. I agree with @aloisdg, maybe we stick with a single metadata for V1 and pin multiple metadata for post-V1. |
Just to clarify and jump in on the discussion. The idea here was to have a top level I already provided a filtering schema idea within One thing to specify would be how to add metadata to a section/attribute etc. metadata.filter = [{
"volunteering": {
"keywords": [
"pro-bono"
],
"attributes": [
"work['greenpeace'].project['saving whales'].role",
]
}
}] ...
metadata.substitute = [{
"section": "work['gardner AG']",
"substitute": {
"description.markdown" : "Markdown enabled description.",
"description.html" : "HTML enabled description."
},
}],
... Within JSON schema it is possible to reference another document and therefore multifile metadata files might be supported. I just think the metadata weight is not so bad as to complicate the storage method. |
The We could pretty much copy what they have over at FRESH. (Thanks @hacksalot ) I also agree with just +1 to FRESH implementation without their exact defined sub properties. |
Agreed. Lets go for one top metadata object inspired by FRESH. For v1 -> One metadata to rules them all. |
I’m OK with this, but hesitant because I’ll have to rethink how to represent the separate things if I move my resume to JSON resume before the inclusion of per-object metadata in the standard. I started to do so, but hit the aforementioned block...
|
Some more notes on
|
@colindean You can write your own exporter from your json to this spec. The tool can be use later. It will be a kind of babel ;) |
We should definitely add the rule that each tool needs to prefix their metadata with their tool name, if it's specific to the tool and not available in the standard. |
@stp-ip "vendor prefix"? |
The idea would be to have schema specific meta data. Such as specific filter data, substitution data etc. - meta.filters and meta.substitute as an example. |
Thanks to the input from @thomasdavis I think we could streamline some of the structure ideas for meta: For enhanced or display data added text we could use a form of: ...
meta.enhancedText = [
{"work['gardner AG'].description.markdown" : "Markdown enabled description."},
{"work['gardner AG'].description.html" : "HTML enabled description."}
]
... If none is given for a specific language, it defaults to the basic resume data. Basically it's overwrite only. For filtering: ...
meta.filters = [{
"volunteering": {
"keywords": [
"pro-bono"
],
"attributes": [
"work['greenpeace'].project['saving whales'].role",
"work['greenpeace'].project['saving whales'].name"
]
}
}]
... Basically it's grouping via keywords and/or attributes/fields into a tag here
For languages/localization: ...
meta.localization = [{
"de": [
{"work['gardner AG'].description" : "Deutsche Übersetzung der Beschreibung."},
{"work['gardner AG'].name" : "Gärtner AG"}
]
}
]
... Localization can be done manually or via a tool. The only thing is that we specify how it is done in the schema. It's overwrite only, so it falls back to the basic data, if it's not overwritten. Feedback always welcome. |
Looks good! +1 |
Add (minimal) metadata to schema #204
Added in #237 |
Fantastic. This is one of the most important v1.0.0 changes in my opinion.
Seems I was reading the wrong commit. Metadata is an object now, correct? |
@chrisdotcode I am not sure I understand where/how this is being enforced (string and numbers only). I just created this example locally and ran the tests, all good.
|
@olivif Seems I had read the wrong commit. We're all good. |
Not completely added as meta.filter, meta.localization and meta.enhancedText are not yet added. |
Closing as the metadata section has been added, resolving this issue. Create new issues to discuss specifically any additional extensions to the |
This will be an object with an arbitrary amount of key/value pairs, containing any information.
Example use cases are information for themes, user information, and notes.
Speaking of notes, my other idea is to call this metadata section "notes", and make it either be a k/v pairset, or string with notes, which is more useful for non-technical users.
The text was updated successfully, but these errors were encountered: