EPiServer Module Technical Overview
-
Upload
networkedplanet -
Category
Technology
-
view
1.811 -
download
5
Transcript of EPiServer Module Technical Overview
![Page 1: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/1.jpg)
NetworkedPlanet
TMCore EPiServer Module
Technical Overview
![Page 2: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/2.jpg)
Agenda
• Problem Statement• What Are Topic Maps?• Topic Maps & EPiServer
![Page 3: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/3.jpg)
PROBLEM STATEMENT
![Page 4: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/4.jpg)
Problem Statement• Navigation Issues
– Where am I?– Where can I go?
• Absent and Broken Links– Taking old pages down– Putting new pages up
• Content Change Rippling– The effect of changing content
• Seamless Editing Environments– Getting classification done
![Page 5: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/5.jpg)
Navigation• Users have a mental model of the information architecture.
– The model will differ from user to user.
• Need to avoid strict hierarchy navigation
• Provide links to related content via useful semantics
• Group related content
• Simplify the authoring process– No more hand crafting thousands of manual links
• Improving link management– No more broken links– Relevant content automatically added to pages
![Page 6: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/6.jpg)
Content Integration
• Topic Maps act as a knowledge hub that integrate heterogeneous content to present a unified view.
• Address specific use-cases:– How do I show content from two EPiServer instances?– How do I provide links to content from one server to that
in another?
• How can I integrate stock quotes, or content from the archive system in to my site?
![Page 7: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/7.jpg)
Augmented Search
• Semantic search by topic and not by full text
• Group search results by their topic classification
• Provide Google Suggest-like topic search
• Perform facet classification and search
![Page 8: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/8.jpg)
WHAT ARE TOPIC MAPS?
![Page 9: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/9.jpg)
From Tags…
La Dolce VitaFedericoFellini
Rome
Carmen
Piccini The Magic of Fellini
![Page 10: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/10.jpg)
…to Topics
Directed /Directed By
Subject Of/Is About
Directed /Directed By
Setting Of/Set In
Is In /Contains
Born In /Birthplace Of
La Dolce VitaFederico
Fellini
Rome
Italy
The Magic of FelliniCarmen Piccini
![Page 11: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/11.jpg)
Associations Between Topics
• Associations between topics have rich semantics.
Skilled Person SkillPerson Possessed Skill
Person has Skill
Roles
Association Type
Role Playing TypeRole Defining Type
![Page 12: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/12.jpg)
Topic Map Schemas
• Topic Types
• Inheritance
Document
Release Notes
EPiServer 5 Release Notes
Technical Article
![Page 13: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/13.jpg)
Topic Map Schemas
• Association Constraints are inherited
Skilled Person SkillPerson Possessed Skill
Person has Skill
Technical Skill
![Page 14: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/14.jpg)
TOPIC MAPS AND EPISERVER
![Page 15: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/15.jpg)
For every page in EPiServer there can exist a topic…
Page: Graham Moore Topic: Graham Moore
Pages & Topics
Topic Type: PersonPage Type : Person
![Page 16: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/16.jpg)
Associating Pages• Topics are connected together to form a graph of interrelated concepts
• All connections are two way and typed
Graham MooreC#
Has skill Has skill
Java
![Page 17: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/17.jpg)
Graham MooreC#
Has skill Has skill
Scoping Associations
• Associations are scoped so that associations are only visible after publication
Java
Editor View User View
C#Java
C#
UNPUBLISHED
![Page 18: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/18.jpg)
CLASSIFYING EPISERVER CONTENT
![Page 19: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/19.jpg)
Editor Support
• There are many ways to achieve topic map integration but those that are successful attend to the process and user needs as much as the technology.
• As well as the controls themselves there is the opportunity to build additional editorial controls that use topic maps as a way for editors to better organise the content they work with.
![Page 20: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/20.jpg)
Classification of Content• Seamless integration with
EPiServer Edit Mode
• Dynamically generated UI from topic map schema.
• AJAX driven responsive and performant.
• Intuitive and clear.
![Page 21: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/21.jpg)
Classification of Content• Schema-driven editor provides
the editor only with valid choices.
• Information about linked, or potentially linked topics on screen.
![Page 22: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/22.jpg)
BUILDING SITES WITH TOPICS
![Page 23: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/23.jpg)
Development Aids - Overview• Simple to use API
– Usable from all CLR languages– Web Services based– Many examples (demo site is open source)
• ASP.NET Compatibility– Data bound controls (Repeater, DataList and DataSet)– Faceted Search & Tag Cloud Web Parts
• Provides hooks for pre- and post- processing of editorial options.– Apply extra filters or bespoke queries.
![Page 24: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/24.jpg)
Development Aids – Documentation
![Page 25: EPiServer Module Technical Overview](https://reader036.fdocuments.net/reader036/viewer/2022062407/55d4a8e8bb61ebbb0e8b46fb/html5/thumbnails/25.jpg)
Development Aids – Simple API
• Set up a simple ASP.NET Repeater control:<asp:repeater runat="server" id="OrgUnitLedRepeater"> <separatortemplate>, </separatortemplate> <itemtemplate> <a href='<%# DataBinder.Eval(Container.DataItem, "pageLinkURL") %>'> <%# DataBinder.Eval(Container.DataItem, "pageName") %></a> </itemtemplate></asp:repeater>
BindOneHopToRepeater(this.OrgUnitLedRepeater,"http://example.org/association/personLeadsUnit","http://example.org/role/leader");
• Use the API to bind all the related topics to the control:– According to association type and role played