SlideShare a Scribd company logo
1 of 34
Download to read offline
Rubyist


                    (                   )
                    iRubySystems        @iR3
                at 2011.7.18 RubyKaigi LT


2011   7   19
@iR3          ↓ 2010.11.6 Ruby
                http://www.slideshare.net/FUKUIOsamu/20101106-ramaze

                                                         FA




                        eTax             XBRL


                               XBRL
                                  ....
                                                  XBRL

2011   7   19
• Rubyist

                Rubyist should study accounting. Take the leadership beyond worker.
                     •                      Ruby
                                                          IFRS
                                        XBRL GL
                     If you use Ruby on IFRS System for XBRL GL you will win!
                     • XBRL         nokogiri
                     The nokogiri is best tool for XBRL handling.
                                                           And my recursive method.




2011   7   19
2011   7   19
Account ,
                      ■
                11   July 16-18 2011


2011   7   19
You must stand up to




2011   7   19
A long time ago




                 Now



                IT
                                   Accounting




2011   7   19
2011   7   19
2011   7   19
2011   7   19
Balance sheet(B/S)   Profit and Loss statement(P/L)



                   :2011.3.31          :2010.4.1 2011.3.31




2011   7   19
Balance sheet(B/S)   Profit and Loss statement(P/L)




2011   7   19
2011   7   19
by   IFRS
                P/L   B/S



2011   7   19
IFRS




2011   7   19
IFRS
                XBRL eXtensible Business
                    Reporting Language
                                 XML


2011   7   19
2     XBRL

                • XBRL FR    XBRL GL

                • XBRL FR Financial Reporting



                • XBRL GL Global Ledger Framework
                    RECOMMENDATION


2011   7   19
XBRL FR GL
                        EDINET
                        TDnet
                FR      e-Tax




                              XBRL



                GL      XML




2011   7   19
XBRL GL

                XBRL GL




2011   7   19
XBRL GL




2011   7   19
XBRL
                XBRL      2


                 XML




2011   7   19
2011   7   19
2011   7   19
XML Schema
                Schema:
                XML Schema      XML
                <schema
                    xmlns:link="http://www.xbrl.org/2003/linkbase"
                    xmlns:xlink="http://www.w3.org/1999/xlink"
                    xmlns="http://www.w3.org/2001/XMLSchema"
                    xmlns:xbrli="http://www.xbrl.org/2003/instance"
                    xmlns:gl-plt="http://www.xbrl.org/int/gl/plt/2010-04-12"
                    elementFormDefault="qualified"
                    targetNamespace="http://www.xbrl.org/int/gl/plt/2010-04-12"
                    attributeFormDefault="unqualified">


                </schema>




2011   7   19
annotation:
                <annotation>
                  <appinfo>
                   <link:linkbaseRef
                         xlink:type="simple"
                         xlink:href="../../cor/lang/gl-cor-2010-04-12-label.xml"
                         xlink:title="Label Links, all"
                         xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef"
                         xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
                   <link:linkbaseRef
                         xlink:type="simple"
                         xlink:href="../../cor/lang/gl-cor-2010-04-12-label-ja.xml"
                         xlink:title="Label Links, ja"
                         xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef"
                         xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
                  </appinfo>
                 </annotation>


2011   7   19
XML
                XML                             nokogiri
                http://nokogiri.org/
                https://github.com/tenderlove/nokogiri

                  install sudo gem install nokogiri




2011   7   19
require 'rubygems'
                require 'nokogiri'

                @doc = Nokogiri::XML(open("http://www.xbrl.org/
                taxonomy/int/gl/2010-04-12/cor/lang/gl-
                cor-2010-04-12-label-ja.xml"))

                puts "@doc    class          : #{@doc.class}"
                puts "@doc           : #{@doc}"



2011   7   19
XPath

                nokogiri   XPath

                XML Path Language  XPath; XML
                http://ja.wikipedia.org/wiki/XML_Path_Language




2011   7   19
<?xml version="1.0" encoding="utf-8"?>
                <document> <!-- XML      -->
                 <chapter title=" 1   ">
                 <paragraph>     </paragraph>
                 <paragraph>           </paragraph>
                 <paragraph>                  </paragraph>
                 <paragraph>               </paragraph>
                 </chapter>
                 <chapter title=" 2   ">
                 <paragraph>     </paragraph>
                 </chapter>
                </document>

2011   7   19
XPath
                  /document :               document
                ■ /* :
                         document                XML


                ■ /document/chapter : document
                         chapter
                ■ /document/chapter[1] : document                       1
                         chapter
                ■ //paragraph :                   paragraph
                ■ //chapter[@title="   1   "]/paragraph : title         " 1   "
                         chapter                            paragraph




2011   7   19
nokogiri

                   Thank you
                  tenderlove !

2011   7   19
XML
                        http://d.hatena.ne.jp/iR3/20060428#1146221233


                #           DB
                def getchild( db, gr_id )
                 out = "" #
                 sql = "select gr_id,gr_name from grlist where sgr_id=#{gr_id}"
                 rows = db.query(sql) rows.each_with_index{ |row,i|
                   gr_id1 = row[0]
                    gr_name = row[1]
                    out << "<#{gr_name} data='#{gr_id}'>"
                    out << "rn"
                    if gr_id != gr_id1
                      out << getchild(db, gr_id1)
                    end
                    out << "</#{gr_name} >" out << "rn"
                 }
                 return
                 out
                end
2011   7   19
2011   7   19
• Rubyist

                Rubyist should study accounting. Take the leadership beyond worker.
                     •                       Ruby
                                                           IFRS
                                         XBRL GL
                     If you use Ruby on IFRS System for XBRL GL you will win!
                     • XBRL          nokogiri
                     The nokogiri is best tool for XBRL handling.
                                                           And my recursive method.




2011   7   19

More Related Content

Similar to Rubyistに 不足しているのは会計(そろばん)!

Drupal 6.x, Drupal 7.x -- Scratching the surface
Drupal 6.x, Drupal 7.x -- Scratching the surfaceDrupal 6.x, Drupal 7.x -- Scratching the surface
Drupal 6.x, Drupal 7.x -- Scratching the surfaceFlorian Latzel
 
TYPO3 Transition Tool
TYPO3 Transition ToolTYPO3 Transition Tool
TYPO3 Transition Toolcrus0e
 
前瞻性Web性能优化pwpo
前瞻性Web性能优化pwpo前瞻性Web性能优化pwpo
前瞻性Web性能优化pwpoMichael Zhang
 
RDF Tutorial - SPARQL 20091031
RDF Tutorial - SPARQL 20091031RDF Tutorial - SPARQL 20091031
RDF Tutorial - SPARQL 20091031kwangsub kim
 
Proactive Web Performance Optimization.(Marcel Duran)
Proactive Web Performance Optimization.(Marcel Duran)Proactive Web Performance Optimization.(Marcel Duran)
Proactive Web Performance Optimization.(Marcel Duran)Ontico
 
Kickstart Tutorial Xml
Kickstart Tutorial XmlKickstart Tutorial Xml
Kickstart Tutorial XmlLiquidHub
 
Kickstart Tutorial Xml
Kickstart Tutorial XmlKickstart Tutorial Xml
Kickstart Tutorial XmlLiquidHub
 
Ruby i18n - internationalization for ruby
Ruby i18n - internationalization for rubyRuby i18n - internationalization for ruby
Ruby i18n - internationalization for rubyLingoHub
 
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1Marco Gralike
 
Kickstart Tutorial Xml
Kickstart Tutorial XmlKickstart Tutorial Xml
Kickstart Tutorial XmlLiquidHub
 
Working With XML in IDS Applications
Working With XML in IDS ApplicationsWorking With XML in IDS Applications
Working With XML in IDS ApplicationsKeshav Murthy
 
How to Reduce Database Load with Sparse Branches
How to Reduce Database Load with Sparse BranchesHow to Reduce Database Load with Sparse Branches
How to Reduce Database Load with Sparse BranchesPerforce
 
X$Tables And Sga Scanner, DOAG2009
X$Tables And Sga Scanner, DOAG2009X$Tables And Sga Scanner, DOAG2009
X$Tables And Sga Scanner, DOAG2009Frank
 
A general introduction to Spring Data / Neo4J
A general introduction to Spring Data / Neo4JA general introduction to Spring Data / Neo4J
A general introduction to Spring Data / Neo4JFlorent Biville
 
Instrumentation with Splunk
Instrumentation with SplunkInstrumentation with Splunk
Instrumentation with SplunkDatavail
 
Triplificating and linking XBRL financial data
Triplificating and linking XBRL financial dataTriplificating and linking XBRL financial data
Triplificating and linking XBRL financial dataRoberto García
 
浜松Rails3道場 其の弐 Model編
浜松Rails3道場 其の弐 Model編 浜松Rails3道場 其の弐 Model編
浜松Rails3道場 其の弐 Model編 Masakuni Kato
 
Ample SDK - Open Source GUI Framework
Ample SDK - Open Source GUI FrameworkAmple SDK - Open Source GUI Framework
Ample SDK - Open Source GUI FrameworkBéla Varga
 

Similar to Rubyistに 不足しているのは会計(そろばん)! (20)

Drupal 6.x, Drupal 7.x -- Scratching the surface
Drupal 6.x, Drupal 7.x -- Scratching the surfaceDrupal 6.x, Drupal 7.x -- Scratching the surface
Drupal 6.x, Drupal 7.x -- Scratching the surface
 
TYPO3 Transition Tool
TYPO3 Transition ToolTYPO3 Transition Tool
TYPO3 Transition Tool
 
前瞻性Web性能优化pwpo
前瞻性Web性能优化pwpo前瞻性Web性能优化pwpo
前瞻性Web性能优化pwpo
 
RDF Tutorial - SPARQL 20091031
RDF Tutorial - SPARQL 20091031RDF Tutorial - SPARQL 20091031
RDF Tutorial - SPARQL 20091031
 
Proactive Web Performance Optimization.(Marcel Duran)
Proactive Web Performance Optimization.(Marcel Duran)Proactive Web Performance Optimization.(Marcel Duran)
Proactive Web Performance Optimization.(Marcel Duran)
 
Kickstart Tutorial Xml
Kickstart Tutorial XmlKickstart Tutorial Xml
Kickstart Tutorial Xml
 
Kickstart Tutorial Xml
Kickstart Tutorial XmlKickstart Tutorial Xml
Kickstart Tutorial Xml
 
Ruby i18n - internationalization for ruby
Ruby i18n - internationalization for rubyRuby i18n - internationalization for ruby
Ruby i18n - internationalization for ruby
 
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
 
Kickstart Tutorial Xml
Kickstart Tutorial XmlKickstart Tutorial Xml
Kickstart Tutorial Xml
 
XML in software development
XML in software developmentXML in software development
XML in software development
 
Working With XML in IDS Applications
Working With XML in IDS ApplicationsWorking With XML in IDS Applications
Working With XML in IDS Applications
 
How to Reduce Database Load with Sparse Branches
How to Reduce Database Load with Sparse BranchesHow to Reduce Database Load with Sparse Branches
How to Reduce Database Load with Sparse Branches
 
X$Tables And Sga Scanner, DOAG2009
X$Tables And Sga Scanner, DOAG2009X$Tables And Sga Scanner, DOAG2009
X$Tables And Sga Scanner, DOAG2009
 
A general introduction to Spring Data / Neo4J
A general introduction to Spring Data / Neo4JA general introduction to Spring Data / Neo4J
A general introduction to Spring Data / Neo4J
 
WEB TECHNOLOGIES XML
WEB TECHNOLOGIES XMLWEB TECHNOLOGIES XML
WEB TECHNOLOGIES XML
 
Instrumentation with Splunk
Instrumentation with SplunkInstrumentation with Splunk
Instrumentation with Splunk
 
Triplificating and linking XBRL financial data
Triplificating and linking XBRL financial dataTriplificating and linking XBRL financial data
Triplificating and linking XBRL financial data
 
浜松Rails3道場 其の弐 Model編
浜松Rails3道場 其の弐 Model編 浜松Rails3道場 其の弐 Model編
浜松Rails3道場 其の弐 Model編
 
Ample SDK - Open Source GUI Framework
Ample SDK - Open Source GUI FrameworkAmple SDK - Open Source GUI Framework
Ample SDK - Open Source GUI Framework
 

Recently uploaded

UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 

Recently uploaded (20)

UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 

Rubyistに 不足しているのは会計(そろばん)!

  • 1. Rubyist ( ) iRubySystems @iR3 at 2011.7.18 RubyKaigi LT 2011 7 19
  • 2. @iR3 ↓ 2010.11.6 Ruby http://www.slideshare.net/FUKUIOsamu/20101106-ramaze FA eTax XBRL XBRL .... XBRL 2011 7 19
  • 3. • Rubyist Rubyist should study accounting. Take the leadership beyond worker. • Ruby IFRS XBRL GL If you use Ruby on IFRS System for XBRL GL you will win! • XBRL nokogiri The nokogiri is best tool for XBRL handling. And my recursive method. 2011 7 19
  • 4. 2011 7 19
  • 5. Account , ■ 11 July 16-18 2011 2011 7 19
  • 6. You must stand up to 2011 7 19
  • 7. A long time ago Now IT Accounting 2011 7 19
  • 8. 2011 7 19
  • 9. 2011 7 19
  • 10. 2011 7 19
  • 11. Balance sheet(B/S) Profit and Loss statement(P/L) :2011.3.31 :2010.4.1 2011.3.31 2011 7 19
  • 12. Balance sheet(B/S) Profit and Loss statement(P/L) 2011 7 19
  • 13. 2011 7 19
  • 14. by IFRS P/L B/S 2011 7 19
  • 15. IFRS 2011 7 19
  • 16. IFRS XBRL eXtensible Business Reporting Language XML 2011 7 19
  • 17. 2 XBRL • XBRL FR XBRL GL • XBRL FR Financial Reporting • XBRL GL Global Ledger Framework RECOMMENDATION 2011 7 19
  • 18. XBRL FR GL EDINET TDnet FR e-Tax XBRL GL XML 2011 7 19
  • 19. XBRL GL XBRL GL 2011 7 19
  • 20. XBRL GL 2011 7 19
  • 21. XBRL XBRL 2 XML 2011 7 19
  • 22. 2011 7 19
  • 23. 2011 7 19
  • 24. XML Schema Schema: XML Schema XML <schema xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:gl-plt="http://www.xbrl.org/int/gl/plt/2010-04-12" elementFormDefault="qualified" targetNamespace="http://www.xbrl.org/int/gl/plt/2010-04-12" attributeFormDefault="unqualified"> </schema> 2011 7 19
  • 25. annotation: <annotation> <appinfo> <link:linkbaseRef xlink:type="simple" xlink:href="../../cor/lang/gl-cor-2010-04-12-label.xml" xlink:title="Label Links, all" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/> <link:linkbaseRef xlink:type="simple" xlink:href="../../cor/lang/gl-cor-2010-04-12-label-ja.xml" xlink:title="Label Links, ja" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/> </appinfo> </annotation> 2011 7 19
  • 26. XML XML nokogiri http://nokogiri.org/ https://github.com/tenderlove/nokogiri install sudo gem install nokogiri 2011 7 19
  • 27. require 'rubygems' require 'nokogiri' @doc = Nokogiri::XML(open("http://www.xbrl.org/ taxonomy/int/gl/2010-04-12/cor/lang/gl- cor-2010-04-12-label-ja.xml")) puts "@doc class : #{@doc.class}" puts "@doc : #{@doc}" 2011 7 19
  • 28. XPath nokogiri XPath XML Path Language  XPath; XML http://ja.wikipedia.org/wiki/XML_Path_Language 2011 7 19
  • 29. <?xml version="1.0" encoding="utf-8"?> <document> <!-- XML --> <chapter title=" 1 "> <paragraph> </paragraph> <paragraph> </paragraph> <paragraph> </paragraph> <paragraph> </paragraph> </chapter> <chapter title=" 2 "> <paragraph> </paragraph> </chapter> </document> 2011 7 19
  • 30. XPath /document : document ■ /* : document XML ■ /document/chapter : document chapter ■ /document/chapter[1] : document 1 chapter ■ //paragraph : paragraph ■ //chapter[@title=" 1 "]/paragraph : title " 1 " chapter paragraph 2011 7 19
  • 31. nokogiri Thank you tenderlove ! 2011 7 19
  • 32. XML http://d.hatena.ne.jp/iR3/20060428#1146221233 # DB def getchild( db, gr_id ) out = "" # sql = "select gr_id,gr_name from grlist where sgr_id=#{gr_id}" rows = db.query(sql) rows.each_with_index{ |row,i| gr_id1 = row[0] gr_name = row[1] out << "<#{gr_name} data='#{gr_id}'>" out << "rn" if gr_id != gr_id1 out << getchild(db, gr_id1) end out << "</#{gr_name} >" out << "rn" } return out end 2011 7 19
  • 33. 2011 7 19
  • 34. • Rubyist Rubyist should study accounting. Take the leadership beyond worker. • Ruby IFRS XBRL GL If you use Ruby on IFRS System for XBRL GL you will win! • XBRL nokogiri The nokogiri is best tool for XBRL handling. And my recursive method. 2011 7 19