XML Schema attribute এলিমেন্ট
নির্দেশ ও ব্যবহার
attribute এলিমেন্ট একটি অ্যাট্রিবিউট নির্দিষ্ট করে。
এলিমেন্টের তথ্য
উপস্থিতির সংখ্যা | schema এলিমেন্টের মধ্যে একবার নির্দিষ্ট করা। জটিল টাইপ বা অ্যাট্রিবিউট গ্রুপের মধ্যে একাধিকবার উল্লেখ করা যেতে পারে。 |
মাত্রা | attributeGroup、schema、complexType、restriction (simpleContent)、extension (simpleContent)、restriction (complexContent)、extension (complexContent) |
বিষয় | annotation、simpleType |
গ্রামার
<attribute default=string fixed=string form=qualified|unqualified id=ID name=NCName ref=QName type=QName use=optional|prohibited|required any attributes > (annotation?,(simpleType?)) </attribute>
(? সংকেতটি এই এলিমেন্টটির যেতে পারে না বা একবার যেতে পারে নির্দিষ্ট করে。)
অ্যাট্রিবিউট
default
অপশনাল। অ্যাট্রিবিউটটির ডিফল্ট মান নির্দিষ্ট করে। default এবং fixed অ্যাট্রিবিউটকে একসঙ্গে ব্যবহার করা যায় না。
fixed
অপশনাল। অ্যাট্রিবিউটটির স্থির মান নির্দিষ্ট করে। default এবং fixed অ্যাট্রিবিউটকে একসঙ্গে ব্যবহার করা যায় না。
form
অপশনাল। অ্যাট্রিবিউটটির ফরমেট নির্দিষ্ট করে। ডিফল্ট মান হল স্কেমা এলিমেন্টের attributeFormDefault অ্যাট্রিবিউটের মান। এটা নিম্নলিখিত মানগুলোতে সংযোজিত করা যেতে পারে:
- “qualified” - এটি সুচিত করে যে, এই অ্যাট্রিবিউটটির নামকরণকারী প্রেক্সিফিক্স এবং নকমেল নাম (NCName) দিয়ে নির্দিষ্ট করা প্রয়োজন।
- "unqualified" - 指示此属性无须由命名空间前缀限定,且无须匹配此属性的无冒号名称 (NCName),即本地名称。
id
可选。规定该元素的唯一的 ID。
name
可选。规定属性的名称。name 和 ref 属性不能同时出现。
ref
可选。规定对指定的属性的引用。name 和 ref 属性不能同时出现。如果 ref 出现,则 simpleType 元素、form 和 type 不能出现。
type
可选。规定内建的数据类型或简单类型。type 属性只能在内容不包含 simpleType 元素时出现。
use
可选。规定如何使用该属性。可设置下面的值:
- optional - 属性是可选的并且可以具有任何值(默认)。
- prohibited - 不能使用属性。
- required - 属性的必需的。
any attributes
可选。规定带有 non-schema 命名空间的任何其他属性。
ইনস্ট্যান্স
উদাহরণ 1
<xs:attribute name="code"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z][A-Z]"/> </xs:restriction> </xs:simpleType> </xs:attribute>
উপরোক্ত উদাহরণ "code" বৈশিষ্ট্যটির একটি নির্দিষ্ট মুকুট রয়েছে। স্বীকৃত একমাত্র মান হল বড়লিপির A থেকে Z-এর দুটি অক্ষর।
উদাহরণ 2
কোনও জটিল ধরনের একটি বৈশিষ্ট্য নির্ধারণ করতে, আপনি ref বৈশিষ্ট্যকে ব্যবহার করুন:
<xs:attribute name="code"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="[A-Z][A-Z]"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:complexType name="someComplexType"> <xs:attribute ref="code"/> </xs:complexType>
উদাহরণ 3
বৈশিষ্ট্যটি ডিফল্ট মান থেকেও নির্দিষ্ট নির্দিষ্ট মান মেলে পারে। যদি অন্য কোনও মান নির্ধারিত না হলে, এটা স্বচালিতভাবে বৈশিষ্ট্যকে ডিফল্ট মান দেয়। নিচের উদাহরণে, ডিফল্ট মান "EN" হল:
<xs:attribute name="lang" type="xs:string" default="EN"/>
অন্য কোনও মান নির্ধারিত না হলে, এটা স্বচালিতভাবে বৈশিষ্ট্যকে একটি নির্দিষ্ট মান দেয়। কিন্তু ডিফল্ট মান থেকে ভিন্ন, যদি আপনি বৈশিষ্ট্যকে নির্দিষ্ট মানের বাইরের অন্য কোনও মান নির্ধারিত করেন, তবে ডকুমেন্টটি তা বেজানা বলবে। নিচের উদাহরণে, নির্দিষ্ট মান "EN" হল:
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
উদাহরণ 4
সকল অধিকার ডিফল্টভাবে অপশনাল।অপশনাল অধিকার স্পষ্টভাবে নির্দিষ্ট করতে, "use" অধিকার ব্যবহার করুন:
<xs:attribute name="lang" type="xs:string" use="optional"/>
অধিকার হিসাবে প্রয়োজনীয় অধিকার করা:
<xs:attribute name="lang" type="xs:string" use="required"/>