Guía de redacción de condiciones

Condiciones y políticas de evidencia tipadas por el autor.

Objeto de condición

Una condición de forma permanente contiene solo:

ConditionDefinition
    ConditionId
    ClosedObservationDomain
    TypedPredicate
    EvidenceUsePolicy

No contiene un ID de proveedor, ID de verificación, consulta, carril de confianza, error de adquisición o estado semántico creado por el llamador.

Orden de redacción

  1. Nombre un ConditionId canónico limitado.
  2. Seleccione un dominio de observación cerrado con límites exactos y ley de codificación.
  3. Seleccione la variante de predicado específica del comparador legal para ese dominio.
  4. Indique la política de uso de la evidencia como fuente factorizada, integridad, frescura, autorización, alcance, independencia y hechos de retención.
  5. Agregar cero o más vínculos de operación de adquisición separados.
  6. Hacer referencia a la condición de una ley RET satisfactoria proposicionalmente.

La presentación del llamador no necesita un vínculo de proveedor ficticio. Cada valor enviado aún se admite contra el dominio de condición exacto y la política de uso. La adquisición local o registrada utiliza un vínculo separado que prueba su operación y relación de proyección.

Dominios iniciales

  • enteros exactos firmados y no firmados limitados;
  • decimales exactos con precisión y escala declaradas;
  • booleanos;
  • cadenas y bytes limitados;
  • fechas e instantes con semánticas nombradas;
  • arreglos y registros cerrados limitados;
  • uniones cerradas para las cuales el predicado es legal para cada miembro.

No hay coerción implícita, comparación binaria de punto flotante genérica, colación de lenguaje humano no nombrada, contains sobrecargado, o dominio JSON arbitrario aceptado.

Forma del predicado

Los predicados validados retienen su relación en la variante, por ejemplo:

Exists
ObservedAbsent
Equals(ValidatedComparableValue)
IntegerGreaterThan(ValidatedInteger)
IntegerClosedRange(InclusiveMinimum, InclusiveMaximum)
DecimalGreaterThan(ValidatedDecimal)
DecimalClosedRange(InclusiveMinimum, InclusiveMaximum)
DateClosedRange(InclusiveMinimum, InclusiveMaximum)
InstantClosedRange(InclusiveMinimum, InclusiveMaximum)
StringContains(ValidatedString)
CollectionContains(ValidatedComparableValue)
InSet(ValidatedNonEmptyCompatibleSet)

La representación sellada actual implementa la relación específica del comparador; no existe una forma de compatibilidad comparator + optional expected JSON. Los constructores de rango inclusivos admiten ambos extremos a través del dominio propietario exacto y rechazan límites invertidos durante la admisión del escenario.

Vínculos de adquisición

Un vínculo nombra la condición objetivo, operación/fuente exacta o identidad de contrato de proveedor inmutable, parámetros validados vinculados a un esquema y proyección en el dominio de la condición. El texto de consulta igual nunca fusiona identidades de condición. Una condición puede admitir varios caminos legales cuando su política lo permite.

Los vínculos de proveedor de red no se seleccionan para el perfil objetivo inicial.

Contrato de cable actual

El esquema dag-v3 representa dominios tipados, predicados específicos del comparador, política de uso de evidencia obligatoria y vínculos de adquisición por separado. La sintaxis de predicado acoplada a proveedores más antigua y aplanada es rechazada; no existe campo de compatibilidad o ruta de migración.