객체 집합의 속성 식별자와 로드 수준
PropertyIdentifier는 객체 속성이나 구조체 필드를 선택합니다. 속성 API 이름은 Get Object Type 또는 Ontology Manager에서 확인합니다. 각 선택자는 type으로 구분합니다.
| type | 필수 필드 | 의미 |
|---|---|---|
property | apiName: string | 속성 API 이름으로 선택 |
structField | propertyApiName: string, structFieldApiName: string | 구조체 속성과 그 안의 필드 API 이름으로 선택 |
propertyWithLoadLevel | propertyIdentifier: PropertyIdentifier, loadLevel: LoadLevel | 선택한 속성에 로드 수준 적용 |
titleProperty | 없음 | 객체 유형의 제목 속성 선택 |
primaryKeyProperty | 없음 | 객체 유형의 기본 키 속성 선택 |
제목 속성과 기본 키 속성은 모든 객체 유형에 있는 역할로 선택합니다. structFieldApiName에는 표시 이름이 아닌 온톨로지 구조체 필드의 API 이름을 사용합니다. 구조체 필드 및 로드 수준 선택자는 실험적 기능이며 필터나 정렬에서 작동하지 않을 수 있습니다.
{"type": "property", "apiName": "salary"}
{
"type": "structField",
"propertyApiName": "address",
"structFieldApiName": "city"
}
LoadLevel
로드 수준은 배열의 대표 값이나 구조체의 주 값을 선택할 때 사용합니다. 배열에서 어떤 값으로 축약할지, 구조체에서 어떤 주 값을 추출할지는 온톨로지 설정을 따릅니다. 지정한 로드 수준이 속성 유형에 적용될 수 없으면 그 로드 수준을 무시합니다.
다음 변형에는 type 외에 추가 필드가 없습니다.
| type | 동작 |
|---|---|
applyReducers | 온톨로지 설정에 따라 배열을 단일 값으로 축약 |
extractMainValue | 온톨로지 설정에 따라 구조체의 주 값 추출 |
applyReducersAndExtractMainValue | 배열 축약과 구조체 주 값 추출을 모두 적용 |
noLoadLevel | 축약이나 주 값 추출 없이 속성 그대로 반환 |
defaultLoadLevel을 제공하는 조회 API에서는 noLoadLevel을 속성별로 지정하여 해당 속성에 기본 로드 수준을 적용하지 않을 수 있습니다. 로드 수준을 포함한 속성 선택 예시는 다음과 같습니다.
{
"type": "propertyWithLoadLevel",
"propertyIdentifier": {"type": "property", "apiName": "measurements"},
"loadLevel": {"type": "applyReducers"}
}