Namespace id.entity.ext.e2@0.1.0

Compatible with Concerto versions ^3.0.0. Has 4 declarations.

Concerto JSON AST PlantUML XML Schema Typescript C# OData JSON Schema GraphQL Java Go Avro Markdown OpenAPI Protobuf Mermaid

Declared Types

      
      import id.entity.ext.e2@0.1.0.PropertyRegimeKind from /ext-e2@0.1.0.cto
      import id.entity.ext.e2@0.1.0.Beneficiary from /ext-e2@0.1.0.cto
      import id.entity.ext.e2@0.1.0.MaintenanceDuty from /ext-e2@0.1.0.cto
      import id.entity.ext.e2@0.1.0.PropertyRegimeExtension from /ext-e2@0.1.0.cto
      
      

Dependencies

Source

    /*
 * E2 - Property Regime
 *
 * The regime governing property between Constituents (community, separate,
 * partial community), maintenance, and beneficiaries (children of a
 * marriage; fund beneficiaries fold in here or E1 per the minimal-core
 * study). Lean but real per the MVP cut.
 *
 * provenance:
 *   source: universal-constitution v2-minimal-core-study.md (Extensions register)
 *   licence: Apache-2.0
 */
concerto version "^3.0.0"
namespace id.entity.ext.e2@0.1.0

import id.entity.core@2.2.0.{Extension} from https://models.entity.id/core@2.2.0.cto
enum PropertyRegimeKind {
  o COMMUNITY_OF_PROPERTY
  o SEPARATE_PROPERTY
  o PARTIAL_COMMUNITY
  o DEFERRED_COMMUNITY
}

/** A register role with no capacities; rights defined by this Extension. */
concept Beneficiary {
  o String name
  o String relation optional
}

/** A duty of maintenance or support between Constituents. */
concept MaintenanceDuty {
  o String owedBy
  o String owedTo
  o String measure optional
}

/**
 * E2 Property Regime - attached to a Constitution via clause 6.2.
 */
concept PropertyRegimeExtension extends Extension {
  o PropertyRegimeKind regime
  o String[] excludedProperty optional
  o MaintenanceDuty[] maintenanceDuties optional
  o Beneficiary[] beneficiaries optional
}