Schema UI

Author: Todd Fast

Introduction

The primary UI for XML Schema is the "columns view".

 

Creation of New Schema Components

Creation of new schema components occurs using an in-place editing metaphor. Each node that allows children to be created below it has an Add menu containing a list of child components that can be created for that parent.

Component Customizer Forms

For a few special schema components, we will provide a simple form, or customizer, to allow the user to specify certain information all at once instead of using the property sheet. The customizer form will be shown directly in the columns view rather than as a modal pop-up dialog to reduce the amount of modality and to foster a seamless authoring style without workflow interruption.

The current proposal is to use a style of form embedding that allows the customizer to "float" on top of the coumn view near the customized node, but without taking up a column. This prevents a conflict between showing a node's children or its customizer in the next column. Instead, the floating customizer will not disrupt the standard column view convention of showing substructure in columns to the right of the selected node's column.

An alternative proposal is to use the NetBeans Node getCustomizer() method to return a customizer component that would then be displayed non-modally in the IDE, perhaps in the property sheet TopComponent as an alternative tab. This is an interesting idea, but requires some additions to the NetBeans core UI.

Property Sheets

The following list of properties by schema component should be more or less consistent with the schema model. The listed properties should appear on the corresponding nodes and should be valid in all possible views.

  • Prototype forms are in the org.netbeans.modules.xml.schema.ui.basic.editors.proto package in the schema/ui/basic project.
  • For all tagged editors that list a default of "Empty", the "Restore default value" action on the property should blank out the editor and remove the setting from the schema model. This means that the default value should have a string representation of "", and the editor's setTextValue() should interepret "" as a removal of the value from the model.
  • Properties that are noted as needing to be "elevated" should have already be accounted for in the property list for the appropriate parent component. Thus, there should be no effort on your part to determine how to "elevate" these properties.
  • Numbers after each component indicate its suggested priority
    • 0 - Lowest priority
    • 1 - Moderate priority
    • 2 - Highest priority
  • Anything marked "TBD" is yet to be finalized and should be avoided
  • This spec doesn't try to indicate how to set these property values on the actual schema model. Consult with the schema model team to determine how these values map to the model. However, the source for the list of these properties is the schema spec and should map very directly to the schema model.

Common Proprties

Property Type Notes
ID String

Must be unique within the entire document.

Advanced property.

Nodes

Following are details of each node.

NOTE: There is a potential disjuncture between the types of schema component children that can be created for a node based on the type of view containing the node. For example, in the categorized view, many schema components are hidden in an effort to provide a more logical view of the schema. Therefore, the actions to create some types of child components may need to be hidden in the categorized view, or some actions may need to be "elevated" to parent components. The resolution of this issue is currently unspecified.

All (1)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-all

Advanced View
Child Components
  • Annotation
  • Element *
  • ElementReference *

* NewTypes included in TPR2

Actions

Should have actions to convert to other types of aggregator (choice, all, etc.) post-TPR2

Prototype Form None
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.AllNewType
Structural View
Child Components
  • Annotation
  • Element
  • ElementReference
Actions TBD
Prototype Form None
NewType TBD

Properties

Property Type Notes
Min Occurs Tags Select from "0", "1"

AllElement

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-element

Properties

Property Type Notes
Abstract Tags

"True", "False". Default: Empty

Advanced property.

Prohibited Substitutions (Block) Dialog

See ElementBlockForm.java

Advanced property.

Prohibited Derivations (Final) Dialog

See ElementFinalForm.java

Advanced property.

Default Value

String

Note, cannot be specified if fixed value is specified

Fixed Value String Note, cannot be specified if default value is specified
Form Tags

"Default for schema", "Qualified", "Unqualified". Default: "Default for schema"

Advanced property.

Name String Must be unique within scope
Nillable Tags

"True", "False". Default: Empty

Advanced property.

Max Occurs Integer In addition to normal integers >= 0, must also accept an equivalent of "*" or "unbounded". Suggest using an editable tagged editor. The single tag should be "Unbounded". The editor should also allow direct typing of "*" and "unbounded", with "unbounded" as the canonical value.
Min Occurs Integer Integer value >=0
Type Dialog

Dialog that allows selection of an existing simple or complex type. Can use a 2-level tree to allow selection. However, we must consider the case when there are multiple schema files. An embedded columns view may be more usable, as it would allow selection based on name, file, and/or namespace.

AllElementReference

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-element

Properties

Property Type Notes
Reference Dialog Dialog that allows selection of an existing global element. An embedded columns view may be most usable.

Any (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-any

Properties

Property Type Notes
Max Occurs Integer In addition to normal integers >= 0, must also accept an equivalent of "*" or "unbounded". Suggest using an editable tagged editor. The single tag should be "Unbounded". The editor should also allow direct typing of "*" and "unbounded", with "unbounded" as the canonical value.
Min Occurs Integer Integer value >=0
Namespace Dialog

See AnyNamespaceForm.java and AnyNamespaceAddForm.java.

Clicking the Add button on AnyNamespaceForm brings up the second form. On AnyNamespaceAddForm.java, the list of namespaces "declared in this schema" is based on a just-in-time query on the schema model; all namespaces found in the document should be in this list. The intent here is to allow the user to choose a likely namespace instead of type it.

Process Contents Tags

Advanced property.

Select from "Lax", "Skip", "Strict". Default: Empty

AnyAttribute (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-anyAttribute

Properties

Property Type Notes
Namespace Dialog

(( ##any | ##other ) | List of ( anyURI | ( ##targetNamespace | ##local )) )  : ##any

See AnyNamespaceForm.java and AnyNamespaceAddForm.java

Process Contents Tags

Select from "Lax", "Skip", "Strict" . Default: Empty

Advanced property.

GlobalAttribute (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-attribute

Advanced View
Child Components
  • Annotation
  • SimpleType **

** Post-TPR2: This element will be transparent

Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.GlobalAttributeForm.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.GlobalAttributeNewType.java
Structural View
Child Components
  • Annotation
  • SimpleType
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Default Value

String

Note, cannot be specified if fixed value is specified

Fixed Value String Note, cannot be specified if default value is specified
Form Tags

"Default for schema", "Qualified", "Unqualified". Default: "Default for schema"

Advanced property.

Name String Must be unique within scope
Type Dialog

Dialog that allows selection of an existing simple type. Can use a 2-level tree to allow selection. However, we must consider the case when there are multiple schema files. An embedded columns view may be more usable, as it would allow selection based on name, file, and/or namespace.

Use Tags "Optional", "Prohibited", "Required". Default: Empty

LocalAttribute (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-attribute

Advanced View
Child Components
  • Annotation
  • SimpleType **

** Post-TPR2: This element will be transparent

Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalAttributeForm.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.LocalAttributeNewType.java
Structural View
Child Components
  • Annotation
  • SimpleType
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Default Value

String

Note, cannot be specified if fixed value is specified

Fixed Value String Note, cannot be specified if default value is specified
Form Tags

"Default for schema", "Qualified", "Unqualified". Default: "Default for schema"

Advanced property.

Name String Must be unique within scope
Type Dialog

Dialog that allows selection of an existing simple type. Can use a 2-level tree to allow selection. However, we must consider the case when there are multiple schema files. An embedded columns view may be more usable, as it would allow selection based on name, file, and/or namespace.

Use Tags "Optional", "Prohibited", "Required". Default: Empty

AttributeReference (1)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-attribute

Advanced View
Child Components
  • Annotation?
Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalAttributeForm.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.LocalAttributeNewType.java
Structural View
Child Components
  • Annotation
  • SimpleType
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Reference Dialog Dialog that allows selection of an existing global attribute. Can use a 2-level tree to allow selection. However, we must consider the case when there are multiple schema files. An embedded columns view may be more usable, as it would allow selection based on name, file, and/or namespace.

AttributeGroup (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-attributeGroup

Advanced View
Child Components
  • Annotation
  • Attribute *
  • AttributeGroup *
  • AnyAttribute

* NewTypes included in TPR2

Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.AttributeGroupForm1.java
org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.AttributeGroupForm2.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.AttributeGroupNewType.java
Structural View
Child Components
  • Annotation
  • Attribute
  • AttributeGroup
  • AnyAttribute
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Name String Must be unique within scope

AttributeGroupReference (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-attributeGroup

Advanced View
Child Components
  • Annotation
Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.AttributeGroupForm1.java
org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.AttributeGroupForm2.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.AttributeGroupNewType.java
Structural View
Child Components
  • Annotation
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Reference Dialog Dialog that allows selection of an existing AttributeGroup. An embedded columns view may be most usable.

Choice (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-choice

Advanced View
Child Components
  • Annotation
  • Element *
  • ElementReference *
  • Group
  • Choice *
  • Sequence *
  • Any

* NewTypes included in TPR2

Actions

Should have actions to convert to other types of aggregator (choice, all, etc.) post-TPR2

Prototype Form None
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.ChoiceNewType
Structural View
Child Components
  • Annotation
  • Element
  • ElementReference
  • Group
  • Choice
  • Sequence
  • Any
Actions

Should have actions to convert to other types of aggregator (choice, all, etc.) post-TPR2

Prototype Form None
NewType TBD

Properties

Property Type Notes
Max Occurs Integer In addition to normal integers >= 0, must also accept an equivalent of "*" or "unbounded". Suggest using an editable tagged editor. The single tag should be "Unbounded". The editor should also allow direct typing of "*" and "unbounded", with "unbounded" as the canonical value.
Min Occurs Integer Integer value >=0

ComplexContent (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-complexContent

Note: In the category view, this node is not shown and so these properties are elevated to a parent node (ComplexType or an element that contains an in-line type definition). However, this node may be shown in the literal view, so this property needs to be available.

Properties

Property Type Notes
Mixed Content Tags "True", "False". Default: Empty

GlobalComplexType (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-complexType

Advanced View
Child Components
  • Annotation
  • Group
  • All *
  • Choice *
  • Sequence *
  • Attribute *
  • AttributeReference *
  • AttributeGroup *
  • AttributeGroupReference *
  • AnyAttribute

* NewTypes included in TPR2

Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.GlobalComplexTypeForm.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.GlobalComplexTypeNewType.java
Structural View
Child Components
  • Annotation
  • SimpleContent
  • ComplexContent
  • Group
  • All
  • Choice
  • Sequence
  • Attribute
  • AttributeReference
  • AttributeGroup
  • AttributeGroupReference
  • AnyAttribute

* NewTypes included in TPR2

Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Abstract Tags

"True", "False". Default: Empty

Advanced property.

Prohibited Substitutions (Block) Dialog

See ComplexTypeBlockForm.java

Advanced property.

Prohibited Derivations (Final) Dialog

See ComplexTypeFinalForm.java

Advanced property.

Mixed Content Tags "True", "False". Default: Empty
Name String Must be unique within scope
Base Type Dialog

See ComplexTypeBaseTypeForm.java.

Dialog that allows selection of an existing complex type and method of derivation (restriction or extension). Note, only extensible and allowable types should be shown in the dialog; types that are defined as final according to the type of derivation should be filtered out. There are also some very subtle rules about how derived types must be structured. We may want to filter the selectable list further based on these rules (see schema spec and Kohsuke's Do's and Don'ts document). An embedded columns view may be most usable.

LocalComplexType (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-complexType

Advanced View
Child Components
  • Annotation
  • Group
  • All *
  • Choice *
  • Sequence *
  • Attribute *
  • AttributeReference *
  • AttributeGroup *
  • AttributeGroupReference *
  • AnyAttribute

* NewTypes included in TPR2

Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalComplexTypeForm1.java
org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalComplexTypeForm2.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.LocalComplexTypeNewType.java
Structural View
Child Components
  • Annotation
  • SimpleContent
  • ComplexContent
  • Group
  • All
  • Choice
  • Sequence
  • Attribute
  • AttributeReference
  • AttributeGroup
  • AttributeGroupReference
  • AnyAttribute

* NewTypes included in TPR2

Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Mixed Content Tags "True", "False". Default: Empty
Base Type Dialog

See ComplexTypeBaseTypeForm.java.

Dialog that allows selection of an existing complex type and method of derivation (restriction or extension). Note, only extensible and allowable types should be shown in the dialog; types that are defined as final according to the type of derivation should be filtered out. There are also some very subtle rules about how derived types must be structured. We may want to filter the selectable list further based on these rules (see schema spec and Kohsuke's Do's and Don'ts document). An embedded columns view may be most usable.

Documentation (1)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-documentation

Properties

Property Type Notes
Source String

Actual value is a URI

Language String Simple string editor
Text String A nice editor here (i.e. one that supports word wrap and markup) would be nice instead of the lame default string editor. The default string editor may be sufficient if the columns view directly supports documentation editing (TAF: as I argue it should).

GlobalElement (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-element

Advanced View
Child Components
  • Annotation
  • Group
  • All *
  • Choice *
  • Sequence *
  • Attribute *
  • AttributeReference *
  • AttributeGroup *
  • AttributeGroupReference *
  • AnyAttribute
  • Unique
  • Key
  • Keyref

* NewTypes included in TPR2

Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.GlobalElementForm.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.GlobalElementNewType.java
Structural View
Child Components
  • Annotation
  • LocalSimpleType
  • LocalComplexType
  • Unique
  • Key
  • Keyref
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Abstract Tags

"True", "False". Default: Empty

Advanced property.

Prohibited Substitutions (Block) Dialog

See ElementBlockForm.java

Advanced property.

Prohibited Derivations (Final) Dialog

See ElementFinalForm.java

Advanced property.

Default Value

String

Note, cannot be specified if fixed value is specified

Fixed Value String Note, cannot be specified if default value is specified
Form Tags

"Default for schema", "Qualified", "Unqualified". Default: "Default for schema"

Advanced property.

Name String Must be unique within scope
Nillable Tags

"True", "False". Default: Empty

Advanced property.

Substitution Group Dialog

Dialog that allows selection of an existing element. Can use a 2-level tree to allow selection. However, we must consider the case when there are multiple schema files. An embedded columns view may be more usable, as it would allow selection based on name, file, and/or namespace.

TAF: What are the specific semantics of a substitution group? Does it have any bearing on which elements may be selected?

Advanced property.

Type Dialog

Dialog that allows selection of an existing simple or complex type. An embedded columns view may be most usable.

LocalElement (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-element

Advanced View
Child Components
  • Annotation
  • Group
  • All *
  • Choice *
  • Sequence *
  • Attribute *
  • AttributeReference *
  • AttributeGroup *
  • AttributeGroupReference *
  • AnyAttribute
  • Unique
  • Key
  • Keyref

* NewTypes included in TPR2

Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalElementForm1.java
org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalElementForm2.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.LocalElementNewType.java
Structural View
Child Components
  • Annotation
  • LocalSimpleType
  • LocalComplexType
  • Unique
  • Key
  • Keyref
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Abstract Tags

"True", "False". Default: Empty

Advanced property.

Prohibited Substitutions (Block) Dialog

See ElementBlockForm.java

Advanced property.

Prohibited Derivations (Final) Dialog

See ElementFinalForm.java

Advanced property.

Default Value

String

Note, cannot be specified if fixed value is specified

Fixed Value String Note, cannot be specified if default value is specified
Form Tags

"Default for schema", "Qualified", "Unqualified". Default: "Default for schema"

Advanced property.

Name String Must be unique within scope
Nillable Tags

"True", "False". Default: Empty

Advanced property.

Max Occurs Integer In addition to normal integers >= 0, must also accept an equivalent of "*" or "unbounded". Suggest using an editable tagged editor. The single tag should be "Unbounded". The editor should also allow direct typing of "*" and "unbounded", with "unbounded" as the canonical value.
Min Occurs Integer Integer value >=0
Type Dialog

Dialog that allows selection of an existing simple or complex type. Can use a 2-level tree to allow selection. However, we must consider the case when there are multiple schema files. An embedded columns view may be more usable, as it would allow selection based on name, file, and/or namespace.

ElementReference (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-element

Advanced View
Child Components None
Actions

TBD

Prototype Form org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalElementForm1.java
org.netbeans.modules.xml.schema.ui.nodes.schema.forms.proto.LocalElementForm2.java
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.LocalElementNewType.java
Structural View
Child Components

None

Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Reference Dialog Dialog that allows selection of an existing global element. An embedded columns view may be most usable.

Enumeration (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-all

Properties

Property Type Notes
Value

Dialog

Dialog that allows selection of an existing simple type. A tagged editor (combo box) may also be convenient (though less usable than a dialog).

Extension (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-simpleContent..extension
http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-complexContent..extension

Properties

Note: In the category view, this node is not shown and so these properties are elevated to a parent node (see SimpleType and ComplexType). However, this node may be shown in the literal view, so this property needs to be available.

Property Type Notes
Base Type Dialog

Dialog that allows selection of an existing complex or simple type (which one is dependent on the enclosing component, SimpleType or ComplexType).

Field (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-field

Properties

Property Type Notes
XPath

Dialog

Dialog to select the location of the fields to apply a uniqueness constraint. This will typically be a single offset from the selector element. TBD.

FractionDigits (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#fractionDigits

Properties

Property Type Notes
Value

Integer

Non-negative integer

Fixed Tags "True", "False". Default: Empty

Group (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-group

Properties

Property Type Notes
Name String Must be unique within scope

GroupReference (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-group

Properties

Property Type Notes
Max Occurs Integer In addition to normal integers >= 0, must also accept an equivalent of "*" or "unbounded". Suggest using an editable tagged editor. The single tag should be "Unbounded". The editor should also allow direct typing of "*" and "unbounded", with "unbounded" as the canonical value.
Min Occurs Integer Integer value >=0
Reference Dialog Dialog that allows selection of an existing global group. An embedded columns view may be most usable.

Import (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-import

Properties

Property Type Notes
Namespace   TBD. Use a simple string editor for now.
Schema Location Dialog

See SchemaLocationForm.java.

The Browse... button should open a chooser that lets the user select a schema file in one of the currently opened projects. After selecting a file, the field to the left of the button shows the effective value of the schemaLocation attribute. See the resolver spec for more information on the form of this value.

Include (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-include

Properties

Property Type Notes
Schema Location Dialog

See SchemaLocationForm.java.

The Browse... button should open a chooser that lets the user select a schema file in one of the currently opened projects. After selecting a file, the field to the left of the button shows the effective value of the schemaLocation attribute. See the resolver spec for more information on the form of this value.

Key (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-key

TBD

Keyref (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-keyref

Properties

Property Type Notes
Name    
Refer   Name of unique constraint referred to by this ref, selection of appropriate constraint

Length (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-length

Properties

Property Type Notes
Value

Integer

Non-negative integer

Fixed Tags "True", "False". Default: Empty

List (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-list

Properties

Note: In the category view, this node may not be shown and so these properties will need to elevated to a parent node. Which nodes are TBD (Jeri & Ajit, feel free to determine this).

Property Type Notes
Item Type Dialog

Dialog that allows selection of an existing simple type. An embedded columns view may be most usable.

MaxExclusive (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-maxInclusive

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Dialog

Dialog that allows selection of an existing simple type. A tagged editor (combo box) may also be convenient (though less usable than a dialog). Should be appropriate for type, e.g. int should be integer. (TAF: What does this last point mean, Chris?)

MinExclusive (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-minInclusive

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Dialog

Dialog that allows selection of an existing simple type. A tagged editor (combo box) may also be convenient (though less usable than a dialog). Should be appropriate for type, e.g. int should be integer. (TAF: What does this last point mean, Chris?)

MaxInclusive (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-maxInclusive

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Dialog

Dialog that allows selection of an existing simple type. A tagged editor (combo box) may also be convenient (though less usable than a dialog). Should be appropriate for type, e.g. int should be integer. (TAF: What does this last point mean, Chris?)

MinInclusive (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-minInclusive

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Dialog

Dialog that allows selection of an existing simple type. A tagged editor (combo box) may also be convenient (though less usable than a dialog). Should be appropriate for type, e.g. int should be integer. (TAF: What does this last point mean, Chris?)

MaxLength (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-maxLength

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Integer

Non-negative integer

MinLength (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-minLength

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Integer

Non-negative integer

Notation (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-notation

Properties

Property Type Notes
Name String Must be unique within scope
Public

String

This value is actually a token so we may want to apply some additional validation of the value. See the following description:

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#token

System Dialog

See NotationSystemForm.java.

The list of namespaces "declared in this schema" is based on a just-in-time query on the schema model; all namespaces found in the document should be in this list. The intent here is to allow the user to choose a likely namespace instead of type it.

Pattern (1)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-pattern

Properties

Property Type Notes
Value

String

This is actually a schema regular expression. IN addition to direct editing in the property sheet, we might want to provide a property dialog that helps the user build one of these (since no one remembers how to write a regular expression). Design of the dialog is TBD.

Redefine (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-redefine

Properties

Property Type Notes
Schema Location Dialog

See SchemaLocationForm.java.

The Browse... button should open a chooser that lets the user select a schema file in one of the currently opened projects. After selecting a file, the field to the left of the button shows the effective value of the schemaLocation attribute. See the resolver spec for more information on the form of this value.

Restriction (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-restriction
http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#whiteSpace-valid-restriction

Properties

Note: In the category view, this node is not shown and so these properties are elevated to a parent node (see SimpleType and ComplexType). However, this node may be shown in the literal view, so this property needs to be available.

Property Type Notes
Base Type Dialog

Dialog that allows selection of an existing complex or simple type (which one is dependent on the enclosing component, SimpleType or ComplexType).

Schema (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-schema 

Advanced View
Child Components
  • Include
  • Import
  • Redefine
  • Annotation
  • SimpleType
  • ComplexType *
  • Group
  • AttributeGroup *
  • Element *
  • Attribute *
  • Notation

* Included in TPR2

Actions

TBD

Prototype Form None
NewType N/A
Structural View
Child Components
  • Include
  • Import
  • Redefine
  • Annotation
  • SimpleType
  • ComplexType
  • Group
  • AttributeGroup
  • Element
  • Attribute
  • Notation
Actions

TBD

Prototype Form TBD
NewType TBD

 

Properties

Property Type Notes
Attribute Form Default Tags "Qualified", "Unqualified". Default: Emtpy
Prohibited Substitutions (Block) Default Dialog

See SchemaBlockDefaultForm.java

Advanced property.

Element Form Default   "Qualified", "Unqualified". Default: Emtpy
Target Namespace Dialog

See SchemaTargetNamespaceForm.java.

The list of namespaces "declared in this schema" is based on a just-in-time query on the schema model; all namespaces found in the document should be in this list. The intent here is to allow the user to choose a likely namespace instead of type it.

Version String

Simple string value

Advanced property.

Namespaces Dialog TBD

Selector (0)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-selector

Properties

Property Type Notes
XPath

Dialog

Dialog to select the relative XPath identifying the element on which to apply the constraint. TBD.

Sequence (2)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-sequence

Advanced View
Child Components
  • Element *
  • Element Reference *
  • Group
  • Choice *
  • Sequence *
  • Any

* Included in TPR2

Actions

Should have actions to convert to other types of aggregator (choice, all, etc.) post-TPR2

Prototype Form None
NewType org.netbeans.modules.xml.schema.ui.nodes.schema.newtype.SequenceNewType.java
Structural View
Child Components
  • Element
  • Element Reference
  • Group
  • Choice
  • Sequence
  • Any
  • ?
Actions

TBD

Prototype Form TBD
NewType TBD

Properties

Property Type Notes
Max Occurs Integer In addition to normal integers >= 0, must also accept an equivalent of "*" or "unbounded". Suggest using an editable tagged editor. The single tag should be "Unbounded". The editor should also allow direct typing of "*" and "unbounded", with "unbounded" as the canonical value.
Min Occurs Integer Integer value >=0

SimpleType (2)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-simpleType

Properties

Property Type Notes
Final Dialog See SimpleTypeFinalForm.java
Name

String

Must be unique within scope

TotalDigits (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#dc-totalDigits

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Integer

Non-negative integer >0

Union (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#element-union

Properties

Property Type Notes
Member Types

Dialog

Dialog to choose a list of global simple types (use standard add/remove/up/down style dialog). The sub-dialog for add should be an embedded columns view dialog.

Unique (1)

http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-unique

Properties

Property Type Notes
Name

String

Must be unique within scope

WhiteSpace (0)

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#dc-whiteSpace

Properties

Property Type Notes
Fixed Tags "True", "False". Default: Empty
Value

Tags

"Preserve", "Replace", "Collapse".

For the default value, see the constraints at the following location:

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#rf-whiteSpace

Note, we might want to add additional validation according to validity contraints:

http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#whiteSpace-valid-restriction

Project Features

About this Project

XML was started in November 2009, is owned by dstrupl, and has 58 members.
By use of this website, you agree to the NetBeans Policies and Terms of Use (revision 20160708.bf2ac18). © 2014, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo
 
 
Close
loading
Please Confirm
Close