[ 
https://issues.apache.org/jira/browse/ATLAS-1410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15928083#comment-15928083
 ] 

David Radley commented on ATLAS-1410:
-------------------------------------

Many thanks [~jonesn].
Responding to your comments for pages
6 : the intent is that a term is owned by one glossary but can be categorized 
by categories from any glossary. Do you think I need to be more explicit in the 
text about this?
7 : Very valid concerns relating to globalization, which I suggest we deal with 
this separately, as per my exclusions at the top of the document. 
We have talked of display attributes on the dev list. I have not looked into 
TitanDbs encoding, whether this is effected by which store is used, whether 
String data type in Titan supports unicode or UTF-8 and how this fits with 
indexes.  
p8 - in figure 3 "hive column" is meant to be an instance - so could be worth 
using an example like "employee salary" or similar to avoid confusion with type 
definitions. <<David agreed>>Also on this page it would be worth comparing to 
the v1 implementation. The association there between the column (entity) & term 
(trait) is the trait instance, which also carries additional information - 
parameters. That’s how we might capture the level of SPI, whilst I think with 
this new design that is done through the hierarchy of glossary terms <<David 
yes see figure 9>>. An example may help?  or just a link to page 16. Question 
for other reviewers - is this sufficient (I think it's simpler, but do we lose 
additional attributes?) <<David what attributes do you think we are losing? We 
are storing attributes and potentially complex relationships in the classifying 
terms; which is why they exist >>
13 : yes there is scope to add new semantics relationships. 
I agree on your search comment
16/17 agreed.
On Ranger Tag sync. I am suggesting we continue to expose classifications as 
tags. Now V2 Classifications are enhanced by
* having a guid (as the name cannot be relied upon to be unique)
* having an associated Glossary Terms, including the classifying term. 
I hope this is sufficient to meet the needs of tag sync; or do you think more 
is required? 



> V2 Glossary API
> ---------------
>
>                 Key: ATLAS-1410
>                 URL: https://issues.apache.org/jira/browse/ATLAS-1410
>             Project: Atlas
>          Issue Type: Improvement
>            Reporter: David Radley
>            Assignee: David Radley
>         Attachments: Atlas Glossary V2 proposal v1.0.pdf, Atlas Glossary V2 
> proposal v1.1.pdf
>
>
> The BaseResourceDefinition uses the AttributeDefintion class from typesystem. 
> There are newer more funcitonal versions of this capability in the atlas-intg 
> project. This Jira is changing over the glossary implementation to the newer 
> entity / type classes.  
> Instread of the instanceProperties and collectionProperties in the 
> BaseResourceDefintions we should use something in this sort of style :  
> "
>  AtlasEntityDef deptTypeDef =
>                 AtlasTypeUtil.createClassTypeDef(DEPARTMENT_TYPE, 
> "Department"+_description, ImmutableSet.<String>of(),
>                         AtlasTypeUtil.createRequiredAttrDef("name", "string"),
>                         new AtlasAttributeDef("employees", 
> String.format("array<%s>", "Person"), true,
>                                 AtlasAttributeDef.Cardinality.SINGLE, 0, 1, 
> false, false,
>                                 
> Collections.<AtlasStructDef.AtlasConstraintDef>emptyList()));
>         AtlasEntityDef personTypeDef = 
> AtlasTypeUtil.createClassTypeDef("Person", "Person"+_description, 
> ImmutableSet.<String>of(),
>                 AtlasTypeUtil.createRequiredAttrDef("name", "string"),
>                 AtlasTypeUtil.createOptionalAttrDef("address", "Address"),
>                 AtlasTypeUtil.createOptionalAttrDef("birthday", "date"),
>                 AtlasTypeUtil.createOptionalAttrDef("hasPets", "boolean"),
>                 AtlasTypeUtil.createOptionalAttrDef("numberOfCars", "byte"),
>                 AtlasTypeUtil.createOptionalAttrDef("houseNumber", "short"),
>                 AtlasTypeUtil.createOptionalAttrDef("carMileage", "int"),
>                 AtlasTypeUtil.createOptionalAttrDef("age", "float"),
> "
> For the parent child relationships with glossary categories and terms we 
> should be able to have the type system manage edge deletion. As part of this, 
> we will need to investigate whether we could get rid of the disconnect and 
> connect methods added in ATLAS-1186 
>  



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to