XdmTypeAttribute ClassXdmTypeAttribute ClassXdmTypeAttribute Class
Inheritance Hierarchy
- System.ObjectSystem.ObjectSystem::Object
- System.AttributeSystem.AttributeSystem::Attribute
- XmlPrime.XdmTypeAttributeXmlPrime.XdmTypeAttributeXmlPrime::XdmTypeAttribute
Constructors
Constructor | Description | |
---|---|---|
![]() | XdmTypeAttribute ()XdmTypeAttribute ()XdmTypeAttribute () | Creates a new instance of the XdmTypeAttributeXdmTypeAttributeXdmTypeAttribute class. |
![]() | XdmTypeAttribute (XmlTypeCode)XdmTypeAttribute (XmlTypeCode)XdmTypeAttribute (XmlTypeCode) | Creates a new instance of the XdmTypeAttributeXdmTypeAttributeXdmTypeAttribute class wit a particular item type. |
![]() | XdmTypeAttribute (XmlTypeCode, Quantifier)XdmTypeAttribute (XmlTypeCode, Quantifier)XdmTypeAttribute (XmlTypeCode, Quantifier) | Initializes a new instance of the XdmTypeAttributeXdmTypeAttributeXdmTypeAttribute class with a particular sequence type. |
Properties
Property | Description | |
---|---|---|
![]() | QuantifierQuantifierQuantifier | Gets or sets the quantifier of the sequence. |
![]() | TypeCodeTypeCodeTypeCode | Gets or sets a type code representing the types of the items in the sequence. |
![]() | Attribute.TypeIdAttribute.TypeIdAttribute::TypeId | When implemented in a derived class, gets a unique identifier for this AttributeAttributeAttribute. (Inherited from System.AttributeSystem.AttributeSystem::Attribute) |
Methods
Explicit Interface Implementations
Name | Description | |
---|---|---|
![]() ![]() | Attribute.GetIDsOfNamesAttribute.GetIDsOfNamesAttribute::GetIDsOfNames | Maps a set of names to a corresponding set of dispatch identifiers. (Inherited from System.AttributeSystem.AttributeSystem::Attribute) |
![]() ![]() | Attribute.GetTypeInfoAttribute.GetTypeInfoAttribute::GetTypeInfo | Retrieves the type information for an object, which can be used to get the type information for an interface. (Inherited from System.AttributeSystem.AttributeSystem::Attribute) |
![]() ![]() | Attribute.GetTypeInfoCountAttribute.GetTypeInfoCountAttribute::GetTypeInfoCount | Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Inherited from System.AttributeSystem.AttributeSystem::Attribute) |
![]() ![]() | Attribute.InvokeAttribute.InvokeAttribute::Invoke | Provides access to properties and methods exposed by an object. (Inherited from System.AttributeSystem.AttributeSystem::Attribute) |
Remarks
This attribute is ignored unless the containing method is marked with the XdmFunctionAttributeXdmFunctionAttributeXdmFunctionAttribute, and the containing object is marked with XdmModuleAttributeXdmModuleAttributeXdmModuleAttribute.
The type specified by this attribute must be a subtype of the primitive
base type of the XDM type represented by the CLR type of the argument or
return value of the function annotated with this annotation. For example
if a function has an argument with CLR type intIntegerint then its
XDM type is xs:int
, whose primitive base type is xs:integer
.
This means that the argument can be annotated with any subtype of
xs:integer
.
If an argument or return value has a CLR type that is a subtype of XPathItemXPathItemXPathItem (for example XPathNavigatorXPathNavigatorXPathNavigator) then the type that can be specified by this attribute must be representable by the argument.
If at runtime a value passed to an argument cannot be converted from the declared
type to the CLR type then an ANDY1000
error is raised at runtime. Similarly if a
value returned from a function cannot be converted to its declared type, or if a
value returned is of a type annotated with XDM type information (for example
XPathAtomicValueXPathAtomicValueXPathAtomicValue) and is not a subtype of the functions declared
type then an ANDY1000
error is raised at runtime.