Files
qt6-migration-pipeline/external/rti_connext_dds-7.7.0/resource/schema/dds_security_governance.xsd
T
torstenandCopilot 342ffd3e5c Update submodule to latest BUILD_RTI fixes
- HandlerMinelayerData: BUILD_RTI Guards für RTI-Abhängigkeiten
- svcTabCommon: Export-Header-Fix via Fallback-Target
- TrainingAreaBase: Stub-Header für BUILD_RTI=OFF
- ddsfts: Include-Pfad und Dependency-Fixes
- BUILD_RTI=OFF Compilation vollständig unterstützt

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M0JNZA586SACX1PRZ2DJAE5S
2026-08-21 19:30:20 +02:00

273 lines
11 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
(c) Copyright, Real-Time Innovations, Inc. 2001-2016.
All rights reserved.
No duplications, whole or partial, manual or electronic, may be made
without prior written permission. Any such copies, or
revisions thereof, must display this notice unaltered.
This code contains trade secrets of Real-Time Innovations, Inc.
-->
<!-- =================================================================== -->
<!-- RTI Domain Governance XML Schema File -->
<!-- =================================================================== -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="dds" type="DomainAccessRulesNode" />
<xs:complexType name="DomainAccessRulesNode">
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="domain_access_rules" type="DomainAccessRules" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="DomainAccessRules">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="domain_rule" type="DomainRule" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="DomainRule">
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="domains" type="DomainIdSet" />
<xs:element name="allow_unauthenticated_participants" type="xs:boolean" />
<xs:element name="enable_join_access_control" type="xs:boolean" />
<xs:element name="enable_key_revision"
type="xs:boolean"
minOccurs="0"
maxOccurs="1" />
<xs:element name="identity_credential_authority_validation"
type="IdentityCredentialAuthorityValidation"
minOccurs="0"
maxOccurs="1"/>
<xs:element name="discovery_protection_kind" type="ProtectionKind" />
<xs:element name="liveliness_protection_kind" type="ProtectionKind" />
<!-- RTI extension -->
<xs:element name="monitoring_metrics_protection_kind"
type="ProtectionKind"
minOccurs="0"
maxOccurs="1" />
<!-- RTI extension -->
<xs:element name="monitoring_logging_protection_kind"
type="ProtectionKind"
minOccurs="0"
maxOccurs="1" />
<!-- RTI extension -->
<xs:element name="service_request_protection_kind"
type="ProtectionKind"
minOccurs="0"
maxOccurs="1"/>
<!-- RTI extension -->
<xs:element name="instance_state_consistency_protection_kind"
type="ProtectionKind"
minOccurs="0"
maxOccurs="1"/>
<!-- RTI extension -->
<xs:element name="type_lookup_protection_kind"
type="ProtectionKind"
minOccurs="0"
maxOccurs="1"/>
<xs:element name="rtps_protection_kind" type="ProtectionKind" />
<xs:element name="rtps_psk_protection_kind"
type="BasicProtectionKind"
minOccurs="0"
maxOccurs="1" />
<xs:element name="allowed_security_algorithms"
type="AllowedSecurityAlgorithms"
minOccurs="0"
maxOccurs="1"/>
<xs:element name="enforce_proxy_permissions"
type="xs:boolean"
minOccurs="0"
maxOccurs="1" />
<xs:element name="topic_access_rules"
type="TopicAccessRules"
minOccurs="0"
maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="DomainIdSet">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="id" type="DomainId" />
<xs:element name="id_range" type="DomainIdRange" />
</xs:choice>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="tag" type="DomainTag" />
<xs:element name="tag_expression" type="DomainTagExpression" />
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="DomainId">
<xs:restriction base="xs:nonNegativeInteger" />
</xs:simpleType>
<xs:complexType name="DomainIdRange">
<xs:choice>
<xs:sequence>
<xs:element name="min" type="DomainId" />
<xs:element name="max" type="DomainId" minOccurs="0" />
</xs:sequence>
<xs:element name="max" type="DomainId" />
</xs:choice>
</xs:complexType>
<xs:simpleType name="BasicProtectionKind">
<xs:restriction base="xs:string">
<!-- RTI extension: allow whitespaces surrounding values -->
<xs:whiteSpace value="collapse"/>
<xs:enumeration value="ENCRYPT" />
<xs:enumeration value="SIGN" />
<xs:enumeration value="NONE" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DomainTag">
<xs:restriction base="xs:string" />
</xs:simpleType>
<xs:simpleType name="DomainTagExpression">
<xs:restriction base="xs:string" />
</xs:simpleType>
<xs:simpleType name="ProtectionKind">
<xs:restriction base="xs:string">
<!-- RTI extension: allow whitespaces surrounding values -->
<xs:whiteSpace value="collapse"/>
<xs:enumeration value="ENCRYPT_WITH_ORIGIN_AUTHENTICATION" />
<xs:enumeration value="SIGN_WITH_ORIGIN_AUTHENTICATION" />
<xs:enumeration value="ENCRYPT" />
<xs:enumeration value="SIGN" />
<xs:enumeration value="NONE" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="TopicAccessRules">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="topic_rule" type="TopicRule" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="TopicRule">
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="topic_expression" type="TopicExpression" />
<xs:element name="enable_discovery_protection" type="xs:boolean" />
<xs:element minOccurs="0" name="enable_liveliness_protection" type="xs:boolean" />
<xs:element name="enable_read_access_control" type="xs:boolean" />
<xs:element name="enable_write_access_control" type="xs:boolean" />
<xs:element name="metadata_protection_kind" type="ProtectionKind" />
<xs:element name="data_protection_kind" type="BasicProtectionKind" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="TopicExpression">
<xs:restriction base="xs:string" />
</xs:simpleType>
<!-- Allowed Security Algorithms -->
<xs:complexType name="AllowedSecurityAlgorithms">
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="digital_signature"
type="DigitalSignatureAlgorithms"/>
<xs:element name="digital_signature_identity_trust_chain"
minOccurs="0" maxOccurs="1"
type="DigitalSignatureAlgorithms"/>
<xs:element name="key_establishment"
type="KeyEstablishmentAlgorithms"/>
<xs:element name="symmetric_cipher"
type="SymmetricCipherAlgorithms"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="DigitalSignatureAlgorithms">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="algorithm" type="DigitalSignatureKind" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="KeyEstablishmentAlgorithms">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="algorithm" type="KeyEstablishmentKind" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="SymmetricCipherAlgorithms">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="algorithm" type="SymmetricCipherKind" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="DigitalSignatureKind">
<xs:restriction base="xs:string">
<!-- RTI extension: allow whitespaces surrounding values -->
<xs:whiteSpace value="collapse"/>
<xs:enumeration value="RSASSA-PSS-MGF1SHA256+2048+SHA256" />
<xs:enumeration value="RSASSA-PKCS1-V1_5+2048+SHA256" />
<xs:enumeration value="ECDSA+P256+SHA256" />
<xs:enumeration value="ECDSA+P384+SHA384" />
<!-- RTI extension -->
<xs:enumeration value="EDDSA+ED25519+SHA512" />
<!-- RTI extension -->
<xs:enumeration value="EDDSA+ED448+SHAKE256" />
<!-- RTI extension -->
<xs:enumeration value="SM2+SM2P256+SM3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="KeyEstablishmentKind">
<xs:restriction base="xs:string">
<!-- RTI extension: allow whitespaces surrounding values -->
<xs:whiteSpace value="collapse"/>
<xs:enumeration value="DHE+MODP-2048-256" />
<xs:enumeration value="ECDHE-CEUM+P256" />
<xs:enumeration value="ECDHE-CEUM+P384" />
<!-- RTI extension -->
<xs:enumeration value="ECDHE-CEUM+X25519" />
<!-- RTI extension -->
<xs:enumeration value="ECDHE-CEUM+X448" />
<!-- RTI extension -->
<xs:enumeration value="SM2-KXEPH+SM2P256" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SymmetricCipherKind">
<xs:restriction base="xs:string">
<!-- RTI extension: allow whitespaces surrounding values -->
<xs:whiteSpace value="collapse"/>
<xs:enumeration value="AES128+GCM" />
<xs:enumeration value="AES256+GCM" />
<!-- RTI extension -->
<xs:enumeration value="SM4+GCM" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="IdentityCredentialAuthorityValidation">
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="ocsp"
type="RequirementKind"
minOccurs="0"
maxOccurs="1" />
<xs:element name="crl"
type="RequirementKind"
minOccurs="0"
maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="RequirementKind">
<xs:restriction base="xs:string">
<!-- RTI extension: allow whitespaces surrounding values -->
<xs:whiteSpace value="collapse"/>
<xs:enumeration value="REQUIRED" />
<xs:enumeration value="AUTO" />
<xs:enumeration value="IGNORED" />
</xs:restriction>
</xs:simpleType>
</xs:schema>