<
  • Главная
Статьи

Додавання XML-структури в резюме

  1. Часто використовувані скорочення
  2. процес
  3. HR-XML і OAGIS
  4. файл даних
  5. Лістинг 1. Приклад файлу даних
  6. простори назв
  7. редагування
  8. Таблиця стилів
  9. Лістинг 2. Приклад таблиці стилів
  10. Висновок з використанням Apache FOP
  11. Лістинг 3. Конфігураційний файл FOP
  12. Малюнок 1. Результат в форматі PDF
  13. висновок
  14. Ресурси для скачування

Застосовуємо HR-XML, таблиці стилів, об'єкти форматування і простору імен

Ви можете швидко і просто скласти резюме в WYSIWYG-редакторі і декількома клацаннями миші перетворити його в PDF-файл для відправки потенційному роботодавцю. Навіщо тоді докладати додаткових зусиль для зберігання даних в XML-файлі? Ускладнення процесу додатковими діями може привести до появи нових помилок, тому необхідна вагома причина для виконання цих дій.

Часто використовувані скорочення
  • PDF: Portable Document Format (стерпний формат документів)
  • URL: Uniform Resource Locator (уніфікований покажчик ресурсів)
  • W3C: World Wide Web Consortium (консорціум WWW)
  • XML: Extensible Markup Language (розширювана мова розмітки)

Така причина полягає в відділенні даних від уявлення і в перевагах структурування, що надаються технологією XML. Коли дані стають більш складними, а вимоги до вихідного формату більш різноманітними, XML забезпечує точність, переносимість і адаптованість. Ентузіасти намагаються зберігати інформацію в базі даних будь-якого типу. Чи буде складна структура даних надмірністю для звичайного резюме, залежить від вимог до даних та від частоти їх зміни.

Багато роботодавців негативно реагують на неповне резюме. Структура - це хороше нагадування про те, що повинно бути в документі. XML можна використовувати на різних платформах, а з одного єдиного джерела XML-даних в залежності від вимог роботодавця можна створити як резюме (коротка версія) так і професійну біографію (повна версія) шляхом простого переходу до іншої таблиці стилів.

процес

В описуваному процесі використовується Apache FOP (див. Розділ ресурси ) Для генерування PDF-файлу з XML-даних і таблиці стилів XSL (Extensible Stylesheet Language). Таблиця стилів управляє поданням даних і відповідає стандартному формату, описаного в документі W3C (див. Розділ ресурси ).

Можна зберігати дані резюме в звичайному XML-форматі, використовуючи власну унікальну схему. Але краще стандартний формат HR-XML. Якщо пред'являються специфічні вимоги, відсутні в стандарті, просто візьміть зі стандарту все, що потрібно, і розширте його шляхом створення персонального простору імен для додаткового матеріалу.

HR-XML і OAGIS

HR-XML і OAGIS (див. Розділ ресурси ) - це два проекти з відкритими початковими кодами, об'єднання яких надає структуру, якій багато великих організації надають великого значення в контексті трудових ресурсів і бізнесу.

Специфікація HR-XML - це результат копіткої роботи фахівців в області трудових ресурсів. Ці фахівці розглядають проблему з точки зору роботодавця, тому схема передбачає збір набагато більш повної інформації, ніж потрібно на етапі інтерв'ю. Управління персоналом - це складна справа. HR-XML пропонує схеми, що охоплюють всі аспекти - від визначення вимог до кадрового забезпечення, підбору кадрів, перевірки кваліфікації, оцінки компетентності та найму до поточного обліку робочого часу та оплати праці, управління соціальним пакетом, планових показників і нарахування податків.

Якщо специфікація HR-XML призначена для роботи з трудовими ресурсами, OAGIS займається міжгалузевими стандартами обміну даними. Вона визначає ідеї і концепції, які є загальними для всіх галузей в цілому, і віддає специфічні галузеві елементи на піклування групам фахівців, що мають досвід роботи в конкретній галузі.

В HR-XML не створюються заново ідеї, вже реалізовані більш широким набором елементів OAGIS - вона просто додає новий матеріал в свій власний простір імен. Результатом є схема, що описує, що слід зберігати в контексті трудових ресурсів (елементи) і як зберігати (атрибути, ієрархія). Так чому ж не скористатися цим результатом? Для більш детального вивчення схеми, використовуваної HR-XML, завантажте її на свій комп'ютер або перегляньте в інтерактивному режимі на Web-сайті (потрібно реєстрація). У разі завантаження версії 3.1 наведемо шлях до документації, що відноситься до елементу Candidate:

... / HR-XML-3_1 / org_hr-xml / 3_1 / Documentation / Guidelines / ch21.html # id564065

Гарною відправною точкою для початку роботи є:

http://ns.hr-xml.org/schemas/org_hr-xml/3_1/Documentation/ComponentDoc/Candidate-noun.php

файл даних

В лістингу 1 наведено приклад простого файлу даних (фрагмент більш повного файлу), що використовує елемент Candidate і деяких з його нащадків.

Лістинг 1. Приклад файлу даних

<? Xml version = "1.0" encoding = "UTF-8"?> <Hr: Candidate xmlns: hr = "http://www.hr-xml.org/3" xmlns: ccts = "urn: un: unece : uncefact: documentation: 1.1 "xmlns: xsi =" http://www.w3.org/2001/XMLSchema-instance "xmlns: oa =" http://www.openapplications.org/oagis/9 "> <hr : DocumentID> 000000001 </ hr: DocumentID> <hr: CandidatePerson> <hr: PersonName> <hr: FormattedName> Blimpo Togwer </ hr: FormattedName> <oa: GivenName> Blimpo </ oa: GivenName> <hr: FamilyName> Togwer </ hr: FamilyName> </ hr: PersonName> <hr: Communication> <hr: ChannelCode> Mail </ hr: ChannelCode> <hr: Address> <oa: AddressLine sequence = "1"> 5555 Yellow Brick Road < / oa: AddressLine> <oa: AddressLine sequence = "2"> RR # 1 </ oa: AddressLine> <oa: CityName> Lesser Village </ oa: CityName> <oa: CountrySubDivisionCode> KKK </ oa: CountrySubDivisionCode> < hr: CountryCode> XX </ hr: CountryCode> <oa: PostalCode> AAA BBB </ oa: PostalCode> </ hr: Address> </ hr: Communication> </ hr: CandidatePerson> </ hr: Candidate>

Цей фрагмент коду, який представляє собою закінчений, але досить простий приклад, демонструє кілька деталей:

  • За XML-оголошенням слід кореневий елемент Candidate.
  • Значення Candidate визначено в просторі імен hr, на що вказує відповідний префікс.
  • Простір імен hr асоційоване з міткою http://www.hr-xml.org/3.
  • Кожен з елементів передує міткою простору імен, що усуває будь-яку неоднозначність, що стосується того, що саме являє елемент.
  • Деякі з елементів визначені в просторі імен hr (HR-XML), а деякі - в просторі імен oa (OAGIS). Ці простору імен вибираються і поєднуються за потребою.
  • Код країни CountryCode має однорядкове резюме формат, наприклад US або FR.
  • CountrySubDivisionCode представляє штат, провінцію, департамент або іншу велику адміністративну одиницю всередині країни.
  • Важлива ієрархія. Наприклад, для отримання назви міста використовується наступний шлях: Candidate> CandidatePerson> Communication> Address.

На інтерактивному ресурсі за схемами від HR-XML можна знайти імена додаткових елементів (наприклад, CandidateProfile), що дозволяють додавати допоміжну інформацію, таку як CandidateObjective, EducationHistory, PublicationHistory, Certifications і т.д.

простори назв

Простір імен (namespace) - це структура, яка усуває можливу неоднозначність при присвоєнні імен XML-елементів. Посилання на докладнішу вступну інформацію про просторах імен наведені в розділі ресурси . Застосування просторів імен нав'язує хороший стиль написання коду, проте їх необхідно використовувати акуратно, щоб гарантувати витяг коректних даних, інакше можуть виникати труднообнаружімие помилки. Наприклад, при зверненні до розділу education без вказівки простору імен існує висока ймовірність того, що через неможливість знайти дані процесор не виведе нічого, причому без будь-яких попереджень.

редагування

Оскільки і файл даних, і таблиця стилів є чистими XML-файлами, для зміни XML-файлів можна використовувати ваш улюблений XML- або текстовий редактор. Наприклад, завантажте Eclipse (див. Розділ ресурси ), Відкрийте новий проект, скопіюйте код з лістингу 1 , Вставте його в новий документ і внесіть необхідні зміни; тим самим ви просунетеся на шляху до структурованого файлу даних резюме.

Таблиця стилів

Навчальні керівництва щодо створення і використання таблиць стилів (stylesheet) можна вибрати на сторінці W3C XSL (див. Розділ ресурси ).

В лістингу 2 наведено приклад базової таблиці стилів в контексті роботи з резюме.

Лістинг 2. Приклад таблиці стилів

<? Xml version = "1.0" encoding = "UTF-8"?> <Xsl: stylesheet version = "1.0" xmlns: xsl = "http://www.w3.org/1999/XSL/Transform" xmlns: fo = "http://www.w3.org/1999/XSL/Format" xmlns: oa = "http://www.openapplications.org/oagis/9" xmlns: hr = "http: //www.hr- xml.org/3 "> <xsl: output method =" xml "indent =" yes "/> <xsl: template match =" / "> <fo: root> <fo: layout-master-set> <fo: simple-page-master master-name = "page1"> <fo: region-body margin = "1in" /> </ fo: simple-page-master> </ fo: layout-master-set> <fo: page -sequence master-reference = "page1"> <fo: flow flow-name = "xsl-region-body"> <fo: block text-align = "right" font-size = "12pt" font-family = "serif "> DocumentID: <xsl: value-of select =" hr: Candidate / hr: DocumentID "/> </ fo: block> <fo: block> <fo: leader leader-pattern =" dots "leader-length =" 100% "/> </ fo: block> <fo: block font-size =" 12pt "font-family =" serif "> Curriculum Vitae - Résumé </ fo: block> <fo: block font-size =" 20pt "font-family =" Arial "font-weight =" bold "> <xsl: value-of select =" hr: Candidate / hr: CandidatePerson / hr: PersonNa me / hr: FormattedName "/> </ fo: block> <fo: block font-size =" 12pt "font-family =" serif "> Contact </ fo: block> <xsl: for-each select =" hr : Candidate / hr: CandidatePerson / hr: Communication [hr: ChannelCode = 'Mail'] "> <fo: block font-size =" 10pt "font-family =" Arial "font-weight =" normal "> <xsl: value-of select = "hr: Address // oa: AddressLine [@ sequence = 1]" />, <xsl: value-of select = "hr: Address / oa: AddressLine [@ sequence = 2]" /> < / fo: block> <fo: block font-size = "10pt" font-family = "Arial" font-weight = "normal"> <xsl: value-of select = "hr: Address / oa: CityName" /> , <xsl: value-of select = "hr: Address / oa: CountrySubDivisionCode" /> </ fo: block> <fo: block font-size = "10pt" font-family = "Arial" font-weight = "normal "> <xsl: value-of select =" hr: Address / oa: PostalCode "/>, <xsl: value-of select =" hr: Address / hr: CountryCode "/> </ fo: block> </ xsl : for-each> </ fo: flow> </ fo: page-sequence> </ fo: root> </ xsl: template> </ xsl: stylesheet>

інструкції в лістингу 2 керують відображенням даних з лістингу 1 на сторінці:

  • Документу потрібні чотири різних просторів імен. Всі номери дані явно вказують простір імен в кожному вузлі, що допомагає уникнути плутанини, яка може виникнути при застосуванні простору імен за замовчуванням, для якого префікс не використовується.
  • Значним template match є слеш (/), який вказує на те, що пошук починається з кореневого елемента документа даних.
  • У таблиці стилів вказується елемент layout master set, що визначає сторінки по всьому документу, а потім елемент page sequence для індивідуальних сторінок.
  • Для кожної сторінки є кілька елементів block, що вказують процесору, де розмістити елемент і як відобразити його, включаючи шрифт і розмір шрифту.
  • У таблиці стилів використовуються вирази for-each для ітерірованія по групам елементів. Наприклад, може бути кілька каналів зв'язку: пошта, електронна пошта, телефон і т.д. Використовуючи квадратні дужки ([]), можна вказати фільтр - в даному випадку таблиця стилів пропускає тільки елементи Mail (пошта).

Висновок з використанням Apache FOP

Apache FOP генерує PDF-документ на підставі файлу даних і таблиці стилів. Можливості FOP не обмежуються висновком в PDF - можна генерувати документи в форматі RTF (Rich Text Format), PCL (Printer Command Language), PS (PostScript), AFP (Advanced Function Presentation), TIFF (Tagged Image File Format), PNG (Portable Network Graphics), а також звичайні текстові файли.

Процес отримання і установки FOP зводиться до простої завантаженні і розархівування двійковій версії (див. Розділ ресурси ). Після цього FOP готовий до використання.

Нижче наведено приклад інструкції командного рядка для fop. У цьому випадку дані, стиль і конфігураційні файли розташовані в одному каталозі. Використовуйте цей каталог як робочий і викличте fop з його місця розташування:

/ Path / to / fop / fop -c fop.xconf -xml exx.xml -xsl exx.xsl -pdf exx.pdf

Дана інструкція вказує виконуваного файлу fop виконати наступні дії:

  • Знайти інформацію про конфігурацію в файлі fop.xconf.
  • Знайти дані у файлі exx.xml.
  • Використовувати таблицю стилів exx.xsl для генерування файлу exx.pdf.

Конфігураційний файл - це важлива частина процесу. Його приклад наведено в лістингу 3 .

Лістинг 3. Конфігураційний файл FOP

<? Xml version = "1.0"?> <Fop version = "1.0"> <base>. </ Base> <source-resolution> 72 </ source-resolution> <target-resolution> 72 </ target-resolution> <default-page-settings height = "11in" width = "8.26in" /> <renderers> <renderer mime = "application / pdf"> <filterList> <value> flate </ value> </ filterList> <fonts> <auto-detect /> </ fonts> </ renderer> </ renderers> </ fop>

У даній конфігурації елемент filterlist управляє стисненням об'єктів в PDF-файлі, а елемент fonts вказує процесору використовувати шрифт, вже відомий операційній системі.

на малюнку 1 , Що є знімком екрана програми читання PDF-файлів, показаний результат перетворення.

Малюнок 1. Результат в форматі PDF
Застосовуємо HR-XML, таблиці стилів, об'єкти форматування і простору імен   Ви можете швидко і просто скласти резюме в WYSIWYG-редакторі і декількома клацаннями миші перетворити його в PDF-файл для відправки потенційному роботодавцю

оформлення PDF

Таблиця стилів може містити прості елементи оформлення:

  • У прикладі відображаються рядки з точок. Їх генерує наступний код: <fo: block> <fo: leader leader-pattern = "dots" leader-length = "100%" /> </ fo: block>
  • Для виведення порожніх рядків можна використовувати методику, описану в раді Ніколаса Чейза (див. Розділ ресурси ), Або наступний код: <fo: block> & # 160; </ fo: block>

Інформація про додаткові можливості, включаючи межі, поля, відступ, колір, зображення і таблиці, наведена в документації по FOP (див. Розділ ресурси ).

висновок

Генерування резюме або професійної біографії з XML-файла вимагає лише невеликих додаткових дій, але забезпечує чітке структурування, гарантуючи коректне заповнення документа.

У простих ситуаціях для створення документів досить текстового редактора. Однак у випадку більш складних даних в якості загального джерела інформації для різних версій резюме доцільно використовувати XML-файл. Вибір зводиться до відповіді на питання, що ефективніше - обслуговувати кілька копій документа з розміткою в редакторі або кілька таблиць стилів, які працюють з одними і тими ж даними? Обидва методи ведуть до однієї мети, але різними шляхами.

Ресурси для скачування

Схожі теми

  • Оригінал статті: Add XML structure to the resume (EN).
  • Принципи XML-дизайну: використовуйте простору імен XML з обережністю (Уче Огбуджі (Uche Ogbuji), developerWorks, квітень 2004 роки): інформація про деякі труднощі роботи з просторами імен і про те, як мінімізувати проблеми при їх використанні в XML-проектах (EN).
  • Порада: управління пробілами в таблицях стилів XSLT (Ніколас Чейз (Nicholas Chase), developerWorks, листопад 2002 роки): інформація про пробільних символах і видаленні прогалин в перетвореннях, а також про створення документів бажаного виду (EN).
  • Поліпшите свій стиль XSLT-кодування п'ятьма способами (Бенуа Маршал (Benoit Marchal), developerWorks, січень 2001 року). Інформація про п'ять методиках, корисних в перетвореннях: використання CSS з таблицями стилів XSL (включаючи HTML-об'єкти), включення JavaScript на стороні клієнта, робота з декількома вхідними документами, використання XSLT для автоматичного генерування таблиць стилів (EN).
  • Специфікація Open Applications Group Integration Specification (Майкл Роуелл (Michael Rowell), developerWorks, червень 2003 роки): інформація про стандарт OAGIS (EN).
  • Apache FOP : Додаткова інформація про програму форматування, заснованої на використанні XSL-об'єктів (XSL-FO).
  • Apache FOP Compliance Page : Інформація про можливості форматування FOP-документів.
  • HR-XML : Засіб реалізації HR-XML.
  • Open Applications Group : Web-сайт організації, що розробляє засновані на процесах бізнес-стандарти для електронної комерції, хмарних обчислень, сервіс-орієнтованої архітектури, web-сервісів і корпоративної інтеграції.
  • OASIS : Інформація про організацію, що займається просуванням стандартів структурованої інформації.
  • XSL : Інформація про мову XSL, що використовується для визначення перетворень та подання XML-документів.
  • Eclipse : Середовище розробки XML з відкритими початковими кодами.
  • Інші статті даного автора (Колін Бекінгем (Colin Beckingham), developerWorks, з березня 2009 року по теперішній час): статті про XML, розпізнаванні мови, XHTML, PHP, SMIL та інших технологіях.
  • Сертифікація IBM XML : Інформація про отримання сертифіката IBM-Certified Developer по XML і суміжних технологій.

Підпишіть мене на повідомлення до коментарів

Навіщо тоді докладати додаткових зусиль для зберігання даних в XML-файлі?
Так чому ж не скористатися цим результатом?
Encoding = "UTF-8"?
Encoding = "UTF-8"?
Вибір зводиться до відповіді на питання, що ефективніше - обслуговувати кілька копій документа з розміткою в редакторі або кілька таблиць стилів, які працюють з одними і тими ж даними?


Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью