Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

액션 검증 결과와 제약 자료형

액션 검증은 전달한 매개변수와 제출 조건을 평가하여 VALID 또는 INVALID를 반환합니다. 실제 온톨로지에 변경을 적용하는 작업은 아닙니다. 기존 객체나 Foundry 데이터의 존재를 확인하는 검사는 제외되므로 이 결과만으로 기본 키의 고유성이나 사용자 ID의 존재를 보장하지 않습니다.

ValidateActionResponse

필드자료형필수 여부의미
resultenum필수전체 판정. VALID 또는 INVALID
submissionCriterialist<SubmissionCriteriaEvaluation>선택제출 조건별 판정
parametersmap<ParameterId, ParameterEvaluationResult>선택매개변수 ID별 평가 결과

SubmissionCriteriaEvaluation에는 필수 result와 선택적인 configuredFailureMessage 문자열이 있습니다. 제출 조건과 실패 메시지는 Ontology Manager에서 구성합니다.

ParameterEvaluationResult

필드자료형필수 여부의미
resultenum필수VALID 또는 INVALID
evaluatedConstraintslist<ParameterEvaluatedConstraint>선택해당 입력에 적용한 최종 제약 목록
requiredboolean필수액션 입력에서 이 매개변수가 필요한지 여부
defaultValueDataValue선택기본값 표현

매개변수 제약은 입력에 따라 동적으로 달라질 수 있습니다. 최종 판정은 반환된 result로 확인하고 evaluatedConstraints에서 적용 조건을 확인합니다. V1 검증 API는 구성된 매개변수 기본값을 자동 적용하지 않으며, 입력에서 생략한 매개변수는 null로 처리합니다. 응답의 defaultValue 필드와 자동 기본값 적용을 같은 기능으로 해석하지 않습니다.

ParameterEvaluatedConstraint 유형

각 제약은 type으로 변형을 선택합니다.

type의미
struct단일 구조체 매개변수의 필드별 평가
array항목별 평가를 지원하는 배열의 평가
oneOf미리 구성한 선택값
groupMember값이 지정 그룹 중 하나 이상에 속한 사용자의 ID여야 함
objectPropertyValue값이 객체 집합에서 찾은 객체의 속성값이어야 함
objectQueryResult값이 객체 집합에서 찾은 객체의 기본 키여야 함
range값의 범위
arraySize배열 크기의 범위
stringLength문자열 길이의 포함 범위
stringRegexMatch정규식 일치
unevaluable의존한 다른 매개변수나 객체 집합을 평가할 수 없어 현재 매개변수를 평가하지 못함

groupMember, objectPropertyValue, objectQueryResult, unevaluable 변형에는 별도의 추가 필드가 정의되어 있지 않습니다. 누락되거나 유효하지 않은 다른 매개변수로 허용값을 정하는 경우 unevaluable이 나타날 수 있습니다.

선택값 oneOf

필드자료형필수 여부의미
optionslist<ParameterOption>선택미리 정의한 선택값
otherValuesAllowedboolean필수사용자 지정값도 유효하게 인정할지 여부

ParameterOption의 displayName 문자열과 value는 모두 선택 항목입니다. value는 액션에 허용한 값입니다. otherValuesAllowed는 Ontology Manager의 Allowed "Other" value 설정에 대응합니다.

{
  "type": "oneOf",
  "options": [
    {"displayName": "Doe", "value": "Doe"},
    {"displayName": "Smith", "value": "Smith"},
    {"displayName": "Adams", "value": "Adams"},
    {"displayName": "Jones", "value": "Jones"}
  ],
  "otherValuesAllowed": true
}

범위 필드

range, arraySize, stringLength는 다음 범위 필드 집합을 사용합니다. 각 필드는 선택적인 DataValue입니다.

필드비교
lt미만
lte이하
gt초과
gte이상

stringLength의 길이 범위는 포함 경계로 표현합니다. 범위 구조의 선택적 필드 목록과 실제 반환된 제약을 구분하며, 서버가 반환한 판정을 사용합니다.

{"type": "range", "gte": 18}
{"type": "range", "gte": 0, "lt": 100}
{"type": "arraySize", "gte": 2, "lte": 4}

정규식

stringRegexMatch는 필수 문자열 regex와 선택적인 configuredFailureMessage를 갖습니다. 두 값은 Ontology Manager의 해당 매개변수에서 구성합니다.

구조체 필드 평가

struct의 structFields는 선택적인 map<StructParameterFieldApiName, StructFieldEvaluationResult>입니다. 키는 구조체 매개변수 필드의 고유 API 식별자입니다.

StructFieldEvaluationResult 필드자료형필수 여부
resultVALID 또는 INVALID필수
evaluatedConstraintslist<StructFieldEvaluatedConstraint>선택
requiredboolean필수

구조체 필드의 제약은 oneOf, range, objectQueryResult, stringLength, stringRegexMatch 중 하나입니다. 각 변형의 필드는 위와 같으며, objectQueryResult에는 추가 필드가 없습니다. 필드 제약도 매개변수 입력에 따라 동적으로 결정합니다.

배열 항목 평가

array의 entries는 선택적인 list<ArrayEntryEvaluatedConstraint>입니다. 현재 배열 항목 제약은 struct 변형을 제공하며, 그 안의 structFields는 위의 구조체 필드 평가와 같은 맵입니다. 배열 전체 크기 검사인 arraySize와 항목별 구조체 검사인 array는 별개입니다.