구조체 속성
구조체(Struct)는 한 속성(Property)에 이름과 자료형이 있는 여러 필드를 담는 기본 자료형(Base type)입니다. Full Name에는 firstName과 lastName을, Address에는 street, city, postalCode와 country를 둘 수 있습니다.
구조체 속성은 구조체 자료형인 기반 데이터소스(Backing datasource)의 열 하나에 연결합니다. 각 값이 처음에는 다른 원천에 있더라도 온톨로지에 연결하기 전에 한 구조체 열로 결합해야 합니다.
구성 조건
구조체에는 최소 한 필드가 필요합니다. 구조체 안에 다른 구조체를 넣을 수 없고 필드 자체가 배열일 수도 없습니다. 구조체 속성 자체의 배열은 지원합니다.
필드에서 지원하는 자료형은 BOOLEAN, BYTE, DATE, DECIMAL, DOUBLE, FLOAT, GEOPOINT, INTEGER, LONG, SHORT, STRING과 TIMESTAMP입니다.
구조체 속성은 Object Storage V2에서 데이터셋(Dataset)과 제한 뷰(Restricted view)를 원본으로 생성할 수 있습니다. Object Storage V1은 지원하지 않습니다.
배열의 필드 조건은 독립적으로 평가
구조체 배열은 각 필드의 조건을 독립적으로 평가합니다. 한 배열 원소가 모든 조건을 동시에 만족하지 않아도 객체가 검색될 수 있습니다.
가상의 Full Name 속성값을 예로 들면 다음과 같습니다.
[
{"firstName": "Ada", "lastName": "Chen"},
{"firstName": "Blake", "lastName": "Moreau"}
]
firstName이 Ada이고 lastName이 Moreau인 조건으로 조회하면 이 객체가 일치합니다. 첫 원소가 이름 조건을, 두 번째 원소가 성 조건을 만족하기 때문입니다. 한 사람의 이름과 성을 같은 원소에서 확인한 결과로 해석하지 않습니다.
앱과 서비스 지원
| 환경 | 지원 범위 |
|---|---|
| Ontology Manager | 구조체 정의와 수정 |
| Actions | 구조체 속성값 생성과 수정 |
| Pipeline Builder | 구조체 정의와 수정 |
| Workshop | 구조체 표시와 변수 사용 |
| Marketplace | 구조체 속성 패키징과 설치 |
| Object Explorer | 구조체 속성값으로 객체 검색. 개별 구조체 필드 검색 지원은 개발 중입니다. |
| Ontology SDK | 지원 SDK에서 구조체 로드와 값 검색. 모든 SDK가 같은 속성 자료형을 지원하지는 않습니다. |
| TypeScript v2 및 Python 함수 | 구조체 매개변수(Parameter)와 구조체 속성 편집 |
서버의 필드 조건 평가와 특정 앱에서 필드 검색을 구성하는 기능은 구분합니다.