Subject Role SHALL be provided [SP-021] OCL self.attribute->exists(att : AttributeType | (not att.name.oclIsUndefined()) and att.name='urn:oasis:names:tc:xacml:2.0:subject:role' ) Purpose of Use SHALL be provided [SP-022] OCL self.attribute->exists(att : AttributeType | (not att.name.oclIsUndefined()) and att.name='urn:oasis:names:tc:xspa:1.0:subject:purposeofuse' ) Subject-ID SHALL be provided [SP-024] OCL self.attribute->exists(att : AttributeType | (not att.name.oclIsUndefined()) and att.name='urn:oasis:names:tc:xspa:1.0:subject:subject-id' ) Subject Organization Identifier SHALL be provided [SP-024] OCL self.attribute->exists(att : AttributeType | (not att.name.oclIsUndefined()) and att.name='urn:oasis:names:tc:xspa:1.0:subject:organization-id' ) National Provider Identifier SHALL be provided [SP-025] OCL self.attribute->exists(att : AttributeType | (not att.name.oclIsUndefined()) and att.name='urn:oasis:names:tc:xspa:2.0:subject:npi' ) The value of SubjectRoleSHALL be one of the values of KSA Individual Provider Specialty Value Set (OID= 2.16.840.1.113883.3.3731.1.202.5) [SP-021] OCL self.attributeValue->forAll(att : AttributeValueType| (not att.role.oclIsUndefined()) and ( (not att.role.nullFlavor.oclIsUndefined()) or att.role.matchesValueSet('2.16.840.1.113883.3.3731.1.202.5', att.role.code, att.role.codeSystem, null, null) ) )