Proto templates

Proto-templates are a very basic form of templates. They provide a layer of abstraction immediately above the relational entity types of ISO 15926-2 by hiding the reified relationships of ISO 15926-2.

Each proto-template is constructed of two First Order Logic axioms. The first axiom provides a short form for the relational entity type. The proto-template predicate is called a proto-triple.

ApprovalTriple(x,y,z) <-> Approval(x) & hasApproved(x,y) & hasApprover(x,z) . 
ApprovalTemplate(x,y) <-> exists z(ApprovalTriple(z,x,y)) . 

ArrangementOfIndividualTriple(x,y,z) <-> ArrangementOfIndividual(x) & hasPart(x,y) & hasWhole(x,z) . 
ArrangementOfIndividualTemplate(x,y) <-> exists z(ArrangementOfIndividualTriple(z,x,y)) . 

AssemblyOfIndividualTriple(x,y,z) <-> AssemblyOfIndividual(x) & hasPart(x,y) & hasWhole(x,z) . 
AssemblyOfIndividualTemplate(x,y) <-> exists z(AssemblyOfIndividualTriple(z,x,y)) . 

BeginningTriple(x,y,z) <-> Beginning(x) & hasPart(x,y) & hasWhole(x,z) . 
BeginningTemplate(x,y) <-> exists z(BeginningTriple(z,x,y)) . 

BoundaryOfNumberSpaceTriple(x,y,z) <-> BoundaryOfNumberSpace(x) & hasSubclass(x,y) & hasSuperclass(x,z) . 
BoundaryOfNumberSpaceTemplate(x,y) <-> exists z(BoundaryOfNumberSpaceTriple(z,x,y)) . 

BoundaryOfPropertySpaceTriple(x,y,z) <-> BoundaryOfPropertySpace(x) & hasSubclass(x,y) & hasSuperclass(x,z) . 
BoundaryOfPropertySpaceTemplate(x,y) <-> exists z(BoundaryOfPropertySpaceTriple(z,x,y)) . 

CauseOfEventTriple(x,y,z) <-> CauseOfEvent(x) & hasCaused(x,y) & hasCauser(x,z) . 
CauseOfEventTemplate(x,y) <-> exists z(CauseOfEventTriple(z,x,y)) . 

ClassificationTriple(x,y,z) <-> Classification(x) & hasClassified(x,y) & hasClassifier(x,z) . 
ClassificationTemplate(x,y) <-> exists z(ClassificationTriple(z,x,y)) . 

ClassOfApprovalTriple(x,y,z) <-> ClassOfApproval(x) & hasClassOfApproved(x,y) & hasClassOfApprover(x,z) . 
ClassOfApprovalTemplate(x,y) <-> exists z(ClassOfApprovalTriple(z,x,y)) . 

ClassOfArrangementOfIndividualTriple(x,y,z) <-> ClassOfArrangementOfIndividual(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
ClassOfArrangementOfIndividualTemplate(x,y) <-> exists z(ClassOfArrangementOfIndividualTriple(z,x,y)) . 

ClassOfAssemblyOfIndividualTriple(x,y,z) <-> ClassOfAssemblyOfIndividual(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
ClassOfAssemblyOfIndividualTemplate(x,y) <-> exists z(ClassOfAssemblyOfIndividualTriple(z,x,y)) . 

ClassOfCauseOfBeginningOfClassOfIndividualTriple(x,y,z) <-> ClassOfCauseOfBeginningOfClassOfIndividual(x) & hasClassOfBegun(x,y) & hasClassOfCauser(x,z) . 
ClassOfCauseOfBeginningOfClassOfIndividualTemplate(x,y) <-> exists z(ClassOfCauseOfBeginningOfClassOfIndividualTriple(z,x,y)) . 

ClassOfCauseOfEndingOfClassOfIndividualTriple(x,y,z) <-> ClassOfCauseOfEndingOfClassOfIndividual(x) & hasClassOfCauser(x,y) & hasClassOfEnded(x,z) . 
ClassOfCauseOfEndingOfClassOfIndividualTemplate(x,y) <-> exists z(ClassOfCauseOfEndingOfClassOfIndividualTriple(z,x,y)) . 

ClassOfClassificationTriple(x,y,z) <-> ClassOfClassification(x) & hasClassOfClassified(x,y) & hasClassOfClassifier(x,z) . 
ClassOfClassificationTemplate(x,y) <-> exists z(ClassOfClassificationTriple(z,x,y)) . 

ClassOfClassOfCompositionTriple(x,y,z) <-> ClassOfClassOfComposition(x) & hasClassOfClassOfPart(x,y) & hasClassOfClassOfWhole(x,z) . 
ClassOfClassOfCompositionTemplate(x,y) <-> exists z(ClassOfClassOfCompositionTriple(z,x,y)) . 

ClassOfClassOfDefinitionTriple(x,y,z) <-> ClassOfClassOfDefinition(x) & hasClassOfPattern(x,y) & hasClassOfRepresented(x,z) . 
ClassOfClassOfDefinitionTemplate(x,y) <-> exists z(ClassOfClassOfDefinitionTriple(z,x,y)) . 

ClassOfClassOfDescriptionTriple(x,y,z) <-> ClassOfClassOfDescription(x) & hasClassOfPattern(x,y) & hasClassOfRepresented(x,z) . 
ClassOfClassOfDescriptionTemplate(x,y) <-> exists z(ClassOfClassOfDescriptionTriple(z,x,y)) . 

ClassOfClassOfIdentificationTriple(x,y,z) <-> ClassOfClassOfIdentification(x) & hasClassOfPattern(x,y) & hasClassOfRepresented(x,z) . 
ClassOfClassOfIdentificationTemplate(x,y) <-> exists z(ClassOfClassOfIdentificationTriple(z,x,y)) . 

ClassOfClassOfRelationshipWithSignatureTriple(x,y,z) <-> ClassOfClassOfRelationshipWithSignature(x) & hasClassOfEnd1(x,y) & hasClassOfEnd2(x,z) . 
ClassOfClassOfRelationshipWithSignatureTemplate(x,y) <-> exists z(ClassOfClassOfRelationshipWithSignatureTriple(z,x,y)) . 

ClassOfClassOfRepresentationTriple(x,y,z) <-> ClassOfClassOfRepresentation(x) & hasClassOfPattern(x,y) & hasClassOfRepresented(x,z) . 
ClassOfClassOfRepresentationTemplate(x,y) <-> exists z(ClassOfClassOfRepresentationTriple(z,x,y)) . 

ClassOfClassOfRepresentationTranslationTriple(x,y,z) <-> ClassOfClassOfRepresentationTranslation(x) & hasClassOfFirst(x,y) & hasClassOfSecond(x,z) . 
ClassOfClassOfRepresentationTranslationTemplate(x,y) <-> exists z(ClassOfClassOfRepresentationTranslationTriple(z,x,y)) . 

ClassOfClassOfResponsibilityForRepresentationTriple(x,y,z) <-> ClassOfClassOfResponsibilityForRepresentation(x) & hasClassOfClassOfControlled(x,y) & hasController(x,z) . 
ClassOfClassOfResponsibilityForRepresentationTemplate(x,y) <-> exists z(ClassOfClassOfResponsibilityForRepresentationTriple(z,x,y)) . 

ClassOfClassOfUsageOfRepresentationTriple(x,y,z) <-> ClassOfClassOfUsageOfRepresentation(x) & hasClassOfClassOfUsed(x,y) & hasUser(x,z) . 
ClassOfClassOfUsageOfRepresentationTemplate(x,y) <-> exists z(ClassOfClassOfUsageOfRepresentationTriple(z,x,y)) . 

ClassOfCompositionOfIndividualTriple(x,y,z) <-> ClassOfCompositionOfIndividual(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
ClassOfCompositionOfIndividualTemplate(x,y) <-> exists z(ClassOfCompositionOfIndividualTriple(z,x,y)) . 

ClassOfConnectionOfIndividualTriple(x,y,z) <-> ClassOfConnectionOfIndividual(x) & hasClassOfSide1(x,y) & hasClassOfSide2(x,z) . 
ClassOfConnectionOfIndividualTemplate(x,y) <-> exists z(ClassOfConnectionOfIndividualTriple(z,x,y)) . 

ClassOfContainmentOfIndividualTriple(x,y,z) <-> ClassOfContainmentOfIndividual(x) & hasClassOfLocated(x,y) & hasClassOfLocator(x,z) . 
ClassOfContainmentOfIndividualTemplate(x,y) <-> exists z(ClassOfContainmentOfIndividualTriple(z,x,y)) . 

ClassOfDefinitionTriple(x,y,z) <-> ClassOfDefinition(x) & hasPattern(x,y) & hasRepresented(x,z) . 
ClassOfDefinitionTemplate(x,y) <-> exists z(ClassOfDefinitionTriple(z,x,y)) . 

ClassOfDescriptionTriple(x,y,z) <-> ClassOfDescription(x) & hasPattern(x,y) & hasRepresented(x,z) . 
ClassOfDescriptionTemplate(x,y) <-> exists z(ClassOfDescriptionTriple(z,x,y)) . 

ClassOfDimensionForShapeTriple(x,y,z) <-> ClassOfDimensionForShape(x) & hasClassOfDimension(x,y) & hasClassOfShape(x,z) . 
ClassOfDimensionForShapeTemplate(x,y) <-> exists z(ClassOfDimensionForShapeTriple(z,x,y)) . 

ClassOfDirectConnectionTriple(x,y,z) <-> ClassOfDirectConnection(x) & hasClassOfSide1(x,y) & hasClassOfSide2(x,z) . 
ClassOfDirectConnectionTemplate(x,y) <-> exists z(ClassOfDirectConnectionTriple(z,x,y)) . 

ClassOfFeatureWholePartTriple(x,y,z) <-> ClassOfFeatureWholePart(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
ClassOfFeatureWholePartTemplate(x,y) <-> exists z(ClassOfFeatureWholePartTriple(z,x,y)) . 

ClassOfFunctionalMappingTriple(x,y,z) <-> ClassOfFunctionalMapping(x) & hasCodomain(x,y) & hasDomain(x,z) . 
ClassOfFunctionalMappingTemplate(x,y) <-> exists z(ClassOfFunctionalMappingTriple(z,x,y)) . 

ClassOfIdentificationTriple(x,y,z) <-> ClassOfIdentification(x) & hasPattern(x,y) & hasRepresented(x,z) . 
ClassOfIdentificationTemplate(x,y) <-> exists z(ClassOfIdentificationTriple(z,x,y)) . 

ClassOfIndirectConnectionTriple(x,y,z) <-> ClassOfIndirectConnection(x) & hasClassOfSide1(x,y) & hasClassOfSide2(x,z) . 
ClassOfIndirectConnectionTemplate(x,y) <-> exists z(ClassOfIndirectConnectionTriple(z,x,y)) . 

ClassOfIndirectPropertyTriple(x,y,z) <-> ClassOfIndirectProperty(x) & hasClassOfPossessor(x,y) & hasPropertySpace(x,z) . 
ClassOfIndirectPropertyTemplate(x,y) <-> exists z(ClassOfIndirectPropertyTriple(z,x,y)) . 

ClassOfIndividualUsedInConnectionTriple(x,y,z) <-> ClassOfIndividualUsedInConnection(x) & hasClassOfConnection(x,y) & hasClassOfUsage(x,z) . 
ClassOfIndividualUsedInConnectionTemplate(x,y) <-> exists z(ClassOfIndividualUsedInConnectionTriple(z,x,y)) . 

ClassOfIntendedRoleAndDomainTriple(x,y,z) <-> ClassOfIntendedRoleAndDomain(x) & hasClassOfPlayer(x,y) & hasPlayed(x,z) . 
ClassOfIntendedRoleAndDomainTemplate(x,y) <-> exists z(ClassOfIntendedRoleAndDomainTriple(z,x,y)) . 

ClassOfInvolvementByReferenceTriple(x,y,z) <-> ClassOfInvolvementByReference(x) & hasClassOfInvolved(x,y) & hasClassOfInvolver(x,z) . 
ClassOfInvolvementByReferenceTemplate(x,y) <-> exists z(ClassOfInvolvementByReferenceTriple(z,x,y)) . 

ClassOfIsomorphicFunctionalMappingTriple(x,y,z) <-> ClassOfIsomorphicFunctionalMapping(x) & hasCodomain(x,y) & hasDomain(x,z) . 
ClassOfIsomorphicFunctionalMappingTemplate(x,y) <-> exists z(ClassOfIsomorphicFunctionalMappingTriple(z,x,y)) . 

ClassOfLeftNamespaceTriple(x,y,z) <-> ClassOfLeftNamespace(x) & hasClassOfClassOfWhole(x,y) & hasClassOfPart(x,z) . 
ClassOfLeftNamespaceTemplate(x,y) <-> exists z(ClassOfLeftNamespaceTriple(z,x,y)) . 

ClassOfNamespaceTriple(x,y,z) <-> ClassOfNamespace(x) & hasClassOfClassOfWhole(x,y) & hasClassOfPart(x,z) . 
ClassOfNamespaceTemplate(x,y) <-> exists z(ClassOfNamespaceTriple(z,x,y)) . 

ClassOfParticipationTriple(x,y,z) <-> ClassOfParticipation(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
ClassOfParticipationTemplate(x,y) <-> exists z(ClassOfParticipationTriple(z,x,y)) . 

ClassOfPossibleRoleAndDomainTriple(x,y,z) <-> ClassOfPossibleRoleAndDomain(x) & hasClassOfPlayer(x,y) & hasPlayed(x,z) . 
ClassOfPossibleRoleAndDomainTemplate(x,y) <-> exists z(ClassOfPossibleRoleAndDomainTriple(z,x,y)) . 

ClassOfRecognitionTriple(x,y,z) <-> ClassOfRecognition(x) & hasClassOfRecognized(x,y) & hasClassOfRecognizing(x,z) . 
ClassOfRecognitionTemplate(x,y) <-> exists z(ClassOfRecognitionTriple(z,x,y)) . 

ClassOfRelationshipTriple(x,y,z) <-> ClassOfRelationship(x) & hasEnd1Cardinality(x,y) & hasEnd2Cardinality(x,z) . 
ClassOfRelationshipTemplate(x,y) <-> exists z(ClassOfRelationshipTriple(z,x,y)) . 

ClassOfRelationshipWithSignatureTriple(x,y,z) <-> ClassOfRelationshipWithSignature(x) & hasClassOfEnd1(x,y) & hasClassOfEnd2(x,z) . 
ClassOfRelationshipWithSignatureTemplate(x,y) <-> exists z(ClassOfRelationshipWithSignatureTriple(z,x,y)) . 

ClassOfRelativeLocationTriple(x,y,z) <-> ClassOfRelativeLocation(x) & hasClassOfLocated(x,y) & hasClassOfLocator(x,z) . 
ClassOfRelativeLocationTemplate(x,y) <-> exists z(ClassOfRelativeLocationTriple(z,x,y)) . 

ClassOfRepresentationOfThingTriple(x,y,z) <-> ClassOfRepresentationOfThing(x) & hasPattern(x,y) & hasRepresented(x,z) . 
ClassOfRepresentationOfThingTemplate(x,y) <-> exists z(ClassOfRepresentationOfThingTriple(z,x,y)) . 

ClassOfRepresentationTranslationTriple(x,y,z) <-> ClassOfRepresentationTranslation(x) & hasClassOfFirst(x,y) & hasClassOfSecond(x,z) . 
ClassOfRepresentationTranslationTemplate(x,y) <-> exists z(ClassOfRepresentationTranslationTriple(z,x,y)) . 

ClassOfResponsibilityForRepresentationTriple(x,y,z) <-> ClassOfResponsibilityForRepresentation(x) & hasClassOfControlled(x,y) & hasController(x,z) . 
ClassOfResponsibilityForRepresentationTemplate(x,y) <-> exists z(ClassOfResponsibilityForRepresentationTriple(z,x,y)) . 

ClassOfRightNamespaceTriple(x,y,z) <-> ClassOfRightNamespace(x) & hasClassOfClassOfWhole(x,y) & hasClassOfPart(x,z) . 
ClassOfRightNamespaceTemplate(x,y) <-> exists z(ClassOfRightNamespaceTriple(z,x,y)) . 

ClassOfScaleConversionTriple(x,y,z) <-> ClassOfScaleConversion(x) & hasCodomain(x,y) & hasDomain(x,z) . 
ClassOfScaleConversionTemplate(x,y) <-> exists z(ClassOfScaleConversionTriple(z,x,y)) . 

ClassOfSpecializationTriple(x,y,z) <-> ClassOfSpecialization(x) & hasClassOfSubclass(x,y) & hasClassOfSuperclass(x,z) . 
ClassOfSpecializationTemplate(x,y) <-> exists z(ClassOfSpecializationTriple(z,x,y)) . 

ClassOfTemporalSequenceTriple(x,y,z) <-> ClassOfTemporalSequence(x) & hasClassOfPredecessor(x,y) & hasClassOfSuccessor(x,z) . 
ClassOfTemporalSequenceTemplate(x,y) <-> exists z(ClassOfTemporalSequenceTriple(z,x,y)) . 

ClassOfTemporalWholePartTriple(x,y,z) <-> ClassOfTemporalWholePart(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
ClassOfTemporalWholePartTemplate(x,y) <-> exists z(ClassOfTemporalWholePartTriple(z,x,y)) . 

ClassOfUsageOfRepresentationTriple(x,y,z) <-> ClassOfUsageOfRepresentation(x) & hasClassOfUsed(x,y) & hasUser(x,z) . 
ClassOfUsageOfRepresentationTemplate(x,y) <-> exists z(ClassOfUsageOfRepresentationTriple(z,x,y)) . 

ComparisonOfPropertyTriple(x,y,z) <-> ComparisonOfProperty(x) & hasGreaterElement(x,y) & hasLesserElement(x,z) . 
ComparisonOfPropertyTemplate(x,y) <-> exists z(ComparisonOfPropertyTriple(z,x,y)) . 

CompositionOfIndividualTriple(x,y,z) <-> CompositionOfIndividual(x) & hasPart(x,y) & hasWhole(x,z) . 
CompositionOfIndividualTemplate(x,y) <-> exists z(CompositionOfIndividualTriple(z,x,y)) . 

ConnectionOfIndividualTriple(x,y,z) <-> ConnectionOfIndividual(x) & hasSide1(x,y) & hasSide2(x,z) . 
ConnectionOfIndividualTemplate(x,y) <-> exists z(ConnectionOfIndividualTriple(z,x,y)) . 

ContainmentOfIndividualTriple(x,y,z) <-> ContainmentOfIndividual(x) & hasLocated(x,y) & hasLocator(x,z) . 
ContainmentOfIndividualTemplate(x,y) <-> exists z(ContainmentOfIndividualTriple(z,x,y)) . 

CoordinateSystemTriple(x,y,z) <-> CoordinateSystem(x) & hasCodomain(x,y) & hasDomain(x,z) . 
CoordinateSystemTemplate(x,y) <-> exists z(CoordinateSystemTriple(z,x,y)) . 

DefinitionTriple(x,y,z) <-> Definition(x) & hasRepresented(x,y) & hasSign(x,z) . 
DefinitionTemplate(x,y) <-> exists z(DefinitionTriple(z,x,y)) . 

DescriptionTriple(x,y,z) <-> Description(x) & hasRepresented(x,y) & hasSign(x,z) . 
DescriptionTemplate(x,y) <-> exists z(DescriptionTriple(z,x,y)) . 

DifferenceOfSetOfClassTriple(x,y,z) <-> DifferenceOfSetOfClass(x) & hasInput(x,y) & hasResult(x,z) . 
DifferenceOfSetOfClassTemplate(x,y) <-> exists z(DifferenceOfSetOfClassTriple(z,x,y)) . 

DimensionOfIndividualTriple(x,y,z) <-> DimensionOfIndividual(x) & hasIndividual(x,y) & hasIndividualDimension(x,z) . 
DimensionOfIndividualTemplate(x,y) <-> exists z(DimensionOfIndividualTriple(z,x,y)) . 

DimensionOfShapeTriple(x,y,z) <-> DimensionOfShape(x) & hasDimension(x,y) & hasShape(x,z) . 
DimensionOfShapeTemplate(x,y) <-> exists z(DimensionOfShapeTriple(z,x,y)) . 

DirectConnectionTriple(x,y,z) <-> DirectConnection(x) & hasSide1(x,y) & hasSide2(x,z) . 
DirectConnectionTemplate(x,y) <-> exists z(DirectConnectionTriple(z,x,y)) . 

EndingTriple(x,y,z) <-> Ending(x) & hasPart(x,y) & hasWhole(x,z) . 
EndingTemplate(x,y) <-> exists z(EndingTriple(z,x,y)) . 

FeatureWholePartTriple(x,y,z) <-> FeatureWholePart(x) & hasPart(x,y) & hasWhole(x,z) . 
FeatureWholePartTemplate(x,y) <-> exists z(FeatureWholePartTriple(z,x,y)) . 

FunctionalMappingTriple(x,y,z) <-> FunctionalMapping(x) & hasInput(x,y) & hasResult(x,z) . 
FunctionalMappingTemplate(x,y) <-> exists z(FunctionalMappingTriple(z,x,y)) . 

IdentificationTriple(x,y,z) <-> Identification(x) & hasRepresented(x,y) & hasSign(x,z) . 
IdentificationTemplate(x,y) <-> exists z(IdentificationTriple(z,x,y)) . 

IndirectConnectionTriple(x,y,z) <-> IndirectConnection(x) & hasSide1(x,y) & hasSide2(x,z) . 
IndirectConnectionTemplate(x,y) <-> exists z(IndirectConnectionTriple(z,x,y)) . 

IndirectPropertyTriple(x,y,z) <-> IndirectProperty(x) & hasPossessor(x,y) & hasProperty(x,z) . 
IndirectPropertyTemplate(x,y) <-> exists z(IndirectPropertyTriple(z,x,y)) . 

IndividualUsedInConnectionTriple(x,y,z) <-> IndividualUsedInConnection(x) & hasConnection(x,y) & hasUsage(x,z) . 
IndividualUsedInConnectionTemplate(x,y) <-> exists z(IndividualUsedInConnectionTriple(z,x,y)) . 

IntendedRoleAndDomainTriple(x,y,z) <-> IntendedRoleAndDomain(x) & hasPlayed(x,y) & hasPlayer(x,z) . 
IntendedRoleAndDomainTemplate(x,y) <-> exists z(IntendedRoleAndDomainTriple(z,x,y)) . 

IntersectionOfSetOfClassTriple(x,y,z) <-> IntersectionOfSetOfClass(x) & hasInput(x,y) & hasResult(x,z) . 
IntersectionOfSetOfClassTemplate(x,y) <-> exists z(IntersectionOfSetOfClassTriple(z,x,y)) . 

InvolvementByReferenceTriple(x,y,z) <-> InvolvementByReference(x) & hasInvolved(x,y) & hasInvolver(x,z) . 
InvolvementByReferenceTemplate(x,y) <-> exists z(InvolvementByReferenceTriple(z,x,y)) . 

LeftNamespaceTriple(x,y,z) <-> LeftNamespace(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
LeftNamespaceTemplate(x,y) <-> exists z(LeftNamespaceTriple(z,x,y)) . 

LifecycleStageTriple(x,y,z) <-> LifecycleStage(x) & hasInterest(x,y) & hasInterested(x,z) . 
LifecycleStageTemplate(x,y) <-> exists z(LifecycleStageTriple(z,x,y)) . 

LowerBoundOfNumberRangeTriple(x,y,z) <-> LowerBoundOfNumberRange(x) & hasClassified(x,y) & hasClassifier(x,z) . 
LowerBoundOfNumberRangeTemplate(x,y) <-> exists z(LowerBoundOfNumberRangeTriple(z,x,y)) . 

LowerBoundOfPropertyRangeTriple(x,y,z) <-> LowerBoundOfPropertyRange(x) & hasClassified(x,y) & hasClassifier(x,z) . 
LowerBoundOfPropertyRangeTemplate(x,y) <-> exists z(LowerBoundOfPropertyRangeTriple(z,x,y)) . 

MultidimensionalScaleTriple(x,y,z) <-> MultidimensionalScale(x) & hasCodomain(x,y) & hasDomain(x,z) . 
MultidimensionalScaleTemplate(x,y) <-> exists z(MultidimensionalScaleTriple(z,x,y)) . 

NamespaceTriple(x,y,z) <-> Namespace(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
NamespaceTemplate(x,y) <-> exists z(NamespaceTriple(z,x,y)) . 

OtherRelationshipTriple(x,y,z) <-> OtherRelationship(x) & hasEnd1(x,y) & hasEnd2(x,z) . 
OtherRelationshipTemplate(x,y) <-> exists z(OtherRelationshipTriple(z,x,y)) . 

ParticipationTriple(x,y,z) <-> Participation(x) & hasPart(x,y) & hasWhole(x,z) . 
ParticipationTemplate(x,y) <-> exists z(ParticipationTriple(z,x,y)) . 

PossibleRoleAndDomainTriple(x,y,z) <-> PossibleRoleAndDomain(x) & hasPlayed(x,y) & hasPlayer(x,z) . 
PossibleRoleAndDomainTemplate(x,y) <-> exists z(PossibleRoleAndDomainTriple(z,x,y)) . 

PropertyForShapeDimensionTriple(x,y,z) <-> PropertyForShapeDimension(x) & hasProperty(x,y) & hasShapeDimension(x,z) . 
PropertyForShapeDimensionTemplate(x,y) <-> exists z(PropertyForShapeDimensionTriple(z,x,y)) . 

PropertyQuantificationTriple(x,y,z) <-> PropertyQuantification(x) & hasInput(x,y) & hasResult(x,z) . 
PropertyQuantificationTemplate(x,y) <-> exists z(PropertyQuantificationTriple(z,x,y)) . 

PropertySpaceForClassOfShapeDimensionTriple(x,y,z) <-> PropertySpaceForClassOfShapeDimension(x) & hasClassOfShapeDimension(x,y) & hasPropertySpace(x,z) . 
PropertySpaceForClassOfShapeDimensionTemplate(x,y) <-> exists z(PropertySpaceForClassOfShapeDimensionTriple(z,x,y)) . 

RecognitionTriple(x,y,z) <-> Recognition(x) & hasRecognized(x,y) & hasRecognizing(x,z) . 
RecognitionTemplate(x,y) <-> exists z(RecognitionTriple(z,x,y)) . 

RelativeLocationTriple(x,y,z) <-> RelativeLocation(x) & hasLocated(x,y) & hasLocator(x,z) . 
RelativeLocationTemplate(x,y) <-> exists z(RelativeLocationTriple(z,x,y)) . 

RepresentationOfThingTriple(x,y,z) <-> RepresentationOfThing(x) & hasRepresented(x,y) & hasSign(x,z) . 
RepresentationOfThingTemplate(x,y) <-> exists z(RepresentationOfThingTriple(z,x,y)) . 

ResponsibilityForRepresentationTriple(x,y,z) <-> ResponsibilityForRepresentation(x) & hasControlled(x,y) & hasController(x,z) . 
ResponsibilityForRepresentationTemplate(x,y) <-> exists z(ResponsibilityForRepresentationTriple(z,x,y)) . 

RightNamespaceTriple(x,y,z) <-> RightNamespace(x) & hasClassOfPart(x,y) & hasClassOfWhole(x,z) . 
RightNamespaceTemplate(x,y) <-> exists z(RightNamespaceTriple(z,x,y)) . 

ScaleTriple(x,y,z) <-> Scale(x) & hasCodomain(x,y) & hasDomain(x,z) . 
ScaleTemplate(x,y) <-> exists z(ScaleTriple(z,x,y)) . 

SpecializationTriple(x,y,z) <-> Specialization(x) & hasSubclass(x,y) & hasSuperclass(x,z) . 
SpecializationTemplate(x,y) <-> exists z(SpecializationTriple(z,x,y)) . 

SpecializationByDomainTriple(x,y,z) <-> SpecializationByDomain(x) & hasSubclass(x,y) & hasSuperclass(x,z) . 
SpecializationByDomainTemplate(x,y) <-> exists z(SpecializationByDomainTriple(z,x,y)) . 

SpecializationByRoleTriple(x,y,z) <-> SpecializationByRole(x) & hasSubclass(x,y) & hasSuperclass(x,z) . 
SpecializationByRoleTemplate(x,y) <-> exists z(SpecializationByRoleTriple(z,x,y)) . 

SpecializationOfIndividualDimensionFromPropertyTriple(x,y,z) <-> SpecializationOfIndividualDimensionFromProperty(x) & hasSubclass(x,y) & hasSuperclass(x,z) . 
SpecializationOfIndividualDimensionFromPropertyTemplate(x,y) <-> exists z(SpecializationOfIndividualDimensionFromPropertyTriple(z,x,y)) . 

TemporalBoundingTriple(x,y,z) <-> TemporalBounding(x) & hasPart(x,y) & hasWhole(x,z) . 
TemporalBoundingTemplate(x,y) <-> exists z(TemporalBoundingTriple(z,x,y)) . 

TemporalSequenceTriple(x,y,z) <-> TemporalSequence(x) & hasPredecessor(x,y) & hasSuccessor(x,z) . 
TemporalSequenceTemplate(x,y) <-> exists z(TemporalSequenceTriple(z,x,y)) . 

TemporalWholePartTriple(x,y,z) <-> TemporalWholePart(x) & hasPart(x,y) & hasWhole(x,z) . 
TemporalWholePartTemplate(x,y) <-> exists z(TemporalWholePartTriple(z,x,y)) . 

UnionOfSetOfClassTriple(x,y,z) <-> UnionOfSetOfClass(x) & hasInput(x,y) & hasResult(x,z) . 
UnionOfSetOfClassTemplate(x,y) <-> exists z(UnionOfSetOfClassTriple(z,x,y)) . 

UpperBoundOfNumberRangeTriple(x,y,z) <-> UpperBoundOfNumberRange(x) & hasClassified(x,y) & hasClassifier(x,z) . 
UpperBoundOfNumberRangeTemplate(x,y) <-> exists z(UpperBoundOfNumberRangeTriple(z,x,y)) . 

UpperBoundOfPropertyRangeTriple(x,y,z) <-> UpperBoundOfPropertyRange(x) & hasClassified(x,y) & hasClassifier(x,z) . 
UpperBoundOfPropertyRangeTemplate(x,y) <-> exists z(UpperBoundOfPropertyRangeTriple(z,x,y)) . 

UsageOfRepresentationTriple(x,y,z) <-> UsageOfRepresentation(x) & hasUsed(x,y) & hasUser(x,z) . 
UsageOfRepresentationTemplate(x,y) <-> exists z(UsageOfRepresentationTriple(z,x,y)) . 

entityTriple(x,y,z) <-> (ApprovalTriple(x,y,z) | ArrangementOfIndividualTriple(x,y,z) | AssemblyOfIndividualTriple(x,y,z) | BeginningTriple(x,y,z) | BoundaryOfNumberSpaceTriple(x,y,z) | BoundaryOfPropertySpaceTriple(x,y,z) | CauseOfEventTriple(x,y,z) | ClassificationTriple(x,y,z) | ClassOfApprovalTriple(x,y,z) | ClassOfArrangementOfIndividualTriple(x,y,z) | ClassOfAssemblyOfIndividualTriple(x,y,z) | ClassOfCauseOfBeginningOfClassOfIndividualTriple(x,y,z) | ClassOfCauseOfEndingOfClassOfIndividualTriple(x,y,z) | ClassOfClassificationTriple(x,y,z) | ClassOfClassOfCompositionTriple(x,y,z) | ClassOfClassOfDefinitionTriple(x,y,z) | ClassOfClassOfDescriptionTriple(x,y,z) | ClassOfClassOfIdentificationTriple(x,y,z) | ClassOfClassOfRelationshipWithSignatureTriple(x,y,z) | ClassOfClassOfRepresentationTriple(x,y,z) | ClassOfClassOfRepresentationTranslationTriple(x,y,z) | ClassOfClassOfResponsibilityForRepresentationTriple(x,y,z) | ClassOfClassOfUsageOfRepresentationTriple(x,y,z) | ClassOfCompositionOfIndividualTriple(x,y,z) | ClassOfConnectionOfIndividualTriple(x,y,z) | ClassOfContainmentOfIndividualTriple(x,y,z) | ClassOfDefinitionTriple(x,y,z) | ClassOfDescriptionTriple(x,y,z) | ClassOfDimensionForShapeTriple(x,y,z) | ClassOfDirectConnectionTriple(x,y,z) | ClassOfFeatureWholePartTriple(x,y,z) | ClassOfFunctionalMappingTriple(x,y,z) | ClassOfIdentificationTriple(x,y,z) | ClassOfIndirectConnectionTriple(x,y,z) | ClassOfIndirectPropertyTriple(x,y,z) | ClassOfIndividualUsedInConnectionTriple(x,y,z) | ClassOfIntendedRoleAndDomainTriple(x,y,z) | ClassOfInvolvementByReferenceTriple(x,y,z) | ClassOfIsomorphicFunctionalMappingTriple(x,y,z) | ClassOfLeftNamespaceTriple(x,y,z) | ClassOfNamespaceTriple(x,y,z) | ClassOfParticipationTriple(x,y,z) | ClassOfPossibleRoleAndDomainTriple(x,y,z) | ClassOfRecognitionTriple(x,y,z) | ClassOfRelationshipTriple(x,y,z) | ClassOfRelationshipWithSignatureTriple(x,y,z) | ClassOfRelativeLocationTriple(x,y,z) | ClassOfRepresentationOfThingTriple(x,y,z) | ClassOfRepresentationTranslationTriple(x,y,z) | ClassOfResponsibilityForRepresentationTriple(x,y,z) | ClassOfRightNamespaceTriple(x,y,z) | ClassOfScaleConversionTriple(x,y,z) | ClassOfSpecializationTriple(x,y,z) | ClassOfTemporalSequenceTriple(x,y,z) | ClassOfTemporalWholePartTriple(x,y,z) | ClassOfUsageOfRepresentationTriple(x,y,z) | ComparisonOfPropertyTriple(x,y,z) | CompositionOfIndividualTriple(x,y,z) | ConnectionOfIndividualTriple(x,y,z) | ContainmentOfIndividualTriple(x,y,z) | CoordinateSystemTriple(x,y,z) | DefinitionTriple(x,y,z) | DescriptionTriple(x,y,z) | DifferenceOfSetOfClassTriple(x,y,z) | DimensionOfIndividualTriple(x,y,z) | DimensionOfShapeTriple(x,y,z) | DirectConnectionTriple(x,y,z) | EndingTriple(x,y,z) | FeatureWholePartTriple(x,y,z) | FunctionalMappingTriple(x,y,z) | IdentificationTriple(x,y,z) | IndirectConnectionTriple(x,y,z) | IndirectPropertyTriple(x,y,z) | IndividualUsedInConnectionTriple(x,y,z) | IntendedRoleAndDomainTriple(x,y,z) | IntersectionOfSetOfClassTriple(x,y,z) | InvolvementByReferenceTriple(x,y,z) | LeftNamespaceTriple(x,y,z) | LifecycleStageTriple(x,y,z) | LowerBoundOfNumberRangeTriple(x,y,z) | LowerBoundOfPropertyRangeTriple(x,y,z) | MultidimensionalScaleTriple(x,y,z) | NamespaceTriple(x,y,z) | OtherRelationshipTriple(x,y,z) | ParticipationTriple(x,y,z) | PossibleRoleAndDomainTriple(x,y,z) | PropertyForShapeDimensionTriple(x,y,z) | PropertyQuantificationTriple(x,y,z) | PropertySpaceForClassOfShapeDimensionTriple(x,y,z) | RecognitionTriple(x,y,z) | RelativeLocationTriple(x,y,z) | RepresentationOfThingTriple(x,y,z) | ResponsibilityForRepresentationTriple(x,y,z) | RightNamespaceTriple(x,y,z) | ScaleTriple(x,y,z) | SpecializationTriple(x,y,z) | SpecializationByDomainTriple(x,y,z) | SpecializationByRoleTriple(x,y,z) | SpecializationOfIndividualDimensionFromPropertyTriple(x,y,z) | TemporalBoundingTriple(x,y,z) | TemporalSequenceTriple(x,y,z) | TemporalWholePartTriple(x,y,z) | UnionOfSetOfClassTriple(x,y,z) | UpperBoundOfNumberRangeTriple(x,y,z) | UpperBoundOfPropertyRangeTriple(x,y,z) | UsageOfRepresentationTriple(x,y,z)) . 
Home
About PCA
Reference Data Services (RDS)
RDS Operations Support
Meetings and Conferences
ISO 15926
Special Interest Groups
Technical Advisory Board
Norwegian Continental Shelf Std
Projects
Search