AMcoder - javascript, python, java, html, php, sql

Ի՞նչ է նշանակում xs:խառը առանց տարրերի:

Հաճախորդից ստացա հետևյալ XSD բիթը: Դա ժառանգական սխեմայի մի մասն է, որն ընդգրկում է ավելի քան տասնյակ ֆայլեր:

<xs:element name="stateProvinceName">
  <xs:complexType mixed="true">
    <xs:attributeGroup ref="xml:attlist.global-attributes"/>
  </xs:complexType>
</xs:element>

Ես փորձում եմ պարզել, թե իրականում ինչ են ուզում: Ենթատարրեր չկան, ուրեմն ո՞րն է այս «xs:խառը» իմաստը: Ենթադրվում է, որ այն պետք է լինի պարզ Բովանդակություն, թե ոչ բովանդակություն:

Ես նրանց ասացի, որ նրանք պետք է օգտագործեն ավելի ստանդարտ կառուցվածք, օրինակ.

<xs:element name="stateProvinceName">
  <xs:complexType>
    <xs:simpleContent>
       <xs:extension base="xs:string">
         <xs:attributeGroup ref="xml:attlist.global-attributes"/>
       </xs:extension>
     </xs:simpleContent>
  </xs:complexType>
</xs:element>

Բայց նրանք վստահ չեն, որ դա նույն բանն է նշանակում: Երկու սխեմաներն էլ ընդունում են

<stateProvinceName ID="345643">California</stateProvinceName>

և

<stateProvinceName ID="345643"/>
18.09.2012


Պատասխանները:


1

Երկու տեսակները կարող են համարժեք լինել մակերեսի վրա, բայց դրանց ընդարձակելիությունը տարբեր է: Xs:string-ի պարզ բովանդակության տիպի օգտագործումը թույլ է տալիս կատարելագործել տիպը՝ սահմանափակելով տողը, օրինակ, կանոնավոր արտահայտությունով, մինչդեռ առանց տարրերի խառը բարդ բովանդակության տիպի օգտագործումը թույլ է տալիս կատարելագործել՝ մոդելին տարրեր ավելացնելով:

18.09.2012
  • Մինչդեռ առանց տարրերի խառը բարդ բովանդակության տիպի օգտագործումը թույլ է տալիս կատարելագործում` մոդելին տարրեր ավելացնելով, ի՞նչ է դա նշանակում: կարո՞ղ եք օրինակ ավելացնել: Շնորհակալություն։ 17.11.2016

  • 2

    mixed-ի օգտագործումը դատարկ բովանդակության մոդելով միանգամայն ստանդարտ է: Եթե ​​ձեզ դուր չի գալիս դրանց բովանդակության մոդելը, ձեզ այլ փաստարկ է հարկավոր:

    Ընդհանուր առմամբ, mixed="true" նշանակում է, որ նիշերի բովանդակությունը թույլատրվում է տվյալ բարդ տիպի մանկական տարրերի մեջ. այս դեպքում, քանի որ բովանդակության մոդելում երեխայական տարրեր չկան, մայր տարրի միակ օրինական բովանդակությունը կլինի նիշերի տվյալները, մեկնաբանությունները և մշակման հրահանգները: Արդյունքը կլինի այն, որ տարրի հայտարարությունը ընդունում է տարրերի նույն շարքը, ինչ կընդունվեր, եթե տարրը մուտքագրվեր բարդ տիպի միջոցով, պարզ բովանդակությամբ, որը հայտարարված է որպես xs:string-ի ընդլայնում:

    Խառը բովանդակության և լարայինի միջև ընտրությունը դիզայնի որոշում է: Ընդհանուր առմամբ, խառը բովանդակությունը ավելի լավ է բնական արձակի համար, նույնիսկ եթե տարրի սկզբնական ձևավորումը չեն նախատեսում ենթատարրերի անհրաժեշտություն: Ընդհանուր առմամբ, xs:string-ն ավելի հեշտ է օգտագործել, եթե որպես հիմք ակնկալվող արժեքների բազմության սահմանափակումների համար: (Եթե ցանկանում եք սահմանափակել stateProvinceName-ին ընդունել միայն որոշակի փոստային ծառայությունների կողմից սահմանված ծածկագրերը, xs:string-ն ավելի լավ հիմք է ձեր աշխատանքի համար, քան խառը բովանդակությունը:)

    18.09.2012
  • Խոսքը նրանց մոդելը հավանելու մասին չէ: Խոսքը գնում է լուծում առաջարկելու մասին, մինչև ես շտկեմ այս սխալը, որը կարող է որոշ ժամանակ տևել (և ավելի երկար, եթե նրանք պետք է սպասեն հաջորդ թողարկմանը) 19.09.2012
  • Կներես, դու ինձ կորցրել ես: Ձեր կողմից տրված հարցն այն էր, թե ինչ է նշանակում հռչակագիրը: Հարցը չի նշում սխալի մասին կամ չի պարզաբանում, թե ինչ խնդրի շուրջ է պետք աշխատել: Կներեք, եթե արտահայտությունը, եթե ձեզ դուր չի գալիս նրանց մոդելը, սխալ կերպով քսեց ձեզ; դա իմ փորձն էր վերափոխելու սկզբնական հրապարակման մեջ առաջարկված տեսակետը, որ դատարկ բովանդակության մոդելի հետ խառնված բովանդակությունը ինչ-որ կերպ ավելի քիչ ստանդարտ էր, քան xs:stringը: Դա չէ. Հաջողություն շտկելու սխալը, ինչ էլ որ լինի: 21.09.2012

  • 3

    Դա նշանակում է, որ դուք ունեք stateProvinceName անունով տարր, որն ունի մեկ կամ մի քանի հատկանիշ (ինչպես սահմանված է xml:attlist.global-attributes-ով), որի բովանդակությունը տող է: Ինչպես կա, դա ոչնչով չի տարբերվում ձեր առաջարկած կառուցվածքից:

    Նրանց պոտենցիալ տարբերությունը, այնուամենայնիվ, նրանց ընդարձակելիությունն է, ինչպես @Michael Kay-ն նշել է:

    16.03.2016
    Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..