diff --git a/gdtf-spec.md b/gdtf-spec.md index 07ae9da4..a0ddb76e 100644 --- a/gdtf-spec.md +++ b/gdtf-spec.md @@ -1288,6 +1288,7 @@ of geometry collect are specified in [table 34](#user-content-table-34 ). | [GeometryReference](#user-content-geometry-type-reference ) | Any | Reference to already described geometries. | | [Laser](#user-content-geometry-type-laser ) | Any | Geometry with a laser light output. | | [WiringObject](#user-content-geometry-type-wiring-object ) | Any | Geometry that describes an internal wiring for power or data. | +| [Cable](#user-content-geometry-type-cable ) | Any | Geometry that describes a cable assembly. | | [Inventory](#user-content-geometry-type-inventory ) | Any | Geometry that describes an additional item that can be used for a fixture (like a rain cover). | | [Structure](#user-content-geometry-type-structure ) | Any | Geometry that describes the internal framing of an object (like members). | | [Support](#user-content-geometry-type-support ) | Any | Geometry that describes a support like a base plate or a hoist. | @@ -1783,6 +1784,96 @@ defined XML attributes of a pin patch are specified in [table 51](#user-content- The pin patch doesn't have any children. +### Geometry Type Cable + +#### General + +This type of geometry is used to describe a cable assembly (XML node +``). + +The currently defined XML attributes of the cable geometry are specified in +[table 52](#table-52 ). + +
+ +#### Table 52. *Cable Attributes* + +| XML Attribute Name | Value Type | Description | +|----|----|----| +| Name | [Name](#user-content-attrtype-name ) | Unique name of the cable definition. | +| CableType | [String](#user-content-attrtype-string ) | Cable type, model, or construction. | +| LengthMin | [Float](#user-content-attrtype-float ) | Minimum supported cable length. Unit: meter. Default value: 0. | +| LengthMax | [Float](#user-content-attrtype-float ) | Maximum supported cable length. Unit: meter. Default value: 0. | +| Diameter | [Float](#user-content-attrtype-float ) | Outer shell diameter. Unit: meter. Default value: 0. | +| WeightPerMeter | [Float](#user-content-attrtype-float ) | Weight per meter. Unit: kilogram. Default value: 0. | +| AvailableLengths | [Array of Float](#user-content-attrtype-float ) | Array of available cable lengths. Unit: meter. Default value: 0. | +| InstallationRating | [String](#user-content-attrtype-string ) | Optional rating such as plenum, riser, outdoor, touring, or manufacturer-specific text. | + +
+ +The cable geometry has the same children types as the geometry collect +(see [table 34](#user-content-table-34 )). Physical connector shells are +represented by top-level `WiringObject` children. Cable matching is +determined from the connector types of those wiring objects. In +addition, the cable has one or more `Conductors` children that describe +the bundled conductors or signal paths carried by the cable. + +### Node Definition: Conductors + +This node defines one internal conductor bundle of a cable assembly. +The defined Conductors node attributes are specified in +[table-conductors-attributes](#table-conductors-attributes ). + +Node name: `Conductors` + +
+ +#### Table XX. *Conductors Attributes* + +| XML Attribute Name | Value Type | Description | +|----|----|----| +| Name | [Name](#user-content-attrtype-name ) | Unique name of the conductor bundle within the cable geometry. | +| Type | [String](#user-content-attrtype-string ) | Conductor type. Predefined values are "Power", "DMX512", "Protocol", "AES", "AnalogVideo", "AnalogAudio". | +| CrossSection | [Float](#user-content-attrtype-float ) | Conductor cross-section where applicable. Unit: mm². Default value: 0. | +| ConductorAmount | [Integer](#user-content-attrtype-integer ) | Amount of conductors. Default value: 0. | +| Impedance | [Float](#user-content-attrtype-float ) | Cable impedance where applicable. Unit: Ohm. Default value: 0. | +| VoltageRating | [Float](#user-content-attrtype-float ) | Optional voltage rating. Unit: volt. Default value: 0. | +| CurrentRating | [Float](#user-content-attrtype-float ) | Optional current rating. Unit: ampere. Default value: 0. | + +
+ +The Conductors node has the following children. + +##### Table XX — *Conductors Node Children* + +| Child Node | Allowed Count | Description | +| -------------------------------------------------------------- | ------------- | --------------------------------------------------------------- | +| [ConductorPatch](#node-definition-conductorpatch) | 1 or any | One pin-level mapping that belongs to this conductor bundle. | + +### Node Definition: ConductorPatch + +This node defines one pin-level mapping inside a conductor bundle. The +defined ConductorPatch node attributes are specified in +[table-conductorpatch-attributes](#table-conductorpatch-attributes ). + +Node name: `ConductorPatch` + +
+ +#### Table XX. *ConductorPatch Attributes* + +| XML Attribute Name | Value Type | Description | +|----|----|----| +| FromWiringObject | [Node](#user-content-attrtype-node ) | Link to the source wiring object of the physical connector shell. | +| FromPin | [Int](#user-content-attrtype-int ) | The pin number used on the source wiring object. | +| ToWiringObject | [Node](#user-content-attrtype-node ) | Link to the target wiring object of the physical connector shell. | +| ToPin | [Int](#user-content-attrtype-int ) | The pin number used on the target wiring object. | + +
+ +The ConductorPatch node does not have any children. + + ### Geometry Type Inventory This type of geometry is used to describe a geometry used for the inventory (XML node ``). The currently diff --git a/mvr-spec.md b/mvr-spec.md index 55bf7e46..809d7df6 100644 --- a/mvr-spec.md +++ b/mvr-spec.md @@ -368,6 +368,7 @@ The child list (Table 18) contains a list of the following nodes: | [Truss](#node-definition-truss) | A definition of a truss. | | [VideoScreen](#node-definition-videoscreen) | A definition of a video screen. | | [Projector](#node-definition-projector) | A definition of a projector. | +| [Cable](#node-definition-cable) | A definition of a cable. | ## Node Definition for Parametric Objects @@ -813,6 +814,31 @@ EXAMPLE An example of a node definition is shown below: ``` +### Node Definition: Cable + +This node defines a cable object. Cable describes the physical realization of a +connection between two [Connection](#node-definition-connection) nodes. A cable +has one start and one end and may carry one or more signals. The defined Cable +Node Attributes are specified in Table XX. + +Node name: `Cable` + +Table xx - Cable Node attributes: + +| Attribute Name | Value Type | Description | +| ------------------ | ----------------: | --------------------------------------------------------------------------------------- | +| uuid | [UUID](#user-content-attrtype-uuid) | Unique identifier of the cable. | +| name | [String](#user-content-attrtype-string) | Cable name. | +| cableType | [String](#user-content-attrtype-string) | Cable type, model, or construction. | +| length | [Float](#user-content-attrtype-float)| Cable length. Unit: meter. Default value: 0 | +| installationRating | [String](#user-content-attrtype-string) | Optional rating such as plenum, riser, outdoor, touring, or manufacturer-specific text. | +| GDTFSpec | [FileName](#user-content-attrtype-filename) | Optional. The name of the GDTF or `gdtt` file containing a reusable cable catalog. | +| CableName | [String](#user-content-attrtype-string) | Optional. The name of the cable definition inside the GDTF file referenced by `GDTFSpec`. | + +If `GDTFSpec` is present, `CableName` shall identify a cable definition in +that file. If `GDTFSpec` is omitted, the cable remains a plain MVR cable +instance and is described only by the attributes on the scene object itself. + ## Other Node Definition @@ -1223,6 +1249,7 @@ Node name: `Connection` | own | [String](#user-content-attrtype-string) | Mandatory | Node Link to the Geometry with DIN SPEC 15800 Type [Wiring Object](https://github.com/mvrdevelopment/spec/blob/main/gdtf-spec.md#geometry-type-wiring-object) . Starting point is the Geometry Collect of the linked GDTF. | | other | [String](#user-content-attrtype-string) | Mandatory | Node Link to the Geometry with DIN SPEC 15800 Type [Wiring Object](https://github.com/mvrdevelopment/spec/blob/main/gdtf-spec.md#geometry-type-wiring-object) . Starting point is the Geometry Collect of the linked GDTF of the object defined in `toObject`. | | toObject | [UUID](#user-content-attrtype-uuid) | Mandatory | UUID of an other object in the scene. | +| cable | [UUID](#user-content-attrtype-uuid) | Empty String | UUID of the cable used for this connection. | ### Node Definition: Mappings @@ -1811,4 +1838,3 @@ UUIDs are randomly generated numbers which are, practically speaking, unique and One of the most important aspects of UUIDs in MVR is that they are persistent. A UUID should identify an item throughout its entire life cycle. This means that if a document is exported, then objects should have the same UUID every time an export is performed. One use case for UUIDs is importing or merging MVRs into an existing document. This is one reason that persistent UUIDs are valuable. If you export an MVR from one program, open it in another, and make modifications, then you may want to incorporate those changes into the original document. By cross referencing UUIDs, you can avoid creating duplicate objects and instead update existing ones. UUIDs are also used inside of the MVR file format as a form of reference. For example, a symbol instance shall refer to a symbol definition. Because the symbol definition is given a UUID, the symbol instance can reference its symbol through the use of this UUID. - diff --git a/proposal.md b/proposal.md new file mode 100644 index 00000000..d95f2bd2 --- /dev/null +++ b/proposal.md @@ -0,0 +1,179 @@ +## Cable definition GDTF + +### Power cable, Schuko to Schuko + +```xml + + + + + + + + + +``` + +### Power cable, Schuko to PowerTrueOne + +```xml + + + + + + + + + +``` + +### DMX cable, XLR to XLR + +```xml + + + + + + + + + +``` + +### Combined cable, power and DMX, four connectors + +```xml + + + + + + + + + + + + + + + + + +``` +### Combined cable, power and DMX, two Amphenol connectors + +```xml + + + + + + + + + + + + + + + +``` + +## Cable definition MVR + +```xml + + +``` + +Example cable utilization: + +```xml + +```