This Schema defines the Digital Signature Service Core Protocols, Elements, and Bindings Working Draft 34 This Type type is used to match optional inputs, optional outputs and to make the Schema extensible where <xs:any namespace="##other" processContents="lax"/> is not possible due to unique particle attributtion rules. This Type clearly expresses the fact that content of InlineXML should be equivalent to a complete XML Document. I.e. having only one DocumentElement and not allowing anything but PI's and Comments before and after this one element. The attribute ignorePIsComments indicates how to deal with PI's and Comments as a number of parsers will also ignore them and a server will have to be able to know if PI's and Comments have gone missing after parsing and if the client would have wanted them to be signed. <xs:element name="Other" type="dss:AnyType"/> allowes to introduce new top level elements from namespaces including dss to support other types of input documents in the future. <xs:any namespace="##other" processContents="lax"/> is not possible here to allow extensibility as more than one namespace (i.e. ds, dss) are used in the choice hence <xs:element name="Other" type="dss:AnyType"/> allowes to introduce new top level elements from namespaces including dss to support other types of signatures in the future. "dss:AnyType"/> matches any top level element of any namespace, hence OptionalInputs can contain 0..* top level elements. It should however not contain elements that are not declared as optional inputs by normative text of the dss-core or dss-profiles. "dss:AnyType"/> matches any top level element of any namespace, hence OptionalInputs can contain 0..* top level elements. It should however not contain elements that are not declared as optional outputs by normative text of the dss-core or dss-profiles. <xs:any namespace="##other" processContents="lax"/> is not possible here to allow extensibility as another namespace than the target namespace is used in the choice hence <xs:element name="Other" type="dss:AnyType"/> allowes to introduce new top level elements from namespaces including dss to support other types of key selectors in the future. Note that namespace="##other" is the complement of the target namespace. Note also that xml schema does not support complements for other namespaces or sets of namespaces which is a defect in xml schema. It only supports sets of namespaces which is not useful however as we cannot know which namespaces might be relevant in the future. RefURI overrides the of <dss:Document>