! multi-value EAV.
, , , ; ().
- ! ( )
, EAV :
- , , . (BTW, , , ..
- ( 0 1 , - ).
, EAV , () , , , ..
: ( / ( "" ) )
, [ "sub" -] , ( , ), , .. (...) , "" ", , ; JSON XML-at-large /, , , (, ).
"" (EAV-) " " ( , , , ). "" , .
, , . ( ), , [] , [ , ] , , " " (, , , .
:
, : (, ).
:
- , , , , [] .
- , , , "0.75 | Inch" ( <diam>0.75</diam><unit>Inch</unit>).
:
- 3 : , "diamvalue", , "", "Diameter"; - ( -) - : diamvalue unit ( , "", AttributeID "Diameter" ). value "Diameter" [ "" .
, , [ ] , , , . SQL, SQL "Diameter" .
; -)
" ".
Entity
id | name | description
-- | ---- | ------------
1 | configuration1 | configuration1
Attribute
id | name | type | Required | Repeats | SubAttribIdList
-- | ---- | ---- | -------- | ------- | ---------------
1 | att1 | string | N | N | null (only applicable to composite types)
2 | att2 | int | Y | N | null
3 | att3 | string | Y | Y | null
4 | DiamValue | numeric | Y | N | null
5 | Unit | string | Y | N | null
6 | Diameter | composite| N | N | 4,5
Value
id | entityId| attributeId | ParentAttribId |SeqNr | value
-- | --------| ----------- | -------------- |----- | -----
1 | 1 | 1 | null | 1 | a
2 | 1 | 2 | null | 1 | 1
3 | 1 | 3 | null | 1 | b (this value and next show show a repeating attribute)
4 | 1 | 3 | null | 2 | c
5 | 1 | 3 | null | 3 | d
6 | 1 | 4 | 6 | 1 | 0.75 (this value and next one shows a composite attribute
7 | 1 | 5 | 6 | 1 | Inches
:
- SeqNr ids 6 7 1 . SubAttribIdList. id 6 ( "" ), , , 2, 3 ..
- 1, NULL, .
- "" ; , , ( ) .
- 1 ( ), , . ( ), (, , ).