{"action":"created","issue":{"url":"https://api.github.com/repos/peter-vermeulen/ebix/issues/2","labels_url":"https://api.github.com/repos/peter-vermeulen/ebix/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/peter-vermeulen/ebix/issues/2/comments","events_url":"https://api.github.com/repos/peter-vermeulen/ebix/issues/2/events","html_url":"https://github.com/peter-vermeulen/ebix/issues/2","id":57492876,"number":2,"title":"Add facets to ABIE / MBIE by means of OCL-  statements","user":{"login":"peter-vermeulen","id":7375848,"avatar_url":"https://avatars.githubusercontent.com/u/7375848?v=3","gravatar_id":"","url":"https://api.github.com/users/peter-vermeulen","html_url":"https://github.com/peter-vermeulen","followers_url":"https://api.github.com/users/peter-vermeulen/followers","following_url":"https://api.github.com/users/peter-vermeulen/following{/other_user}","gists_url":"https://api.github.com/users/peter-vermeulen/gists{/gist_id}","starred_url":"https://api.github.com/users/peter-vermeulen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peter-vermeulen/subscriptions","organizations_url":"https://api.github.com/users/peter-vermeulen/orgs","repos_url":"https://api.github.com/users/peter-vermeulen/repos","events_url":"https://api.github.com/users/peter-vermeulen/events{/privacy}","received_events_url":"https://api.github.com/users/peter-vermeulen/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/peter-vermeulen/ebix/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-02-12T17:35:32Z","updated_at":"2015-02-12T19:28:15Z","closed_at":null,"body":"If the tag type is integer, a “=” and if the tag type is string a “=” or “::” may be used. ebIX ETC has decided to limit the options (”=” or ”::”) to only use ”=” for the facets and to continue using ”::” for the enumeration literals used. \r\n\r\nAllowed facets are: length, maxLength, minLength, maxInclusive, maxExclusive, minInclusive, minExclusive, pattern, fractionalDigits, totalDigits \r\n\r\nExample:\r\ninv: : self.Payload.SDP_Used.ServiceComponent_Identification.content.length=8 \r\n\r\n```xml\r\n<xsd:complexType name=\"ServiceDeliveryPointLocation\"> <xsd:sequence> <xsd:element ref=\"bie:HeadpointIdentificationDomainLocation\" minOccurs=\"1\" maxOccurs=\"1\"/> <xsd:element name=\"ServiceComponentIdentification\" minOccurs=\"1\" maxOccurs=\"1\"> <xsd:complexType> <xsd:simpleContent> <xsd:restriction base=\"bie:ServiceIdentifierType_BE000001\"> <xsd:length value=\"8\"/> </xsd:restriction> </xsd:simpleContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:element name=\"SDPUsedServiceDeliveryPointLocation\" type=\"bie:ServiceDeliveryPointLocation\"/> \r\n```"},"comment":{"url":"https://api.github.com/repos/peter-vermeulen/ebix/issues/comments/74135577","html_url":"https://github.com/peter-vermeulen/ebix/issues/2#issuecomment-74135577","issue_url":"https://api.github.com/repos/peter-vermeulen/ebix/issues/2","id":74135577,"user":{"login":"peter-vermeulen","id":7375848,"avatar_url":"https://avatars.githubusercontent.com/u/7375848?v=3","gravatar_id":"","url":"https://api.github.com/users/peter-vermeulen","html_url":"https://github.com/peter-vermeulen","followers_url":"https://api.github.com/users/peter-vermeulen/followers","following_url":"https://api.github.com/users/peter-vermeulen/following{/other_user}","gists_url":"https://api.github.com/users/peter-vermeulen/gists{/gist_id}","starred_url":"https://api.github.com/users/peter-vermeulen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peter-vermeulen/subscriptions","organizations_url":"https://api.github.com/users/peter-vermeulen/orgs","repos_url":"https://api.github.com/users/peter-vermeulen/repos","events_url":"https://api.github.com/users/peter-vermeulen/events{/privacy}","received_events_url":"https://api.github.com/users/peter-vermeulen/received_events","type":"User","site_admin":false},"created_at":"2015-02-12T19:28:14Z","updated_at":"2015-02-12T19:28:14Z","body":"See https://github.com/peter-vermeulen/ebix/blob/master/org.ebix.umm/src/org/ebix/umm/templates/xsd/BdtLibrarySchema.xtend\r\n\r\nBDT properties support already a few facets: length, minLength, maxLength, and pattern.\r\nIs this more of the same?\r\n\r\nIn that case the following steps need to be taken:\r\n1. Add facets to https://github.com/peter-vermeulen/ebix/blob/master/org.ebix.umm/src/org/xtext/umm/Umm.xtext\r\n2. Update XSD template with the new facets in https://github.com/peter-vermeulen/ebix/blob/master/org.ebix.umm/src/org/ebix/umm/templates/xsd/BdtLibrarySchema.xtend\r\n3. Recognize the OCL rules in https://github.com/peter-vermeulen/ebix/blob/master/org.ebix.umm/src/org/ebix/umm/validation/ocl/UmmOclValidator.xtend\r\n4. Execute the OCL rules on the UMM model in https://github.com/peter-vermeulen/ebix/blob/master/org.ebix.umm/src/org/ebix/umm/invariants/Invariants.xtend\r\n\r\n\r\n"}}