XMLスキーマ:カスタム「SimpleType」タイプで属性を指定する方法は?

StackOverflow https://stackoverflow.com/questions/2865911

  •  30-09-2019
  •  | 
  •  

質問

私のXMLスキーマ定義では、属性の値を0〜100の整数に制限しようとしています。

以下のサンプルスキーマを参照して、この制限を持つ要素「ルート」に属性「属性」が必要です。これを達成するために、単純化の「パーセンテージ」を定義し、これを「attr」の「タイプ」として設定します。

ただし、私のXMLスキーマエディター(VS 2008)は、「タイプ」パーセンテージは宣言されていないか、単純なタイプではない」という問題を抱えていると属性にフラグを立てています。

<?xml version="1.0" encoding="utf-8"?>
<xs:schema elementFormDefault="qualified" id="test" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://testtttt">
  <xs:simpleType name="Percentage">
    <xs:restriction base="xs:integer">
      <xs:minInclusive value="0"/>
      <xs:maxInclusive value="100"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="root">
    <xs:complexType>
      <xs:attribute name="attr" type="Percentage" use="optional" />
    </xs:complexType>
  </xs:element>

役に立ちましたか?

解決

スキーマルート要素の名前空間宣言が欠けているようです。

xmlns="http://testtttt"

したがって、タイプ参照は無効です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top