SlideShare a Scribd company logo
F I L E S
XML, XPath, XSLT...
the 'X' files?
ATA 56th Annual Conference, Miami
Paul Filkin pfilkin@sdl.com
November 4 -7, 2015
2
What is XML?
eXtensible Markup Language
+
3
When it’s simple…
4
… it’s easy!
SDL Trados Studio memoQ CafeTran
5
When it’s not so simple…
6
… it get’s a little trickier!
SDL Trados Studio
memoQ
CafeTran
7
Some tools can still handle these…
… in a friendly way
SDL Trados Studio Déjà Vu
8
But what happens if the file looks like this?
9
But what happens if the file looks like this?
10
But what happens if the file looks like this?
11
But what happens if the file looks like this?
12
Now we need to get specific…
• XPath is a syntax for defining parts
of an XML document
• XPath uses path expressions to
navigate in XML documents
• XPath contains a library of
standard functions
• XPath is a major element in XSLT
• XPath is a W3C recommendation
13
XPath’s purpose is to locate
any part of an XML document
14
X Path Terminology
16
Studio gave us a clue earlier…
//text/@line
17
Studio gave us a clue earlier…
//text/@line
18
//text/@line or /atts/title/verse1/text/@line
c:UserspfilkinDocumentsSDLPresentations20151104 (Miami - ATA)PresentationsThe X FilesFiles02 – not so simple.xml
19
//text/@line or /atts/title/verse1/text/@line
c:UserspfilkinDocumentsSDLPresentations20151104 (Miami - ATA)PresentationsThe X FilesFiles02 – not so simple.xml
Now carry on drilling down…
Helpful and free
XPath Tools
21
xmltree : http://xpathexplorer.sourceforge.net/
XPath expression
is returned here
Results of the XPath
are returned here
Select the XML Node
22
memoQ multilingual XML
Select the XML Node
XPath expression
is returned here
23
XMLQuire: http://qutoric.com/xmlquire/
Type your XPath expression
Highlights one result
at a time in the XML file
XPath info box
24
XPath Visualizer : http://xpathvisualizer.codeplex.com/
Type your XPath expression
Highlights all results
in the XML file
A few XPath Examples
26
A few basics… element nodes
○ Use //* to extract all elements
○ Use //simpleelement to extract any text in this element
– 1, 2, 3, 4, 5, 6, 7
○ Use //nestedelement/simpleelement to extract only text from
duplicated child elements with different parent elements
– 2
< title lang='en‘ >
element
attribute
27
A few basics… attribute nodes
○ Use //*/@* to extract all attributes
○ Use @translateatt to translate any translateatt attribute
– 3a, 5a
< title lang='en‘ >
element
attribute
28
A few basics… putting statements together
○ Use //* | //*/@* to extract all elements and all attributes
together in one statement
29
What else makes up an XPath?
My clever dog Regex barked at the mailman
30
What else makes up an XPath?
My clever dog Regex barked at the mailman
Complete Subject
31
What else makes up an XPath?
My clever dog Regex barked at the mailman
Complete Subject Predicate
Expresses what the subject does
32
What else makes up an XPath?
My clever dog Regex barked at the mailman
Complete Subject Predicate
Expresses what the subject does
barked
Always includes a verb, can also include other descriptive words
33
What else makes up an XPath?
My clever dog Regex barked at the mailman// [ ],ʹ ʹ
34
What else makes up an XPath?
My clever dog Regex barked at the mailman// [ ],ʹ ʹ
Node test
35
What else makes up an XPath?
My clever dog Regex barked at the mailman// [ ],ʹ ʹ
Node test Predicate
Narrows down the Node test
36
What else makes up an XPath?
My clever dog Regex barked at the mailman// [ ],ʹ ʹ
Node test Predicate
Narrows down the Node test
barked
Does not have to include a node, but always includes other descriptive tests
37
Predicates…
○ Use //*[@translate='yes'] to extract any text in any element
with this attribute value
– 3, 6, 8
○ Remember @translateatt
Now we’ll use //*[not(@translate="no")]/@translateatt to
conditionally translate this same attribute
– 5a
38
Functions and Operators…
○ Use //*[contains(text(), 'ATA56')] to extract the contents of
any segments containing the text ATA56
– 1, 9, 11
○ Use //condition[answer/text()='42']/extract to extract the
contents of the extract element if the value of the answer
element is 42
– 13
39
Namespaces…
○ Use //*[local-name()='strong'] instead of //strong to extract
text from all elements irrespective of the use of namespaces
– 14, 15, 16
40
Miscellaneous uses…
○ Use //xpath/text() to use content from the xml file as
descriptive text for the DSI column in SDL Trados Studio
41
Miscellaneous uses…
○ Use attribute values to control segment lengths in the
advanced options, so @max or @min for max=‘50’ or
min=‘5’ in SDL Trados Studio
42
Reference…
http://www.w3.org/TR/xpath/
43
44
What is XSLT?
eXtensible Stylesheet Language Transformations
 
45
XSLT uses XPath!
46
Looks familiar? Creating your template
47
Looks familiar? Creating your template
Selecting XML comments
48
Looks familiar? Creating your template
Selecting XML comments
Selecting XML attribute values
49
An improved experience…memoQ
50
An improved experience…memoQ
51
An improved experience…SDL Trados Studio
52
An improved experience…SDL Trados Studio
(151030) The X files

More Related Content

Similar to (151030) The X files

Xml and DTD's
Xml and DTD'sXml and DTD's
Xml and DTD's
Swati Parmar
 
Xml session
Xml sessionXml session
Xml session
Farag Zakaria
 
Xpath
XpathXpath
XML
XMLXML
python interview prep question , 52 questions
python interview prep question , 52 questionspython interview prep question , 52 questions
python interview prep question , 52 questions
gokul174578
 
55j7
55j755j7
55j7
swein2
 
When to use python in FME
When to use python in FMEWhen to use python in FME
When to use python in FME
Daniela Perri
 
Xml presentation
Xml presentationXml presentation
Xml presentation
Miguel Angel Teheran Garcia
 
.NET Multithreading/Multitasking
.NET Multithreading/Multitasking.NET Multithreading/Multitasking
.NET Multithreading/Multitasking
Sasha Kravchuk
 
Scala - core features
Scala - core featuresScala - core features
Scala - core features
Łukasz Wójcik
 
XPath Injection
XPath InjectionXPath Injection
XPath Injection
Roberto Suggi Liverani
 
Extracting data from xml
Extracting data from xmlExtracting data from xml
Extracting data from xml
Kumar
 
Article link httpiveybusinessjournal.compublicationmanaging-.docx
Article link httpiveybusinessjournal.compublicationmanaging-.docxArticle link httpiveybusinessjournal.compublicationmanaging-.docx
Article link httpiveybusinessjournal.compublicationmanaging-.docx
fredharris32
 
These questions will be a bit advanced level 2
These questions will be a bit advanced level 2These questions will be a bit advanced level 2
These questions will be a bit advanced level 2
sadhana312471
 
Xml
XmlXml
Je Xml
Je XmlJe Xml
Python Interview Questions For Experienced
Python Interview Questions For ExperiencedPython Interview Questions For Experienced
Python Interview Questions For Experienced
zynofustechnology
 
ITU - MDD - XText
ITU - MDD - XTextITU - MDD - XText
ITU - MDD - XText
Tonny Madsen
 
Everything You Always Wanted to Know About Memory in Python - But Were Afraid...
Everything You Always Wanted to Know About Memory in Python - But Were Afraid...Everything You Always Wanted to Know About Memory in Python - But Were Afraid...
Everything You Always Wanted to Know About Memory in Python - But Were Afraid...
Piotr Przymus
 
Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...
Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...
Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...
Hamidreza Soleimani
 

Similar to (151030) The X files (20)

Xml and DTD's
Xml and DTD'sXml and DTD's
Xml and DTD's
 
Xml session
Xml sessionXml session
Xml session
 
Xpath
XpathXpath
Xpath
 
XML
XMLXML
XML
 
python interview prep question , 52 questions
python interview prep question , 52 questionspython interview prep question , 52 questions
python interview prep question , 52 questions
 
55j7
55j755j7
55j7
 
When to use python in FME
When to use python in FMEWhen to use python in FME
When to use python in FME
 
Xml presentation
Xml presentationXml presentation
Xml presentation
 
.NET Multithreading/Multitasking
.NET Multithreading/Multitasking.NET Multithreading/Multitasking
.NET Multithreading/Multitasking
 
Scala - core features
Scala - core featuresScala - core features
Scala - core features
 
XPath Injection
XPath InjectionXPath Injection
XPath Injection
 
Extracting data from xml
Extracting data from xmlExtracting data from xml
Extracting data from xml
 
Article link httpiveybusinessjournal.compublicationmanaging-.docx
Article link httpiveybusinessjournal.compublicationmanaging-.docxArticle link httpiveybusinessjournal.compublicationmanaging-.docx
Article link httpiveybusinessjournal.compublicationmanaging-.docx
 
These questions will be a bit advanced level 2
These questions will be a bit advanced level 2These questions will be a bit advanced level 2
These questions will be a bit advanced level 2
 
Xml
XmlXml
Xml
 
Je Xml
Je XmlJe Xml
Je Xml
 
Python Interview Questions For Experienced
Python Interview Questions For ExperiencedPython Interview Questions For Experienced
Python Interview Questions For Experienced
 
ITU - MDD - XText
ITU - MDD - XTextITU - MDD - XText
ITU - MDD - XText
 
Everything You Always Wanted to Know About Memory in Python - But Were Afraid...
Everything You Always Wanted to Know About Memory in Python - But Were Afraid...Everything You Always Wanted to Know About Memory in Python - But Were Afraid...
Everything You Always Wanted to Know About Memory in Python - But Were Afraid...
 
Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...
Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...
Architecting Scalable Platforms in Erlang/OTP | Hamidreza Soleimani | Diginex...
 

More from Paul Filkin

Easier Audiovisual Translation with SDL Trados Studio
Easier Audiovisual Translation with SDL Trados StudioEasier Audiovisual Translation with SDL Trados Studio
Easier Audiovisual Translation with SDL Trados Studio
Paul Filkin
 
Ask the Experts: SDL Trados live Q+A webinar for freelance translators
Ask the Experts: SDL Trados live Q+A webinar  for freelance translatorsAsk the Experts: SDL Trados live Q+A webinar  for freelance translators
Ask the Experts: SDL Trados live Q+A webinar for freelance translators
Paul Filkin
 
Subtitling in SDL Trados Studio
Subtitling in SDL Trados StudioSubtitling in SDL Trados Studio
Subtitling in SDL Trados Studio
Paul Filkin
 
GALA 2014 Are you really interoperable?
GALA 2014   Are you really interoperable?GALA 2014   Are you really interoperable?
GALA 2014 Are you really interoperable?
Paul Filkin
 
Trikonf 2015 - Community, Studio and the OpenExchange
Trikonf 2015  - Community, Studio and the OpenExchangeTrikonf 2015  - Community, Studio and the OpenExchange
Trikonf 2015 - Community, Studio and the OpenExchange
Paul Filkin
 
Taus qe summit dublin 2015 pemt analysis and valuation
Taus qe summit dublin 2015   pemt analysis and valuationTaus qe summit dublin 2015   pemt analysis and valuation
Taus qe summit dublin 2015 pemt analysis and valuation
Paul Filkin
 
(150324) Everything you ever wanted to know about Studio!
(150324) Everything you ever wanted to know about Studio!(150324) Everything you ever wanted to know about Studio!
(150324) Everything you ever wanted to know about Studio!
Paul Filkin
 
The New Lisbon University - SDL Open Exchange 2015
The New Lisbon University -  SDL Open Exchange 2015The New Lisbon University -  SDL Open Exchange 2015
The New Lisbon University - SDL Open Exchange 2015
Paul Filkin
 
FIT XXth World Congress in Berlin - SDL Tools Workshop
FIT XXth World Congress in Berlin - SDL Tools WorkshopFIT XXth World Congress in Berlin - SDL Tools Workshop
FIT XXth World Congress in Berlin - SDL Tools Workshop
Paul Filkin
 

More from Paul Filkin (9)

Easier Audiovisual Translation with SDL Trados Studio
Easier Audiovisual Translation with SDL Trados StudioEasier Audiovisual Translation with SDL Trados Studio
Easier Audiovisual Translation with SDL Trados Studio
 
Ask the Experts: SDL Trados live Q+A webinar for freelance translators
Ask the Experts: SDL Trados live Q+A webinar  for freelance translatorsAsk the Experts: SDL Trados live Q+A webinar  for freelance translators
Ask the Experts: SDL Trados live Q+A webinar for freelance translators
 
Subtitling in SDL Trados Studio
Subtitling in SDL Trados StudioSubtitling in SDL Trados Studio
Subtitling in SDL Trados Studio
 
GALA 2014 Are you really interoperable?
GALA 2014   Are you really interoperable?GALA 2014   Are you really interoperable?
GALA 2014 Are you really interoperable?
 
Trikonf 2015 - Community, Studio and the OpenExchange
Trikonf 2015  - Community, Studio and the OpenExchangeTrikonf 2015  - Community, Studio and the OpenExchange
Trikonf 2015 - Community, Studio and the OpenExchange
 
Taus qe summit dublin 2015 pemt analysis and valuation
Taus qe summit dublin 2015   pemt analysis and valuationTaus qe summit dublin 2015   pemt analysis and valuation
Taus qe summit dublin 2015 pemt analysis and valuation
 
(150324) Everything you ever wanted to know about Studio!
(150324) Everything you ever wanted to know about Studio!(150324) Everything you ever wanted to know about Studio!
(150324) Everything you ever wanted to know about Studio!
 
The New Lisbon University - SDL Open Exchange 2015
The New Lisbon University -  SDL Open Exchange 2015The New Lisbon University -  SDL Open Exchange 2015
The New Lisbon University - SDL Open Exchange 2015
 
FIT XXth World Congress in Berlin - SDL Tools Workshop
FIT XXth World Congress in Berlin - SDL Tools WorkshopFIT XXth World Congress in Berlin - SDL Tools Workshop
FIT XXth World Congress in Berlin - SDL Tools Workshop
 

Recently uploaded

How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
Marcin Chrost
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
Bert Jan Schrijver
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
mz5nrf0n
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.
AnkitaPandya11
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
dakas1
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
sjcobrien
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
TaghreedAltamimi
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
YousufSait3
 
Preparing Non - Technical Founders for Engaging a Tech Agency
Preparing Non - Technical Founders for Engaging  a  Tech AgencyPreparing Non - Technical Founders for Engaging  a  Tech Agency
Preparing Non - Technical Founders for Engaging a Tech Agency
ISH Technologies
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 

Recently uploaded (20)

How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !Enums On Steroids - let's look at sealed classes !
Enums On Steroids - let's look at sealed classes !
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
J-Spring 2024 - Going serverless with Quarkus, GraalVM native images and AWS ...
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.fiscal year variant fiscal year variant.
fiscal year variant fiscal year variant.
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
 
Malibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed RoundMalibou Pitch Deck For Its €3M Seed Round
Malibou Pitch Deck For Its €3M Seed Round
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
Lecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptxLecture 2 - software testing SE 412.pptx
Lecture 2 - software testing SE 412.pptx
 
zOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL DifferenceszOS Mainframe JES2-JES3 JCL-JECL Differences
zOS Mainframe JES2-JES3 JCL-JECL Differences
 
Preparing Non - Technical Founders for Engaging a Tech Agency
Preparing Non - Technical Founders for Engaging  a  Tech AgencyPreparing Non - Technical Founders for Engaging  a  Tech Agency
Preparing Non - Technical Founders for Engaging a Tech Agency
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 

(151030) The X files

Editor's Notes

  1. XML is a software- and hardware-independent tool for storing and transporting data. It doesn’t do anything… it just stores data that’s used somewhere else, often in multiple places. Why is it called “XML”, my guess is that "XML" looked a lot cooler than "EML.“ The important part in here is actually the eXtensible bit… So XML has rules… but the developer has complete freedom to extend these and use them as he sees fit. So there are no predefined tags as there are in HTML for example
  2. All the translatable text is in elements and all the elements are translatable
  3. Studio, memoQ, Café Tran
  4. When only the title is in an element and all the lines have been moved into attributes
  5. When only the title is in an element and all the lines have been moved into attributes
  6. So Studio would allow you to create a custom XML filetype, you import the file and it extracts the elements and attributes for you to easily select with a dropdown box. Déjà Vu lists all the elements and attributes so you go through each one and tell it how to handle them. But not all tools allow you to handle this at all… so in my example Café Tran does not let customise XML requirements at all… so you would not be able to handle these files with Café Tran for example.
  7. In this example we have valid XML but it starts to get a little trickier… CDATA sections… and has the same text element but may not be an element you want to translate alternative translations that might be helpful as a preview Also the text elements are nested in verse# elements, so multiple rules could be required if you needed to be specific Max/min text lengths, maybe to suit some fixed window translate=“n” attribute
  8. In this example we have valid XML but it starts to get a little trickier… CDATA sections… and has the same text element but may not be an element you want to translate alternative translations that might be helpful as a preview Also the text elements are nested in verse# elements, so multiple rules could be required if you needed to be specific Max/min text lengths, maybe to suit some fixed window translate=“n” attribute
  9. In this example we have valid XML but it starts to get a little trickier… CDATA sections… and has the same text element but may not be an element you want to translate alternative translations that might be helpful as a preview Also the text elements are nested in verse# elements, so multiple rules could be required if you needed to be specific Max/min text lengths, maybe to suit some fixed window translate=“n” attribute
  10. In this example we have valid XML but it starts to get a little trickier… CDATA sections… and has the same text element but may not be an element you want to translate alternative translations that might be helpful as a preview Also the text elements are nested in verse# elements, so multiple rules could be required if you needed to be specific Max/min text lengths, maybe to suit some fixed window translate=“n” attribute
  11. So this is nothing specific to Studio or memoQ for example… this is a World Wide Web Consortium (w3c) recommendation as a web standard. So it’s easy to find information on how to learn this. We’re going to look at some basics to get you started.
  12. What all that means is just this…
  13. There isn’t a lot a theory around this, but it does take a little digesting and plenty of time to get your head around it all. It’s also all worth learning.
  14. But if at this point you’re starting to feel like he does… then don’t worry… we only have an hour!! Of course it’s important to know all this stuff if you want to be completely comfortable with XPath, but for our normal day to day needs I don’t think you do. So let’s try and cut to the chase
  15. Here we see two of a possible seven kinds of XPath nodes. An element and an attribute. “text” was the element simply referred to by name, and “line” was the attribute also referred to by name, but recognised as an attribute by using the @ symbol.
  16. Here we see two of a possible seven kinds of XPath nodes. An element and an attribute. “text” was the element simply referred to by name, and “line” was the attribute also referred to by name, but recognised as an attribute by using the @ symbol.
  17. It’s a little like a file path. We all know how these work and the path takes you straight to the file. Now add the XPath expression we just saw on the end… The // just means select from the text node no matter where in the path it is.
  18. It’s a little like a file path. We all know how these work and the path takes you straight to the file. Now add the XPath expression we just saw on the end… The // just means select from the text node no matter where in the path it is.
  19. Worth mentioning… but not free. Small built in helper tool available when using the memoQ multilingual XML filetype.
  20. Let’s consider this simple sentence and break it down into a few simple components.
  21. Let’s consider this simple sentence and break it down into a few simple components.
  22. Let’s consider this simple sentence and break it down into a few simple components.
  23. Let’s consider this simple sentence and break it down into a few simple components.
  24. Now let’s take the same sentence and mark it up like this. This is basically how an XPath expression works using predicates. The node test would be the complete subject, and the predicate is always enclosed in square brackets.
  25. Now let’s take the same sentence and mark it up like this. This is basically how an XPath expression works using predicates. The node test would be the complete subject, and the predicate is always enclosed in square brackets.
  26. Now let’s take the same sentence and mark it up like this. This is basically how an XPath expression works using predicates. The node test would be the complete subject, and the predicate is always enclosed in square brackets.
  27. Now let’s take the same sentence and mark it up like this. This is basically how an XPath expression works using predicates. The node test would be the complete subject, and the predicate is always enclosed in square brackets.
  28. This is all about conflict resolution. Namespaces provide a way to avoid element name conflicts, but sometimes these cause complexity for the simple task of extracting all the text for translation.
  29. XSLT is used to transform an XML document into another XML document, or another type of document that is recognized by a browser, like HTML and XHTML. With XSLT you can add/remove elements and attributes to or from the output file. You can also rearrange and sort elements, perform tests and make decisions about which elements to hide and display, and a lot more.
  30. memoQ can’t handle images unless they are referred to from a URL (confirmed by Gábor Ugray) but the style and flow of the document is there.
  31. memoQ can’t handle images unless they are referred to from a URL (confirmed by Gábor Ugray) but the style and flow of the document is there.