[ https://issues.apache.org/jira/browse/ATLAS-1410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15924065#comment-15924065 ]
Nigel Jones commented on ATLAS-1410: ------------------------------------ On p6 is the intent that term12 can sit in both glossaries - ie it could for example also be linked to cat14 in Glossary 2? This makes sense p7 - How about unicode support for term names ? I think this would be valuable for any displayed name (and perhaps the description is not enough). Surely we should be able to have for example a chinese term in the glossary? More restrictive spec for an internal name is then ok 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. 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. 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?) p13 - Homophones. This gets more complex due to dialect? (I'm not a linguist). It perhaps brings another dimension - the need for translation of names/descriptions for display purposes General - it's mentioned search is excluded. Perhaps improved DSL/UI support for glossary navigation could be the subject of an additional JIRA (revisit later) p16/17 - Apache ranger integration * We should consider how the existing tag support in ranger is affected by these changes. Perhaps the simplest suggestion is that the current ranger tagsync works only with the v1 glossary. Then I propose that for v2 we have a new tagsync which will navigate the hierarchy to allow ranger (or other enforcement engines) to pick up a simple entity:classification map as it does today, but using a new "OMAS" API. This will require an additional Atlas JIRA (to provide the new Governance API) and a ranger JIRA (to consume that API using a new tagsync process). In those JIRAs we should also update docs to clarify the interoparability I'll open these shortly. * On a related point, it could be useful to be able to identify a term as "relevant" for ranger/enforcement engines. This could come from it's membership in a category, or some other attribute such as a flag. Otherwise an excellent proposal and very much needed for Atlas to "step up" to support enterprise glossaries. > 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)