From cd5e0ee39b881630e0435c0a6035cd51afeb0ddb Mon Sep 17 00:00:00 2001 From: Peter Lobner <59915824+peter-lobner@users.noreply.github.com> Date: Thu, 2 Nov 2023 14:44:21 +0100 Subject: [PATCH 1/3] Add Classification Support via GElementCommon --- schema/SystemStructureCommon.xsd | 811 +++++++++++++++++-------------- 1 file changed, 441 insertions(+), 370 deletions(-) diff --git a/schema/SystemStructureCommon.xsd b/schema/SystemStructureCommon.xsd index bf60ef5..ab6d8e8 100644 --- a/schema/SystemStructureCommon.xsd +++ b/schema/SystemStructureCommon.xsd @@ -1,9 +1,8 @@ - - - + + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructure 2.0 common content across formats. @@ -39,202 +38,288 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - + + + + This attribute group specifies the attributes common to all model elements. - - - - + + + + This attribute gives the model element a file-wide unique id which can be referenced from other elements or via URI fragment identifier. - - - - - + + + + + This attribute gives a human readable longer description of the model element, which can be shown to the user where appropriate. - - - - - - - + + + + + + + Common element content for all modeling elements of the STC file. + + + + + + + This element, which can occur multiple times, provides a set of classifications + of an STC modeling element, provided as Keyword Value Pairs (KWP), the meaning + of which is interpreted according to the name of the classification provided in + the name attribute. + + This approach can be used, for example, to provide searchable keywords for + content, or to assign and track quality or validation level requirements + across the STC process, or to maintain variant or other classification + content across the process. + + + + + + + + This element provides a keyword value pair entry, with the + keyword provided through the keyword attribute and the value + being the contents of the element. + + + + + + + + + + This attribute gives the keyword for the classification entry + (i.e. keyword value pair). It is left undefined whether this + must be unique across the entries of the Classification element, + or whether repeated entries are allowed. This will depend on + the definition of the classification. + + + + + + + + This attribute gives an optional link for the classification + entry (i.e. keyword value pair). This link can be given in + addition to any content of the classification entry, or it + can be the sole information of the classification entry. + The rules will depend on the definition of the classification. + + + + + + + + + + + This attribute provides the name of the type of classification + being provided. The name should be unique across the Classification + elements of the immediately enclosing element. + + In order to ensure uniqueness all types should be identified + with reverse domain name notation (cf. Java package names + or Apple UTIs) of a domain that is controlled by the entity + defining the semantics and content of the classification. + + + + + + + + This attribute gives an optional link for the classification + itself. This link can be given to provide additional, + potentially human readable information on the classification + type that tools can use to provide this information to the + user, especially for unknown classification types. + + + + + + + + + + + + This attribute group specifies the optional meta-data attributes common to all top-level container elements of all defined file formats. - - - - + + + + This attribute gives the name of the author of this file's content. - - - - - + + + + + This attribute gives a version number for this file's content. - - - - - + + + + + This attribute gives copyright information for this file's content. - - - - - + + + + + This attribute gives license information for this file's content. - - - - - + + + + + This attribute gives the name of the tool that generated this file. - - - - - + + + + + This attribute gives the date and time this file was generated. - - - - - - - - - - - - - - - - - - - - - - - - Name of the Enumeration Item - - - - - The Value of the Enumeration Item - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + Name of the Enumeration Item + + + + + The Value of the Enumeration Item + + + + + + + + + + This attribute specifies the name of the enumeration in the system description, which must be unique within in the system description. - - - - - - - - - - - - - - - - - Exponent of SI base unit "kg" - - - - - Exponent of SI base unit "m" - - - - - Exponent of SI base unit "s" - - - - - Exponent of SI base unit "A" - - - - - Exponent of SI base unit "K" - - - - - Exponent of SI base unit "mol" - - - - - Exponent of SI base unit "cd" - - - - - Exponent of SI derived unit "rad" - - - - - - - - - - - - + + + + + + + + + + + + + + + Exponent of SI base unit "kg" + + + + + Exponent of SI base unit "m" + + + + + Exponent of SI base unit "s" + + + + + Exponent of SI base unit "A" + + + + + Exponent of SI base unit "K" + + + + + Exponent of SI base unit "mol" + + + + + Exponent of SI base unit "cd" + + + + + Exponent of SI derived unit "rad" + + + + + + + + + + + + This attribute specifies the name of the unit in the system description, which must be unique within in the system description. - - - - - - - - - - - - - - + + + + + + + + + + + + + The unique name of the type of the annotation. In order to ensure uniqueness all types should be identified @@ -248,26 +333,25 @@ For MAP-SSP defined annotations, this will be a domain under the org.modelica prefix. - - - - - - - - - - - + + + + + + + + + + This element gives the type of a connector or signal dictionary entry (called entity below). - - - - - - + + + + + + This attribute gives the unit of the entity and must reference one of the unit definitions provided in the Units element of the containing file. @@ -279,15 +363,15 @@ If a unit cannot be deduced unambinguously, the user should be informed of this error. - - - - - - - - - + + + + + + + + + This attribute gives the unit of the entity and must reference one of the unit definitions provided in the Units element of the containing file. @@ -299,15 +383,15 @@ If a unit cannot be deduced unambinguously, the user should be informed of this error. - - - - - - - - - + + + + + + + + + This attribute gives the unit of the entity and must reference one of the unit definitions provided in the Units element of the containing file. @@ -319,73 +403,62 @@ If a unit cannot be deduced unambinguously, the user should be informed of this error. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This attribute specifies the name of the enumeration which references into the set of defined enumerations of the system structure description, as contained in the Enumerations element of the root element. - - - - - - - - - + + + + + + + + + This optional attribute specifies the MIME type of the underlying binary data, which defaults to the non-specific application/octet-stream type. This information can be @@ -396,32 +469,31 @@ service, i.e. it remains the responsibility of the operator to ensure only compatible binary connectors are connected. - - - - - - - - - - + + + + + + + + + This element specifies the transformation to be applied to a value prior to its use in a connection or parameter mapping. - - - - - + + + + + This element provides for a linear transformation to be performed on the parameter values and is valid for parameters of a continuous type. - - - - - + + + + + This attribute specifies an optional factor value to use in a linear transformation of the source parameter value to the target parameter value, i.e. in the calculation target = factor * source + offset. @@ -431,11 +503,11 @@ linear transformation, i.e. the value of source is already converted to the target unit in the formula above. - - - - - + + + + + This attribute specifies an optional offset value to use in a linear transformation of the source parameter value to the target parameter value, i.e. in the calculation target = factor * source + offset. @@ -445,115 +517,114 @@ linear transformation, i.e. the value of source is already converted to the target unit in the formula above. - - - - - - - + + + + + + + This element provides for a transformation of boolean parameter values based on a mapping table and is valid for parameters of boolean type. Each mapping table entry is provided by a MapEntry element. - - - - - - - - + + + + + + + + This attribute gives the value of the parameter in the parameter source that this entry applies to. - - - - - + + + + + This attribute gives the value of the parameter to use when applying it to the system or component that is to be parametrized. - - - - - - - - - - + + + + + + + + + + This element provides for a transformation of integer parameter values based on a mapping table and is valid for parameters of all integer and enumeration types. Each mapping table entry is provided by a MapEntry element. - - - - - - - - + + + + + + + + This attribute gives the value of the parameter in the parameter source that this entry applies to. - - - - - + + + + + This attribute gives the value of the parameter to use when applying it to the system or component that is to be parametrized. - - - - - - - - - - + + + + + + + + + + This element provides for a transformation of enumeration parameter values based on a mapping table of their enumeration item names and is valid for parameters of enumeration type. Each mapping table entry is provided by a MapEntry element. - - - - - - - - + + + + + + + + This attribute gives the value of the parameter in the parameter source that this entry applies to. - - - - - + + + + + This attribute gives the value of the parameter to use when applying it to the system or component that is to be parametrized. - - - - - - - - - - + + + + + + + + + From 2e43b701c4e6abf3a3a6a395caa2c0deb7227a7f Mon Sep 17 00:00:00 2001 From: Peter Lobner <59915824+peter-lobner@users.noreply.github.com> Date: Thu, 2 Nov 2023 14:50:06 +0100 Subject: [PATCH 2/3] Add SRMD support via GElementCommon group --- schema/SystemStructureDescription.xsd | 841 ++++++++++---------- schema/SystemStructureDescription11.xsd | 851 ++++++++++----------- schema/SystemStructureParameterMapping.xsd | 110 ++- schema/SystemStructureParameterValues.xsd | 446 ++++++----- schema/SystemStructureSignalDictionary.xsd | 86 +-- 5 files changed, 1136 insertions(+), 1198 deletions(-) diff --git a/schema/SystemStructureDescription.xsd b/schema/SystemStructureDescription.xsd index 2e257c3..790a62a 100644 --- a/schema/SystemStructureDescription.xsd +++ b/schema/SystemStructureDescription.xsd @@ -1,10 +1,7 @@ - - - + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureDescription 2.0 format. @@ -40,55 +37,52 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + Version of SSD format, 2.0-alpha for this release. - - - - - - - - - - + + + + + + + + + + This attribute gives the system structure a name, which can be used for purposes of presenting the system structure to the user, e.g. when selecting individual variant SSDs from an SSP. - - - - - - - - - - + + + + + + + + + This is the base type for all elements, currently consisting of components and systems. - - - - - + + + + + The set of connectors of this element, which represent the interface of the element to the outside world. @@ -102,11 +96,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This optional element defines the geometry information of the component. (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right corners of the component in the coordinate system of the parent. @@ -124,64 +118,61 @@ ratio. The optional attribute iconFlip defines whether any flipping indicated by (x1,y1), (x2, y2) shall be applied to the icon graphics, too. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + The set of parameter bindings for this element. - - - - - - - + + + + + + + + This attribute gives the element a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the element's connectors in connections. - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + This attribute specifies the MIME type of the component, which defaults to application/x-fmu-sharedlibrary to indicate an FMU. When referencing another system structure definition file, the MIME type application/x-ssp-definition is used, and the MIME type application/x-ssp-package is used for referenced system structure packages (SSPs). No further types are currently defined. - - - - - + + + + + This attribute indicates the source of the component as an URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. Therefore for components @@ -217,11 +208,11 @@ support any absolute URIs and any specific URI schemes (but are of course allowed to support any and all kinds of URIs where useful). - - - - - + + + + + When the referenced component is an FMU that contains multiple implementations (e.g. Co-Simulation and Model Exchange), this optional attribute can be used to determine which FMU implementation should be @@ -231,24 +222,23 @@ FMU implementation must be used. It is an error if the specified type of FMU implementation is not present in the FMU. - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + This element defines a signal dictionary, describing the signal dictionary entries present in the signal dictionary. @@ -262,10 +252,10 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + This attribute indicates the source of the signal dictionary as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. @@ -296,11 +286,11 @@ For the default type application/x-ssp-signal-dictionary such inline content must be an ssb:SignalDictionary element. - - - - - + + + + + This attribute gives the signal dictionary a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the signal dictionary referenced by a @@ -311,22 +301,18 @@ until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - - - - - - - - - + + + + + + + + + + + + This attribute gives the name of the signal dictionary that is to be referenced. Name lookups occur in hierarchical fashion, i.e. the name is first looked up in the system that contains a signal @@ -334,40 +320,39 @@ is performed on the enclosing system, etc., until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - - + + + + + + + + This element describes a system, which can contain components and other systems as elements, connectors as an interface to the outside world, and connections connecting the connectors of itself and of its elements to another. - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + This element specifies a connection between two connectors, either of the system or its directly contained elements. Note that connections between connectors on a system are @@ -393,20 +378,20 @@ must match, i.e. either both are input or both output or both parameter or both calculatedParameter. - - - - - - + + + + + + This optional element specifies a transformation that is to be applied to the source value prior to its conveyance to the target. - - - - - + + + + + This optional element defines the geometry information of the connection. The start and end coordinates of the connection are derived automatically through the coordinates of the corresponding connectors. The only relevant @@ -419,68 +404,68 @@ Note that x and y coordinates are in the coordinate system of the enclosing system. - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + This attribute gives the name of the element that contains the connector given as startConnector. If the attribute is elided, then the startConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the start of the connection. If startElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute gives the name of the element that contains the connector given as endConnector. If the attribute is elided, then the endConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the end of the connection. If endElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute specifies whether automatic conversions between start and end connector are performed using unit information potentially available for both start and end definitions. If this attribute is @@ -492,17 +477,17 @@ is performed instead of any unit conversions, whereas otherwise the linear transformation is performed in addition to any unit conversions. - - - - - - - - - - - + + + + + + + + + + + This optional element defines the extent of the system canvas. (x1,y1) and (x2,y2) define the lower-left and upper-right corner, respectively. @@ -522,17 +507,17 @@ is the respective coordinate of the sub-system when instantiated in the parent system after rotation. - - - - - - - - - - - + + + + + + + + + + + This optional element contains the set of purely graphical elements that are contained in the system, e.g. things like notes, which have no semantic impact on the system but aid in presentation of the system in @@ -543,13 +528,13 @@ in the future more elements might be added as needed for exchange of graphical information. - - - - - - - + + + + + + + This element defines a graphical note to be placed on the canvas of the enclosing system. It is sized using the attributes so that the coordinates (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right @@ -562,33 +547,31 @@ or other means) to show the remainder of the note text. Inside the text attribute, newlines indicate paragraph breaks. - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + This element gives the type of the connector. If a type is not supplied, the type is determined through @@ -600,11 +583,11 @@ differs from the type of the underlying FMU variable this constitutes an error. - - - - - + + + + + This optional element gives the geometry information of the connector. Note that x and y coordinates are in a special coordinate system, where 0,0 is the lower-left corner of the component/system, and 1,1 is the @@ -616,18 +599,18 @@ determined by the ElementGeometry for the outside view, and the one determined by SystemGeometry for the inside view. - - - - - - - - - - - - + + + + + + + + + + + + This attribute gives the connector a name, which shall be unique within the component or system and, for components, must match the name of a relevant @@ -640,11 +623,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This attribute specifies the kind of the given connector, which indicates whether the connector is an input, an output, both (inout), a constant, a parameter, a calculated parameter @@ -677,29 +660,28 @@ This can be used for example to allow a connector to function as both an input and output within the same SignalDictionaryReference. - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + This provides a parameter binding for a component or system. For FMU components this allows the parametrization of the FMU's parameters and start values of other variables with a parameter source (e.g. a parameter file). Note that in this case the names @@ -750,12 +732,12 @@ of the system. Therefore they take priority over any of the existing parameter bindings (for parameters with identical names). - - - - - - + + + + + + This optional element can be used to provide parameter values inline to the parameter binding, in which case the source attribute of the ParameterBinding element must be empty. @@ -766,10 +748,10 @@ MIME type (in that case there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + This element provides an optional parameter mapping, which specifies how the parameter names and values provided in the parameter source are to be mapped to the parameters of the component or system in question. If no @@ -807,10 +789,10 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + This attribute indicates the source of the parameter mapping as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -842,42 +824,42 @@ inline as contents of the ParameterMapping element, which must be empty otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + This attribute specifies the MIME type of the parameter source, which defaults to application/x-ssp-parameter-set to indicate the SSP parameter set file format. No further types are currently defined, but can of course be added at a later date, e.g. for pre-existing parameter file formats, like CDF, etc. - - - - - + + + + + This attribute indicates the source of the parameters as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -893,27 +875,27 @@ inline as contents of a ParameterValues element, which must not be present otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - + + + + + + + + + + + Defines the optional prefix for name resolution and mapping purposes for this binding. If this attribute is empty or not supplied no prefix is used for name resolution and mapping, otherwise the specified @@ -925,33 +907,32 @@ as a prefix on the binding, thus causing all parameter names in the parameter set to be treated as if they were specified with proper hierarchical names. - - - - - - - - - - + + + + + + + + + The attributes of this element, if present, specify reasonable default values for running an experiment of the given system. Any tool is free to ignore this information. - - - - - - - Default start time of simulation - - - - - Default stop time of simulation - - - + + + + + + + Default start time of simulation + + + + + Default stop time of simulation + + + diff --git a/schema/SystemStructureDescription11.xsd b/schema/SystemStructureDescription11.xsd index 11ab537..1bfc1e3 100644 --- a/schema/SystemStructureDescription11.xsd +++ b/schema/SystemStructureDescription11.xsd @@ -1,14 +1,7 @@ - - - + + + This is the XML Schema 1.1 schema for the MAP SSP SystemStructureDescription 2.0 format. It is provided as a non-normative alternative to the XML Schema 1.0 schema @@ -46,58 +39,55 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + Version of SSD format, 2.0-alpha for this release. - - - - - - - - - - + + + + + + + + + + This attribute gives the system structure a name, which can be used for purposes of presenting the system structure to the user, e.g. when selecting individual variant SSDs from an SSP. - - - - - - - - - - + + + + + + + + + This is the base type for all elements, currently consisting of components and systems. - - - - - + + + + + The set of connectors of this element, which represent the interface of the element to the outside world. @@ -111,11 +101,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This optional element defines the geometry information of the component. (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right corners of the component in the coordinate system of the parent. @@ -133,64 +123,61 @@ ratio. The optional attribute iconFlip defines whether any flipping indicated by (x1,y1), (x2, y2) shall be applied to the icon graphics, too. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + The set of parameter bindings for this element. - - - - - - - + + + + + + + + This attribute gives the element a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the element's connectors in connections. - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + This attribute specifies the MIME type of the component, which defaults to application/x-fmu-sharedlibrary to indicate an FMU. When referencing another system structure definition file, the MIME type application/x-ssp-definition is used, and the MIME type application/x-ssp-package is used for referenced system structure packages (SSPs). No further types are currently defined. - - - - - + + + + + This attribute indicates the source of the component as an URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. Therefore for components @@ -226,11 +213,11 @@ support any absolute URIs and any specific URI schemes (but are of course allowed to support any and all kinds of URIs where useful). - - - - - + + + + + When the referenced component is an FMU that contains multiple implementations (e.g. Co-Simulation and Model Exchange), this optional attribute can be used to determine which FMU implementation should be @@ -240,24 +227,23 @@ FMU implementation must be used. It is an error if the specified type of FMU implementation is not present in the FMU. - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + This element defines a signal dictionary, describing the signal dictionary entries present in the signal dictionary. @@ -271,17 +257,17 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + + + + + This attribute indicates the source of the signal dictionary as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. @@ -293,11 +279,11 @@ For the default type application/x-ssp-signal-dictionary such inline content must be an ssb:SignalDictionary element. - - - - - + + + + + This attribute gives the signal dictionary a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the signal dictionary referenced by a @@ -308,22 +294,18 @@ until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - - - - - - - - - + + + + + + + + + + + + This attribute gives the name of the signal dictionary that is to be referenced. Name lookups occur in hierarchical fashion, i.e. the name is first looked up in the system that contains a signal @@ -331,40 +313,39 @@ is performed on the enclosing system, etc., until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - - + + + + + + + + This element describes a system, which can contain components and other systems as elements, connectors as an interface to the outside world, and connections connecting the connectors of itself and of its elements to another. - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + This element specifies a connection between two connectors, either of the system or its directly contained elements. Note that connections between connectors on a system are @@ -390,20 +371,20 @@ must match, i.e. either both are input or both output or both parameter or both calculatedParameter. - - - - - - + + + + + + This optional element specifies a transformation that is to be applied to the source value prior to its conveyance to the target. - - - - - + + + + + This optional element defines the geometry information of the connection. The start and end coordinates of the connection are derived automatically through the coordinates of the corresponding connectors. The only relevant @@ -416,68 +397,68 @@ Note that x and y coordinates are in the coordinate system of the enclosing system. - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + This attribute gives the name of the element that contains the connector given as startConnector. If the attribute is elided, then the startConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the start of the connection. If startElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute gives the name of the element that contains the connector given as endConnector. If the attribute is elided, then the endConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the end of the connection. If endElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute specifies whether automatic conversions between start and end connector are performed using unit information potentially available for both start and end definitions. If this attribute is @@ -489,17 +470,17 @@ is performed instead of any unit conversions, whereas otherwise the linear transformation is performed in addition to any unit conversions. - - - - - - - - - - - + + + + + + + + + + + This optional element defines the extent of the system canvas. (x1,y1) and (x2,y2) define the lower-left and upper-right corner, respectively. @@ -519,17 +500,17 @@ is the respective coordinate of the sub-system when instantiated in the parent system after rotation. - - - - - - - - - - - + + + + + + + + + + + This optional element contains the set of purely graphical elements that are contained in the system, e.g. things like notes, which have no semantic impact on the system but aid in presentation of the system in @@ -540,13 +521,13 @@ in the future more elements might be added as needed for exchange of graphical information. - - - - - - - + + + + + + + This element defines a graphical note to be placed on the canvas of the enclosing system. It is sized using the attributes so that the coordinates (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right @@ -559,33 +540,31 @@ or other means) to show the remainder of the note text. Inside the text attribute, newlines indicate paragraph breaks. - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + This element gives the type of the connector. If a type is not supplied, the type is determined through @@ -597,11 +576,11 @@ differs from the type of the underlying FMU variable this constitutes an error. - - - - - + + + + + This optional element gives the geometry information of the connector. Note that x and y coordinates are in a special coordinate system, where 0,0 is the lower-left corner of the component/system, and 1,1 is the @@ -613,18 +592,18 @@ determined by the ElementGeometry for the outside view, and the one determined by SystemGeometry for the inside view. - - - - - - - - - - - - + + + + + + + + + + + + This attribute gives the connector a name, which shall be unique within the component or system and, for components, must match the name of a relevant @@ -637,11 +616,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This attribute specifies the kind of the given connector, which indicates whether the connector is an input, an output, both (inout), a constant, a parameter, a calculated parameter @@ -674,29 +653,28 @@ This can be used for example to allow a connector to function as both an input and output within the same SignalDictionaryReference. - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + This provides a parameter binding for a component or system. For FMU components this allows the parametrization of the FMU's parameters and start values of other variables with a parameter source (e.g. a parameter file). Note that in this case the names @@ -747,12 +725,12 @@ of the system. Therefore they take priority over any of the existing parameter bindings (for parameters with identical names). - - - - - - + + + + + + This optional element can be used to provide parameter values inline to the parameter binding, in which case the source attribute of the ParameterBinding element must be empty. @@ -763,17 +741,17 @@ MIME type (in that case there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + + + + + This element provides an optional parameter mapping, which specifies how the parameter names and values provided in the parameter source are to be mapped to the parameters of the component or system in question. If no @@ -792,17 +770,17 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + + + + + This attribute indicates the source of the parameter mapping as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -815,42 +793,42 @@ inline as contents of the ParameterMapping element, which must be empty otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + This attribute specifies the MIME type of the parameter source, which defaults to application/x-ssp-parameter-set to indicate the SSP parameter set file format. No further types are currently defined, but can of course be added at a later date, e.g. for pre-existing parameter file formats, like CDF, etc. - - - - - + + + + + This attribute indicates the source of the parameters as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -866,27 +844,27 @@ inline as contents of a ParameterValues element, which must not be present otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - + + + + + + + + + + + Defines the optional prefix for name resolution and mapping purposes for this binding. If this attribute is empty or not supplied no prefix is used for name resolution and mapping, otherwise the specified @@ -898,33 +876,32 @@ as a prefix on the binding, thus causing all parameter names in the parameter set to be treated as if they were specified with proper hierarchical names. - - - - - - - - - - + + + + + + + + + The attributes of this element, if present, specify reasonable default values for running an experiment of the given system. Any tool is free to ignore this information. - - - - - - - Default start time of simulation - - - - - Default stop time of simulation - - - + + + + + + + Default start time of simulation + + + + + Default stop time of simulation + + + diff --git a/schema/SystemStructureParameterMapping.xsd b/schema/SystemStructureParameterMapping.xsd index 19f9123..4af7251 100644 --- a/schema/SystemStructureParameterMapping.xsd +++ b/schema/SystemStructureParameterMapping.xsd @@ -1,10 +1,8 @@ - - - + + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureParameterMapping 2.0 format. @@ -40,67 +38,64 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - + + + + + + + + + + + Version of SSM format, 2.0-alpha for this release. - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + This optional element specifies a transformation that is to be applied to the parameter value prior to its application to its target parameter. - - - - - - - - + + + + + + + + This attribute specifies the name of the parameter in the parameter source that is to be mapped to a new name and/or provided with a transformation in this mapping entry. - - - - - + + + + + This attribute specifies the name of the parameter in the system or component that is to be parametrized, i.e. that is the target of this mapping entry. - - - - - + + + + + This attribute specifies whether automatic conversions between start and end connector are performed using unit information potentially available for both start and end definitions. If this attribute is @@ -112,8 +107,7 @@ is performed instead of any unit conversions, whereas otherwise the linear transformation is performed in addition to any unit conversions. - - - - + + + diff --git a/schema/SystemStructureParameterValues.xsd b/schema/SystemStructureParameterValues.xsd index 4243c70..032b981 100644 --- a/schema/SystemStructureParameterValues.xsd +++ b/schema/SystemStructureParameterValues.xsd @@ -1,10 +1,7 @@ - - - + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureParameterValues 2.0 format. @@ -40,248 +37,244 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - - - + + + + + + + + + + + + + Version of SSV format, 2.0-alpha for this release. - - - - - - - - - - - + + + + + + + + + + + Name of the Parameter Set. - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + This attribute gives the value of the parameter. - - - - - + + + + + This attribute gives the unit of the parameter value and must reference one of the unit definitions provided in the Units element of the enclosing file. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - + + + + + This attribute gives the unit of the parameter value and must reference one of the unit definitions provided in the Units element of the enclosing file. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - + + + + + This attribute gives the unit of the parameter value and must reference one of the unit definitions provided in the Units element of the enclosing file. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter as the enumeration item name. Note that the actual numeric value this value is mapped to at run time will depend on the item mapping of the enumeration type of the variables being parameterized. - - - - - + + + + + This attribute specifies the name of the enumeration which references into the set of defined enumerations of the system structure description, as contained in @@ -297,15 +290,15 @@ that information for user interface purposes, and/or for additional consistency checking. - - - - - - - - - + + + + + + + + + This optional attribute specifies the MIME type of the underlying binary data, which defaults to the non-specific application/octet-stream type. This information can be @@ -317,30 +310,29 @@ ensure only compatible binary connectors/parameters are connected. - - - - - + + + + + This attribute gives the value of the parameter as a hex encoded binary value. - - - - - - - - - - - + + + + + + + + + + + This attribute specifies the name of the parameter in the parameter set, which must be unique within in the parameter set. - - - - + + + diff --git a/schema/SystemStructureSignalDictionary.xsd b/schema/SystemStructureSignalDictionary.xsd index 36e70fb..fb9f51d 100644 --- a/schema/SystemStructureSignalDictionary.xsd +++ b/schema/SystemStructureSignalDictionary.xsd @@ -1,10 +1,8 @@ - - - + + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureSignalDictionary 2.0 format. @@ -40,49 +38,45 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - - - + + + + + + + + + + + + + Version of SSB format, 2.0-alpha for this release. - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + This attribute gives the dictionary entry a name, which shall be unique within the signal dictionary. - - - - + + + From 8054ea7b393243599c8fe27422d5705184391035 Mon Sep 17 00:00:00 2001 From: Peter Lobner <59915824+peter-lobner@users.noreply.github.com> Date: Fri, 3 Nov 2023 12:48:30 +0100 Subject: [PATCH 3/3] Fix formatting issues --- schema/SystemStructureCommon.xsd | 718 ++++++++--------- schema/SystemStructureDescription.xsd | 841 ++++++++++---------- schema/SystemStructureDescription11.xsd | 851 +++++++++++---------- schema/SystemStructureParameterMapping.xsd | 110 +-- schema/SystemStructureParameterValues.xsd | 446 +++++------ schema/SystemStructureSignalDictionary.xsd | 86 ++- 6 files changed, 1570 insertions(+), 1482 deletions(-) diff --git a/schema/SystemStructureCommon.xsd b/schema/SystemStructureCommon.xsd index ab6d8e8..e7899dc 100644 --- a/schema/SystemStructureCommon.xsd +++ b/schema/SystemStructureCommon.xsd @@ -1,8 +1,11 @@ - + - - + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructure 2.0 common content across formats. @@ -38,30 +41,32 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - + + + + + This attribute group specifies the attributes common to all model elements. - - - - + + + + This attribute gives the model element a file-wide unique id which can be referenced from other elements or via URI fragment identifier. - - - - - + + + + + This attribute gives a human readable longer description of the model element, which can be shown to the user where appropriate. - - - + + + + @@ -156,170 +161,177 @@ - - - + + + + This attribute group specifies the optional meta-data attributes common to all top-level container elements of all defined file formats. - - - - + + + + This attribute gives the name of the author of this file's content. - - - - - + + + + + This attribute gives a version number for this file's content. - - - - - + + + + + This attribute gives copyright information for this file's content. - - - - - + + + + + This attribute gives license information for this file's content. - - - - - + + + + + This attribute gives the name of the tool that generated this file. - - - - - + + + + + This attribute gives the date and time this file was generated. - - - - - - - - - - - - - - - - - - - - - Name of the Enumeration Item - - - - - The Value of the Enumeration Item - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + Name of the Enumeration Item + + + + + The Value of the Enumeration Item + + + + + + + + + + This attribute specifies the name of the enumeration in the system description, which must be unique within in the system description. - - - - - - - - - - - - - - - Exponent of SI base unit "kg" - - - - - Exponent of SI base unit "m" - - - - - Exponent of SI base unit "s" - - - - - Exponent of SI base unit "A" - - - - - Exponent of SI base unit "K" - - - - - Exponent of SI base unit "mol" - - - - - Exponent of SI base unit "cd" - - - - - Exponent of SI derived unit "rad" - - - - - - - - - - - - + + + + + + + + + + + + + + + + + Exponent of SI base unit "kg" + + + + + Exponent of SI base unit "m" + + + + + Exponent of SI base unit "s" + + + + + Exponent of SI base unit "A" + + + + + Exponent of SI base unit "K" + + + + + Exponent of SI base unit "mol" + + + + + Exponent of SI base unit "cd" + + + + + Exponent of SI derived unit "rad" + + + + + + + + + + + + This attribute specifies the name of the unit in the system description, which must be unique within in the system description. - - - - - - - - - - - - - + + + + + + + + + + + + + + The unique name of the type of the annotation. In order to ensure uniqueness all types should be identified @@ -333,25 +345,26 @@ For MAP-SSP defined annotations, this will be a domain under the org.modelica prefix. - - - - - - - - - - + + + + + + + + + + + This element gives the type of a connector or signal dictionary entry (called entity below). - - - - - - + + + + + + This attribute gives the unit of the entity and must reference one of the unit definitions provided in the Units element of the containing file. @@ -363,15 +376,15 @@ If a unit cannot be deduced unambinguously, the user should be informed of this error. - - - - - - - - - + + + + + + + + + This attribute gives the unit of the entity and must reference one of the unit definitions provided in the Units element of the containing file. @@ -383,15 +396,15 @@ If a unit cannot be deduced unambinguously, the user should be informed of this error. - - - - - - - - - + + + + + + + + + This attribute gives the unit of the entity and must reference one of the unit definitions provided in the Units element of the containing file. @@ -403,62 +416,73 @@ If a unit cannot be deduced unambinguously, the user should be informed of this error. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This attribute specifies the name of the enumeration which references into the set of defined enumerations of the system structure description, as contained in the Enumerations element of the root element. - - - - - - - - - + + + + + + + + + This optional attribute specifies the MIME type of the underlying binary data, which defaults to the non-specific application/octet-stream type. This information can be @@ -469,31 +493,32 @@ service, i.e. it remains the responsibility of the operator to ensure only compatible binary connectors are connected. - - - - - - - - - + + + + + + + + + + This element specifies the transformation to be applied to a value prior to its use in a connection or parameter mapping. - - - - - + + + + + This element provides for a linear transformation to be performed on the parameter values and is valid for parameters of a continuous type. - - - - - + + + + + This attribute specifies an optional factor value to use in a linear transformation of the source parameter value to the target parameter value, i.e. in the calculation target = factor * source + offset. @@ -503,11 +528,11 @@ linear transformation, i.e. the value of source is already converted to the target unit in the formula above. - - - - - + + + + + This attribute specifies an optional offset value to use in a linear transformation of the source parameter value to the target parameter value, i.e. in the calculation target = factor * source + offset. @@ -517,114 +542,115 @@ linear transformation, i.e. the value of source is already converted to the target unit in the formula above. - - - - - - - + + + + + + + This element provides for a transformation of boolean parameter values based on a mapping table and is valid for parameters of boolean type. Each mapping table entry is provided by a MapEntry element. - - - - - - - - + + + + + + + + This attribute gives the value of the parameter in the parameter source that this entry applies to. - - - - - + + + + + This attribute gives the value of the parameter to use when applying it to the system or component that is to be parametrized. - - - - - - - - - - + + + + + + + + + + This element provides for a transformation of integer parameter values based on a mapping table and is valid for parameters of all integer and enumeration types. Each mapping table entry is provided by a MapEntry element. - - - - - - - - + + + + + + + + This attribute gives the value of the parameter in the parameter source that this entry applies to. - - - - - + + + + + This attribute gives the value of the parameter to use when applying it to the system or component that is to be parametrized. - - - - - - - - - - + + + + + + + + + + This element provides for a transformation of enumeration parameter values based on a mapping table of their enumeration item names and is valid for parameters of enumeration type. Each mapping table entry is provided by a MapEntry element. - - - - - - - - + + + + + + + + This attribute gives the value of the parameter in the parameter source that this entry applies to. - - - - - + + + + + This attribute gives the value of the parameter to use when applying it to the system or component that is to be parametrized. - - - - - - - - - + + + + + + + + + + diff --git a/schema/SystemStructureDescription.xsd b/schema/SystemStructureDescription.xsd index 790a62a..5ccf8df 100644 --- a/schema/SystemStructureDescription.xsd +++ b/schema/SystemStructureDescription.xsd @@ -1,7 +1,10 @@ - - - + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureDescription 2.0 format. @@ -37,52 +40,55 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + Version of SSD format, 2.0-alpha for this release. - - - - - - - - - - + + + + + + + + + + This attribute gives the system structure a name, which can be used for purposes of presenting the system structure to the user, e.g. when selecting individual variant SSDs from an SSP. - - - - - - - - - + + + + + + + + + + This is the base type for all elements, currently consisting of components and systems. - - - - - + + + + + The set of connectors of this element, which represent the interface of the element to the outside world. @@ -96,11 +102,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This optional element defines the geometry information of the component. (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right corners of the component in the coordinate system of the parent. @@ -118,61 +124,64 @@ ratio. The optional attribute iconFlip defines whether any flipping indicated by (x1,y1), (x2, y2) shall be applied to the icon graphics, too. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + The set of parameter bindings for this element. - - - - - - - - + + + + + + + This attribute gives the element a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the element's connectors in connections. - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + This attribute specifies the MIME type of the component, which defaults to application/x-fmu-sharedlibrary to indicate an FMU. When referencing another system structure definition file, the MIME type application/x-ssp-definition is used, and the MIME type application/x-ssp-package is used for referenced system structure packages (SSPs). No further types are currently defined. - - - - - + + + + + This attribute indicates the source of the component as an URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. Therefore for components @@ -208,11 +217,11 @@ support any absolute URIs and any specific URI schemes (but are of course allowed to support any and all kinds of URIs where useful). - - - - - + + + + + When the referenced component is an FMU that contains multiple implementations (e.g. Co-Simulation and Model Exchange), this optional attribute can be used to determine which FMU implementation should be @@ -222,23 +231,24 @@ FMU implementation must be used. It is an error if the specified type of FMU implementation is not present in the FMU. - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + This element defines a signal dictionary, describing the signal dictionary entries present in the signal dictionary. @@ -252,10 +262,10 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + This attribute indicates the source of the signal dictionary as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. @@ -286,11 +296,11 @@ For the default type application/x-ssp-signal-dictionary such inline content must be an ssb:SignalDictionary element. - - - - - + + + + + This attribute gives the signal dictionary a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the signal dictionary referenced by a @@ -301,18 +311,22 @@ until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - - - - - + + + + + + + + + + + + + + + + This attribute gives the name of the signal dictionary that is to be referenced. Name lookups occur in hierarchical fashion, i.e. the name is first looked up in the system that contains a signal @@ -320,39 +334,40 @@ is performed on the enclosing system, etc., until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - + + + + + + + + + This element describes a system, which can contain components and other systems as elements, connectors as an interface to the outside world, and connections connecting the connectors of itself and of its elements to another. - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + This element specifies a connection between two connectors, either of the system or its directly contained elements. Note that connections between connectors on a system are @@ -378,20 +393,20 @@ must match, i.e. either both are input or both output or both parameter or both calculatedParameter. - - - - - - + + + + + + This optional element specifies a transformation that is to be applied to the source value prior to its conveyance to the target. - - - - - + + + + + This optional element defines the geometry information of the connection. The start and end coordinates of the connection are derived automatically through the coordinates of the corresponding connectors. The only relevant @@ -404,68 +419,68 @@ Note that x and y coordinates are in the coordinate system of the enclosing system. - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + This attribute gives the name of the element that contains the connector given as startConnector. If the attribute is elided, then the startConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the start of the connection. If startElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute gives the name of the element that contains the connector given as endConnector. If the attribute is elided, then the endConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the end of the connection. If endElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute specifies whether automatic conversions between start and end connector are performed using unit information potentially available for both start and end definitions. If this attribute is @@ -477,17 +492,17 @@ is performed instead of any unit conversions, whereas otherwise the linear transformation is performed in addition to any unit conversions. - - - - - - - - - - - + + + + + + + + + + + This optional element defines the extent of the system canvas. (x1,y1) and (x2,y2) define the lower-left and upper-right corner, respectively. @@ -507,17 +522,17 @@ is the respective coordinate of the sub-system when instantiated in the parent system after rotation. - - - - - - - - - - - + + + + + + + + + + + This optional element contains the set of purely graphical elements that are contained in the system, e.g. things like notes, which have no semantic impact on the system but aid in presentation of the system in @@ -528,13 +543,13 @@ in the future more elements might be added as needed for exchange of graphical information. - - - - - - - + + + + + + + This element defines a graphical note to be placed on the canvas of the enclosing system. It is sized using the attributes so that the coordinates (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right @@ -547,31 +562,33 @@ or other means) to show the remainder of the note text. Inside the text attribute, newlines indicate paragraph breaks. - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + This element gives the type of the connector. If a type is not supplied, the type is determined through @@ -583,11 +600,11 @@ differs from the type of the underlying FMU variable this constitutes an error. - - - - - + + + + + This optional element gives the geometry information of the connector. Note that x and y coordinates are in a special coordinate system, where 0,0 is the lower-left corner of the component/system, and 1,1 is the @@ -599,18 +616,18 @@ determined by the ElementGeometry for the outside view, and the one determined by SystemGeometry for the inside view. - - - - - - - - - - - - + + + + + + + + + + + + This attribute gives the connector a name, which shall be unique within the component or system and, for components, must match the name of a relevant @@ -623,11 +640,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This attribute specifies the kind of the given connector, which indicates whether the connector is an input, an output, both (inout), a constant, a parameter, a calculated parameter @@ -660,28 +677,29 @@ This can be used for example to allow a connector to function as both an input and output within the same SignalDictionaryReference. - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + This provides a parameter binding for a component or system. For FMU components this allows the parametrization of the FMU's parameters and start values of other variables with a parameter source (e.g. a parameter file). Note that in this case the names @@ -732,12 +750,12 @@ of the system. Therefore they take priority over any of the existing parameter bindings (for parameters with identical names). - - - - - - + + + + + + This optional element can be used to provide parameter values inline to the parameter binding, in which case the source attribute of the ParameterBinding element must be empty. @@ -748,10 +766,10 @@ MIME type (in that case there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + This element provides an optional parameter mapping, which specifies how the parameter names and values provided in the parameter source are to be mapped to the parameters of the component or system in question. If no @@ -789,10 +807,10 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + This attribute indicates the source of the parameter mapping as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -824,42 +842,42 @@ inline as contents of the ParameterMapping element, which must be empty otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + This attribute specifies the MIME type of the parameter source, which defaults to application/x-ssp-parameter-set to indicate the SSP parameter set file format. No further types are currently defined, but can of course be added at a later date, e.g. for pre-existing parameter file formats, like CDF, etc. - - - - - + + + + + This attribute indicates the source of the parameters as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -875,27 +893,27 @@ inline as contents of a ParameterValues element, which must not be present otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - + + + + + + + + + + + Defines the optional prefix for name resolution and mapping purposes for this binding. If this attribute is empty or not supplied no prefix is used for name resolution and mapping, otherwise the specified @@ -907,32 +925,33 @@ as a prefix on the binding, thus causing all parameter names in the parameter set to be treated as if they were specified with proper hierarchical names. - - - - - - - - - + + + + + + + + + + The attributes of this element, if present, specify reasonable default values for running an experiment of the given system. Any tool is free to ignore this information. - - - - - - - Default start time of simulation - - - - - Default stop time of simulation - - - + + + + + + + Default start time of simulation + + + + + Default stop time of simulation + + + diff --git a/schema/SystemStructureDescription11.xsd b/schema/SystemStructureDescription11.xsd index 1bfc1e3..79b587b 100644 --- a/schema/SystemStructureDescription11.xsd +++ b/schema/SystemStructureDescription11.xsd @@ -1,7 +1,14 @@ - - - + + + This is the XML Schema 1.1 schema for the MAP SSP SystemStructureDescription 2.0 format. It is provided as a non-normative alternative to the XML Schema 1.0 schema @@ -39,55 +46,58 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + Version of SSD format, 2.0-alpha for this release. - - - - - - - - - - + + + + + + + + + + This attribute gives the system structure a name, which can be used for purposes of presenting the system structure to the user, e.g. when selecting individual variant SSDs from an SSP. - - - - - - - - - + + + + + + + + + + This is the base type for all elements, currently consisting of components and systems. - - - - - + + + + + The set of connectors of this element, which represent the interface of the element to the outside world. @@ -101,11 +111,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This optional element defines the geometry information of the component. (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right corners of the component in the coordinate system of the parent. @@ -123,61 +133,64 @@ ratio. The optional attribute iconFlip defines whether any flipping indicated by (x1,y1), (x2, y2) shall be applied to the icon graphics, too. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + The set of parameter bindings for this element. - - - - - - - - + + + + + + + This attribute gives the element a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the element's connectors in connections. - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + This attribute specifies the MIME type of the component, which defaults to application/x-fmu-sharedlibrary to indicate an FMU. When referencing another system structure definition file, the MIME type application/x-ssp-definition is used, and the MIME type application/x-ssp-package is used for referenced system structure packages (SSPs). No further types are currently defined. - - - - - + + + + + This attribute indicates the source of the component as an URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. Therefore for components @@ -213,11 +226,11 @@ support any absolute URIs and any specific URI schemes (but are of course allowed to support any and all kinds of URIs where useful). - - - - - + + + + + When the referenced component is an FMU that contains multiple implementations (e.g. Co-Simulation and Model Exchange), this optional attribute can be used to determine which FMU implementation should be @@ -227,23 +240,24 @@ FMU implementation must be used. It is an error if the specified type of FMU implementation is not present in the FMU. - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + This element defines a signal dictionary, describing the signal dictionary entries present in the signal dictionary. @@ -257,17 +271,17 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + + + + + This attribute indicates the source of the signal dictionary as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD. @@ -279,11 +293,11 @@ For the default type application/x-ssp-signal-dictionary such inline content must be an ssb:SignalDictionary element. - - - - - + + + + + This attribute gives the signal dictionary a name, which shall be unique within the directly enclosing system. The name is used for purposes of specifying the signal dictionary referenced by a @@ -294,18 +308,22 @@ until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - - - - - + + + + + + + + + + + + + + + + This attribute gives the name of the signal dictionary that is to be referenced. Name lookups occur in hierarchical fashion, i.e. the name is first looked up in the system that contains a signal @@ -313,39 +331,40 @@ is performed on the enclosing system, etc., until a match is found. It is an error if no matching signal dictionary is found. - - - - - - - - + + + + + + + + + This element describes a system, which can contain components and other systems as elements, connectors as an interface to the outside world, and connections connecting the connectors of itself and of its elements to another. - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + This element specifies a connection between two connectors, either of the system or its directly contained elements. Note that connections between connectors on a system are @@ -371,20 +390,20 @@ must match, i.e. either both are input or both output or both parameter or both calculatedParameter. - - - - - - + + + + + + This optional element specifies a transformation that is to be applied to the source value prior to its conveyance to the target. - - - - - + + + + + This optional element defines the geometry information of the connection. The start and end coordinates of the connection are derived automatically through the coordinates of the corresponding connectors. The only relevant @@ -397,68 +416,68 @@ Note that x and y coordinates are in the coordinate system of the enclosing system. - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + This attribute gives the name of the element that contains the connector given as startConnector. If the attribute is elided, then the startConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the start of the connection. If startElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute gives the name of the element that contains the connector given as endConnector. If the attribute is elided, then the endConnector names a connector on this system. - - - - - + + + + + This attribute gives the name of the connector that is the end of the connection. If endElement is not supplied this indicates a connector on this system, otherwise the connector is to be found on the given element. - - - - - + + + + + This attribute specifies whether automatic conversions between start and end connector are performed using unit information potentially available for both start and end definitions. If this attribute is @@ -470,17 +489,17 @@ is performed instead of any unit conversions, whereas otherwise the linear transformation is performed in addition to any unit conversions. - - - - - - - - - - - + + + + + + + + + + + This optional element defines the extent of the system canvas. (x1,y1) and (x2,y2) define the lower-left and upper-right corner, respectively. @@ -500,17 +519,17 @@ is the respective coordinate of the sub-system when instantiated in the parent system after rotation. - - - - - - - - - - - + + + + + + + + + + + This optional element contains the set of purely graphical elements that are contained in the system, e.g. things like notes, which have no semantic impact on the system but aid in presentation of the system in @@ -521,13 +540,13 @@ in the future more elements might be added as needed for exchange of graphical information. - - - - - - - + + + + + + + This element defines a graphical note to be placed on the canvas of the enclosing system. It is sized using the attributes so that the coordinates (x1,y1) and (x2,y2) define the positions of the lower-left and upper-right @@ -540,31 +559,33 @@ or other means) to show the remainder of the note text. Inside the text attribute, newlines indicate paragraph breaks. - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + This element gives the type of the connector. If a type is not supplied, the type is determined through @@ -576,11 +597,11 @@ differs from the type of the underlying FMU variable this constitutes an error. - - - - - + + + + + This optional element gives the geometry information of the connector. Note that x and y coordinates are in a special coordinate system, where 0,0 is the lower-left corner of the component/system, and 1,1 is the @@ -592,18 +613,18 @@ determined by the ElementGeometry for the outside view, and the one determined by SystemGeometry for the inside view. - - - - - - - - - - - - + + + + + + + + + + + + This attribute gives the connector a name, which shall be unique within the component or system and, for components, must match the name of a relevant @@ -616,11 +637,11 @@ be present which are referenced in connections inside the SSD. - - - - - + + + + + This attribute specifies the kind of the given connector, which indicates whether the connector is an input, an output, both (inout), a constant, a parameter, a calculated parameter @@ -653,28 +674,29 @@ This can be used for example to allow a connector to function as both an input and output within the same SignalDictionaryReference. - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + This provides a parameter binding for a component or system. For FMU components this allows the parametrization of the FMU's parameters and start values of other variables with a parameter source (e.g. a parameter file). Note that in this case the names @@ -725,12 +747,12 @@ of the system. Therefore they take priority over any of the existing parameter bindings (for parameters with identical names). - - - - - - + + + + + + This optional element can be used to provide parameter values inline to the parameter binding, in which case the source attribute of the ParameterBinding element must be empty. @@ -741,17 +763,17 @@ MIME type (in that case there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + + + + + This element provides an optional parameter mapping, which specifies how the parameter names and values provided in the parameter source are to be mapped to the parameters of the component or system in question. If no @@ -770,17 +792,17 @@ there should be a layered specification that defines how embedding the content works for that MIME type). - - - - - - - - - - - + + + + + + + + + + + This attribute indicates the source of the parameter mapping as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -793,42 +815,42 @@ inline as contents of the ParameterMapping element, which must be empty otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + This attribute specifies the MIME type of the parameter source, which defaults to application/x-ssp-parameter-set to indicate the SSP parameter set file format. No further types are currently defined, but can of course be added at a later date, e.g. for pre-existing parameter file formats, like CDF, etc. - - - - - + + + + + This attribute indicates the source of the parameters as a URI (cf. RFC 3986). For purposes of the resolution of relative URIs the base URI is the URI of the SSD, if the sourcebase attribute @@ -844,27 +866,27 @@ inline as contents of a ParameterValues element, which must not be present otherwise. - - - - - + + + + + Defines the base the source URI is resolved against: If the attribute is missing or is specified as SSD, the source is resolved against the URI of the SSD, if the attribute is specified as component the URI is resolved against the (resolved) URI of the component source. - - - - - - - - - - - + + + + + + + + + + + Defines the optional prefix for name resolution and mapping purposes for this binding. If this attribute is empty or not supplied no prefix is used for name resolution and mapping, otherwise the specified @@ -876,32 +898,33 @@ as a prefix on the binding, thus causing all parameter names in the parameter set to be treated as if they were specified with proper hierarchical names. - - - - - - - - - + + + + + + + + + + The attributes of this element, if present, specify reasonable default values for running an experiment of the given system. Any tool is free to ignore this information. - - - - - - - Default start time of simulation - - - - - Default stop time of simulation - - - + + + + + + + Default start time of simulation + + + + + Default stop time of simulation + + + diff --git a/schema/SystemStructureParameterMapping.xsd b/schema/SystemStructureParameterMapping.xsd index 4af7251..e000016 100644 --- a/schema/SystemStructureParameterMapping.xsd +++ b/schema/SystemStructureParameterMapping.xsd @@ -1,8 +1,10 @@ - - - - + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureParameterMapping 2.0 format. @@ -38,64 +40,67 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - + + + + + + + + + + + + + Version of SSM format, 2.0-alpha for this release. - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + This optional element specifies a transformation that is to be applied to the parameter value prior to its application to its target parameter. - - - - - - - - + + + + + + + + This attribute specifies the name of the parameter in the parameter source that is to be mapped to a new name and/or provided with a transformation in this mapping entry. - - - - - + + + + + This attribute specifies the name of the parameter in the system or component that is to be parametrized, i.e. that is the target of this mapping entry. - - - - - + + + + + This attribute specifies whether automatic conversions between start and end connector are performed using unit information potentially available for both start and end definitions. If this attribute is @@ -107,7 +112,8 @@ is performed instead of any unit conversions, whereas otherwise the linear transformation is performed in addition to any unit conversions. - - - + + + + diff --git a/schema/SystemStructureParameterValues.xsd b/schema/SystemStructureParameterValues.xsd index 032b981..2b1b9c5 100644 --- a/schema/SystemStructureParameterValues.xsd +++ b/schema/SystemStructureParameterValues.xsd @@ -1,7 +1,10 @@ - - - + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureParameterValues 2.0 format. @@ -37,244 +40,248 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - + + + + + + + + + + + + + + + Version of SSV format, 2.0-alpha for this release. - - - - - - - - - - - + + + + + + + + + + + Name of the Parameter Set. - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + This attribute gives the value of the parameter. - - - - - + + + + + This attribute gives the unit of the parameter value and must reference one of the unit definitions provided in the Units element of the enclosing file. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - + + + + + This attribute gives the unit of the parameter value and must reference one of the unit definitions provided in the Units element of the enclosing file. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - + + + + + This attribute gives the unit of the parameter value and must reference one of the unit definitions provided in the Units element of the enclosing file. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter. - - - - - - - - - + + + + + + + + + This attribute gives the value of the parameter as the enumeration item name. Note that the actual numeric value this value is mapped to at run time will depend on the item mapping of the enumeration type of the variables being parameterized. - - - - - + + + + + This attribute specifies the name of the enumeration which references into the set of defined enumerations of the system structure description, as contained in @@ -290,15 +297,15 @@ that information for user interface purposes, and/or for additional consistency checking. - - - - - - - - - + + + + + + + + + This optional attribute specifies the MIME type of the underlying binary data, which defaults to the non-specific application/octet-stream type. This information can be @@ -310,29 +317,30 @@ ensure only compatible binary connectors/parameters are connected. - - - - - + + + + + This attribute gives the value of the parameter as a hex encoded binary value. - - - - - - - - - - - + + + + + + + + + + + This attribute specifies the name of the parameter in the parameter set, which must be unique within in the parameter set. - - - + + + + diff --git a/schema/SystemStructureSignalDictionary.xsd b/schema/SystemStructureSignalDictionary.xsd index fb9f51d..dbb168e 100644 --- a/schema/SystemStructureSignalDictionary.xsd +++ b/schema/SystemStructureSignalDictionary.xsd @@ -1,8 +1,10 @@ - - - - + + + This is the normative XML Schema 1.0 schema for the MAP SSP SystemStructureSignalDictionary 2.0 format. @@ -38,45 +40,49 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - - - - - - - - - - - - + + + + + + + + + + + + + + + Version of SSB format, 2.0-alpha for this release. - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + This attribute gives the dictionary entry a name, which shall be unique within the signal dictionary. - - - + + + +