jsonresume / resume-schema

JSON-Schema is used here to define and validate our proposed resume json
http://jsonresume.org
MIT License
2.1k stars 278 forks source link

End Date for Ongoing Employment #480

Open zendritic opened 3 months ago

zendritic commented 3 months ago

I think this project is great, however: here, the schema sets endDate as iso8601. It's unclear to me how to represent ongoing employment. Omitting endDate, or defining it as null would imply employment has not ended, but seems incomplete, something undesirable in a resume. Also, anything other than a valid iso8601 formatted date throws a warning in the schema validator in an IDE, which is extremely annoying.

I humbly suggest adding a new boolean property called "ongoing", "current" or something similar so that one can omit endDate and set "ongoing" to True. I realize this might allow someone to confusingly set ongoing to True while also setting an endDate, which is not ideal.

thomasdavis commented 2 months ago

Could you elaborate on why it is "undesirable"? From what perspective? Coding around it? Or reading it in plaint text?

zendritic commented 2 months ago

Could you elaborate on why it is "undesirable"? From what perspective? Coding around it? Or reading it in plaint text?

Reading in plain text. Omitting an end date in a traditional resume to indicate ongoing employment seems incomplete and vague. It could be a useful field in coding as well though as it more clearly identifies which job is current. Form a linting perspective, without this, it's not possible to determine whether a user has simply forgotten to define an end date or intends to identify that element as ongoing.

JohnScience commented 2 months ago

Related issue: https://github.com/jsonresume/resume-schema/issues/199

AbyssalRemark commented 2 months ago

from experience as of yesterday, an empty string for endDate is what you want. I haven't tested that extensively but for the theme I use right now that puts in "Present". I think this is preferable to complicating the fields.

JohnScience commented 2 months ago

Omitting the field is legal, according the JSON schema.