Esempio n. 1
0
        public ElementTreeNode ApplySliceSelf(String path)
        {
            ElementDefinition.SlicingComponent slicing = new ElementDefinition.SlicingComponent
            {
                Rules = ElementDefinition.SlicingRules.Open
            };

            slicing.Discriminator.Add(new ElementDefinition.DiscriminatorComponent
            {
                Type = ElementDefinition.DiscriminatorType.Type,
                Path = "$this"
            });
            ElementTreeNode elementDef = this.Get(path);

            elementDef.ApplySlicing(slicing, false);
            return(elementDef);
        }
Esempio n. 2
0
        public void StartComponentSliceing()
        {
            ElementTreeNode componentNode = this.Get("component");

            ElementDefinition.SlicingComponent slicingComponent = new ElementDefinition.SlicingComponent
            {
                Rules = ElementDefinition.SlicingRules.Open
            };

            slicingComponent.Discriminator.Add(new ElementDefinition.DiscriminatorComponent
            {
                Type = ElementDefinition.DiscriminatorType.Pattern,
                Path = "code"
            });

            componentNode.ApplySlicing(slicingComponent, false);
        }
Esempio n. 3
0
            // Start Section Sliceing
            ElementTreeNode StartSectionSlicing(SDefEditor e)
            {
                ElementTreeNode sectionNode = e.Get("section");

                ElementDefinition.SlicingComponent slicingComponent = new ElementDefinition.SlicingComponent
                {
                    Rules = ElementDefinition.SlicingRules.Open
                };

                slicingComponent.Discriminator.Add(new ElementDefinition.DiscriminatorComponent
                {
                    Type = ElementDefinition.DiscriminatorType.Pattern,
                    Path = "code"
                });

                sectionNode.ApplySlicing(slicingComponent, false);
                return(sectionNode);
            }
Esempio n. 4
0
        public ElementTreeNode ConfigureSliceByUrlDiscriminator(ElementTreeNode extDef,
                                                                bool overrideExistingSliceDiscriminator)
        {
            ElementDefinition.SlicingComponent slicingComponent = new ElementDefinition.SlicingComponent
            {
                Ordered = true,
                Rules   = ElementDefinition.SlicingRules.OpenAtEnd
            };

            slicingComponent.Discriminator.Add(new ElementDefinition.DiscriminatorComponent
            {
                Type = ElementDefinition.DiscriminatorType.Value,
                Path = "url"
            });

            extDef.ApplySlicing(slicingComponent, overrideExistingSliceDiscriminator);
            return(extDef);
        }