[FEATURE] spelling cleanup, control protocols, per-channel power (#31), decimal SDCM (#32) - version 1.0.0-rc.4#30
Open
holg wants to merge 2 commits into
Open
Conversation
…on 1.0.0-rc.4 Corrects long-standing spelling mistakes in the schema while keeping all rc.3 instance files valid. Misspelled forms remain accepted but are marked deprecated and scheduled for removal in 2.0.0. Documentation strings: - Photometry: "descriptive informations" -> "descriptive information" - EU energy label (3x): "accoring" -> "according" - ControlGear: "Unique identiofier" -> "Unique identifier" - TemperatureRange: "remperature" / "temparature" -> "temperature" Enumeration cleanup (Cie97LampType): - Adds "Fluorescent Triphosphor" / "Fluorescent Halophosphate". - Keeps "Flourescent Triphosphor" / "Flourescent Halophosphate" as deprecated aliases with xs:appinfo + xs:documentation markers. Element-name cleanup (4 occurrences): - Adds "RatedChromaticityCoordinateValues" alongside the existing "RatedChromacityCoordinateValues" via xs:choice wrappers. - Original element kept as deprecated alias. Schema version bumped from 1.0.0-rc.3 to 1.0.0-rc.4. No required elements added, no enumerations removed, no element renames without alias - rc.3 files validate against rc.4 unchanged.
There was a problem hiding this comment.
Pull request overview
This PR updates the GLDF XSD to correct long-standing spelling mistakes while preserving validation compatibility for existing v1.0.0-rc.3 instance documents, and bumps the schema version to v1.0.0-rc.4.
Changes:
- Bump schema
versionto1.0.0-rc.4and fix multiple<xs:documentation>spelling issues. - Add corrected
Cie97LampTypeenumeration values while retaining the misspelled values as deprecated aliases viaxs:annotation/xs:appinfo. - Add
RatedChromaticityCoordinateValuesalongside the misspelledRatedChromacityCoordinateValuesusingxs:choicewrappers, marking the old name deprecated. - Add
RELEASE_NOTES_rc4.mddocumenting the changes and deprecations.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| xsd/gldf.xsd | Schema version bump; documentation spelling fixes; backward-compatible aliases for enum values and element name with deprecation markers. |
| RELEASE_NOTES_rc4.md | New release notes describing rc.4 spelling cleanup, compatibility guarantees, and deprecation plan. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…, decimal SDCM (globallightingdata#32) - version 1.0.0-rc.4 - Add Zigbee, Matter, Thread, Bluetooth Mesh, DALI-2, DALI D4i to the ControlGear Interface enumeration; lift maxOccurs 12 -> unbounded - Add optional RatedInputPower to MultiChannelLightSource Channel, fixes globallightingdata#31 - Replace the 8 duplicated inline SDCM enumerations with one shared pattern-based ColorTolerance type accepting decimal MacAdam steps (e.g. 1.5 SDCM, 1.47 SDCM), fixes globallightingdata#32 - All rc.3 example files from globallightingdata/examples validate unchanged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
version 1.0.0-rc.4 — consolidated release candidate on top of rc.3.
Combines a backwards-compatible spelling cleanup with three functional extensions. All rc.3 instance files validate unchanged — verified against all six example files from globallightingdata/examples (Minimal Geo, Minimal LDC, Philips SP542P, SLV Tria 2, Trilux Belviso S CDP, Zumtobel P-EVO R100L).
Fixes #31
Fixes #32
1. Spelling cleanup with backwards-compatible deprecations
Cie97LampType: adds "Fluorescent Triphosphor" / "Fluorescent Halophosphate"; keeps the misspelled values as deprecated aliases withxs:appinfomarkers.RatedChromaticityCoordinateValuesalongside the misspelledRatedChromacityCoordinateValuesviaxs:choicewrappers (4 occurrences); original kept as deprecated alias, removal scheduled for 2.0.0.2. Modern lighting control protocols
Adds six standardized protocols to the
ControlGear/Interfaces/Interfaceenumeration, each with anxs:documentationannotation naming the standard body:Zigbee(CSA),Matter(CSA),Thread(Thread Group),Bluetooth Mesh(Bluetooth SIG — distinct from the existing point-to-pointBluetooth),DALI-2(IEC 62386 Ed. 2),DALI D4i(DiiA).Also lifts the arbitrary
maxOccurs="12"onInterfacetounbounded(the 12 exactly matched the original enum count).3. Per-channel rated input power (fixes #31)
MultiChannelLightSource/Channels/Channelgains an optionalRatedInputPowerelement afterRatedLuminousFlux(xs:double,minInclusive 0, watt — same shape as all other power elements). Until now, per-channel power for RGBW / tunable-white products could only be estimated by prorating the light source total via flux ratios, which is physically incorrect; manufacturers resorted to encoding wattages inDisplayName. The documentation notes that channel powers need not sum to the light source'sRatedInputPower(driver losses, channel combination limits).4. Decimal MacAdam ellipse steps (fixes #32)
InitialColorToleranceandMaintainedColorTolerancemove from the closed integer enumeration (1 SDCM…7 SDCM) to a new shared named typeColorTolerance:Same
"N SDCM"lexical format, now accepting any decimal step with up to two fraction digits (1.5 SDCM,1.47 SDCM). This solves the half-step request in #32 without re-opening the issue for every finer bin a manufacturer specifies next. Malformed values ("1,5 SDCM","3SDCM","12 SDCM") remain invalid. The 8 previously duplicated inline enumerations are consolidated into the one named type.Note for consumers: every previously valid value matches the pattern, so existing files are unaffected; software that code-generated a closed enum from the seven values must switch to parsing the numeric part.
Backwards compatibility
minOccurs="0"; the SDCM pattern accepts every previously valid value.xmllint --noout); all six upstream example files validate unchanged; positive tests for1.5 SDCM/1.47 SDCM/ per-channel power; negative tests confirm malformed SDCM values and negative powers are rejected.See
RELEASE_NOTES_rc4.mdfor the full change log.