2 402
edições
Linha 60: | Linha 60: | ||
O primeiro passo nesse caso é estabelecer em UML qual a estratégia semântica de unificação. Pode-se optar por exemplo por não misturar B2C com B2B, e optar por classificar os clientes B2B conforme o o primeiro e segundo níveis do padrão SchemaOrg, ou seja, conforme [https://schema.org/Organization <code>sch:Organization</code>]. | O primeiro passo nesse caso é estabelecer em UML qual a estratégia semântica de unificação. Pode-se optar por exemplo por não misturar B2C com B2B, e optar por classificar os clientes B2B conforme o o primeiro e segundo níveis do padrão SchemaOrg, ou seja, conforme [https://schema.org/Organization <code>sch:Organization</code>]. | ||
Por ser um classificação dinâmica, podem surgir problemas ao amarrar classificação ao ID. As organizações são dinâmicas, uma escola do governo pode ser privatizada, o CNPJ de um colégio técnico pode ser expandido para ensino universitário, etc. Podemos supor ambos os casos: um atributo numérico de classificação com poucos bits, ou um ID com prefixo dado pela classificação. | Por ser um classificação dinâmica, podem surgir problemas ao amarrar classificação ao ID. As organizações são dinâmicas, uma escola do governo pode ser privatizada, o CNPJ de um colégio técnico pode ser expandido para ensino universitário, etc. Podemos supor ambos os casos: um atributo numérico de classificação com poucos bits, ou um ID com prefixo dado pela classificação. Se a instabilidade (na escala de anos) é um problema, pode-se restringir ao mais simples e estável: {PF, PJ/GOV, PJ/COM, PJ/ONG} com ou sem PJ/undef. O prefixo de ID nesse caso seria um controle relevante das heranças, que facilita nos JOINs de banco de dados. | ||
Quanto às classes <code>sch:Organization</code> pode-se expandir, reservando para o sistema interno, de RH por exemplo, a classe ''InternalOrganization'', para mapear subsidiárias e departamentos. | Quanto às classes <code>sch:Organization</code> pode-se expandir, reservando para o sistema interno, de RH por exemplo, a classe ''InternalOrganization'', para mapear subsidiárias e departamentos. |
edições