Can JSON schema enums be case insensitive? -


JSON स्कीमा enums

:

  {"type": {"प्रकार": "स्ट्रिंग", "एंगम": ["स्ट्रीट", "एवेन्यू"), "सरणी", "आइटम": [{"प्रकार": "संख्या"}, {"प्रकार": "स्ट्रिंग"}, , "बोलेवर्ड"]}, {"प्रकार": "स्ट्रिंग", "एंम": ["एनडब्ल्यू", "पूर्वोत्तर", "एसडब्ल्यू", "एसई"]}]}  

यह स्कीमा [1600, "पेंसिल्वेनिया", "एवेन्यू", "एनडब्ल्यू"] जैसे मूल्यों को मान्य करता है।

समस्या

क्या कोई खूबसूरत enum केस-असंवेदनशील बनाने का तरीका, ताकि दोनों एवेन्यू और एवेन्यू को सरणी में तीसरा मान के रूप में स्वीकार किया जाएगा?

अन्य संभावित समाधान

मैं मानों की सूची पर anyOf का उपयोग कर सकता हूं, और प्रत्येक केस-असंवेदनशील रिगेक्स के खिलाफ मान्य कर सकता हूं - लेकिन यह बोझिल, त्रुटि-प्रवण और असहनीय ।

मुझे डर है कि आपको इस का कोई शानदार समाधान नहीं मिलेगा। इसके लिए एक प्रस्ताव था।

इसलिए यदि आप आवश्यकता से बच नहीं सकते हैं, तो regex समाधान केवल एक ही संभव हैं एक अन्य क्रूरता-बल के दृष्टिकोण को enum मूल्यों की पूरी सूची, एक शुरू होने वाले कैपिटल अक्षरों, अन्य सभी कैपिटल अक्षरों आदि के साथ होगा और फिर किसी भी तरह का उपयोग करें जैसा आपने कहा था। आप आसानी से इस जेसन-स्कीमा के निर्माण को स्वचालित कर सकते हैं। जाहिर है यह बहुत पठनीय नहीं होगा।

वैसे भी मैं सत्यापन के पहले एक पूर्व प्रसंस्करण चरण के साथ इसे हल करने का प्रयास करेंगे। यदि आप मौजूद हैं, तो आप आवश्यक गुणों को लोअरकेस में परिवर्तित कर सकते हैं, और फिर मान्य करें। मुझे 'गंदा' डेटा की अनुमति देने के लिए थोड़ा-थोड़ा जेसन-स्कीमा विनिर्देश का उपयोग करने के लिए मजबूर हो जाता है।


Comments

Popular posts from this blog

java - Can't add JTree to JPanel of a JInternalFrame -

asp.net mvc - How to attach sql database to a javascript graph -

c# - How to know the number of Threads created and limit the Tasks accordingly -