| schema location: | E:\GriPhyN\VDL\vdl-1.11.xsd |
| targetNamespace: | http://www.griphyn.org/working_groups/VDS/vdl-1.11.xsd |
| Elements | Groups | Complex types | Simple types |
| chunk | ApplicationGroup | DerivationType | ContainerType |
| definitions | DerivationGroup | LFNType | LinkageType |
| TranformationGroup | TransformationType | UniverseType | |
| UseType |
| diagram | ![]() |
|||||||||||||||
| children | use lfn br | |||||||||||||||
| used by |
|
|||||||||||||||
| attributes |
|
|||||||||||||||
| source | <xs:element name="chunk"> <xs:annotation> <xs:documentation>A "chunk" describes an arbitrary, namable piece of a parameter file or command line arg for an executable.</xs:documentation> </xs:annotation> <xs:complexType mixed="true"> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Each chunk may contain an arbitrary number of variable references "use", explicit logical filenames "lfn" and rendering instructions "br".</xs:documentation> </xs:annotation> <xs:element name="use" type="UseType"> <xs:annotation> <xs:documentation>"use" references a bound parameter.</xs:documentation> </xs:annotation> </xs:element> <xs:element name="lfn" type="LFNType"> <xs:annotation> <xs:documentation>"lfn" marks a logical filename.</xs:documentation> </xs:annotation> </xs:element> <xs:element name="br"> <xs:annotation> <xs:documentation>"br" is a whitespace mark-up tag for chunk rendering.</xs:documentation> </xs:annotation> <xs:complexType> <xs:annotation> <xs:documentation>visual markup</xs:documentation> </xs:annotation> <xs:attribute name="ws" default="crlf"> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="crlf"/> <xs:enumeration value="cr"/> <xs:enumeration value="lf"/> <xs:enumeration value="sp"/> <xs:enumeration value="ht"/> <xs:enumeration value="vt"/> <xs:enumeration value="ff"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element> </xs:choice> <xs:attribute name="name" type="xs:token"/> <xs:attribute name="render" type="xs:string"> <xs:annotation> <xs:appinfo>Experimental feature, very unsure about this!</xs:appinfo> </xs:annotation> </xs:attribute> </xs:complexType> </xs:element> |
| diagram | ![]() |
||||||||||||||||||||
| type | UseType | ||||||||||||||||||||
| attributes |
|
||||||||||||||||||||
| source | <xs:element name="use" type="UseType"> <xs:annotation> <xs:documentation>"use" references a bound parameter.</xs:documentation> </xs:annotation> </xs:element> |
| diagram | ![]() |
|||||||||||||||
| type | LFNType | |||||||||||||||
| attributes |
|
|||||||||||||||
| source | <xs:element name="lfn" type="LFNType"> <xs:annotation> <xs:documentation>"lfn" marks a logical filename.</xs:documentation> </xs:annotation> </xs:element> |
| diagram | ![]() |
|||||||||||||||
| children | transformation derivation | |||||||||||||||
| attributes |
|
|||||||||||||||
| source | <xs:element name="definitions"> <xs:annotation> <xs:documentation>The virtual data modification language.</xs:documentation> </xs:annotation> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>A VDL document consists of any number of "transformation" and "derivation" elements in arbitrary order.</xs:documentation> </xs:annotation> <xs:element name="transformation" type="TransformationType"/> <xs:element name="derivation" type="DerivationType"/> </xs:choice> <xs:attribute name="version" type="xs:string" use="required"/> <xs:attribute name="vdlns" type="xs:string" use="optional"/> </xs:complexType> </xs:element> |
| diagram | ![]() |
||||||||||||||||||||
| type | TransformationType | ||||||||||||||||||||
| children | formal-parameter transformation-body | ||||||||||||||||||||
| attributes |
|
||||||||||||||||||||
| source | <xs:element name="transformation" type="TransformationType"/> |
| diagram | ![]() |
||||||||||||||||||||||||||||||
| type | DerivationType | ||||||||||||||||||||||||||||||
| children | actual-parameter | ||||||||||||||||||||||||||||||
| attributes |
|
||||||||||||||||||||||||||||||
| source | <xs:element name="derivation" type="DerivationType"/> |
| diagram | ![]() |
||
| children | lfn use | ||
| used by |
|
||
| source | <xs:group name="ApplicationGroup"> <xs:annotation> <xs:documentation>Mixed content, limiting to one choice out of "lfn" and "use".</xs:documentation> </xs:annotation> <xs:choice minOccurs="0"> <xs:element name="lfn" type="LFNType"/> <xs:element name="use" type="UseType"/> </xs:choice> </xs:group> |
| diagram | ![]() |
|||||||||||||||
| type | LFNType | |||||||||||||||
| attributes |
|
|||||||||||||||
| source | <xs:element name="lfn" type="LFNType"/> |
| diagram | ![]() |
||||||||||||||||||||
| type | UseType | ||||||||||||||||||||
| attributes |
|
||||||||||||||||||||
| source | <xs:element name="use" type="UseType"/> |
| diagram | ![]() |
||
| children | lfn | ||
| used by |
|
||
| source | <xs:group name="DerivationGroup"> <xs:annotation> <xs:documentation>Mixed content allowing only "lfn" in derivations.</xs:documentation> </xs:annotation> <xs:choice minOccurs="0"> <xs:annotation> <xs:documentation>You can use either pure text or the "lfn" element. Mixed content allows mixing, but you should not mix.</xs:documentation> </xs:annotation> <xs:element name="lfn" type="LFNType"/> </xs:choice> </xs:group> |
| diagram | ![]() |
|||||||||||||||
| type | LFNType | |||||||||||||||
| attributes |
|
|||||||||||||||
| source | <xs:element name="lfn" type="LFNType"/> |
| diagram | ![]() |
||
| children | lfn use | ||
| used by |
|
||
| source | <xs:group name="TranformationGroup"> <xs:annotation> <xs:documentation>Mixed content including "use" and "lfn" elements in transformations.</xs:documentation> </xs:annotation> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="lfn" type="LFNType"/> <xs:element name="use" type="UseType"/> </xs:choice> </xs:group> |
| diagram | ![]() |
|||||||||||||||
| type | LFNType | |||||||||||||||
| attributes |
|
|||||||||||||||
| source | <xs:element name="lfn" type="LFNType"/> |
| diagram | ![]() |
||||||||||||||||||||
| type | UseType | ||||||||||||||||||||
| attributes |
|
||||||||||||||||||||
| source | <xs:element name="use" type="UseType"/> |
| diagram | ![]() |
||||||||||||||||||||||||||||||
| children | actual-parameter | ||||||||||||||||||||||||||||||
| used by |
|
||||||||||||||||||||||||||||||
| attributes |
|
||||||||||||||||||||||||||||||
| source | <xs:complexType name="DerivationType"> <xs:annotation> <xs:documentation>A "derivation" makes use of previous or outside transformations, and fills the placeholders with specific values.</xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="actual-parameter"> <xs:annotation> <xs:documentation>A "derivation" contains actual parameters. This element must occur, even if the list is empty.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="pass"> <xs:annotation> <xs:documentation>The "pass" element established the binding between an actual parameter with its named formal counterpart.</xs:documentation> </xs:annotation> <xs:complexType> <xs:choice> <xs:element name="scalar"> <xs:complexType mixed="true"> <xs:group ref="DerivationGroup"/> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> <xs:element name="list"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="i"> <xs:annotation> <xs:documentation>Each element in a list may have an optional index for sparse vectors.</xs:documentation> </xs:annotation> <xs:complexType mixed="true"> <xs:group ref="DerivationGroup"/> <xs:attribute name="index" type="xs:unsignedInt" use="optional"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> <xs:element name="hash"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="kv"> <xs:annotation> <xs:documentation>Each hash item requires a mandatory key.</xs:documentation> </xs:annotation> <xs:complexType mixed="true"> <xs:group ref="DerivationGroup"/> <xs:attribute name="key" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> </xs:choice> <xs:attribute name="bind" type="xs:token" use="required"/> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="uses" type="xs:token" use="required"/> <xs:attribute name="maxIncludeVersion" type="xs:string" default="unbounded"/> <xs:attribute name="minIncludeVersion" type="xs:string" default="unbounded"/> <xs:attribute name="name" type="xs:token" use="optional"/> <xs:attribute name="vdlns" type="xs:string" use="optional"/> </xs:complexType> |
| diagram | ![]() |
| children | pass |
| source | <xs:element name="actual-parameter"> <xs:annotation> <xs:documentation>A "derivation" contains actual parameters. This element must occur, even if the list is empty.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="pass"> <xs:annotation> <xs:documentation>The "pass" element established the binding between an actual parameter with its named formal counterpart.</xs:documentation> </xs:annotation> <xs:complexType> <xs:choice> <xs:element name="scalar"> <xs:complexType mixed="true"> <xs:group ref="DerivationGroup"/> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> <xs:element name="list"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="i"> <xs:annotation> <xs:documentation>Each element in a list may have an optional index for sparse vectors.</xs:documentation> </xs:annotation> <xs:complexType mixed="true"> <xs:group ref="DerivationGroup"/> <xs:attribute name="index" type="xs:unsignedInt" use="optional"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> <xs:element name="hash"> <xs:complexType> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="kv"> <xs:annotation> <xs:documentation>Each hash item requires a mandatory key.</xs:documentation> </xs:annotation> <xs:complexType mixed="true"> <xs:group ref="DerivationGroup"/> <xs:attribute name="key" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> </xs:choice> <xs:attribute name="bind" type="xs:token" use="required"/> <xs:attribute name="name" type="xs:token" use="optional"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> |
| diagram |